@ag2/weave 0.6.0-direction-d.1 → 0.6.0-direction-d.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/DIRECTION_D_PREVIEW.json +2 -2
- package/dist/components/call/Call.d.ts +2 -1
- package/dist/components/call/CallMicrophoneButton.d.ts +15 -0
- package/dist/components/call/index.d.ts +1 -0
- package/dist/components/composer/Composer.css.d.ts +18 -1
- package/dist/components/composer/Composer.d.ts +15 -5
- package/dist/components/dock/Dock.css.d.ts +2 -0
- package/dist/components/dock/Dock.d.ts +4 -0
- package/dist/components/icon/Icons.d.ts +1 -1
- package/dist/index.js +524 -372
- package/dist/index.js.map +1 -1
- package/dist/style.css +32 -5
- package/package.json +1 -1
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/theme/util.ts","../src/components/util.ts","../src/components/as.tsx","../node_modules/@vanilla-extract/recipes/createRuntimeFn/dist/vanilla-extract-recipes-createRuntimeFn.esm.js","../src/components/avatar/Avatar.tsx","../src/components/badge/Badge.tsx","../src/components/box/Box.tsx","../src/components/button/Button.tsx","../src/components/icon/Icon.tsx","../src/components/icon/Icons.tsx","../src/components/checkbox/Checkbox.tsx","../src/components/chip/Chip.tsx","../src/components/dialog/Dialog.tsx","../src/components/header/Header.tsx","../src/components/icon-button/IconButton.tsx","../src/components/input/Input.tsx","../src/components/line/Line.tsx","../src/components/menu/MenuItem.tsx","../src/components/menu/Menu.tsx","../src/components/modal/Modal.tsx","../src/components/portal/Portal.tsx","../src/components/overlay/Overlay.tsx","../src/components/pop-out/PopOut.tsx","../src/components/progress-bar/ProgressBar.tsx","../src/components/radio-button/RadioButton.tsx","../src/components/scroll/Scroll.tsx","../src/components/spinner/Spinner.tsx","../src/components/switch/Switch.tsx","../src/components/text/Text.tsx","../src/components/text-area/TextArea.tsx","../src/components/tooltip/Tooltip.tsx","../src/components/tooltip/Hint.tsx","../src/components/sequence-card/SequenceCard.tsx","../src/components/setting-tile/SettingTile.tsx","../src/components/cutout-card/CutoutCard.tsx","../src/components/info-card/InfoCard.tsx","../src/components/sidebar/Sidebar.tsx","../src/components/sidebar/SidebarItem.tsx","../src/components/sidebar/SidebarContent.tsx","../src/components/sidebar/SidebarStack.tsx","../src/components/sidebar/SidebarStackSeparator.tsx","../src/components/agent-tag/AgentGlyph.tsx","../src/components/agent-tag/AgentTag.tsx","../src/components/agent-tag/PeopleGlyph.tsx","../src/components/agent-tag/SkillGlyph.tsx","../src/components/agent-tag/agentStateMarks.ts","../src/components/typing-indicator/TypingIndicator.tsx","../src/components/robot-icon/RobotIcon.tsx","../src/components/window-title/mountAliveMark.ts","../src/components/window-title/AliveMark.tsx","../src/components/server-badge/ServerBadge.tsx","../src/components/stacked-avatar/StackedAvatar.tsx","../src/components/compose-icon/ComposeIcon.tsx","../src/components/starfield/Starfield.tsx","../src/components/splash-screen/SplashScreen.tsx","../src/hooks/useResizeObserver.ts","../src/hooks/useElementSizeObserver.ts","../src/hooks/useScreenSize.ts","../src/utils/dragOverlay.ts","../src/components/page/Page.tsx","../src/components/page/NavCollapseRow.tsx","../src/current/palette.ts","../src/current/CurrentProvider.tsx","../src/current/Disclosure.tsx","../src/current/Icon.tsx","../src/components/review-card/CurrentReviewCard.tsx","../src/components/dialog-frame/DialogFrame.tsx","../src/components/menu-button/MenuButton.tsx","../src/components/tab-bar/TabBar.tsx","../src/components/pill/Pill.tsx","../src/components/page-state/EmptyState.tsx","../src/components/page-state/LoadingState.tsx","../src/components/page-state/ErrorState.tsx","../src/components/page-state/PageTitleHeader.tsx","../src/components/card/Card.tsx","../src/components/list-row/ListRow.tsx","../src/components/presence/Presence.tsx","../src/components/identity/Identity.tsx","../src/components/person-avatar/PersonAvatar.tsx","../src/components/select/Select.tsx","../src/utils/rovingFocus.ts","../src/components/button-group/ButtonGroup.tsx","../src/components/split-button/SplitButton.tsx","../src/components/wavy-progress/WavyProgress.tsx","../src/components/floating-toolbar/FloatingToolbar.tsx","../src/components/motion/Motion.tsx","../src/components/settings-shell/SettingsShell.tsx","../src/components/nav/Nav.tsx","../src/components/unread-badge/UnreadBadge.tsx","../src/components/password-input/PasswordInput.tsx","../src/components/timeline/Timeline.tsx","../src/components/file-attachment/FileAttachment.tsx","../src/components/dock/Dock.tsx","../src/components/skeleton/Skeleton.tsx","../src/components/activity-card/ActivityCard.tsx","../src/components/composer/Composer.tsx","../src/components/call/Call.tsx","../src/components/identity/IdentityLists.tsx","../src/components/content-card/ContentCard.tsx","../src/components/power/Power.tsx","../src/components/date-time/DateTime.tsx","../src/components/banner/Banner.tsx","../src/components/folder-field/FolderField.tsx","../src/current/ActionGroup.tsx"],"sourcesContent":["export const pxToRem = (px: number) => parseFloat((px / 16).toFixed(4));\nexport const toRem = (px: number) => `${pxToRem(px)}rem`;\n","export interface PositionCSS {\n top?: string;\n right?: string;\n bottom?: string;\n left?: string;\n}\nexport type Position = \"Top\" | \"Right\" | \"Bottom\" | \"Left\";\nexport type Align = \"Start\" | \"Center\" | \"End\";\n\nexport type RectCords = {\n x: number;\n y: number;\n width: number;\n height: number;\n};\n\nconst canAlignXStart = (anchor: RectCords, target: RectCords, offset: number): boolean =>\n anchor.x + offset + target.width <= document.documentElement.clientWidth;\nconst canAlignXCenter = (anchor: RectCords, target: RectCords, offset: number): boolean => {\n const xCenter = anchor.x + anchor.width / 2;\n const left = xCenter - target.width / 2;\n if (left < 0) return false;\n\n return left + offset + target.width <= document.documentElement.clientWidth;\n};\nconst canAlignXEnd = (anchor: RectCords, target: RectCords, offset: number): boolean => {\n const xEnd = anchor.x + anchor.width;\n return xEnd - (target.width + offset) >= 0;\n};\nconst canAlignYStart = (anchor: RectCords, target: RectCords, offset: number): boolean =>\n anchor.y + offset + target.height <= document.documentElement.clientHeight;\nconst canAlignYCenter = (anchor: RectCords, target: RectCords, offset: number): boolean => {\n const yCenter = anchor.y + anchor.height / 2;\n const top = yCenter - target.height / 2;\n if (top < 0) return false;\n\n return top + offset + target.height <= document.documentElement.clientHeight;\n};\nconst canAlignYEnd = (anchor: RectCords, target: RectCords, offset: number): boolean => {\n const yEnd = anchor.y + anchor.height;\n\n return yEnd - (target.height + offset) >= 0;\n};\n\nconst alignXStart = (anchor: RectCords, offset: number): PositionCSS => ({\n left: `${anchor.x + offset}px`,\n});\nconst alignXCenter = (anchor: RectCords, target: RectCords, offset: number): PositionCSS => {\n const xCenter = anchor.x + anchor.width / 2;\n const left = xCenter - target.width / 2;\n\n return {\n left: `${left + offset}px`,\n };\n};\nconst alignXEnd = (anchor: RectCords, offset: number): PositionCSS => {\n const xEnd = anchor.x + anchor.width;\n const right = document.documentElement.clientWidth - xEnd;\n\n return {\n right: `${right + offset}px`,\n };\n};\nconst alignXAuto = (\n anchor: RectCords,\n target: RectCords,\n offset: number\n): PositionCSS | undefined => {\n if (canAlignXCenter(anchor, target, offset)) {\n return alignXCenter(anchor, target, offset);\n }\n if (canAlignXStart(anchor, target, offset)) {\n return alignXStart(anchor, offset);\n }\n if (canAlignXEnd(anchor, target, offset)) {\n return alignXEnd(anchor, offset);\n }\n return undefined;\n};\nconst alignX = (\n align: Align,\n anchor: RectCords,\n target: RectCords,\n offset: number\n): PositionCSS | undefined => {\n if (align === \"Start\" && canAlignXStart(anchor, target, offset)) {\n return alignXStart(anchor, offset);\n }\n if (align === \"Center\" && canAlignXCenter(anchor, target, offset)) {\n return alignXCenter(anchor, target, offset);\n }\n if (align === \"End\" && canAlignXEnd(anchor, target, offset)) {\n return alignXEnd(anchor, offset);\n }\n return alignXAuto(anchor, target, offset);\n};\n\nconst alignYStart = (anchor: RectCords, offset: number): PositionCSS => ({\n top: `${anchor.y + offset}px`,\n});\nconst alignYCenter = (anchor: RectCords, target: RectCords, offset: number): PositionCSS => {\n const yCenter = anchor.y + anchor.height / 2;\n const top = yCenter - target.height / 2;\n\n return {\n top: `${top + offset}px`,\n };\n};\nconst alignYEnd = (anchor: RectCords, offset: number): PositionCSS => {\n const yEnd = anchor.y + anchor.height;\n const bottom = document.documentElement.clientHeight - yEnd;\n\n return {\n bottom: `${bottom + offset}px`,\n };\n};\nconst alignYAuto = (\n anchor: RectCords,\n target: RectCords,\n offset: number\n): PositionCSS | undefined => {\n if (canAlignYCenter(anchor, target, offset)) {\n return alignYCenter(anchor, target, offset);\n }\n if (canAlignYStart(anchor, target, offset)) {\n return alignYStart(anchor, offset);\n }\n if (canAlignYEnd(anchor, target, offset)) {\n return alignYEnd(anchor, offset);\n }\n return undefined;\n};\nconst alignY = (\n align: Align,\n anchor: RectCords,\n target: RectCords,\n offset: number\n): PositionCSS | undefined => {\n if (align === \"Start\" && canAlignYStart(anchor, target, offset)) {\n return alignYStart(anchor, offset);\n }\n if (align === \"Center\" && canAlignYCenter(anchor, target, offset)) {\n return alignYCenter(anchor, target, offset);\n }\n if (align === \"End\" && canAlignYEnd(anchor, target, offset)) {\n return alignYEnd(anchor, offset);\n }\n return alignYAuto(anchor, target, offset);\n};\n\nconst canPositionTop = (anchor: RectCords, target: RectCords, offset: number): boolean =>\n target.height + offset <= anchor.y;\nconst canPositionRight = (anchor: RectCords, target: RectCords, offset: number): boolean =>\n anchor.x + anchor.width + offset + target.width <= document.documentElement.clientWidth;\nconst canPositionBottom = (anchor: RectCords, target: RectCords, offset: number): boolean =>\n anchor.y + anchor.height + offset + target.height <= document.documentElement.clientHeight;\nconst canPositionLeft = (anchor: RectCords, target: RectCords, offset: number): boolean =>\n target.width + offset <= anchor.x;\n\nconst positionTop = (anchor: RectCords, offset: number): PositionCSS => {\n const bottom = document.documentElement.clientHeight - anchor.y;\n return {\n bottom: `${bottom + offset}px`,\n };\n};\n\nconst positionRight = (anchor: RectCords, offset: number): PositionCSS => {\n const left = anchor.x + anchor.width;\n return {\n left: `${left + offset}px`,\n };\n};\nconst positionBottom = (anchor: RectCords, offset: number): PositionCSS => {\n const top = anchor.y + anchor.height;\n return {\n top: `${top + offset}px`,\n };\n};\nconst positionLeft = (anchor: RectCords, offset: number): PositionCSS => {\n const right = document.documentElement.clientWidth - anchor.x;\n return {\n right: `${right + offset}px`,\n };\n};\nconst positionAuto = (\n align: Align,\n anchor: RectCords,\n target: RectCords,\n offset: number,\n alignOffset: number\n): PositionCSS => {\n if (canPositionRight(anchor, target, offset)) {\n return {\n ...positionRight(anchor, offset),\n ...alignY(align, anchor, target, alignOffset),\n };\n }\n if (canPositionBottom(anchor, target, offset)) {\n return {\n ...positionBottom(anchor, offset),\n ...alignX(align, anchor, target, alignOffset),\n };\n }\n if (canPositionLeft(anchor, target, offset)) {\n return {\n ...positionLeft(anchor, offset),\n ...alignY(align, anchor, target, alignOffset),\n };\n }\n if (canPositionTop(anchor, target, offset)) {\n return {\n ...positionTop(anchor, offset),\n ...alignX(align, anchor, target, alignOffset),\n };\n }\n return {\n ...alignX(align, anchor, target, alignOffset),\n };\n};\n\nexport const getRelativeFixedPosition = (\n anchor: RectCords,\n target: RectCords,\n position: Position,\n align: Align,\n offset: number,\n alignOffset: number\n): PositionCSS => {\n if (position === \"Top\" && canPositionTop(anchor, target, offset)) {\n return {\n ...positionTop(anchor, offset),\n ...alignX(align, anchor, target, alignOffset),\n };\n }\n if (position === \"Right\" && canPositionRight(anchor, target, offset)) {\n return {\n ...positionRight(anchor, offset),\n ...alignY(align, anchor, target, alignOffset),\n };\n }\n if (position === \"Bottom\" && canPositionBottom(anchor, target, offset)) {\n return {\n ...positionBottom(anchor, offset),\n ...alignX(align, anchor, target, alignOffset),\n };\n }\n\n if (position === \"Left\" && canPositionLeft(anchor, target, offset)) {\n return {\n ...positionLeft(anchor, offset),\n ...alignY(align, anchor, target, alignOffset),\n };\n }\n\n return positionAuto(align, anchor, target, offset, alignOffset);\n};\n\nexport const percent = (min: number, max: number, value: number) =>\n ((value - min) / (max - min)) * 100;\n","import { ElementType, forwardRef, ReactElement } from \"react\";\nimport { AsInProps, AsOutProps, RefOfType } from \"./types\";\n\nexport const as = <DefaultType extends ElementType, ExtraProps = object>(\n fc: (\n props: AsInProps<DefaultType, ExtraProps>,\n ref: RefOfType<DefaultType>\n ) => ReactElement | null\n) =>\n forwardRef(fc) as unknown as <T extends ElementType = DefaultType>(\n props: AsOutProps<T, ExtraProps>\n ) => ReturnType<typeof fc>;\n","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n\n return target;\n}\n\nvar shouldApplyCompound = (compoundCheck, selections, defaultVariants) => {\n for (var key of Object.keys(compoundCheck)) {\n var _selections$key;\n\n if (compoundCheck[key] !== ((_selections$key = selections[key]) !== null && _selections$key !== void 0 ? _selections$key : defaultVariants[key])) {\n return false;\n }\n }\n\n return true;\n};\n\nvar createRuntimeFn = config => options => {\n var className = config.defaultClassName;\n\n var selections = _objectSpread2(_objectSpread2({}, config.defaultVariants), options);\n\n for (var variantName in selections) {\n var _selections$variantNa;\n\n var variantSelection = (_selections$variantNa = selections[variantName]) !== null && _selections$variantNa !== void 0 ? _selections$variantNa : config.defaultVariants[variantName];\n\n if (variantSelection != null) {\n var selection = variantSelection;\n\n if (typeof selection === 'boolean') {\n // @ts-expect-error\n selection = selection === true ? 'true' : 'false';\n }\n\n var selectionClassName = // @ts-expect-error\n config.variantClassNames[variantName][selection];\n\n if (selectionClassName) {\n className += ' ' + selectionClassName;\n }\n }\n }\n\n for (var [compoundCheck, compoundClassName] of config.compoundVariants) {\n if (shouldApplyCompound(compoundCheck, selections, config.defaultVariants)) {\n className += ' ' + compoundClassName;\n }\n }\n\n return className;\n};\n\nexport { createRuntimeFn };\n","import classNames from \"classnames\";\nimport React from \"react\";\nimport { as } from \"../as\";\nimport * as css from \"./Avatar.css\";\n\nexport const Avatar = as<\"span\", css.AvatarVariants>(\n ({ as: AsAvatar = \"span\", size, radii, activity, className, ...props }, ref) => (\n <AsAvatar\n className={classNames(css.Avatar({ size, radii, activity }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n\nexport const AvatarImage = as<\"img\">(({ as: AsAvatarImage = \"img\", className, ...props }, ref) => (\n <AsAvatarImage className={classNames(css.AvatarImage, className)} {...props} ref={ref} />\n));\n\nexport const AvatarFallback = as<\"span\">(\n ({ as: AsAvatarFallback = \"span\", className, ...props }, ref) => (\n <AsAvatarFallback className={classNames(css.AvatarFallback, className)} {...props} ref={ref} />\n )\n);\n","import classNames from \"classnames\";\nimport React from \"react\";\n\nimport { as } from \"../as\";\nimport * as css from \"./Badge.css\";\n\nexport const Badge = as<\"span\", css.BadgeVariants>(\n ({ as: AsBadge = \"span\", className, size, variant, fill, radii, outlined, ...props }, ref) => (\n <AsBadge\n className={classNames(css.Badge({ size, variant, fill, radii, outlined }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import classNames from \"classnames\";\nimport React from \"react\";\nimport { as } from \"../as\";\n\nimport * as css from \"./Box.css\";\n\nexport const Box = as<\"div\", css.BoxVariants>(\n (\n {\n as: AsBox = \"div\",\n className,\n display,\n direction,\n wrap,\n justifyContent,\n justifyItems,\n justifySelf,\n alignContent,\n alignItems,\n alignSelf,\n gap,\n grow,\n shrink,\n basis,\n ...props\n },\n ref\n ) => (\n <AsBox\n className={classNames(\n css.Box({\n display,\n direction,\n wrap,\n justifyContent,\n justifyItems,\n justifySelf,\n alignContent,\n alignItems,\n alignSelf,\n gap,\n grow,\n shrink,\n basis,\n }),\n className\n )}\n {...props}\n ref={ref}\n />\n )\n);\n","import React, { ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport * as css from \"./Button.css\";\n\ntype ButtonProps = {\n before?: ReactNode;\n after?: ReactNode;\n};\n\nexport const Button = as<\"button\", css.ButtonVariants & ButtonProps>(\n (\n {\n as: AsButton = \"button\",\n className,\n size,\n variant,\n fill,\n outlined,\n radii,\n before,\n after,\n children,\n ...props\n },\n ref\n ) => (\n <AsButton\n className={classNames(css.Button({ size, variant, fill, outlined, radii }), className)}\n data-ui-before={before ? true : undefined}\n data-ui-after={after ? true : undefined}\n {...props}\n ref={ref}\n >\n {before}\n {children}\n {after}\n </AsButton>\n )\n);\n","import React, { forwardRef, SVGAttributes } from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Icon.css\";\n\nimport { IconSrc } from \"./Icons\";\n\nexport type IconProps = SVGAttributes<SVGElement> & {\n filled?: boolean;\n src: IconSrc;\n};\nexport const Icon = forwardRef<SVGSVGElement, IconProps & css.IconVariants>(\n ({ className, size, filled = false, src, ...props }, ref) => (\n <svg\n className={classNames(css.Icon({ size }), className)}\n focusable=\"false\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n ref={ref}\n >\n {src(filled)}\n </svg>\n )\n);\n","// Generated by scripts/generate-material-symbols.mjs from Google's Apache-2.0 sources.\nimport React from \"react\";\n\nexport type IconSrc = (filled?: boolean) => JSX.Element;\nexport type IconName =\n | \"Home\"\n | \"User\"\n | \"UserPlus\"\n | \"Mail\"\n | \"MailPlus\"\n | \"Star\"\n | \"PlusCircle\"\n | \"Explore\"\n | \"Smile\"\n | \"SmilePlus\"\n | \"Leaf\"\n | \"Sticker\"\n | \"Delete\"\n | \"Phone\"\n | \"PhoneDown\"\n | \"Headphone\"\n | \"HeadphoneMute\"\n | \"Send\"\n | \"Bell\"\n | \"BellRing\"\n | \"BellPing\"\n | \"BellMute\"\n | \"Message\"\n | \"MessageUnread\"\n | \"Setting\"\n | \"Search\"\n | \"Heart\"\n | \"Play\"\n | \"Pause\"\n | \"Sun\"\n | \"Photo\"\n | \"Lock\"\n | \"Vlc\"\n | \"Flag\"\n | \"Ball\"\n | \"Bulb\"\n | \"Terminal\"\n | \"Pencil\"\n | \"Info\"\n | \"Shield\"\n | \"ShieldLock\"\n | \"ShieldUser\"\n | \"Cup\"\n | \"Pin\"\n | \"VolumeHigh\"\n | \"VolumeHighLock\"\n | \"VolumeHighGlobe\"\n | \"VolumeMute\"\n | \"File\"\n | \"Category\"\n | \"Peace\"\n | \"Eye\"\n | \"EyeBlind\"\n | \"Warning\"\n | \"Funnel\"\n | \"Bookmark\"\n | \"Inbox\"\n | \"Thread\"\n | \"ThreadPlus\"\n | \"ThreadUnread\"\n | \"ThreadReply\"\n | \"Monitor\"\n | \"ScreenShare\"\n | \"Server\"\n | \"Prohibited\"\n | \"NoEntry\"\n | \"Mic\"\n | \"MicMute\"\n | \"VideoCamera\"\n | \"VideoCameraMute\"\n | \"Hash\"\n | \"HashLock\"\n | \"HashGlobe\"\n | \"HashSearch\"\n | \"HashPlus\"\n | \"Space\"\n | \"SpaceLock\"\n | \"SpaceGlobe\"\n | \"SpaceSearch\"\n | \"SpacePlus\"\n | \"ChevronRight\"\n | \"ChevronLeft\"\n | \"ChevronTop\"\n | \"ChevronBottom\"\n | \"Plus\"\n | \"Minus\"\n | \"Cross\"\n | \"VerticalDots\"\n | \"HorizontalDots\"\n | \"Check\"\n | \"CheckTwice\"\n | \"Download\"\n | \"External\"\n | \"Clock\"\n | \"RecentClock\"\n | \"Power\"\n | \"ReplyArrow\"\n | \"ArrowGoRight\"\n | \"ArrowGoRightPlus\"\n | \"ArrowGoRightCross\"\n | \"ArrowGoLeft\"\n | \"Markdown\"\n | \"Attachment\"\n | \"Alphabet\"\n | \"AlphabetUnderline\"\n | \"Text\"\n | \"Heading1\"\n | \"Heading2\"\n | \"Heading3\"\n | \"Bold\"\n | \"Italic\"\n | \"Underline\"\n | \"Strike\"\n | \"Link\"\n | \"Code\"\n | \"BlockCode\"\n | \"BlockQuote\"\n | \"OrderList\"\n | \"UnorderList\"\n | \"Mention\"\n | \"Filter\"\n | \"Sort\"\n | \"ArrowUpDown\"\n | \"ArrowRight\"\n | \"ArrowLeft\"\n | \"ArrowTop\"\n | \"ArrowBottom\"\n | \"ArrowDropRight\"\n | \"ArrowDropLeft\"\n | \"ArrowDropTop\"\n | \"ArrowDropBottom\"\n | \"Reload\"\n | \"Globe\"\n | \"Agent\"\n | \"People\"\n | \"PullRequest\"\n | \"Smartphone\"\n | \"Unavailable\"\n | \"Admin\";\n\nconst symbols = {\n person: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-480q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47ZM160-240v-32q0-34 17.5-62.5T224-378q62-31 126-46.5T480-440q66 0 130 15.5T736-378q29 15 46.5 43.5T800-272v32q0 33-23.5 56.5T720-160H240q-33 0-56.5-23.5T160-240Zm80 0h480v-32q0-11-5.5-20T700-306q-54-27-109-40.5T480-360q-56 0-111 13.5T260-306q-9 5-14.5 14t-5.5 20v32Zm240-320q33 0 56.5-23.5T560-640q0-33-23.5-56.5T480-720q-33 0-56.5 23.5T400-640q0 33 23.5 56.5T480-560Zm0-80Zm0 400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-480q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47ZM160-240v-32q0-34 17.5-62.5T224-378q62-31 126-46.5T480-440q66 0 130 15.5T736-378q29 15 46.5 43.5T800-272v32q0 33-23.5 56.5T720-160H240q-33 0-56.5-23.5T160-240Z\",\n ],\n },\n ],\n home: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-200h120v-200q0-17 11.5-28.5T400-440h160q17 0 28.5 11.5T600-400v200h120v-360L480-740 240-560v360Zm-80 0v-360q0-19 8.5-36t23.5-28l240-180q21-16 48-16t48 16l240 180q15 11 23.5 28t8.5 36v360q0 33-23.5 56.5T720-120H560q-17 0-28.5-11.5T520-160v-200h-80v200q0 17-11.5 28.5T400-120H240q-33 0-56.5-23.5T160-200Zm320-270Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-200v-360q0-19 8.5-36t23.5-28l240-180q21-16 48-16t48 16l240 180q15 11 23.5 28t8.5 36v360q0 33-23.5 56.5T720-120H600q-17 0-28.5-11.5T560-160v-200q0-17-11.5-28.5T520-400h-80q-17 0-28.5 11.5T400-360v200q0 17-11.5 28.5T360-120H240q-33 0-56.5-23.5T160-200Z\",\n ],\n },\n ],\n person_add: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M720-520h-80q-17 0-28.5-11.5T600-560q0-17 11.5-28.5T640-600h80v-80q0-17 11.5-28.5T760-720q17 0 28.5 11.5T800-680v80h80q17 0 28.5 11.5T920-560q0 17-11.5 28.5T880-520h-80v80q0 17-11.5 28.5T760-400q-17 0-28.5-11.5T720-440v-80Zm-360 40q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47ZM40-240v-32q0-34 17.5-62.5T104-378q62-31 126-46.5T360-440q66 0 130 15.5T616-378q29 15 46.5 43.5T680-272v32q0 33-23.5 56.5T600-160H120q-33 0-56.5-23.5T40-240Zm80 0h480v-32q0-11-5.5-20T580-306q-54-27-109-40.5T360-360q-56 0-111 13.5T140-306q-9 5-14.5 14t-5.5 20v32Zm240-320q33 0 56.5-23.5T440-640q0-33-23.5-56.5T360-720q-33 0-56.5 23.5T280-640q0 33 23.5 56.5T360-560Zm0-80Zm0 400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M720-520h-80q-17 0-28.5-11.5T600-560q0-17 11.5-28.5T640-600h80v-80q0-17 11.5-28.5T760-720q17 0 28.5 11.5T800-680v80h80q17 0 28.5 11.5T920-560q0 17-11.5 28.5T880-520h-80v80q0 17-11.5 28.5T760-400q-17 0-28.5-11.5T720-440v-80Zm-360 40q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47ZM40-240v-32q0-34 17.5-62.5T104-378q62-31 126-46.5T360-440q66 0 130 15.5T616-378q29 15 46.5 43.5T680-272v32q0 33-23.5 56.5T600-160H120q-33 0-56.5-23.5T40-240Z\",\n ],\n },\n ],\n add_circle: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-440v120q0 17 11.5 28.5T480-280q17 0 28.5-11.5T520-320v-120h120q17 0 28.5-11.5T680-480q0-17-11.5-28.5T640-520H520v-120q0-17-11.5-28.5T480-680q-17 0-28.5 11.5T440-640v120H320q-17 0-28.5 11.5T280-480q0 17 11.5 28.5T320-440h120Zm40 360q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-440v120q0 17 11.5 28.5T480-280q17 0 28.5-11.5T520-320v-120h120q17 0 28.5-11.5T680-480q0-17-11.5-28.5T640-520H520v-120q0-17-11.5-28.5T480-680q-17 0-28.5 11.5T440-640v120H320q-17 0-28.5 11.5T280-480q0 17 11.5 28.5T320-440h120Zm40 360q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z\",\n ],\n },\n ],\n star: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m354-287 126-76 126 77-33-144 111-96-146-13-58-136-58 135-146 13 111 97-33 143Zm126 18L314-169q-11 7-23 6t-21-8q-9-7-14-17.5t-2-23.5l44-189-147-127q-10-9-12.5-20.5T140-571q4-11 12-18t22-9l194-17 75-178q5-12 15.5-18t21.5-6q11 0 21.5 6t15.5 18l75 178 194 17q14 2 22 9t12 18q4 11 1.5 22.5T809-528L662-401l44 189q3 13-2 23.5T690-171q-9 7-21 8t-23-6L480-269Zm0-201Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-269 314-169q-11 7-23 6t-21-8q-9-7-14-17.5t-2-23.5l44-189-147-127q-10-9-12.5-20.5T140-571q4-11 12-18t22-9l194-17 75-178q5-12 15.5-18t21.5-6q11 0 21.5 6t15.5 18l75 178 194 17q14 2 22 9t12 18q4 11 1.5 22.5T809-528L662-401l44 189q3 13-2 23.5T690-171q-9 7-21 8t-23-6L480-269Z\",\n ],\n },\n ],\n mark_email_unread: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h360q17 0 28.5 11.5T560-760q0 17-11.5 28.5T520-720H160v480h640v-280q0-17 11.5-28.5T840-560q17 0 28.5 11.5T880-520v280q0 33-23.5 56.5T800-160H160Zm0-560v480-480Zm320 200 129-80q14-9 26.5-4.5T655-589q7 11 5 24t-16 22l-143 90q-10 6-21 6t-21-6L160-640v-80l320 200Zm280-120q-50 0-85-35t-35-85q0-50 35-85t85-35q50 0 85 35t35 85q0 50-35 85t-85 35Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M760-640q-50 0-85-35t-35-85q0-50 35-85t85-35q50 0 85 35t35 85q0 50-35 85t-85 35ZM160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h364q16 0 26.5 12t9.5 28q0 11 1 20.5t3 19.5q7 32 23 59.5t39 48.5l-146 92-268-168q-17-11-34.5-1T160-659q0 9 4 16.5t12 12.5l283 177q10 6 21 6t21-6l190-119q17 6 34 9t35 3q18 0 36-3t35-10q17-7 33 2t16 26v305q0 33-23.5 56.5T800-160H160Z\",\n ],\n },\n ],\n mail: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h640q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160Zm640-480L501-453q-5 3-10.5 4.5T480-447q-5 0-10.5-1.5T459-453L160-640v400h640v-400ZM480-520l320-200H160l320 200ZM160-640v10-59 1-32 32-.5 58.5-10 400-400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h640q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160Zm320-287q5 0 10.5-1.5T501-453l283-177q8-5 12-12.5t4-16.5q0-20-17-30t-35 1L480-520 212-688q-18-11-35-.5T160-659q0 10 4 17.5t12 11.5l283 177q5 3 10.5 4.5T480-447Z\",\n ],\n },\n ],\n explore: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-440q-17 0-28.5-11.5T440-480q0-17 11.5-28.5T480-520q17 0 28.5 11.5T520-480q0 17-11.5 28.5T480-440Zm0 360q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320ZM297-277l250-117q6-3 11-8t8-11l117-250q5-10-2.5-17.5T663-683L413-566q-6 3-11 8t-8 11L277-297q-5 10 2.5 17.5T297-277Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-440q-17 0-28.5-11.5T440-480q0-17 11.5-28.5T480-520q17 0 28.5 11.5T520-480q0 17-11.5 28.5T480-440Zm0 360q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0 0q-134 0-227-93t-93-227q0-134 93-227t227-93q134 0 227 93t93 227q0 134-93 227t-227 93Zm67-234q6-3 11-8t8-11l117-250q5-10-2.5-17.5T663-683L413-566q-6 3-11 8t-8 11L277-297q-5 10 2.5 17.5T297-277l250-117Z\",\n ],\n },\n ],\n add_reaction: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-480Zm0 400q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q33 0 65 5t62 15q23 8 29 23.5t1 30.5q-5 15-18.5 23.5T588-781q-26-9-52.5-14t-55.5-5q-133 0-226.5 93.5T160-480q0 133 93.5 226.5T480-160q133 0 226.5-93.5T800-480q0-18-2-36t-6-35q-5-19 5-31t25-15q15-3 29.5 4.5T871-564q5 20 7 41t2 43q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm320-680h-40q-17 0-28.5-11.5T720-800q0-17 11.5-28.5T760-840h40v-40q0-17 11.5-28.5T840-920q17 0 28.5 11.5T880-880v40h40q17 0 28.5 11.5T960-800q0 17-11.5 28.5T920-760h-40v40q0 17-11.5 28.5T840-680q-17 0-28.5-11.5T800-720v-40ZM620-520q25 0 42.5-17.5T680-580q0-25-17.5-42.5T620-640q-25 0-42.5 17.5T560-580q0 25 17.5 42.5T620-520Zm-280 0q25 0 42.5-17.5T400-580q0-25-17.5-42.5T340-640q-25 0-42.5 17.5T280-580q0 25 17.5 42.5T340-520Zm140 260q58 0 107-28t79-76q6-12-1-24t-21-12H316q-14 0-21 12t-1 24q30 48 79.5 76T480-260Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q34 0 66 5t63 16q14 5 22.5 17.5T640-814v57q0 32 22.5 54.5T717-680h3v23q0 23 17 40t40 17h51q15 0 27 9t16 24q5 21 7 42.5t2 44.5q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-180q58 0 107-28t79-76q6-12-1-24t-21-12H316q-14 0-21 12t-1 24q30 48 79.5 76T480-260ZM340-520q25 0 42.5-17.5T400-580q0-25-17.5-42.5T340-640q-25 0-42.5 17.5T280-580q0 25 17.5 42.5T340-520Zm280 0q25 0 42.5-17.5T680-580q0-25-17.5-42.5T620-640q-25 0-42.5 17.5T560-580q0 25 17.5 42.5T620-520Zm180-240h-40q-17 0-28.5-11.5T720-800q0-17 11.5-28.5T760-840h40v-40q0-17 11.5-28.5T840-920q17 0 28.5 11.5T880-880v40h40q17 0 28.5 11.5T960-800q0 17-11.5 28.5T920-760h-40v40q0 17-11.5 28.5T840-680q-17 0-28.5-11.5T800-720v-40Z\",\n ],\n },\n ],\n sentiment_satisfied: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-260q53 0 100.5-23t76.5-67q11-17 3-33.5T634-400q-8 0-14.5 3.5T609-386q-23 31-57 48.5T480-320q-38 0-72-17.5T351-386q-5-7-11.5-10.5T325-400q-18 0-26 16t3 32q29 45 76.5 68.5T480-260Zm140-260q25 0 42.5-17.5T680-580q0-25-17.5-42.5T620-640q-25 0-42.5 17.5T560-580q0 25 17.5 42.5T620-520Zm-280 0q25 0 42.5-17.5T400-580q0-25-17.5-42.5T340-640q-25 0-42.5 17.5T280-580q0 25 17.5 42.5T340-520ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-400Zm0 320q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-260q53 0 100.5-23t76.5-67q11-17 3-33.5T634-400q-8 0-14.5 3.5T609-386q-23 31-57 48.5T480-320q-38 0-72-17.5T351-386q-5-7-11.5-10.5T325-400q-18 0-26 16t3 32q29 45 76.5 68.5T480-260Zm140-260q25 0 42.5-17.5T680-580q0-25-17.5-42.5T620-640q-25 0-42.5 17.5T560-580q0 25 17.5 42.5T620-520Zm-280 0q25 0 42.5-17.5T400-580q0-25-17.5-42.5T340-640q-25 0-42.5 17.5T280-580q0 25 17.5 42.5T340-520ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z\",\n ],\n },\n ],\n call_end: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m136-304-92-90q-12-12-12-28t12-28q88-95 203-142.5T480-640q118 0 232.5 47.5T916-450q12 12 12 28t-12 28l-92 90q-11 11-25.5 12t-26.5-8l-116-88q-8-6-12-14t-4-18v-114q-38-12-78-19t-82-7q-42 0-82 7t-78 19v114q0 10-4 18t-12 14l-116 88q-12 9-26.5 8T136-304Zm104-198q-29 15-56 34.5T128-424l40 40 72-56v-62Zm480 2v60l72 56 40-38q-29-26-56-45t-56-33Zm-480-2Zm480 2Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-640q118 0 232.5 47.5T916-450q12 12 12 28t-12 28l-92 90q-11 11-25.5 12t-26.5-8l-116-88q-8-6-12-14t-4-18v-114q-38-12-78-19t-82-7q-42 0-82 7t-78 19v114q0 10-4 18t-12 14l-116 88q-12 9-26.5 8T136-304l-92-90q-12-12-12-28t12-28q88-95 203-142.5T480-640Z\",\n ],\n },\n ],\n headphones: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-120h-80q-33 0-56.5-23.5T120-200v-280q0-75 28.5-140.5t77-114q48.5-48.5 114-77T480-840q75 0 140.5 28.5t114 77q48.5 48.5 77 114T840-480v280q0 33-23.5 56.5T760-120h-80q-33 0-56.5-23.5T600-200v-160q0-33 23.5-56.5T680-440h80v-40q0-117-81.5-198.5T480-760q-117 0-198.5 81.5T200-480v40h80q33 0 56.5 23.5T360-360v160q0 33-23.5 56.5T280-120Zm0-240h-80v160h80v-160Zm400 0v160h80v-160h-80Zm-400 0h-80 80Zm400 0h80-80Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-120h-80q-33 0-56.5-23.5T120-200v-280q0-75 28.5-140.5t77-114q48.5-48.5 114-77T480-840q75 0 140.5 28.5t114 77q48.5 48.5 77 114T840-480v280q0 33-23.5 56.5T760-120h-80q-33 0-56.5-23.5T600-200v-160q0-33 23.5-56.5T680-440h80v-40q0-117-81.5-198.5T480-760q-117 0-198.5 81.5T200-480v40h80q33 0 56.5 23.5T360-360v160q0 33-23.5 56.5T280-120Z\",\n ],\n },\n ],\n call: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M798-120q-125 0-247-54.5T329-329Q229-429 174.5-551T120-798q0-18 12-30t30-12h162q14 0 25 9.5t13 22.5l26 140q2 16-1 27t-11 19l-97 98q20 37 47.5 71.5T387-386q31 31 65 57.5t72 48.5l94-94q9-9 23.5-13.5T670-390l138 28q14 4 23 14.5t9 23.5v162q0 18-12 30t-30 12ZM241-600l66-66-17-94h-89q5 41 14 81t26 79Zm358 358q39 17 79.5 27t81.5 13v-88l-94-19-67 67ZM241-600Zm358 358Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M798-120q-125 0-247-54.5T329-329Q229-429 174.5-551T120-798q0-18 12-30t30-12h162q14 0 25 9.5t13 22.5l26 140q2 16-1 27t-11 19l-97 98q20 37 47.5 71.5T387-386q31 31 65 57.5t72 48.5l94-94q9-9 23.5-13.5T670-390l138 28q14 4 23 14.5t9 23.5v162q0 18-12 30t-30 12Z\",\n ],\n },\n ],\n delete: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-120q-33 0-56.5-23.5T200-200v-520q-17 0-28.5-11.5T160-760q0-17 11.5-28.5T200-800h160q0-17 11.5-28.5T400-840h160q17 0 28.5 11.5T600-800h160q17 0 28.5 11.5T800-760q0 17-11.5 28.5T760-720v520q0 33-23.5 56.5T680-120H280Zm400-600H280v520h400v-520ZM400-280q17 0 28.5-11.5T440-320v-280q0-17-11.5-28.5T400-640q-17 0-28.5 11.5T360-600v280q0 17 11.5 28.5T400-280Zm160 0q17 0 28.5-11.5T600-320v-280q0-17-11.5-28.5T560-640q-17 0-28.5 11.5T520-600v280q0 17 11.5 28.5T560-280ZM280-720v520-520Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-120q-33 0-56.5-23.5T200-200v-520q-17 0-28.5-11.5T160-760q0-17 11.5-28.5T200-800h160q0-17 11.5-28.5T400-840h160q17 0 28.5 11.5T600-800h160q17 0 28.5 11.5T800-760q0 17-11.5 28.5T760-720v520q0 33-23.5 56.5T680-120H280Zm120-160q17 0 28.5-11.5T440-320v-280q0-17-11.5-28.5T400-640q-17 0-28.5 11.5T360-600v280q0 17 11.5 28.5T400-280Zm160 0q17 0 28.5-11.5T600-320v-280q0-17-11.5-28.5T560-640q-17 0-28.5 11.5T520-600v280q0 17 11.5 28.5T560-280Z\",\n ],\n },\n ],\n eco: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M216-176q-45-45-70.5-104T120-402q0-63 24-124.5T222-642q60-60 169.5-91T675-759q26 1 48 11t39 27q17 17 27 39.5t11 48.5q2 82-4.5 151.5t-21 125.5q-14.5 56-37 99.5T684-182q-53 53-112.5 77.5T450-80q-65 0-127-25.5T216-176Zm112-16q29 17 59.5 24.5T450-160q46 0 91-18.5t86-59.5q18-18 36.5-50.5t32-85Q709-426 716-500.5t2-177.5q-49-2-110.5-1.5T485-670q-61 9-116 29t-90 55q-45 45-62 89t-17 85q0 59 22.5 103.5T262-246q42-80 111-153.5T534-520q-72 63-125.5 142.5T328-192Zm0 0Zm0 0Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M450-80q-33 0-66.5-7.5T315-109q12-121 70-226t149-185q-110 56-190.5 148T231-162q-4-3-7.5-6.5L216-176q-47-47-71.5-105T120-402q0-68 27-130t75-110q70-70 173.5-98T675-760q26 1 48 11.5t39 27.5q17 17 27 39.5t12 48.5q6 180-21 281t-96 170q-49 49-109.5 75.5T450-80Z\",\n ],\n },\n ],\n sticky_note_2: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-200h360v-160q0-17 11.5-28.5T600-400h160v-360H200v560Zm0 80q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v367q0 16-6 30.5T817-337L623-143q-11 11-25.5 17t-30.5 6H200Zm240-280H320q-17 0-28.5-11.5T280-440q0-17 11.5-28.5T320-480h120q17 0 28.5 11.5T480-440q0 17-11.5 28.5T440-400Zm200-160H320q-17 0-28.5-11.5T280-600q0-17 11.5-28.5T320-640h320q17 0 28.5 11.5T680-600q0 17-11.5 28.5T640-560ZM200-200v-560 560Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m560-200 200-200H600q-17 0-28.5 11.5T560-360v160Zm-360 80q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v367q0 16-6 30.5T817-337L623-143q-11 11-25.5 17t-30.5 6H200Zm120-280h120q17 0 28.5-11.5T480-440q0-17-11.5-28.5T440-480H320q-17 0-28.5 11.5T280-440q0 17 11.5 28.5T320-400Zm0-160h320q17 0 28.5-11.5T680-600q0-17-11.5-28.5T640-640H320q-17 0-28.5 11.5T280-600q0 17 11.5 28.5T320-560Z\",\n ],\n },\n ],\n notifications_active: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h40v-280q0-83 50-147.5T420-792v-28q0-25 17.5-42.5T480-880q25 0 42.5 17.5T540-820v28q80 20 130 84.5T720-560v280h40q17 0 28.5 11.5T800-240q0 17-11.5 28.5T760-200H200Zm280-300Zm0 420q-33 0-56.5-23.5T400-160h160q0 33-23.5 56.5T480-80ZM320-280h320v-280q0-66-47-113t-113-47q-66 0-113 47t-47 113v280ZM120-560q-17 0-28.5-13T82-603q8-75 42-139.5T211-855q13-11 29.5-10t26.5 15q10 14 8 30t-15 28q-39 37-64 86t-33 106q-2 17-14 28.5T120-560Zm720 0q-17 0-29-11.5T797-600q-8-57-33-106t-64-86q-13-12-15-28t8-30q10-14 26.5-15t29.5 10q53 48 87 112.5T878-603q2 17-9.5 30T840-560Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h40v-280q0-83 50-147.5T420-792v-28q0-25 17.5-42.5T480-880q25 0 42.5 17.5T540-820v28q80 20 130 84.5T720-560v280h40q17 0 28.5 11.5T800-240q0 17-11.5 28.5T760-200H200ZM480-80q-33 0-56.5-23.5T400-160h160q0 33-23.5 56.5T480-80ZM120-560q-17 0-28.5-13T82-603q8-75 42-139.5T211-855q13-11 29.5-10t26.5 15q10 14 8 30t-15 28q-39 37-64 86t-33 106q-2 17-14 28.5T120-560Zm720 0q-17 0-29-11.5T797-600q-8-57-33-106t-64-86q-13-12-15-28t8-30q10-14 26.5-15t29.5 10q53 48 87 112.5T878-603q2 17-9.5 30T840-560Z\",\n ],\n },\n ],\n arrow_upward: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-647 244-451q-12 12-28 11.5T188-452q-11-12-11.5-28t11.5-28l264-264q6-6 13-8.5t15-2.5q8 0 15 2.5t13 8.5l264 264q11 11 11 27.5T772-452q-12 12-28.5 12T715-452L520-647v447q0 17-11.5 28.5T480-160q-17 0-28.5-11.5T440-200v-447Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-647 244-451q-12 12-28 11.5T188-452q-11-12-11.5-28t11.5-28l264-264q6-6 13-8.5t15-2.5q8 0 15 2.5t13 8.5l264 264q11 11 11 27.5T772-452q-12 12-28.5 12T715-452L520-647v447q0 17-11.5 28.5T480-160q-17 0-28.5-11.5T440-200v-447Z\",\n ],\n },\n ],\n mark_chat_unread: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m240-240-92 92q-19 19-43.5 8.5T80-177v-623q0-33 23.5-56.5T160-880h360q17 0 28.5 11.5T560-840q0 17-11.5 28.5T520-800H160v525l46-45h594v-280q0-17 11.5-28.5T840-640q17 0 28.5 11.5T880-600v280q0 33-23.5 56.5T800-240H240Zm520-480q-50 0-85-35t-35-85q0-50 35-85t85-35q50 0 85 35t35 85q0 50-35 85t-85 35Zm-600-80v480-480Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M760-720q-50 0-85-35t-35-85q0-50 35-85t85-35q50 0 85 35t35 85q0 50-35 85t-85 35ZM240-240l-92 92q-19 19-43.5 8.5T80-177v-623q0-33 23.5-56.5T160-880h364q16 0 26.5 12t9.5 28q0 45 19.5 85t54.5 69q26 21 58.5 33.5T760-640q18 0 36-3t35-10q17-7 33 2t16 26v305q0 33-23.5 56.5T800-240H240Z\",\n ],\n },\n ],\n notifications: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h40v-280q0-83 50-147.5T420-792v-28q0-25 17.5-42.5T480-880q25 0 42.5 17.5T540-820v28q80 20 130 84.5T720-560v280h40q17 0 28.5 11.5T800-240q0 17-11.5 28.5T760-200H200Zm280-300Zm0 420q-33 0-56.5-23.5T400-160h160q0 33-23.5 56.5T480-80ZM320-280h320v-280q0-66-47-113t-113-47q-66 0-113 47t-47 113v280Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h40v-280q0-83 50-147.5T420-792v-28q0-25 17.5-42.5T480-880q25 0 42.5 17.5T540-820v28q80 20 130 84.5T720-560v280h40q17 0 28.5 11.5T800-240q0 17-11.5 28.5T760-200H200ZM480-80q-33 0-56.5-23.5T400-160h160q0 33-23.5 56.5T480-80Z\",\n ],\n },\n ],\n notifications_off: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M646-200H200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h40v-280q0-33 8.5-65t25.5-61l60 60q-7 16-10.5 32.5T320-560v280h248L84-764q-11-11-11-28t11-28q11-11 28-11t28 11l680 680q11 11 11.5 27.5T820-84q-11 11-28 11t-28-11L646-200ZM540-792q80 20 130 84.5T720-560v110q0 20-12.5 30T680-410q-15 0-27.5-10.5T640-451v-109q0-66-47-113t-113-47q-16 0-34 4t-32 10q-17 7-33.5 3T355-722q-8-13-5.5-27.5T365-771q13-7 27-12t28-9v-28q0-25 17.5-42.5T480-880q25 0 42.5 17.5T540-820v28Zm-96 388Zm36 324q-30 0-53.5-16.5T403-141q0-8 6.5-13.5T424-160h112q8 0 14.5 5.5T557-141q0 28-23.5 44.5T480-80Zm33-481Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M646-200H200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h40v-280q0-33 8.5-65t25.5-61l126 126H288L84-764q-11-11-11-28t11-28q11-11 28-11t28 11l680 680q11 11 11.5 27.5T820-84q-11 11-28 11t-28-11L646-200Zm74-251q0 12-7 22t-18 15q-11 5-23 2.5T652-422L367-707q-7-7-10-15t-3-17q0-11 5.5-21.5T375-776q11-5 22-9t23-7v-28q0-25 17.5-42.5T480-880q25 0 42.5 17.5T540-820v28q80 20 130 85t50 147v109ZM480-80q-30 0-53.5-16.5T403-141q0-8 6.5-13.5T424-160h112q8 0 14.5 5.5T557-141q0 28-23.5 44.5T480-80Z\",\n ],\n },\n ],\n headset_off: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M800-280q-15 0-27.5-10.5T760-321v-79h-80q-20 0-30-12.5T640-440q0-15 10-27.5t30-12.5h80v-40q0-118-82-199t-198-81q-44 0-83.5 12.5T324-752l-58-56q45-35 99.5-53.5T480-880q74 0 139.5 28T734-775q49 49 77.5 114.5T840-520v200q0 20-12.5 30T800-280ZM520-40q-17 0-28.5-11.5T480-80q0-17 11.5-28.5T520-120h207l-40-40h-7q-33 0-56.5-23.5T600-240v-7L221-626q-9 24-15 51.5t-6 54.5v40h80q33 0 56.5 23.5T360-400v160q0 33-23.5 56.5T280-160h-80q-33 0-56.5-23.5T120-240v-280q0-45 10.5-87t30.5-80L56-792q-12-12-12-28t12-28q12-11 28-11.5t28 11.5L868-91q14 14 6.5 32.5T847-40H520ZM200-400v160h80v-160h-80Zm0 0h80-80Zm480 0h80-80Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M840-331q0 40-29.5 39T760-314l-98-98q-19-19-8.5-43.5T691-480h69v-40q0-118-82-199t-198-81q-44 0-83.5 12.5T324-752l-58-56q45-35 99.5-53.5T480-880q74 0 139.5 28T734-775q49 49 77.5 114.5T840-520v189ZM520-40q-17 0-28.5-11.5T480-80q0-17 11.5-28.5T520-120h207l-40-40h-7q-33 0-56.5-23.5T600-240v-7L221-626q-9 24-15 51.5t-6 54.5v40h80q33 0 56.5 23.5T360-400v160q0 33-23.5 56.5T280-160h-80q-33 0-56.5-23.5T120-240v-280q0-45 10.5-87t30.5-80L56-792q-12-12-12-28t12-28q12-11 28-11.5t28 11.5L868-91q14 14 6.5 32.5T847-40H520Z\",\n ],\n },\n ],\n notification_important: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h40v-280q0-83 50-147.5T420-792v-28q0-25 17.5-42.5T480-880q25 0 42.5 17.5T540-820v28q80 20 130 84.5T720-560v280h40q17 0 28.5 11.5T800-240q0 17-11.5 28.5T760-200H200Zm280-300Zm0 420q-33 0-56.5-23.5T400-160h160q0 33-23.5 56.5T480-80ZM320-280h320v-280q0-66-47-113t-113-47q-66 0-113 47t-47 113v280Zm160-160q17 0 28.5-11.5T520-480v-120q0-17-11.5-28.5T480-640q-17 0-28.5 11.5T440-600v120q0 17 11.5 28.5T480-440Zm0 120q17 0 28.5-11.5T520-360q0-17-11.5-28.5T480-400q-17 0-28.5 11.5T440-360q0 17 11.5 28.5T480-320Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h40v-280q0-83 50-147.5T420-792v-28q0-25 17.5-42.5T480-880q25 0 42.5 17.5T540-820v28q80 20 130 84.5T720-560v280h40q17 0 28.5 11.5T800-240q0 17-11.5 28.5T760-200H200ZM480-80q-33 0-56.5-23.5T400-160h160q0 33-23.5 56.5T480-80Zm0-360q17 0 28.5-11.5T520-480v-120q0-17-11.5-28.5T480-640q-17 0-28.5 11.5T440-600v120q0 17 11.5 28.5T480-440Zm0 120q17 0 28.5-11.5T520-360q0-17-11.5-28.5T480-400q-17 0-28.5 11.5T440-360q0 17 11.5 28.5T480-320Z\",\n ],\n },\n ],\n chat: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m240-240-92 92q-19 19-43.5 8.5T80-177v-623q0-33 23.5-56.5T160-880h640q33 0 56.5 23.5T880-800v480q0 33-23.5 56.5T800-240H240Zm-34-80h594v-480H160v525l46-45Zm-46 0v-480 480Zm120-80h240q17 0 28.5-11.5T560-440q0-17-11.5-28.5T520-480H280q-17 0-28.5 11.5T240-440q0 17 11.5 28.5T280-400Zm0-120h400q17 0 28.5-11.5T720-560q0-17-11.5-28.5T680-600H280q-17 0-28.5 11.5T240-560q0 17 11.5 28.5T280-520Zm0-120h400q17 0 28.5-11.5T720-680q0-17-11.5-28.5T680-720H280q-17 0-28.5 11.5T240-680q0 17 11.5 28.5T280-640Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m240-240-92 92q-19 19-43.5 8.5T80-177v-623q0-33 23.5-56.5T160-880h640q33 0 56.5 23.5T880-800v480q0 33-23.5 56.5T800-240H240Zm40-160h240q17 0 28.5-11.5T560-440q0-17-11.5-28.5T520-480H280q-17 0-28.5 11.5T240-440q0 17 11.5 28.5T280-400Zm0-120h400q17 0 28.5-11.5T720-560q0-17-11.5-28.5T680-600H280q-17 0-28.5 11.5T240-560q0 17 11.5 28.5T280-520Zm0-120h400q17 0 28.5-11.5T720-680q0-17-11.5-28.5T680-720H280q-17 0-28.5 11.5T240-680q0 17 11.5 28.5T280-640Z\",\n ],\n },\n ],\n play_arrow: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M320-273v-414q0-17 12-28.5t28-11.5q5 0 10.5 1.5T381-721l326 207q9 6 13.5 15t4.5 19q0 10-4.5 19T707-446L381-239q-5 3-10.5 4.5T360-233q-16 0-28-11.5T320-273Zm80-207Zm0 134 210-134-210-134v268Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M320-273v-414q0-17 12-28.5t28-11.5q5 0 10.5 1.5T381-721l326 207q9 6 13.5 15t4.5 19q0 10-4.5 19T707-446L381-239q-5 3-10.5 4.5T360-233q-16 0-28-11.5T320-273Z\",\n ],\n },\n ],\n settings: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M433-80q-27 0-46.5-18T363-142l-9-66q-13-5-24.5-12T307-235l-62 26q-25 11-50 2t-39-32l-47-82q-14-23-8-49t27-43l53-40q-1-7-1-13.5v-27q0-6.5 1-13.5l-53-40q-21-17-27-43t8-49l47-82q14-23 39-32t50 2l62 26q11-8 23-15t24-12l9-66q4-26 23.5-44t46.5-18h94q27 0 46.5 18t23.5 44l9 66q13 5 24.5 12t22.5 15l62-26q25-11 50-2t39 32l47 82q14 23 8 49t-27 43l-53 40q1 7 1 13.5v27q0 6.5-2 13.5l53 40q21 17 27 43t-8 49l-48 82q-14 23-39 32t-50-2l-60-26q-11 8-23 15t-24 12l-9 66q-4 26-23.5 44T527-80h-94Zm7-80h79l14-106q31-8 57.5-23.5T639-327l99 41 39-68-86-65q5-14 7-29.5t2-31.5q0-16-2-31.5t-7-29.5l86-65-39-68-99 42q-22-23-48.5-38.5T533-694l-13-106h-79l-14 106q-31 8-57.5 23.5T321-633l-99-41-39 68 86 64q-5 15-7 30t-2 32q0 16 2 31t7 30l-86 65 39 68 99-42q22 23 48.5 38.5T427-266l13 106Zm42-180q58 0 99-41t41-99q0-58-41-99t-99-41q-59 0-99.5 41T342-480q0 58 40.5 99t99.5 41Zm-2-140Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M433-80q-27 0-46.5-18T363-142l-9-66q-13-5-24.5-12T307-235l-62 26q-25 11-50 2t-39-32l-47-82q-14-23-8-49t27-43l53-40q-1-7-1-13.5v-27q0-6.5 1-13.5l-53-40q-21-17-27-43t8-49l47-82q14-23 39-32t50 2l62 26q11-8 23-15t24-12l9-66q4-26 23.5-44t46.5-18h94q27 0 46.5 18t23.5 44l9 66q13 5 24.5 12t22.5 15l62-26q25-11 50-2t39 32l47 82q14 23 8 49t-27 43l-53 40q1 7 1 13.5v27q0 6.5-2 13.5l53 40q21 17 27 43t-8 49l-48 82q-14 23-39 32t-50-2l-60-26q-11 8-23 15t-24 12l-9 66q-4 26-23.5 44T527-80h-94Zm49-260q58 0 99-41t41-99q0-58-41-99t-99-41q-59 0-99.5 41T342-480q0 58 40.5 99t99.5 41Z\",\n ],\n },\n ],\n image: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-560H200v560Zm0 0v-560 560Zm80-80h400q12 0 18-11t-2-21L586-459q-6-8-16-8t-16 8L450-320l-74-99q-6-8-16-8t-16 8l-80 107q-8 10-2 21t18 11Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm80-160h400q12 0 18-11t-2-21L586-459q-6-8-16-8t-16 8L450-320l-74-99q-6-8-16-8t-16 8l-80 107q-8 10-2 21t18 11Z\",\n ],\n },\n ],\n light_mode: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-360q50 0 85-35t35-85q0-50-35-85t-85-35q-50 0-85 35t-35 85q0 50 35 85t85 35Zm0 80q-83 0-141.5-58.5T280-480q0-83 58.5-141.5T480-680q83 0 141.5 58.5T680-480q0 83-58.5 141.5T480-280ZM80-440q-17 0-28.5-11.5T40-480q0-17 11.5-28.5T80-520h80q17 0 28.5 11.5T200-480q0 17-11.5 28.5T160-440H80Zm720 0q-17 0-28.5-11.5T760-480q0-17 11.5-28.5T800-520h80q17 0 28.5 11.5T920-480q0 17-11.5 28.5T880-440h-80ZM480-760q-17 0-28.5-11.5T440-800v-80q0-17 11.5-28.5T480-920q17 0 28.5 11.5T520-880v80q0 17-11.5 28.5T480-760Zm0 720q-17 0-28.5-11.5T440-80v-80q0-17 11.5-28.5T480-200q17 0 28.5 11.5T520-160v80q0 17-11.5 28.5T480-40ZM226-678l-43-42q-12-11-11.5-28t11.5-29q12-12 29-12t28 12l42 43q11 12 11 28t-11 28q-11 12-27.5 11.5T226-678Zm494 495-42-43q-11-12-11-28.5t11-27.5q11-12 27.5-11.5T734-282l43 42q12 11 11.5 28T777-183q-12 12-29 12t-28-12Zm-42-495q-12-11-11.5-27.5T678-734l42-43q11-12 28-11.5t29 11.5q12 12 12 29t-12 28l-43 42q-12 11-28 11t-28-11ZM183-183q-12-12-12-29t12-28l43-42q12-11 28.5-11t27.5 11q12 11 11.5 27.5T282-226l-42 43q-11 12-28 11.5T183-183Zm297-297Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-280q-83 0-141.5-58.5T280-480q0-83 58.5-141.5T480-680q83 0 141.5 58.5T680-480q0 83-58.5 141.5T480-280ZM80-440q-17 0-28.5-11.5T40-480q0-17 11.5-28.5T80-520h80q17 0 28.5 11.5T200-480q0 17-11.5 28.5T160-440H80Zm720 0q-17 0-28.5-11.5T760-480q0-17 11.5-28.5T800-520h80q17 0 28.5 11.5T920-480q0 17-11.5 28.5T880-440h-80ZM480-760q-17 0-28.5-11.5T440-800v-80q0-17 11.5-28.5T480-920q17 0 28.5 11.5T520-880v80q0 17-11.5 28.5T480-760Zm0 720q-17 0-28.5-11.5T440-80v-80q0-17 11.5-28.5T480-200q17 0 28.5 11.5T520-160v80q0 17-11.5 28.5T480-40ZM226-678l-43-42q-12-11-11.5-28t11.5-29q12-12 29-12t28 12l42 43q11 12 11 28t-11 28q-11 12-27.5 11.5T226-678Zm494 495-42-43q-11-12-11-28.5t11-27.5q11-12 27.5-11.5T734-282l43 42q12 11 11.5 28T777-183q-12 12-29 12t-28-12Zm-42-495q-12-11-11.5-27.5T678-734l42-43q11-12 28-11.5t29 11.5q12 12 12 29t-12 28l-43 42q-12 11-28 11t-28-11ZM183-183q-12-12-12-29t12-28l43-42q12-11 28.5-11t27.5 11q12 11 11.5 27.5T282-226l-42 43q-11 12-28 11.5T183-183Z\",\n ],\n },\n ],\n lock: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-80q-33 0-56.5-23.5T160-160v-400q0-33 23.5-56.5T240-640h40v-80q0-83 58.5-141.5T480-920q83 0 141.5 58.5T680-720v80h40q33 0 56.5 23.5T800-560v400q0 33-23.5 56.5T720-80H240Zm0-80h480v-400H240v400Zm240-120q33 0 56.5-23.5T560-360q0-33-23.5-56.5T480-440q-33 0-56.5 23.5T400-360q0 33 23.5 56.5T480-280ZM360-640h240v-80q0-50-35-85t-85-35q-50 0-85 35t-35 85v80ZM240-160v-400 400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-80q-33 0-56.5-23.5T160-160v-400q0-33 23.5-56.5T240-640h40v-80q0-83 58.5-141.5T480-920q83 0 141.5 58.5T680-720v80h40q33 0 56.5 23.5T800-560v400q0 33-23.5 56.5T720-80H240Zm240-200q33 0 56.5-23.5T560-360q0-33-23.5-56.5T480-440q-33 0-56.5 23.5T400-360q0 33 23.5 56.5T480-280ZM360-640h240v-80q0-50-35-85t-85-35q-50 0-85 35t-35 85v80Z\",\n ],\n },\n ],\n search: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M380-320q-109 0-184.5-75.5T120-580q0-109 75.5-184.5T380-840q109 0 184.5 75.5T640-580q0 44-14 83t-38 69l224 224q11 11 11 28t-11 28q-11 11-28 11t-28-11L532-372q-30 24-69 38t-83 14Zm0-80q75 0 127.5-52.5T560-580q0-75-52.5-127.5T380-760q-75 0-127.5 52.5T200-580q0 75 52.5 127.5T380-400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M380-320q-109 0-184.5-75.5T120-580q0-109 75.5-184.5T380-840q109 0 184.5 75.5T640-580q0 44-14 83t-38 69l224 224q11 11 11 28t-11 28q-11 11-28 11t-28-11L532-372q-30 24-69 38t-83 14Zm0-80q75 0 127.5-52.5T560-580q0-75-52.5-127.5T380-760q-75 0-127.5 52.5T200-580q0 75 52.5 127.5T380-400Z\",\n ],\n },\n ],\n favorite: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-147q-14 0-28.5-5T426-168l-69-63q-106-97-191.5-192.5T80-634q0-94 63-157t157-63q53 0 100 22.5t80 61.5q33-39 80-61.5T660-854q94 0 157 63t63 157q0 115-85 211T602-230l-68 62q-11 11-25.5 16t-28.5 5Zm-38-543q-29-41-62-62.5T300-774q-60 0-100 40t-40 100q0 52 37 110.5T285.5-410q51.5 55 106 103t88.5 79q34-31 88.5-79t106-103Q726-465 763-523.5T800-634q0-60-40-100t-100-40q-47 0-80 21.5T518-690q-7 10-17 15t-21 5q-11 0-21-5t-17-15Zm38 189Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-147q-14 0-28.5-5T426-168l-69-63q-106-97-191.5-192.5T80-634q0-94 63-157t157-63q53 0 100 22.5t80 61.5q33-39 80-61.5T660-854q94 0 157 63t63 157q0 115-85 211T602-230l-68 62q-11 11-25.5 16t-28.5 5Z\",\n ],\n },\n ],\n pause: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M600-200q-33 0-56.5-23.5T520-280v-400q0-33 23.5-56.5T600-760h80q33 0 56.5 23.5T760-680v400q0 33-23.5 56.5T680-200h-80Zm-320 0q-33 0-56.5-23.5T200-280v-400q0-33 23.5-56.5T280-760h80q33 0 56.5 23.5T440-680v400q0 33-23.5 56.5T360-200h-80Zm320-80h80v-400h-80v400Zm-320 0h80v-400h-80v400Zm0-400v400-400Zm320 0v400-400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M640-200q-33 0-56.5-23.5T560-280v-400q0-33 23.5-56.5T640-760q33 0 56.5 23.5T720-680v400q0 33-23.5 56.5T640-200Zm-320 0q-33 0-56.5-23.5T240-280v-400q0-33 23.5-56.5T320-760q33 0 56.5 23.5T400-680v400q0 33-23.5 56.5T320-200Z\",\n ],\n },\n ],\n sports_basketball: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M162-520h114q-6-38-23-71t-43-59q-18 29-30.5 61.5T162-520Zm522 0h114q-5-36-17.5-68.5T750-650q-26 26-43 59t-23 71ZM210-310q26-26 43-59t23-71H162q5 36 17.5 68.5T210-310Zm540 0q18-29 30.5-61.5T798-440H684q6 38 23 71t43 59ZM358-520h82v-278q-53 8-98.5 29.5T260-712q39 38 64.5 86.5T358-520Zm162 0h82q8-57 33.5-105.5T700-712q-36-35-81.5-56.5T520-798v278Zm-80 358v-278h-82q-8 57-33.5 105.5T260-248q36 35 81.5 56.5T440-162Zm80 0q53-8 98.5-29.5T700-248q-39-38-64.5-86.5T602-440h-82v278Zm-40-318Zm0 400q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M82-521q5-51 21-96.5t44-85.5q35 36 58.5 83.5T236-521H82Zm642 0q7-51 30-98t59-83q28 39 44 85t21 96H724ZM147-258q-28-39-44-84.5T82-439h154q-7 51-30.5 98T147-258Zm666 0q-36-36-59-83t-30-98h154q-5 50-21 96t-44 85ZM317-521q-8-72-39-133t-81-110q48-48 109.5-77T439-878v357H317Zm204 0v-357q71 8 132.5 37T763-764q-51 48-81.5 109.5T643-521H521ZM439-82q-72-8-133-37.5T197-197q51-48 81.5-109T317-439h122v357Zm82 0v-357h122q8 72 38.5 133.5T763-196q-48 48-109.5 77T521-82Z\",\n ],\n },\n ],\n flag: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-400v240q0 17-11.5 28.5T240-120q-17 0-28.5-11.5T200-160v-600q0-17 11.5-28.5T240-800h287q14 0 25 9t14 23l10 48h184q17 0 28.5 11.5T800-680v320q0 17-11.5 28.5T760-320H553q-14 0-25-9t-14-23l-10-48H280Zm306 0h134v-240H543q-14 0-25-9t-14-23l-10-48H280v240h257q14 0 25 9t14 23l10 48Zm-86-160Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-400v240q0 17-11.5 28.5T240-120q-17 0-28.5-11.5T200-160v-600q0-17 11.5-28.5T240-800h287q14 0 25 9t14 23l10 48h184q17 0 28.5 11.5T800-680v320q0 17-11.5 28.5T760-320H553q-14 0-25-9t-14-23l-10-48H280Z\",\n ],\n },\n ],\n terminal: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h640q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160Zm0-80h640v-400H160v400Zm187-200-76-76q-12-12-11.5-28t12.5-28q12-11 28-11.5t28 11.5l104 104q12 12 12 28t-12 28L328-308q-11 11-27.5 11.5T272-308q-11-11-11-28t11-28l75-76Zm173 160q-17 0-28.5-11.5T480-320q0-17 11.5-28.5T520-360h160q17 0 28.5 11.5T720-320q0 17-11.5 28.5T680-280H520Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h640q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160Zm0-80h640v-400H160v400Zm187-200-76-76q-12-12-11.5-28t12.5-28q12-11 28-11.5t28 11.5l104 104q12 12 12 28t-12 28L328-308q-11 11-27.5 11.5T272-308q-11-11-11-28t11-28l75-76Zm173 160q-17 0-28.5-11.5T480-320q0-17 11.5-28.5T520-360h160q17 0 28.5 11.5T720-320q0 17-11.5 28.5T680-280H520Z\",\n ],\n },\n ],\n info: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-280q17 0 28.5-11.5T520-320v-160q0-17-11.5-28.5T480-520q-17 0-28.5 11.5T440-480v160q0 17 11.5 28.5T480-280Zm0-320q17 0 28.5-11.5T520-640q0-17-11.5-28.5T480-680q-17 0-28.5 11.5T440-640q0 17 11.5 28.5T480-600Zm0 520q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-280q17 0 28.5-11.5T520-320v-160q0-17-11.5-28.5T480-520q-17 0-28.5 11.5T440-480v160q0 17 11.5 28.5T480-280Zm0-320q17 0 28.5-11.5T520-640q0-17-11.5-28.5T480-680q-17 0-28.5 11.5T440-640q0 17 11.5 28.5T480-600Zm0 520q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z\",\n ],\n },\n ],\n movie: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m160-800 65 130q7 14 20 22t28 8q30 0 46-25.5t2-52.5l-41-82h80l65 130q7 14 20 22t28 8q30 0 46-25.5t2-52.5l-41-82h80l65 130q7 14 20 22t28 8q30 0 46-25.5t2-52.5l-41-82h120q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800Zm0 240v320h640v-320H160Zm0 0v320-320Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m160-800 65 130q7 14 20 22t28 8q30 0 46-25.5t2-52.5l-41-82h80l65 130q7 14 20 22t28 8q30 0 46-25.5t2-52.5l-41-82h80l65 130q7 14 20 22t28 8q30 0 46-25.5t2-52.5l-41-82h120q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800Z\",\n ],\n },\n ],\n lightbulb: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-33 0-56.5-23.5T400-160h160q0 33-23.5 56.5T480-80ZM360-200q-17 0-28.5-11.5T320-240q0-17 11.5-28.5T360-280h240q17 0 28.5 11.5T640-240q0 17-11.5 28.5T600-200H360Zm-30-120q-69-41-109.5-110T180-580q0-125 87.5-212.5T480-880q125 0 212.5 87.5T780-580q0 81-40.5 150T630-320H330Zm24-80h252q45-32 69.5-79T700-580q0-92-64-156t-156-64q-92 0-156 64t-64 156q0 54 24.5 101t69.5 79Zm126 0Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-33 0-56.5-23.5T400-160h160q0 33-23.5 56.5T480-80ZM360-200q-17 0-28.5-11.5T320-240q0-17 11.5-28.5T360-280h240q17 0 28.5 11.5T640-240q0 17-11.5 28.5T600-200H360Zm-30-120q-69-41-109.5-110T180-580q0-125 87.5-212.5T480-880q125 0 212.5 87.5T780-580q0 81-40.5 150T630-320H330Z\",\n ],\n },\n ],\n shield: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-84q-7 0-13-1t-12-3q-135-45-215-166.5T160-516v-189q0-25 14.5-45t37.5-29l240-90q14-5 28-5t28 5l240 90q23 9 37.5 29t14.5 45v189q0 140-80 261.5T505-88q-6 2-12 3t-13 1Zm0-80q104-33 172-132t68-220v-189l-240-90-240 90v189q0 121 68 220t172 132Zm0-316Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-84q-7 0-13-1t-12-3q-135-45-215-166.5T160-516v-189q0-25 14.5-45t37.5-29l240-90q14-5 28-5t28 5l240 90q23 9 37.5 29t14.5 45v189q0 140-80 261.5T505-88q-6 2-12 3t-13 1Z\",\n ],\n },\n ],\n edit: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-200h57l391-391-57-57-391 391v57Zm-40 80q-17 0-28.5-11.5T120-160v-97q0-16 6-30.5t17-25.5l505-504q12-11 26.5-17t30.5-6q16 0 31 6t26 18l55 56q12 11 17.5 26t5.5 30q0 16-5.5 30.5T817-647L313-143q-11 11-25.5 17t-30.5 6h-97Zm600-584-56-56 56 56Zm-141 85-28-29 57 57-29-28Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-120q-17 0-28.5-11.5T120-160v-97q0-16 6-30.5t17-25.5l505-504q12-11 26.5-17t30.5-6q16 0 31 6t26 18l55 56q12 11 17.5 26t5.5 30q0 16-5.5 30.5T817-647L313-143q-11 11-25.5 17t-30.5 6h-97Zm544-528 56-56-56-56-56 56 56 56Z\",\n ],\n },\n ],\n admin_panel_settings: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M680-280q25 0 42.5-17.5T740-340q0-25-17.5-42.5T680-400q-25 0-42.5 17.5T620-340q0 25 17.5 42.5T680-280Zm0 120q31 0 57-14.5t42-38.5q-22-13-47-20t-52-7q-27 0-52 7t-47 20q16 24 42 38.5t57 14.5ZM480-874q8 0 14.5 1t13.5 4l240 90q23 9 37.5 29t14.5 45v125q0 17-11.5 28.5T760-540q-17 0-28.5-11.5T720-580v-124l-240-90-240 90v188q0 50 14.5 100t40 95q25.5 45 62 81t79.5 59q15 8 21.5 23t.5 30q-7 16-22.5 22t-30.5-2q-113-56-179-169t-66-239v-189q0-25 14.5-45t37.5-29l240-90q7-3 14-4t14-1ZM680-80q-83 0-141.5-58.5T480-280q0-83 58.5-141.5T680-480q83 0 141.5 58.5T880-280q0 83-58.5 141.5T680-80ZM480-494Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M680-80q-83 0-141.5-58.5T480-280q0-83 58.5-141.5T680-480q83 0 141.5 58.5T880-280q0 83-58.5 141.5T680-80ZM160-516v-189q0-25 14.5-45t37.5-29l240-90q14-5 28-5t28 5l240 90q23 9 37.5 29t14.5 45v122q0 17-15 27.5t-32 5.5q-18-5-36-7.5t-37-2.5q-116 0-198 82t-82 198q0 32 7.5 62.5T429-156q9 19-5.5 34t-33.5 6q-42-22-77-54t-62-70q-43-59-67-129.5T160-516Zm520 236q25 0 42.5-17.5T740-340q0-25-17.5-42.5T680-400q-25 0-42.5 17.5T620-340q0 25 17.5 42.5T680-280Zm0 120q31 0 57-14.5t42-38.5q-22-13-47-20t-52-7q-27 0-52 7t-47 20q16 24 42 38.5t57 14.5Z\",\n ],\n },\n ],\n grid_view: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-520q-33 0-56.5-23.5T120-600v-160q0-33 23.5-56.5T200-840h160q33 0 56.5 23.5T440-760v160q0 33-23.5 56.5T360-520H200Zm0 400q-33 0-56.5-23.5T120-200v-160q0-33 23.5-56.5T200-440h160q33 0 56.5 23.5T440-360v160q0 33-23.5 56.5T360-120H200Zm400-400q-33 0-56.5-23.5T520-600v-160q0-33 23.5-56.5T600-840h160q33 0 56.5 23.5T840-760v160q0 33-23.5 56.5T760-520H600Zm0 400q-33 0-56.5-23.5T520-200v-160q0-33 23.5-56.5T600-440h160q33 0 56.5 23.5T840-360v160q0 33-23.5 56.5T760-120H600ZM200-600h160v-160H200v160Zm400 0h160v-160H600v160Zm0 400h160v-160H600v160Zm-400 0h160v-160H200v160Zm400-400Zm0 240Zm-240 0Zm0-240Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-520q-33 0-56.5-23.5T120-600v-160q0-33 23.5-56.5T200-840h160q33 0 56.5 23.5T440-760v160q0 33-23.5 56.5T360-520H200Zm0 400q-33 0-56.5-23.5T120-200v-160q0-33 23.5-56.5T200-440h160q33 0 56.5 23.5T440-360v160q0 33-23.5 56.5T360-120H200Zm400-400q-33 0-56.5-23.5T520-600v-160q0-33 23.5-56.5T600-840h160q33 0 56.5 23.5T840-760v160q0 33-23.5 56.5T760-520H600Zm0 400q-33 0-56.5-23.5T520-200v-160q0-33 23.5-56.5T600-440h160q33 0 56.5 23.5T840-360v160q0 33-23.5 56.5T760-120H600Z\",\n ],\n },\n ],\n push_pin: [\n {\n transform: \"scale(1) translate(0 0)\",\n paths: [\n \"m16 12 2 2v2h-5v6l-1 1-1-1v-6H6v-2l2-2V5H7V3h10v2h-1Zm-7.15 2h6.3L14 12.85V5h-4v7.85ZM12 14Z\",\n ],\n },\n {\n transform: \"scale(1) translate(0 0)\",\n paths: [\"m16 12 2 2v2h-5v6l-1 1-1-1v-6H6v-2l2-2V5H7V3h10v2h-1Z\"],\n },\n ],\n draft: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-80q-33 0-56.5-23.5T160-160v-640q0-33 23.5-56.5T240-880h287q16 0 30.5 6t25.5 17l194 194q11 11 17 25.5t6 30.5v447q0 33-23.5 56.5T720-80H240Zm280-560v-160H240v640h480v-440H560q-17 0-28.5-11.5T520-640ZM240-800v200-200 640-640Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-80q-33 0-56.5-23.5T160-160v-640q0-33 23.5-56.5T240-880h287q16 0 30.5 6t25.5 17l194 194q11 11 17 25.5t6 30.5v447q0 33-23.5 56.5T720-80H240Zm280-560q0 17 11.5 28.5T560-600h160L520-800v160Z\",\n ],\n },\n ],\n volume_up: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M760-481q0-83-44-151.5T598-735q-15-7-22-21.5t-2-29.5q6-16 21.5-23t31.5 0q97 43 155 131.5T840-481q0 108-58 196.5T627-153q-16 7-31.5 0T574-176q-5-15 2-29.5t22-21.5q74-34 118-102.5T760-481ZM280-360H160q-17 0-28.5-11.5T120-400v-160q0-17 11.5-28.5T160-600h120l132-132q19-19 43.5-8.5T480-703v446q0 27-24.5 37.5T412-228L280-360Zm380-120q0 42-19 79.5T591-339q-10 6-20.5.5T560-356v-250q0-12 10.5-17.5t20.5.5q31 25 50 63t19 80ZM400-606l-86 86H200v80h114l86 86v-252ZM300-480Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M760-481q0-83-44-151.5T598-735q-15-7-22-21.5t-2-29.5q6-16 21.5-23t31.5 0q97 43 155 131.5T840-481q0 108-58 196.5T627-153q-16 7-31.5 0T574-176q-5-15 2-29.5t22-21.5q74-34 118-102.5T760-481ZM280-360H160q-17 0-28.5-11.5T120-400v-160q0-17 11.5-28.5T160-600h120l132-132q19-19 43.5-8.5T480-703v446q0 27-24.5 37.5T412-228L280-360Zm380-120q0 42-19 79.5T591-339q-10 6-20.5.5T560-356v-250q0-12 10.5-17.5t20.5.5q31 25 50 63t19 80Z\",\n ],\n },\n ],\n local_cafe: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-17 0-28.5-11.5T160-160q0-17 11.5-28.5T200-200h560q17 0 28.5 11.5T800-160q0 17-11.5 28.5T760-120H200Zm120-160q-66 0-113-47t-47-113v-320q0-33 23.5-56.5T240-840h560q33 0 56.5 23.5T880-760v120q0 33-23.5 56.5T800-560h-80v120q0 66-47 113t-113 47H320Zm0-80h240q33 0 56.5-23.5T640-440v-320H240v320q0 33 23.5 56.5T320-360Zm400-280h80v-120h-80v120ZM320-360h-80 400-320Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-17 0-28.5-11.5T160-160q0-17 11.5-28.5T200-200h560q17 0 28.5 11.5T800-160q0 17-11.5 28.5T760-120H200Zm120-160q-66 0-113-47t-47-113v-320q0-33 23.5-56.5T240-840h560q33 0 56.5 23.5T880-760v120q0 33-23.5 56.5T800-560h-80v120q0 66-47 113t-113 47H320Zm400-360h80v-120h-80v120Z\",\n ],\n },\n ],\n encrypted: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M444-360h72q9 0 15.5-7.5T536-384l-19-105q20-10 31.5-29t11.5-42q0-33-23.5-56.5T480-640q-33 0-56.5 23.5T400-560q0 23 11.5 42t31.5 29l-19 105q-2 9 4.5 16.5T444-360Zm36 276q-7 0-13-1t-12-3q-135-45-215-166.5T160-516v-189q0-25 14.5-45t37.5-29l240-90q14-5 28-5t28 5l240 90q23 9 37.5 29t14.5 45v189q0 140-80 261.5T505-88q-6 2-12 3t-13 1Zm0-80q104-33 172-132t68-220v-189l-240-90-240 90v189q0 121 68 220t172 132Zm0-316Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M444-360h72q9 0 15.5-7.5T536-384l-19-105q20-10 31.5-29t11.5-42q0-33-23.5-56.5T480-640q-33 0-56.5 23.5T400-560q0 23 11.5 42t31.5 29l-19 105q-2 9 4.5 16.5T444-360Zm36 276q-7 0-13-1t-12-3q-135-45-215-166.5T160-516v-189q0-25 14.5-45t37.5-29l240-90q14-5 28-5t28 5l240 90q23 9 37.5 29t14.5 45v189q0 140-80 261.5T505-88q-6 2-12 3t-13 1Z\",\n ],\n },\n ],\n volume_off: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M671-177q-11 7-22 13t-23 11q-15 7-30.5 0T574-176q-6-15 1.5-29.5T598-227q7-3 13-6.5t12-7.5L480-368v111q0 27-24.5 37.5T412-228L280-360H160q-17 0-28.5-11.5T120-400v-160q0-17 11.5-28.5T160-600h88L84-764q-11-11-11-28t11-28q11-11 28-11t28 11l680 680q11 11 11 28t-11 28q-11 11-28 11t-28-11l-93-93Zm89-304q0-83-44-151.5T598-735q-15-7-22-21.5t-2-29.5q6-16 21.5-23t31.5 0q97 43 155 131t58 197q0 33-6 65.5T817-353q-8 22-24.5 27.5t-30.5.5q-14-5-22.5-18t-.5-30q11-26 16-52.5t5-55.5ZM591-623q33 21 51 63t18 80v10q0 5-1 10-2 13-14 17t-22-6l-51-51q-6-6-9-13.5t-3-15.5v-77q0-12 10.5-17.5t20.5.5Zm-201-59q-6-6-6-14t6-14l22-22q19-19 43.5-8.5T480-703v63q0 14-12 19t-22-5l-56-56Zm10 328v-94l-72-72H200v80h114l86 86Zm-36-130Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M671-177q-11 7-22 13t-23 11q-15 7-30.5 0T574-176q-6-15 1.5-29.5T598-227q7-3 13-6.5t12-7.5L480-368v111q0 27-24.5 37.5T412-228L280-360H160q-17 0-28.5-11.5T120-400v-160q0-17 11.5-28.5T160-600h88L84-764q-11-11-11-28t11-28q11-11 28-11t28 11l680 680q11 11 11 28t-11 28q-11 11-28 11t-28-11l-93-93Zm89-304q0-83-44-151.5T598-735q-15-7-22-21.5t-2-29.5q6-16 21.5-23t31.5 0q97 43 155 131t58 197q0 33-6 65.5T817-353q-8 22-24.5 27.5t-30.5.5q-14-5-22.5-18t-.5-30q11-26 16-52.5t5-55.5ZM591-623q33 21 51 63t18 80v10q0 5-1 10-2 13-14 17t-22-6l-51-51q-6-6-9-13.5t-3-15.5v-77q0-12 10.5-17.5t20.5.5Zm-201-59q-6-6-6-14t6-14l22-22q19-19 43.5-8.5T480-703v63q0 14-12 19t-22-5l-56-56Z\",\n ],\n },\n ],\n visibility: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-320q75 0 127.5-52.5T660-500q0-75-52.5-127.5T480-680q-75 0-127.5 52.5T300-500q0 75 52.5 127.5T480-320Zm0-72q-45 0-76.5-31.5T372-500q0-45 31.5-76.5T480-608q45 0 76.5 31.5T588-500q0 45-31.5 76.5T480-392Zm0 192q-134 0-244.5-72T61-462q-5-9-7.5-18.5T51-500q0-10 2.5-19.5T61-538q64-118 174.5-190T480-800q134 0 244.5 72T899-538q5 9 7.5 18.5T909-500q0 10-2.5 19.5T899-462q-64 118-174.5 190T480-200Zm0-300Zm0 220q113 0 207.5-59.5T832-500q-50-101-144.5-160.5T480-720q-113 0-207.5 59.5T128-500q50 101 144.5 160.5T480-280Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-320q75 0 127.5-52.5T660-500q0-75-52.5-127.5T480-680q-75 0-127.5 52.5T300-500q0 75 52.5 127.5T480-320Zm0-72q-45 0-76.5-31.5T372-500q0-45 31.5-76.5T480-608q45 0 76.5 31.5T588-500q0 45-31.5 76.5T480-392Zm0 192q-134 0-244.5-72T61-462q-5-9-7.5-18.5T51-500q0-10 2.5-19.5T61-538q64-118 174.5-190T480-800q134 0 244.5 72T899-538q5 9 7.5 18.5T909-500q0 10-2.5 19.5T899-462q-64 118-174.5 190T480-200Z\",\n ],\n },\n ],\n filter_alt: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-160q-17 0-28.5-11.5T400-200v-240L168-736q-15-20-4.5-42t36.5-22h560q26 0 36.5 22t-4.5 42L560-440v240q0 17-11.5 28.5T520-160h-80Zm40-308 198-252H282l198 252Zm0 0Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-160q-17 0-28.5-11.5T400-200v-240L168-736q-15-20-4.5-42t36.5-22h560q26 0 36.5 22t-4.5 42L560-440v240q0 17-11.5 28.5T520-160h-80Z\",\n ],\n },\n ],\n warning: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M109-120q-11 0-20-5.5T75-140q-5-9-5.5-19.5T75-180l370-640q6-10 15.5-15t19.5-5q10 0 19.5 5t15.5 15l370 640q6 10 5.5 20.5T885-140q-5 9-14 14.5t-20 5.5H109Zm69-80h604L480-720 178-200Zm302-40q17 0 28.5-11.5T520-280q0-17-11.5-28.5T480-320q-17 0-28.5 11.5T440-280q0 17 11.5 28.5T480-240Zm0-120q17 0 28.5-11.5T520-400v-120q0-17-11.5-28.5T480-560q-17 0-28.5 11.5T440-520v120q0 17 11.5 28.5T480-360Zm0-100Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M109-120q-11 0-20-5.5T75-140q-5-9-5.5-19.5T75-180l370-640q6-10 15.5-15t19.5-5q10 0 19.5 5t15.5 15l370 640q6 10 5.5 20.5T885-140q-5 9-14 14.5t-20 5.5H109Zm371-120q17 0 28.5-11.5T520-280q0-17-11.5-28.5T480-320q-17 0-28.5 11.5T440-280q0 17 11.5 28.5T480-240Zm0-120q17 0 28.5-11.5T520-400v-120q0-17-11.5-28.5T480-560q-17 0-28.5 11.5T440-520v120q0 17 11.5 28.5T480-360Z\",\n ],\n },\n ],\n bookmark: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m480-240-168 72q-40 17-76-6.5T200-241v-519q0-33 23.5-56.5T280-840h400q33 0 56.5 23.5T760-760v519q0 43-36 66.5t-76 6.5l-168-72Zm0-88 200 86v-518H280v518l200-86Zm0-432H280h400-200Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m480-240-168 72q-40 17-76-6.5T200-241v-519q0-33 23.5-56.5T280-840h400q33 0 56.5 23.5T760-760v519q0 43-36 66.5t-76 6.5l-168-72Z\",\n ],\n },\n ],\n inbox: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-120H640q-30 38-71.5 59T480-240q-47 0-88.5-21T320-320H200v120Zm280-120q32 0 59-16.5t44-43.5q6-9 15-14.5t20-5.5h142v-360H200v360h142q11 0 20 5.5t15 14.5q17 27 44 43.5t59 16.5ZM200-200h560-560Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm280-200q32 0 59-16.5t44-43.5q6-9 15-14.5t20-5.5h142v-360H200v360h142q11 0 20 5.5t15 14.5q17 27 44 43.5t59 16.5Z\",\n ],\n },\n ],\n visibility_off: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M607-627q29 29 42.5 66t9.5 76q0 15-11 25.5T622-449q-15 0-25.5-10.5T586-485q5-26-3-50t-25-41q-17-17-41-26t-51-4q-15 0-25.5-11T430-643q0-15 10.5-25.5T466-679q38-4 75 9.5t66 42.5Zm-127-93q-19 0-37 1.5t-36 5.5q-17 3-30.5-5T358-742q-5-16 3.5-31t24.5-18q23-5 46.5-7t47.5-2q137 0 250.5 72T904-534q4 8 6 16.5t2 17.5q0 9-1.5 17.5T905-466q-18 40-44.5 75T802-327q-12 11-28 9t-26-16q-10-14-8.5-30.5T753-392q24-23 44-50t35-58q-50-101-144.5-160.5T480-720Zm0 520q-134 0-245-72.5T60-463q-5-8-7.5-17.5T50-500q0-10 2-19t7-18q20-40 46.5-76.5T166-680l-83-84q-11-12-10.5-28.5T84-820q11-11 28-11t28 11l680 680q11 11 11.5 27.5T820-84q-11 11-28 11t-28-11L624-222q-35 11-71 16.5t-73 5.5ZM222-624q-29 26-53 57t-41 67q50 101 144.5 160.5T480-280q20 0 39-2.5t39-5.5l-36-38q-11 3-21 4.5t-21 1.5q-75 0-127.5-52.5T300-500q0-11 1.5-21t4.5-21l-84-82Zm319 93Zm-151 75Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M764-84 624-222q-35 11-71 16.5t-73 5.5q-134 0-245-72T61-462q-5-9-7.5-18.5T51-500q0-10 2.5-19.5T61-538q22-39 47-76t58-66l-83-84q-11-11-11-27.5T84-820q11-11 28-11t28 11l680 680q11 11 11.5 27.5T820-84q-11 11-28 11t-28-11ZM480-320q11 0 21-1t20-4L305-541q-3 10-4 20t-1 21q0 75 52.5 127.5T480-320Zm0-480q134 0 245.5 72.5T900-537q5 8 7.5 17.5T910-500q0 10-2 19.5t-7 17.5q-19 37-42.5 70T806-331q-14 14-33 13t-33-15l-80-80q-7-7-9-16.5t1-19.5q4-13 6-25t2-26q0-75-52.5-127.5T480-680q-14 0-26 2t-25 6q-10 3-20 1t-17-9l-33-33q-19-19-12.5-44t31.5-32q25-5 50.5-8t51.5-3Zm79 226q11 13 18.5 28.5T587-513q1 8-6 11t-13-3l-82-82q-6-6-2.5-13t11.5-7q19 2 35 10.5t29 22.5Z\",\n ],\n },\n ],\n forum: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-240q-17 0-28.5-11.5T240-280v-80h520v-360h80q17 0 28.5 11.5T880-680v503q0 27-24.5 37.5T812-148l-92-92H280Zm-40-200-92 92q-19 19-43.5 8.5T80-377v-463q0-17 11.5-28.5T120-880h520q17 0 28.5 11.5T680-840v360q0 17-11.5 28.5T640-440H240Zm360-80v-280H160v280h440Zm-440 0v-280 280Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-240q-17 0-28.5-11.5T240-280v-80h520v-360h80q17 0 28.5 11.5T880-680v503q0 27-24.5 37.5T812-148l-92-92H280Zm-40-200-92 92q-19 19-43.5 8.5T80-377v-463q0-17 11.5-28.5T120-880h520q17 0 28.5 11.5T680-840v360q0 17-11.5 28.5T640-440H240Z\",\n ],\n },\n ],\n public: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm-40-82v-78q-33 0-56.5-23.5T360-320v-40L168-552q-3 18-5.5 36t-2.5 36q0 121 79.5 212T440-162Zm276-102q20-22 36-47.5t26.5-53q10.5-27.5 16-56.5t5.5-59q0-98-54.5-179T600-776v16q0 33-23.5 56.5T520-680h-80v80q0 17-11.5 28.5T400-560h-80v80h240q17 0 28.5 11.5T600-440v120h40q26 0 47 15.5t29 40.5Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm-40-82v-78q-33 0-56.5-23.5T360-320v-40L168-552q-3 18-5.5 36t-2.5 36q0 121 79.5 212T440-162Zm276-102q20-22 36-47.5t26.5-53q10.5-27.5 16-56.5t5.5-59q0-98-54.5-179T600-776v16q0 33-23.5 56.5T520-680h-80v80q0 17-11.5 28.5T400-560h-80v80h240q17 0 28.5 11.5T600-440v120h40q26 0 47 15.5t29 40.5Z\",\n ],\n },\n ],\n dns: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M300-720q-25 0-42.5 17.5T240-660q0 25 17.5 42.5T300-600q25 0 42.5-17.5T360-660q0-25-17.5-42.5T300-720Zm0 400q-25 0-42.5 17.5T240-260q0 25 17.5 42.5T300-200q25 0 42.5-17.5T360-260q0-25-17.5-42.5T300-320ZM160-840h640q17 0 28.5 11.5T840-800v280q0 17-11.5 28.5T800-480H160q-17 0-28.5-11.5T120-520v-280q0-17 11.5-28.5T160-840Zm40 80v200h560v-200H200Zm-40 320h640q17 0 28.5 11.5T840-400v280q0 17-11.5 28.5T800-80H160q-17 0-28.5-11.5T120-120v-280q0-17 11.5-28.5T160-440Zm40 80v200h560v-200H200Zm0-400v200-200Zm0 400v200-200Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M300-720q-25 0-42.5 17.5T240-660q0 25 17.5 42.5T300-600q25 0 42.5-17.5T360-660q0-25-17.5-42.5T300-720Zm0 400q-25 0-42.5 17.5T240-260q0 25 17.5 42.5T300-200q25 0 42.5-17.5T360-260q0-25-17.5-42.5T300-320ZM160-840h640q17 0 28.5 11.5T840-800v280q0 17-11.5 28.5T800-480H160q-17 0-28.5-11.5T120-520v-280q0-17 11.5-28.5T160-840Zm0 400h640q17 0 28.5 11.5T840-400v280q0 17-11.5 28.5T800-80H160q-17 0-28.5-11.5T120-120v-280q0-17 11.5-28.5T160-440Z\",\n ],\n },\n ],\n screen_share: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-520h80v56q0 7 6 9.5t11-2.5l89-89q6-6 6-14t-6-14l-89-89q-5-5-11-2.5t-6 9.5v56h-80q-50 0-85 35t-35 85v40q0 17 11.5 28.5T360-400q17 0 28.5-11.5T400-440v-40q0-17 11.5-28.5T440-520ZM80-120q-17 0-28.5-11.5T40-160q0-17 11.5-28.5T80-200h800q17 0 28.5 11.5T920-160q0 17-11.5 28.5T880-120H80Zm80-120q-33 0-56.5-23.5T80-320v-440q0-33 23.5-56.5T160-840h640q33 0 56.5 23.5T880-760v440q0 33-23.5 56.5T800-240H160Zm0-80h640v-440H160v440Zm0 0v-440 440Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-520h80v56q0 7 6 9.5t11-2.5l89-89q6-6 6-14t-6-14l-89-89q-5-5-11-2.5t-6 9.5v56h-80q-50 0-85 35t-35 85v40q0 17 11.5 28.5T360-400q17 0 28.5-11.5T400-440v-40q0-17 11.5-28.5T440-520ZM80-120q-17 0-28.5-11.5T40-160q0-17 11.5-28.5T80-200h800q17 0 28.5 11.5T920-160q0 17-11.5 28.5T880-120H80Zm80-120q-33 0-56.5-23.5T80-320v-440q0-33 23.5-56.5T160-840h640q33 0 56.5 23.5T880-760v440q0 33-23.5 56.5T800-240H160Z\",\n ],\n },\n ],\n desktop_windows: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M400-200v-80H160q-33 0-56.5-23.5T80-360v-400q0-33 23.5-56.5T160-840h640q33 0 56.5 23.5T880-760v400q0 33-23.5 56.5T800-280H560v80h40q17 0 28.5 11.5T640-160q0 17-11.5 28.5T600-120H360q-17 0-28.5-11.5T320-160q0-17 11.5-28.5T360-200h40ZM160-360h640v-400H160v400Zm0 0v-400 400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M400-200v-80H160q-33 0-56.5-23.5T80-360v-400q0-33 23.5-56.5T160-840h640q33 0 56.5 23.5T880-760v400q0 33-23.5 56.5T800-280H560v80h40q17 0 28.5 11.5T640-160q0 17-11.5 28.5T600-120H360q-17 0-28.5-11.5T320-160q0-17 11.5-28.5T360-200h40Z\",\n ],\n },\n ],\n reply: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m273-480 116 116q12 12 11.5 28T388-308q-12 11-28 11.5T332-308L148-492q-12-12-12-28t12-28l184-184q11-11 27.5-11t28.5 11q12 12 12 28.5T388-675L273-560h367q83 0 141.5 58.5T840-360v120q0 17-11.5 28.5T800-200q-17 0-28.5-11.5T760-240v-120q0-50-35-85t-85-35H273Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m273-480 116 116q12 12 11.5 28T388-308q-12 11-28 11.5T332-308L148-492q-12-12-12-28t12-28l184-184q11-11 27.5-11t28.5 11q12 12 12 28.5T388-675L273-560h367q83 0 141.5 58.5T840-360v120q0 17-11.5 28.5T800-200q-17 0-28.5-11.5T760-240v-120q0-50-35-85t-85-35H273Z\",\n ],\n },\n ],\n mic: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-400q-50 0-85-35t-35-85v-240q0-50 35-85t85-35q50 0 85 35t35 85v240q0 50-35 85t-85 35Zm0-240Zm-40 480v-83q-92-13-157.5-78T203-479q-2-17 9-29t28-12q17 0 28.5 11.5T284-480q14 70 69.5 115T480-320q72 0 127-45.5T676-480q4-17 15.5-28.5T720-520q17 0 28 12t9 29q-14 91-79 157t-158 79v83q0 17-11.5 28.5T480-120q-17 0-28.5-11.5T440-160Zm40-320q17 0 28.5-11.5T520-520v-240q0-17-11.5-28.5T480-800q-17 0-28.5 11.5T440-760v240q0 17 11.5 28.5T480-480Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-400q-50 0-85-35t-35-85v-240q0-50 35-85t85-35q50 0 85 35t35 85v240q0 50-35 85t-85 35Zm-40 240v-83q-92-13-157.5-78T203-479q-2-17 9-29t28-12q17 0 28.5 11.5T284-480q14 70 69.5 115T480-320q72 0 127-45.5T676-480q4-17 15.5-28.5T720-520q17 0 28 12t9 29q-14 91-79 157t-158 79v83q0 17-11.5 28.5T480-120q-17 0-28.5-11.5T440-160Z\",\n ],\n },\n ],\n mark_unread_chat_alt: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-400h240q17 0 28.5-11.5T560-440q0-17-11.5-28.5T520-480H280q-17 0-28.5 11.5T240-440q0 17 11.5 28.5T280-400Zm0-120h400q17 0 28.5-11.5T720-560q0-17-11.5-28.5T680-600H280q-17 0-28.5 11.5T240-560q0 17 11.5 28.5T280-520Zm0-120h320q17 0 28.5-11.5T640-680q0-17-11.5-28.5T600-720H280q-17 0-28.5 11.5T240-680q0 17 11.5 28.5T280-640Zm-40 400-92 92q-19 19-43.5 8.5T80-177v-623q0-33 23.5-56.5T160-880h360q17 0 28.5 11.5T560-840q0 17-11.5 28.5T520-800H160v525l46-45h594v-280q0-17 11.5-28.5T840-640q17 0 28.5 11.5T880-600v280q0 33-23.5 56.5T800-240H240Zm520-480q-50 0-85-35t-35-85q0-50 35-85t85-35q50 0 85 35t35 85q0 50-35 85t-85 35Zm-600-80v480-480Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M760-720q-50 0-85-35t-35-85q0-50 35-85t85-35q50 0 85 35t35 85q0 50-35 85t-85 35ZM240-240l-92 92q-19 19-43.5 8.5T80-177v-623q0-33 23.5-56.5T160-880h404q-4 20-4 40t4 40q5 23 14 43t22 37H280q-17 0-28.5 11.5T240-680q0 17 11.5 28.5T280-640h480q32 0 63-10t57-30v360q0 33-23.5 56.5T800-240H240Zm40-280h400q17 0 28.5-11.5T720-560q0-17-11.5-28.5T680-600H280q-17 0-28.5 11.5T240-560q0 17 11.5 28.5T280-520Zm0 120h240q17 0 28.5-11.5T560-440q0-17-11.5-28.5T520-480H280q-17 0-28.5 11.5T240-440q0 17 11.5 28.5T280-400Z\",\n ],\n },\n ],\n do_not_disturb_on: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M320-440h320q17 0 28.5-11.5T680-480q0-17-11.5-28.5T640-520H320q-17 0-28.5 11.5T280-480q0 17 11.5 28.5T320-440ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M320-440h320q17 0 28.5-11.5T680-480q0-17-11.5-28.5T640-520H320q-17 0-28.5 11.5T280-480q0 17 11.5 28.5T320-440ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z\",\n ],\n },\n ],\n block: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q54 0 104-17.5t92-50.5L228-676q-33 42-50.5 92T160-480q0 134 93 227t227 93Zm252-124q33-42 50.5-92T800-480q0-134-93-227t-227-93q-54 0-104 17.5T284-732l448 448Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q54 0 104-17.5t92-50.5L228-676q-33 42-50.5 92T160-480q0 134 93 227t227 93Zm252-124q33-42 50.5-92T800-480q0-134-93-227t-227-93q-54 0-104 17.5T284-732l448 448Z\",\n ],\n },\n ],\n videocam_off: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m720-540 126-126q10-10 22-5t12 19v344q0 14-12 19t-22-5L720-420q0 17-11.5 28.5T680-380q-17 0-28.5-11.5T640-420v-300H360q-20 0-30-12.5T320-760q0-15 10-27.5t30-12.5h280q33 0 56.5 23.5T720-720v180Zm74 486L54-794q-11-11-11-28t11-28q11-11 28-11t28 11l740 740q11 11 11 28t-11 28q-11 11-28 11t-28-11ZM498-575ZM382-464ZM160-800l80 80h-80v480h480v-80l80 80q0 33-23.5 56.5T640-160H160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m720-540 126-126q10-10 22-5t12 19v344q0 14-12 19t-22-5L713-427q-10 14-28.5 17T652-421L341-732q-10-10-11.5-21t3.5-22q5-11 14-18t23-7h270q33 0 56.5 23.5T720-720v180Zm74 486L54-794q-11-11-11-28t11-28q11-11 28-11t28 11l740 740q11 11 11 28t-11 28q-11 11-28 11t-28-11ZM160-800l560 560q0 33-23.5 56.5T640-160H160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800Z\",\n ],\n },\n ],\n keyboard_arrow_up: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-528 324-372q-11 11-28 11t-28-11q-11-11-11-28t11-28l184-184q12-12 28-12t28 12l184 184q11 11 11 28t-11 28q-11 11-28 11t-28-11L480-528Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-528 324-372q-11 11-28 11t-28-11q-11-11-11-28t11-28l184-184q12-12 28-12t28 12l184 184q11 11 11 28t-11 28q-11 11-28 11t-28-11L480-528Z\",\n ],\n },\n ],\n workspaces: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-120q-66 0-113-47T80-280q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47Zm480 0q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47Zm-480-80q33 0 56.5-23.5T320-280q0-33-23.5-56.5T240-360q-33 0-56.5 23.5T160-280q0 33 23.5 56.5T240-200Zm480 0q33 0 56.5-23.5T800-280q0-33-23.5-56.5T720-360q-33 0-56.5 23.5T640-280q0 33 23.5 56.5T720-200ZM480-520q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47Zm0-80q33 0 56.5-23.5T560-680q0-33-23.5-56.5T480-760q-33 0-56.5 23.5T400-680q0 33 23.5 56.5T480-600Zm0-80Zm240 400Zm-480 0Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-120q-66 0-113-47T80-280q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47Zm480 0q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47ZM480-520q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47Z\",\n ],\n },\n ],\n chevron_left: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m432-480 156 156q11 11 11 28t-11 28q-11 11-28 11t-28-11L348-452q-6-6-8.5-13t-2.5-15q0-8 2.5-15t8.5-13l184-184q11-11 28-11t28 11q11 11 11 28t-11 28L432-480Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m432-480 156 156q11 11 11 28t-11 28q-11 11-28 11t-28-11L348-452q-6-6-8.5-13t-2.5-15q0-8 2.5-15t8.5-13l184-184q11-11 28-11t28 11q11 11 11 28t-11 28L432-480Z\",\n ],\n },\n ],\n mic_off: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M672-377q-14-8-18-24.5t4-30.5q7-11 11.5-23.5T676-481q4-17 15.5-28t28.5-11q17 0 28 12t9 29q-3 23-10.5 45T727-392q-8 14-24.5 18.5T672-377ZM480-594Zm0-286q50 0 85 35t35 85v190q0 20-12.5 30T560-530q-15 0-27.5-10.5T520-571v-189q0-17-11.5-28.5T480-800q-17 0-28.5 11.5T440-760v30q0 20-12.5 30T400-690q-15 0-27.5-10.5T360-731v-29q0-50 35-85t85-35Zm-40 720v-83q-92-12-157.5-77.5T203-479q-2-17 9-29t28-12q17 0 29 11.5t15 28.5q14 71 69 115.5T480-320q34 0 64.5-10.5T600-360l57 57q-29 23-63.5 39T520-243v83q0 17-11.5 28.5T480-120q-17 0-28.5-11.5T440-160Zm324 76L84-764q-11-11-11-28t11-28q11-11 28-11t28 11l680 680q11 11 11 28t-11 28q-11 11-28 11t-28-11Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M672-377q-14-8-18-24.5t4-30.5q7-11 11.5-23.5T676-481q4-17 15.5-28t28.5-11q17 0 28 12t9 29q-3 23-10.5 45T727-392q-8 14-24.5 18.5T672-377ZM532-542 383-691q-11-11-17-25.5t-6-30.5v-13q0-50 35-85t85-35q50 0 85 35t35 85v189q0 27-24.5 37.5T532-542Zm-92 382v-84q-92-12-157.5-77T203-479q-2-17 9-29t28-12q17 0 28.5 11.5T284-480q14 70 69.5 115T480-320q34 0 64.5-10.5T600-360l57 57q-29 23-63.5 38.5T520-244v84q0 17-11.5 28.5T480-120q-17 0-28.5-11.5T440-160Zm324 76L84-764q-11-11-11-28t11-28q11-11 28-11t28 11l680 680q11 11 11 28t-11 28q-11 11-28 11t-28-11Z\",\n ],\n },\n ],\n videocam: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h480q33 0 56.5 23.5T720-720v180l126-126q10-10 22-5t12 19v344q0 14-12 19t-22-5L720-420v180q0 33-23.5 56.5T640-160H160Zm0-80h480v-480H160v480Zm0 0v-480 480Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h480q33 0 56.5 23.5T720-720v180l126-126q10-10 22-5t12 19v344q0 14-12 19t-22-5L720-420v180q0 33-23.5 56.5T640-160H160Z\",\n ],\n },\n ],\n tag: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m360-320-33 131q-3 13-13 21t-24 8q-19 0-31-15t-7-33l28-112H171q-20 0-32-15.5t-7-34.5q3-14 14-22t25-8h129l40-160H231q-20 0-32-15.5t-7-34.5q3-14 14-22t25-8h129l33-131q3-13 13-21t24-8q19 0 31 15t7 33l-28 112h160l33-131q3-13 13-21t24-8q19 0 31 15t7 33l-28 112h109q20 0 32 15.5t7 34.5q-3 14-14 22t-25 8H660l-40 160h109q20 0 32 15.5t7 34.5q-3 14-14 22t-25 8H600l-33 131q-3 13-13 21t-24 8q-19 0-31-15t-7-33l28-112H360Zm20-80h160l40-160H420l-40 160Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m360-320-33 131q-3 13-13 21t-24 8q-19 0-31-15t-7-33l28-112H171q-20 0-32-15.5t-7-34.5q3-14 14-22t25-8h129l40-160H231q-20 0-32-15.5t-7-34.5q3-14 14-22t25-8h129l33-131q3-13 13-21t24-8q19 0 31 15t7 33l-28 112h160l33-131q3-13 13-21t24-8q19 0 31 15t7 33l-28 112h109q20 0 32 15.5t7 34.5q-3 14-14 22t-25 8H660l-40 160h109q20 0 32 15.5t7 34.5q-3 14-14 22t-25 8H600l-33 131q-3 13-13 21t-24 8q-19 0-31-15t-7-33l28-112H360Zm20-80h160l40-160H420l-40 160Z\",\n ],\n },\n ],\n chevron_right: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M504-480 348-636q-11-11-11-28t11-28q11-11 28-11t28 11l184 184q6 6 8.5 13t2.5 15q0 8-2.5 15t-8.5 13L404-268q-11 11-28 11t-28-11q-11-11-11-28t11-28l156-156Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M504-480 348-636q-11-11-11-28t11-28q11-11 28-11t28 11l184 184q6 6 8.5 13t2.5 15q0 8-2.5 15t-8.5 13L404-268q-11 11-28 11t-28-11q-11-11-11-28t11-28l156-156Z\",\n ],\n },\n ],\n more_horiz: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-400q-33 0-56.5-23.5T160-480q0-33 23.5-56.5T240-560q33 0 56.5 23.5T320-480q0 33-23.5 56.5T240-400Zm240 0q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm240 0q-33 0-56.5-23.5T640-480q0-33 23.5-56.5T720-560q33 0 56.5 23.5T800-480q0 33-23.5 56.5T720-400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-400q-33 0-56.5-23.5T160-480q0-33 23.5-56.5T240-560q33 0 56.5 23.5T320-480q0 33-23.5 56.5T240-400Zm240 0q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm240 0q-33 0-56.5-23.5T640-480q0-33 23.5-56.5T720-560q33 0 56.5 23.5T800-480q0 33-23.5 56.5T720-400Z\",\n ],\n },\n ],\n close: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-424 284-228q-11 11-28 11t-28-11q-11-11-11-28t11-28l196-196-196-196q-11-11-11-28t11-28q11-11 28-11t28 11l196 196 196-196q11-11 28-11t28 11q11 11 11 28t-11 28L536-480l196 196q11 11 11 28t-11 28q-11 11-28 11t-28-11L480-424Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-424 284-228q-11 11-28 11t-28-11q-11-11-11-28t11-28l196-196-196-196q-11-11-11-28t11-28q11-11 28-11t28 11l196 196 196-196q11-11 28-11t28 11q11 11 11 28t-11 28L536-480l196 196q11 11 11 28t-11 28q-11 11-28 11t-28-11L480-424Z\",\n ],\n },\n ],\n check: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m382-354 339-339q12-12 28-12t28 12q12 12 12 28.5T777-636L410-268q-12 12-28 12t-28-12L182-440q-12-12-11.5-28.5T183-497q12-12 28.5-12t28.5 12l142 143Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m382-354 339-339q12-12 28-12t28 12q12 12 12 28.5T777-636L410-268q-12 12-28 12t-28-12L182-440q-12-12-11.5-28.5T183-497q12-12 28.5-12t28.5 12l142 143Z\",\n ],\n },\n ],\n keyboard_arrow_down: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-361q-8 0-15-2.5t-13-8.5L268-556q-11-11-11-28t11-28q11-11 28-11t28 11l156 156 156-156q11-11 28-11t28 11q11 11 11 28t-11 28L508-372q-6 6-13 8.5t-15 2.5Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-361q-8 0-15-2.5t-13-8.5L268-556q-11-11-11-28t11-28q11-11 28-11t28 11l156 156 156-156q11-11 28-11t28 11q11 11 11 28t-11 28L508-372q-6 6-13 8.5t-15 2.5Z\",\n ],\n },\n ],\n more_vert: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-160q-33 0-56.5-23.5T400-240q0-33 23.5-56.5T480-320q33 0 56.5 23.5T560-240q0 33-23.5 56.5T480-160Zm0-240q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm0-240q-33 0-56.5-23.5T400-720q0-33 23.5-56.5T480-800q33 0 56.5 23.5T560-720q0 33-23.5 56.5T480-640Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-160q-33 0-56.5-23.5T400-240q0-33 23.5-56.5T480-320q33 0 56.5 23.5T560-240q0 33-23.5 56.5T480-160Zm0-240q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm0-240q-33 0-56.5-23.5T400-720q0-33 23.5-56.5T480-800q33 0 56.5 23.5T560-720q0 33-23.5 56.5T480-640Z\",\n ],\n },\n ],\n remove: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-440q-17 0-28.5-11.5T200-480q0-17 11.5-28.5T240-520h480q17 0 28.5 11.5T760-480q0 17-11.5 28.5T720-440H240Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-440q-17 0-28.5-11.5T200-480q0-17 11.5-28.5T240-520h480q17 0 28.5 11.5T760-480q0 17-11.5 28.5T720-440H240Z\",\n ],\n },\n ],\n add: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-440H240q-17 0-28.5-11.5T200-480q0-17 11.5-28.5T240-520h200v-200q0-17 11.5-28.5T480-760q17 0 28.5 11.5T520-720v200h200q17 0 28.5 11.5T760-480q0 17-11.5 28.5T720-440H520v200q0 17-11.5 28.5T480-200q-17 0-28.5-11.5T440-240v-200Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-440H240q-17 0-28.5-11.5T200-480q0-17 11.5-28.5T240-520h200v-200q0-17 11.5-28.5T480-760q17 0 28.5 11.5T520-720v200h200q17 0 28.5 11.5T760-480q0 17-11.5 28.5T720-440H520v200q0 17-11.5 28.5T480-200q-17 0-28.5-11.5T440-240v-200Z\",\n ],\n },\n ],\n done_all: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M70-438q-12-12-11.5-28T71-494q12-11 28-11.5t28 11.5l142 142 14 14 14 14q12 12 11.5 28T296-268q-12 11-28 11.5T240-268L70-438Zm424 85 340-340q12-12 28-11.5t28 12.5q11 12 11.5 28T890-636L522-268q-12 12-28 12t-28-12L296-438q-11-11-11-27.5t11-28.5q12-12 28.5-12t28.5 12l141 141Zm169-282L522-494q-11 11-27.5 11T466-494q-12-12-12-28.5t12-28.5l141-141q11-11 27.5-11t28.5 11q12 12 12 28.5T663-635Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M70-438q-12-12-11.5-28T71-494q12-11 28-11.5t28 11.5l142 142 14 14 14 14q12 12 11.5 28T296-268q-12 11-28 11.5T240-268L70-438Zm424 85 340-340q12-12 28-11.5t28 12.5q11 12 11.5 28T890-636L522-268q-12 12-28 12t-28-12L296-438q-11-11-11-27.5t11-28.5q12-12 28.5-12t28.5 12l141 141Zm169-282L522-494q-11 11-27.5 11T466-494q-12-12-12-28.5t12-28.5l141-141q11-11 27.5-11t28.5 11q12 12 12 28.5T663-635Z\",\n ],\n },\n ],\n power_settings_new: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-480v-320q0-17 11.5-28.5T480-840q17 0 28.5 11.5T520-800v320q0 17-11.5 28.5T480-440q-17 0-28.5-11.5T440-480Zm40 360q-74 0-139.5-28.5T226-226q-49-49-77.5-114.5T120-480q0-69 25.5-132.5T217-726q11-12 28-12t29 12q11 11 10 27.5T272-669q-34 38-53 86.5T200-480q0 116 82 198t198 82q117 0 198.5-82T760-480q0-54-19-103.5T687-671q-11-12-11.5-28t10.5-27q12-12 29-12t28 12q47 50 72 113.5T840-480q0 74-28.5 139.5t-77 114.5q-48.5 49-114 77.5T480-120Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-480v-320q0-17 11.5-28.5T480-840q17 0 28.5 11.5T520-800v320q0 17-11.5 28.5T480-440q-17 0-28.5-11.5T440-480Zm40 360q-74 0-139.5-28.5T226-226q-49-49-77.5-114.5T120-480q0-69 25-131t70-112q12-14 29.5-14.5T275-725q11 11 10 27.5T273-668q-35 38-54 86t-19 102q0 116 82 198t198 82q117 0 198.5-82T760-480q0-54-18.5-102T688-668q-12-13-13-29.5t10-27.5q13-13 31-12.5t30 14.5q45 50 69.5 112T840-480q0 74-28.5 139.5t-77 114.5q-48.5 49-114 77.5T480-120Z\",\n ],\n },\n ],\n markdown: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m610-475-27-27q-9-9-21-8.5t-21 9.5q-9 9-9 21t9 21l71 71q12 12 28 12t28-12l71-71q9-9 9-21t-9-21q-9-9-21.5-9t-21.5 9l-26 26v-95q0-13-8.5-21.5T640-600q-13 0-21.5 8.5T610-570v95ZM160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h640q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160Zm0-80h640v-480H160v480Zm0 0v-480 480Zm120-300h40v90q0 13 8.5 21.5T350-420q13 0 21.5-8.5T380-450v-90h40v150q0 13 8.5 21.5T450-360q13 0 21.5-8.5T480-390v-170q0-17-11.5-28.5T440-600H260q-17 0-28.5 11.5T220-560v170q0 13 8.5 21.5T250-360q13 0 21.5-8.5T280-390v-150Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m610-475-27-27q-9-9-21-8.5t-21 9.5q-9 9-9 21t9 21l71 71q12 12 28 12t28-12l71-71q9-9 9-21t-9-21q-9-9-21.5-9t-21.5 9l-26 26v-95q0-13-8.5-21.5T640-600q-13 0-21.5 8.5T610-570v95ZM160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h640q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160Zm120-380h40v90q0 13 8.5 21.5T350-420q13 0 21.5-8.5T380-450v-90h40v150q0 13 8.5 21.5T450-360q13 0 21.5-8.5T480-390v-170q0-17-11.5-28.5T440-600H260q-17 0-28.5 11.5T220-560v170q0 13 8.5 21.5T250-360q13 0 21.5-8.5T280-390v-150Z\",\n ],\n },\n ],\n history: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-120q-126 0-223-76.5T131-392q-4-15 6-27.5t27-14.5q16-2 29 6t18 24q24 90 99 147t170 57q117 0 198.5-81.5T760-480q0-117-81.5-198.5T480-760q-69 0-129 32t-101 88h70q17 0 28.5 11.5T360-600q0 17-11.5 28.5T320-560H160q-17 0-28.5-11.5T120-600v-160q0-17 11.5-28.5T160-800q17 0 28.5 11.5T200-760v54q51-64 124.5-99T480-840q75 0 140.5 28.5t114 77q48.5 48.5 77 114T840-480q0 75-28.5 140.5t-77 114q-48.5 48.5-114 77T480-120Zm40-376 100 100q11 11 11 28t-11 28q-11 11-28 11t-28-11L452-452q-6-6-9-13.5t-3-15.5v-159q0-17 11.5-28.5T480-680q17 0 28.5 11.5T520-640v144Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-120q-126 0-223-76.5T131-392q-4-15 6-27.5t27-14.5q16-2 29 6t18 24q24 90 99 147t170 57q117 0 198.5-81.5T760-480q0-117-81.5-198.5T480-760q-69 0-129 32t-101 88h70q17 0 28.5 11.5T360-600q0 17-11.5 28.5T320-560H160q-17 0-28.5-11.5T120-600v-160q0-17 11.5-28.5T160-800q17 0 28.5 11.5T200-760v54q51-64 124.5-99T480-840q75 0 140.5 28.5t114 77q48.5 48.5 77 114T840-480q0 75-28.5 140.5t-77 114q-48.5 48.5-114 77T480-120Zm40-376 100 100q11 11 11 28t-11 28q-11 11-28 11t-28-11L452-452q-6-6-9-13.5t-3-15.5v-159q0-17 11.5-28.5T480-680q17 0 28.5 11.5T520-640v144Z\",\n ],\n },\n ],\n logout: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h240q17 0 28.5 11.5T480-800q0 17-11.5 28.5T440-760H200v560h240q17 0 28.5 11.5T480-160q0 17-11.5 28.5T440-120H200Zm487-320H400q-17 0-28.5-11.5T360-480q0-17 11.5-28.5T400-520h287l-75-75q-11-11-11-27t11-28q11-12 28-12.5t29 11.5l143 143q12 12 12 28t-12 28L669-309q-12 12-28.5 11.5T612-310q-11-12-10.5-28.5T613-366l74-74Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h240q17 0 28.5 11.5T480-800q0 17-11.5 28.5T440-760H200v560h240q17 0 28.5 11.5T480-160q0 17-11.5 28.5T440-120H200Zm487-320H400q-17 0-28.5-11.5T360-480q0-17 11.5-28.5T400-520h287l-75-75q-11-11-11-27t11-28q11-12 28-12.5t29 11.5l143 143q12 12 12 28t-12 28L669-309q-12 12-28.5 11.5T612-310q-11-12-10.5-28.5T613-366l74-74Z\",\n ],\n },\n ],\n open_in_new: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h240q17 0 28.5 11.5T480-800q0 17-11.5 28.5T440-760H200v560h560v-240q0-17 11.5-28.5T800-480q17 0 28.5 11.5T840-440v240q0 33-23.5 56.5T760-120H200Zm560-584L416-360q-11 11-28 11t-28-11q-11-11-11-28t11-28l344-344H600q-17 0-28.5-11.5T560-800q0-17 11.5-28.5T600-840h200q17 0 28.5 11.5T840-800v200q0 17-11.5 28.5T800-560q-17 0-28.5-11.5T760-600v-104Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h240q17 0 28.5 11.5T480-800q0 17-11.5 28.5T440-760H200v560h560v-240q0-17 11.5-28.5T800-480q17 0 28.5 11.5T840-440v240q0 33-23.5 56.5T760-120H200Zm560-584L416-360q-11 11-28 11t-28-11q-11-11-11-28t11-28l344-344H600q-17 0-28.5-11.5T560-800q0-17 11.5-28.5T600-840h200q17 0 28.5 11.5T840-800v200q0 17-11.5 28.5T800-560q-17 0-28.5-11.5T760-600v-104Z\",\n ],\n },\n ],\n login: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M520-120q-17 0-28.5-11.5T480-160q0-17 11.5-28.5T520-200h240v-560H520q-17 0-28.5-11.5T480-800q0-17 11.5-28.5T520-840h240q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H520Zm-73-320H160q-17 0-28.5-11.5T120-480q0-17 11.5-28.5T160-520h287l-75-75q-11-11-11-27t11-28q11-12 28-12.5t29 11.5l143 143q12 12 12 28t-12 28L429-309q-12 12-28.5 11.5T372-310q-11-12-10.5-28.5T373-366l74-74Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M520-120q-17 0-28.5-11.5T480-160q0-17 11.5-28.5T520-200h240v-560H520q-17 0-28.5-11.5T480-800q0-17 11.5-28.5T520-840h240q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H520Zm-73-320H160q-17 0-28.5-11.5T120-480q0-17 11.5-28.5T160-520h287l-75-75q-11-11-11-27t11-28q11-12 28-12.5t29 11.5l143 143q12 12 12 28t-12 28L429-309q-12 12-28.5 11.5T372-310q-11-12-10.5-28.5T373-366l74-74Z\",\n ],\n },\n ],\n download: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-337q-8 0-15-2.5t-13-8.5L308-492q-12-12-11.5-28t11.5-28q12-12 28.5-12.5T365-549l75 75v-286q0-17 11.5-28.5T480-800q17 0 28.5 11.5T520-760v286l75-75q12-12 28.5-11.5T652-548q11 12 11.5 28T652-492L508-348q-6 6-13 8.5t-15 2.5ZM240-160q-33 0-56.5-23.5T160-240v-80q0-17 11.5-28.5T200-360q17 0 28.5 11.5T240-320v80h480v-80q0-17 11.5-28.5T760-360q17 0 28.5 11.5T800-320v80q0 33-23.5 56.5T720-160H240Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-337q-8 0-15-2.5t-13-8.5L308-492q-12-12-11.5-28t11.5-28q12-12 28.5-12.5T365-549l75 75v-286q0-17 11.5-28.5T480-800q17 0 28.5 11.5T520-760v286l75-75q12-12 28.5-11.5T652-548q11 12 11.5 28T652-492L508-348q-6 6-13 8.5t-15 2.5ZM240-160q-33 0-56.5-23.5T160-240v-80q0-17 11.5-28.5T200-360q17 0 28.5 11.5T240-320v80h480v-80q0-17 11.5-28.5T760-360q17 0 28.5 11.5T800-320v80q0 33-23.5 56.5T720-160H240Z\",\n ],\n },\n ],\n schedule: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M520-496v-144q0-17-11.5-28.5T480-680q-17 0-28.5 11.5T440-640v159q0 8 3 15.5t9 13.5l132 132q11 11 28 11t28-11q11-11 11-28t-11-28L520-496ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-400Zm0 320q133 0 226.5-93.5T800-480q0-133-93.5-226.5T480-800q-133 0-226.5 93.5T160-480q0 133 93.5 226.5T480-160Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M520-496v-144q0-17-11.5-28.5T480-680q-17 0-28.5 11.5T440-640v159q0 8 3 15.5t9 13.5l132 132q11 11 28 11t28-11q11-11 11-28t-11-28L520-496ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z\",\n ],\n },\n ],\n format_h2: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-280q-17 0-28.5-11.5T120-320v-320q0-17 11.5-28.5T160-680q17 0 28.5 11.5T200-640v120h160v-120q0-17 11.5-28.5T400-680q17 0 28.5 11.5T440-640v320q0 17-11.5 28.5T400-280q-17 0-28.5-11.5T360-320v-120H200v120q0 17-11.5 28.5T160-280Zm400 0q-17 0-28.5-11.5T520-320v-120q0-33 23.5-56.5T600-520h160v-80H560q-17 0-28.5-11.5T520-640q0-17 11.5-28.5T560-680h200q33 0 56.5 23.5T840-600v80q0 33-23.5 56.5T760-440H600v80h200q17 0 28.5 11.5T840-320q0 17-11.5 28.5T800-280H560Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-280q-17 0-28.5-11.5T120-320v-320q0-17 11.5-28.5T160-680q17 0 28.5 11.5T200-640v120h160v-120q0-17 11.5-28.5T400-680q17 0 28.5 11.5T440-640v320q0 17-11.5 28.5T400-280q-17 0-28.5-11.5T360-320v-120H200v120q0 17-11.5 28.5T160-280Zm400 0q-17 0-28.5-11.5T520-320v-120q0-33 23.5-56.5T600-520h160v-80H560q-17 0-28.5-11.5T520-640q0-17 11.5-28.5T560-680h200q33 0 56.5 23.5T840-600v80q0 33-23.5 56.5T760-440H600v80h200q17 0 28.5 11.5T840-320q0 17-11.5 28.5T800-280H560Z\",\n ],\n },\n ],\n format_h3: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-280q-17 0-28.5-11.5T120-320v-320q0-17 11.5-28.5T160-680q17 0 28.5 11.5T200-640v120h160v-120q0-17 11.5-28.5T400-680q17 0 28.5 11.5T440-640v320q0 17-11.5 28.5T400-280q-17 0-28.5-11.5T360-320v-120H200v120q0 17-11.5 28.5T160-280Zm400 0q-17 0-28.5-11.5T520-320q0-17 11.5-28.5T560-360h200v-80H640q-17 0-28.5-11.5T600-480q0-17 11.5-28.5T640-520h120v-80H560q-17 0-28.5-11.5T520-640q0-17 11.5-28.5T560-680h200q33 0 56.5 23.5T840-600v240q0 33-23.5 56.5T760-280H560Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-280q-17 0-28.5-11.5T120-320v-320q0-17 11.5-28.5T160-680q17 0 28.5 11.5T200-640v120h160v-120q0-17 11.5-28.5T400-680q17 0 28.5 11.5T440-640v320q0 17-11.5 28.5T400-280q-17 0-28.5-11.5T360-320v-120H200v120q0 17-11.5 28.5T160-280Zm400 0q-17 0-28.5-11.5T520-320q0-17 11.5-28.5T560-360h200v-80H640q-17 0-28.5-11.5T600-480q0-17 11.5-28.5T640-520h120v-80H560q-17 0-28.5-11.5T520-640q0-17 11.5-28.5T560-680h200q33 0 56.5 23.5T840-600v240q0 33-23.5 56.5T760-280H560Z\",\n ],\n },\n ],\n match_case: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m247-364-32 89q-4 11-13 17t-20 6q-19 0-29.5-15.5T149-300l138-368q4-11 13.5-17.5T321-692h28q11 0 21 6.5t14 17.5l138 369q7 17-4 32t-29 15q-11 0-20-6.5T456-276l-31-88H247Zm23-64h131l-64-182h-4l-63 182Zm395 186q-51 0-81-27.5T554-342q0-44 34.5-72.5T677-443q23 0 45 4t38 11v-12q0-29-20.5-47T685-505q-15 0-29.5 4.5T629-487q-13 10-24.5 7T586-491q-7-8-7-19t11-19q20-16 45-23.5t51-7.5q69 0 103 32.5t34 97.5v147q0 13-9.5 22t-22.5 9q-13 0-22-9.5t-9-22.5v-5h-4q-14 23-38 35t-53 12Zm12-54q35 0 59.5-24t24.5-56q-14-8-33.5-12.5T689-393q-32 0-50 14t-18 37q0 20 16 33t40 13Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m247-364-32 89q-4 11-13 17t-20 6q-19 0-29.5-15.5T149-300l138-368q4-11 13.5-17.5T321-692h28q11 0 21 6.5t14 17.5l138 369q7 17-4 32t-29 15q-11 0-20-6.5T456-276l-31-88H247Zm23-64h131l-64-182h-4l-63 182Zm395 186q-51 0-81-27.5T554-342q0-44 34.5-72.5T677-443q23 0 45 4t38 11v-12q0-29-20.5-47T685-505q-15 0-29.5 4.5T629-487q-13 10-24.5 7T586-491q-7-8-7-19t11-19q20-16 45-23.5t51-7.5q69 0 103 32.5t34 97.5v147q0 13-9.5 22t-22.5 9q-13 0-22-9.5t-9-22.5v-5h-4q-14 23-38 35t-53 12Zm12-54q35 0 59.5-24t24.5-56q-14-8-33.5-12.5T689-393q-32 0-50 14t-18 37q0 20 16 33t40 13Z\",\n ],\n },\n ],\n format_bold: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M352-200q-33 0-56.5-23.5T272-280v-400q0-33 23.5-56.5T352-760h141q65 0 120 40t55 111q0 51-23 78.5T602-491q25 11 55.5 41t30.5 90q0 89-65 124.5T501-200H352Zm41-112h104q48 0 58.5-24.5T566-372q0-11-10.5-35.5T494-432H393v120Zm0-228h93q33 0 48-17t15-38q0-24-17-39t-44-15h-95v109Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M352-200q-33 0-56.5-23.5T272-280v-400q0-33 23.5-56.5T352-760h141q65 0 120 40t55 111q0 51-23 78.5T602-491q25 11 55.5 41t30.5 90q0 89-65 124.5T501-200H352Zm41-112h104q48 0 58.5-24.5T566-372q0-11-10.5-35.5T494-432H393v120Zm0-228h93q33 0 48-17t15-38q0-24-17-39t-44-15h-95v109Z\",\n ],\n },\n ],\n format_color_text: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M120 0q-17 0-28.5-11.5T80-40v-80q0-17 11.5-28.5T120-160h720q17 0 28.5 11.5T880-120v80q0 17-11.5 28.5T840 0H120Zm165-280q-23 0-36.5-19.5T243-341l176-469q5-14 17-22t26-8h36q15 0 26.5 8t16.5 22l177 470q8 22-5.5 41T676-280q-14 0-26-8t-17-22l-39-114H368l-41 115q-5 14-16.5 21.5T285-280Zm111-224h168l-82-232h-4l-82 232Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M120 0q-17 0-28.5-11.5T80-40v-80q0-17 11.5-28.5T120-160h720q17 0 28.5 11.5T880-120v80q0 17-11.5 28.5T840 0H120Zm165-280q-23 0-36.5-19.5T243-341l176-469q5-14 17-22t26-8h36q15 0 26.5 8t16.5 22l177 470q8 22-5.5 41T676-280q-14 0-26-8t-17-22l-39-114H368l-41 115q-5 14-16.5 21.5T285-280Zm111-224h168l-82-232h-4l-82 232Z\",\n ],\n },\n ],\n text_fields: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M340-160q-25 0-42.5-17.5T280-220v-460H140q-25 0-42.5-17.5T80-740q0-25 17.5-42.5T140-800h400q25 0 42.5 17.5T600-740q0 25-17.5 42.5T540-680H400v460q0 25-17.5 42.5T340-160Zm360 0q-25 0-42.5-17.5T640-220v-260h-60q-25 0-42.5-17.5T520-540q0-25 17.5-42.5T580-600h240q25 0 42.5 17.5T880-540q0 25-17.5 42.5T820-480h-60v260q0 25-17.5 42.5T700-160Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M340-160q-25 0-42.5-17.5T280-220v-460H140q-25 0-42.5-17.5T80-740q0-25 17.5-42.5T140-800h400q25 0 42.5 17.5T600-740q0 25-17.5 42.5T540-680H400v460q0 25-17.5 42.5T340-160Zm360 0q-25 0-42.5-17.5T640-220v-260h-60q-25 0-42.5-17.5T520-540q0-25 17.5-42.5T580-600h240q25 0 42.5 17.5T880-540q0 25-17.5 42.5T820-480h-60v260q0 25-17.5 42.5T700-160Z\",\n ],\n },\n ],\n format_h1: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-280q-17 0-28.5-11.5T200-320v-320q0-17 11.5-28.5T240-680q17 0 28.5 11.5T280-640v120h160v-120q0-17 11.5-28.5T480-680q17 0 28.5 11.5T520-640v320q0 17-11.5 28.5T480-280q-17 0-28.5-11.5T440-320v-120H280v120q0 17-11.5 28.5T240-280Zm480 0q-17 0-28.5-11.5T680-320v-280h-40q-17 0-28.5-11.5T600-640q0-17 11.5-28.5T640-680h80q17 0 28.5 11.5T760-640v320q0 17-11.5 28.5T720-280Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-280q-17 0-28.5-11.5T200-320v-320q0-17 11.5-28.5T240-680q17 0 28.5 11.5T280-640v120h160v-120q0-17 11.5-28.5T480-680q17 0 28.5 11.5T520-640v320q0 17-11.5 28.5T480-280q-17 0-28.5-11.5T440-320v-120H280v120q0 17-11.5 28.5T240-280Zm480 0q-17 0-28.5-11.5T680-320v-280h-40q-17 0-28.5-11.5T600-640q0-17 11.5-28.5T640-680h80q17 0 28.5 11.5T760-640v320q0 17-11.5 28.5T720-280Z\",\n ],\n },\n ],\n attach_file: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M720-330q0 104-73 177T470-80q-104 0-177-73t-73-177v-370q0-75 52.5-127.5T400-880q75 0 127.5 52.5T580-700v350q0 46-32 78t-78 32q-46 0-78-32t-32-78v-330q0-17 11.5-28.5T400-720q17 0 28.5 11.5T440-680v330q0 13 8.5 21.5T470-320q13 0 21.5-8.5T500-350v-350q-1-42-29.5-71T400-800q-42 0-71 29t-29 71v370q-1 71 49 120.5T470-160q70 0 119-49.5T640-330v-350q0-17 11.5-28.5T680-720q17 0 28.5 11.5T720-680v350Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M720-330q0 104-73 177T470-80q-104 0-177-73t-73-177v-370q0-75 52.5-127.5T400-880q75 0 127.5 52.5T580-700v350q0 46-32 78t-78 32q-46 0-78-32t-32-78v-330q0-17 11.5-28.5T400-720q17 0 28.5 11.5T440-680v330q0 13 8.5 21.5T470-320q13 0 21.5-8.5T500-350v-350q-1-42-29.5-71T400-800q-42 0-71 29t-29 71v370q-1 71 49 120.5T470-160q70 0 119-49.5T640-330v-350q0-17 11.5-28.5T680-720q17 0 28.5 11.5T720-680v350Z\",\n ],\n },\n ],\n code: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m193-479 155 155q11 11 11 28t-11 28q-11 11-28 11t-28-11L108-452q-6-6-8.5-13T97-480q0-8 2.5-15t8.5-13l184-184q12-12 28.5-12t28.5 12q12 12 12 28.5T349-635L193-479Zm574-2L612-636q-11-11-11-28t11-28q11-11 28-11t28 11l184 184q6 6 8.5 13t2.5 15q0 8-2.5 15t-8.5 13L668-268q-12 12-28 11.5T612-269q-12-12-12-28.5t12-28.5l155-155Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m193-479 155 155q11 11 11 28t-11 28q-11 11-28 11t-28-11L108-452q-6-6-8.5-13T97-480q0-8 2.5-15t8.5-13l184-184q12-12 28.5-12t28.5 12q12 12 12 28.5T349-635L193-479Zm574-2L612-636q-11-11-11-28t11-28q11-11 28-11t28 11l184 184q6 6 8.5 13t2.5 15q0 8-2.5 15t-8.5 13L668-268q-12 12-28 11.5T612-269q-12-12-12-28.5t12-28.5l155-155Z\",\n ],\n },\n ],\n format_underlined: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-120q-17 0-28.5-11.5T200-160q0-17 11.5-28.5T240-200h480q17 0 28.5 11.5T760-160q0 17-11.5 28.5T720-120H240Zm240-160q-101 0-157-63t-56-167v-279q0-21 15.5-36t36.5-15q21 0 36 15t15 36v285q0 56 28 91t82 35q54 0 82-35t28-91v-285q0-21 15.5-36t36.5-15q21 0 36 15t15 36v279q0 104-56 167t-157 63Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-120q-17 0-28.5-11.5T200-160q0-17 11.5-28.5T240-200h480q17 0 28.5 11.5T760-160q0 17-11.5 28.5T720-120H240Zm240-160q-101 0-157-63t-56-167v-279q0-21 15.5-36t36.5-15q21 0 36 15t15 36v285q0 56 28 91t82 35q54 0 82-35t28-91v-285q0-21 15.5-36t36.5-15q21 0 36 15t15 36v279q0 104-56 167t-157 63Z\",\n ],\n },\n ],\n format_list_numbered: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M150-80q-13 0-21.5-8.5T120-110q0-13 8.5-21.5T150-140h70v-30h-30q-13 0-21.5-8.5T160-200q0-13 8.5-21.5T190-230h30v-30h-70q-13 0-21.5-8.5T120-290q0-13 8.5-21.5T150-320h90q17 0 28.5 11.5T280-280v40q0 17-11.5 28.5T240-200q17 0 28.5 11.5T280-160v40q0 17-11.5 28.5T240-80h-90Zm0-280q-13 0-21.5-8.5T120-390v-80q0-17 11.5-28.5T160-510h60v-30h-70q-13 0-21.5-8.5T120-570q0-13 8.5-21.5T150-600h90q17 0 28.5 11.5T280-560v70q0 17-11.5 28.5T240-450h-60v30h70q13 0 21.5 8.5T280-390q0 13-8.5 21.5T250-360H150Zm60-280q-13 0-21.5-8.5T180-670v-150h-30q-13 0-21.5-8.5T120-850q0-13 8.5-21.5T150-880h60q13 0 21.5 8.5T240-850v180q0 13-8.5 21.5T210-640Zm190 440q-17 0-28.5-11.5T360-240q0-17 11.5-28.5T400-280h400q17 0 28.5 11.5T840-240q0 17-11.5 28.5T800-200H400Zm0-240q-17 0-28.5-11.5T360-480q0-17 11.5-28.5T400-520h400q17 0 28.5 11.5T840-480q0 17-11.5 28.5T800-440H400Zm0-240q-17 0-28.5-11.5T360-720q0-17 11.5-28.5T400-760h400q17 0 28.5 11.5T840-720q0 17-11.5 28.5T800-680H400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M150-80q-13 0-21.5-8.5T120-110q0-13 8.5-21.5T150-140h70v-30h-30q-13 0-21.5-8.5T160-200q0-13 8.5-21.5T190-230h30v-30h-70q-13 0-21.5-8.5T120-290q0-13 8.5-21.5T150-320h90q17 0 28.5 11.5T280-280v40q0 17-11.5 28.5T240-200q17 0 28.5 11.5T280-160v40q0 17-11.5 28.5T240-80h-90Zm0-280q-13 0-21.5-8.5T120-390v-80q0-17 11.5-28.5T160-510h60v-30h-70q-13 0-21.5-8.5T120-570q0-13 8.5-21.5T150-600h90q17 0 28.5 11.5T280-560v70q0 17-11.5 28.5T240-450h-60v30h70q13 0 21.5 8.5T280-390q0 13-8.5 21.5T250-360H150Zm60-280q-13 0-21.5-8.5T180-670v-150h-30q-13 0-21.5-8.5T120-850q0-13 8.5-21.5T150-880h60q13 0 21.5 8.5T240-850v180q0 13-8.5 21.5T210-640Zm190 440q-17 0-28.5-11.5T360-240q0-17 11.5-28.5T400-280h400q17 0 28.5 11.5T840-240q0 17-11.5 28.5T800-200H400Zm0-240q-17 0-28.5-11.5T360-480q0-17 11.5-28.5T400-520h400q17 0 28.5 11.5T840-480q0 17-11.5 28.5T800-440H400Zm0-240q-17 0-28.5-11.5T360-720q0-17 11.5-28.5T400-760h400q17 0 28.5 11.5T840-720q0 17-11.5 28.5T800-680H400Z\",\n ],\n },\n ],\n format_strikethrough: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M120-400q-17 0-28.5-11.5T80-440q0-17 11.5-28.5T120-480h720q17 0 28.5 11.5T880-440q0 17-11.5 28.5T840-400H120Zm300-160v-120H260q-25 0-42.5-17.5T200-740q0-25 17.5-42.5T260-800h440q25 0 42.5 17.5T760-740q0 25-17.5 42.5T700-680H540v120H420Zm0 240h120v100q0 25-17.5 42.5T480-160q-25 0-42.5-17.5T420-220v-100Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M120-400q-17 0-28.5-11.5T80-440q0-17 11.5-28.5T120-480h720q17 0 28.5 11.5T880-440q0 17-11.5 28.5T840-400H120Zm300-160v-120H260q-25 0-42.5-17.5T200-740q0-25 17.5-42.5T260-800h440q25 0 42.5 17.5T760-740q0 25-17.5 42.5T700-680H540v120H420Zm0 240h120v100q0 25-17.5 42.5T480-160q-25 0-42.5-17.5T420-220v-100Z\",\n ],\n },\n ],\n format_quote: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m262-300 58-100q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 23-5.5 42.5T458-480L331-260q-5 9-14 14.5t-20 5.5q-23 0-34.5-20t-.5-40Zm360 0 58-100q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 23-5.5 42.5T818-480L691-260q-5 9-14 14.5t-20 5.5q-23 0-34.5-20t-.5-40ZM320-500q25 0 42.5-17.5T380-560q0-25-17.5-42.5T320-620q-25 0-42.5 17.5T260-560q0 25 17.5 42.5T320-500Zm360 0q25 0 42.5-17.5T740-560q0-25-17.5-42.5T680-620q-25 0-42.5 17.5T620-560q0 25 17.5 42.5T680-500Zm0-60Zm-360 0Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m262-300 58-100q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 23-5.5 42.5T458-480L331-260q-5 9-14 14.5t-20 5.5q-23 0-34.5-20t-.5-40Zm360 0 58-100q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 23-5.5 42.5T818-480L691-260q-5 9-14 14.5t-20 5.5q-23 0-34.5-20t-.5-40Z\",\n ],\n },\n ],\n link: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-280q-83 0-141.5-58.5T80-480q0-83 58.5-141.5T280-680h120q17 0 28.5 11.5T440-640q0 17-11.5 28.5T400-600H280q-50 0-85 35t-35 85q0 50 35 85t85 35h120q17 0 28.5 11.5T440-320q0 17-11.5 28.5T400-280H280Zm80-160q-17 0-28.5-11.5T320-480q0-17 11.5-28.5T360-520h240q17 0 28.5 11.5T640-480q0 17-11.5 28.5T600-440H360Zm200 160q-17 0-28.5-11.5T520-320q0-17 11.5-28.5T560-360h120q50 0 85-35t35-85q0-50-35-85t-85-35H560q-17 0-28.5-11.5T520-640q0-17 11.5-28.5T560-680h120q83 0 141.5 58.5T880-480q0 83-58.5 141.5T680-280H560Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-280q-83 0-141.5-58.5T80-480q0-83 58.5-141.5T280-680h120q17 0 28.5 11.5T440-640q0 17-11.5 28.5T400-600H280q-50 0-85 35t-35 85q0 50 35 85t85 35h120q17 0 28.5 11.5T440-320q0 17-11.5 28.5T400-280H280Zm80-160q-17 0-28.5-11.5T320-480q0-17 11.5-28.5T360-520h240q17 0 28.5 11.5T640-480q0 17-11.5 28.5T600-440H360Zm200 160q-17 0-28.5-11.5T520-320q0-17 11.5-28.5T560-360h120q50 0 85-35t35-85q0-50-35-85t-85-35H560q-17 0-28.5-11.5T520-640q0-17 11.5-28.5T560-680h120q83 0 141.5 58.5T880-480q0 83-58.5 141.5T680-280H560Z\",\n ],\n },\n ],\n format_italic: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M250-200q-21 0-35.5-14.5T200-250q0-21 14.5-35.5T250-300h110l120-360H370q-21 0-35.5-14.5T320-710q0-21 14.5-35.5T370-760h300q21 0 35.5 14.5T720-710q0 21-14.5 35.5T670-660h-90L460-300h90q21 0 35.5 14.5T600-250q0 21-14.5 35.5T550-200H250Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M250-200q-21 0-35.5-14.5T200-250q0-21 14.5-35.5T250-300h110l120-360H370q-21 0-35.5-14.5T320-710q0-21 14.5-35.5T370-760h300q21 0 35.5 14.5T720-710q0 21-14.5 35.5T670-660h-90L460-300h90q21 0 35.5 14.5T600-250q0 21-14.5 35.5T550-200H250Z\",\n ],\n },\n ],\n code_blocks: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m353-480 59-59q12-12 12-28t-12-28q-12-12-28.5-12T355-595l-87 87q-6 6-8.5 13t-2.5 15q0 8 2.5 15t8.5 13l87 87q12 12 28.5 12t28.5-12q12-12 12-28t-12-28l-59-59Zm254 0-59 59q-12 12-12 28t12 28q12 12 28.5 12t28.5-12l87-87q6-6 8.5-13t2.5-15q0-8-2.5-15t-8.5-13l-87-87q-6-6-13.5-9t-15-3q-7.5 0-15 3t-13.5 9q-12 12-12 28t12 28l59 59ZM200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-560H200v560Zm0-560v560-560Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m353-480 59-59q12-12 12-28t-12-28q-12-12-28.5-12T355-595l-87 87q-6 6-8.5 13t-2.5 15q0 8 2.5 15t8.5 13l87 87q12 12 28.5 12t28.5-12q12-12 12-28t-12-28l-59-59Zm254 0-59 59q-12 12-12 28t12 28q12 12 28.5 12t28.5-12l87-87q6-6 8.5-13t2.5-15q0-8-2.5-15t-8.5-13l-87-87q-6-6-13.5-9t-15-3q-7.5 0-15 3t-13.5 9q-12 12-12 28t12 28l59 59ZM200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Z\",\n ],\n },\n ],\n arrow_downward: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-313v-447q0-17 11.5-28.5T480-800q17 0 28.5 11.5T520-760v447l196-196q12-12 28-11.5t28 12.5q11 12 11.5 28T772-452L508-188q-6 6-13 8.5t-15 2.5q-8 0-15-2.5t-13-8.5L188-452q-11-11-11-27.5t11-28.5q12-12 28.5-12t28.5 12l195 195Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-313v-447q0-17 11.5-28.5T480-800q17 0 28.5 11.5T520-760v447l196-196q12-12 28-11.5t28 12.5q11 12 11.5 28T772-452L508-188q-6 6-13 8.5t-15 2.5q-8 0-15-2.5t-13-8.5L188-452q-11-11-11-27.5t11-28.5q12-12 28.5-12t28.5 12l195 195Z\",\n ],\n },\n ],\n format_list_bulleted: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M400-200q-17 0-28.5-11.5T360-240q0-17 11.5-28.5T400-280h400q17 0 28.5 11.5T840-240q0 17-11.5 28.5T800-200H400Zm0-240q-17 0-28.5-11.5T360-480q0-17 11.5-28.5T400-520h400q17 0 28.5 11.5T840-480q0 17-11.5 28.5T800-440H400Zm0-240q-17 0-28.5-11.5T360-720q0-17 11.5-28.5T400-760h400q17 0 28.5 11.5T840-720q0 17-11.5 28.5T800-680H400ZM200-160q-33 0-56.5-23.5T120-240q0-33 23.5-56.5T200-320q33 0 56.5 23.5T280-240q0 33-23.5 56.5T200-160Zm0-240q-33 0-56.5-23.5T120-480q0-33 23.5-56.5T200-560q33 0 56.5 23.5T280-480q0 33-23.5 56.5T200-400Zm0-240q-33 0-56.5-23.5T120-720q0-33 23.5-56.5T200-800q33 0 56.5 23.5T280-720q0 33-23.5 56.5T200-640Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M400-200q-17 0-28.5-11.5T360-240q0-17 11.5-28.5T400-280h400q17 0 28.5 11.5T840-240q0 17-11.5 28.5T800-200H400Zm0-240q-17 0-28.5-11.5T360-480q0-17 11.5-28.5T400-520h400q17 0 28.5 11.5T840-480q0 17-11.5 28.5T800-440H400Zm0-240q-17 0-28.5-11.5T360-720q0-17 11.5-28.5T400-760h400q17 0 28.5 11.5T840-720q0 17-11.5 28.5T800-680H400ZM200-160q-33 0-56.5-23.5T120-240q0-33 23.5-56.5T200-320q33 0 56.5 23.5T280-240q0 33-23.5 56.5T200-160Zm0-240q-33 0-56.5-23.5T120-480q0-33 23.5-56.5T200-560q33 0 56.5 23.5T280-480q0 33-23.5 56.5T200-400Zm0-240q-33 0-56.5-23.5T120-720q0-33 23.5-56.5T200-800q33 0 56.5 23.5T280-720q0 33-23.5 56.5T200-640Z\",\n ],\n },\n ],\n arrow_back: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m313-440 196 196q12 12 11.5 28T508-188q-12 11-28 11.5T452-188L188-452q-6-6-8.5-13t-2.5-15q0-8 2.5-15t8.5-13l264-264q11-11 27.5-11t28.5 11q12 12 12 28.5T508-715L313-520h447q17 0 28.5 11.5T800-480q0 17-11.5 28.5T760-440H313Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m313-440 196 196q12 12 11.5 28T508-188q-12 11-28 11.5T452-188L188-452q-6-6-8.5-13t-2.5-15q0-8 2.5-15t8.5-13l264-264q11-11 27.5-11t28.5 11q12 12 12 28.5T508-715L313-520h447q17 0 28.5 11.5T800-480q0 17-11.5 28.5T760-440H313Z\",\n ],\n },\n ],\n filter_list: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-240q-17 0-28.5-11.5T400-280q0-17 11.5-28.5T440-320h80q17 0 28.5 11.5T560-280q0 17-11.5 28.5T520-240h-80ZM280-440q-17 0-28.5-11.5T240-480q0-17 11.5-28.5T280-520h400q17 0 28.5 11.5T720-480q0 17-11.5 28.5T680-440H280ZM160-640q-17 0-28.5-11.5T120-680q0-17 11.5-28.5T160-720h640q17 0 28.5 11.5T840-680q0 17-11.5 28.5T800-640H160Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-240q-17 0-28.5-11.5T400-280q0-17 11.5-28.5T440-320h80q17 0 28.5 11.5T560-280q0 17-11.5 28.5T520-240h-80ZM280-440q-17 0-28.5-11.5T240-480q0-17 11.5-28.5T280-520h400q17 0 28.5 11.5T720-480q0 17-11.5 28.5T680-440H280ZM160-640q-17 0-28.5-11.5T120-680q0-17 11.5-28.5T160-720h640q17 0 28.5 11.5T840-680q0 17-11.5 28.5T800-640H160Z\",\n ],\n },\n ],\n swap_vert: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M360-440q-17 0-28.5-11.5T320-480v-247l-75 75q-11 11-27.5 11T189-652q-12-12-12-28.5t12-28.5l143-143q6-6 13-8.5t15-2.5q8 0 15 2.5t13 8.5l144 144q12 12 11.5 28T531-652q-12 11-28 11.5T475-652l-75-75v247q0 17-11.5 28.5T360-440ZM600-97q-8 0-15-2.5t-13-8.5L428-252q-12-12-11.5-28t12.5-28q12-11 28-11.5t28 11.5l75 75v-247q0-17 11.5-28.5T600-520q17 0 28.5 11.5T640-480v247l75-75q11-11 27.5-11t28.5 11q12 12 12 28.5T771-251L628-108q-6 6-13 8.5T600-97Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M360-440q-17 0-28.5-11.5T320-480v-247l-75 75q-11 11-27.5 11T189-652q-12-12-12-28.5t12-28.5l143-143q6-6 13-8.5t15-2.5q8 0 15 2.5t13 8.5l144 144q12 12 11.5 28T531-652q-12 11-28 11.5T475-652l-75-75v247q0 17-11.5 28.5T360-440ZM600-97q-8 0-15-2.5t-13-8.5L428-252q-12-12-11.5-28t12.5-28q12-11 28-11.5t28 11.5l75 75v-247q0-17 11.5-28.5T600-520q17 0 28.5 11.5T640-480v247l75-75q11-11 27.5-11t28.5 11q12 12 12 28.5T771-251L628-108q-6 6-13 8.5T600-97Z\",\n ],\n },\n ],\n sort: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-240q-17 0-28.5-11.5T120-280q0-17 11.5-28.5T160-320h160q17 0 28.5 11.5T360-280q0 17-11.5 28.5T320-240H160Zm0-200q-17 0-28.5-11.5T120-480q0-17 11.5-28.5T160-520h400q17 0 28.5 11.5T600-480q0 17-11.5 28.5T560-440H160Zm0-200q-17 0-28.5-11.5T120-680q0-17 11.5-28.5T160-720h640q17 0 28.5 11.5T840-680q0 17-11.5 28.5T800-640H160Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-240q-17 0-28.5-11.5T120-280q0-17 11.5-28.5T160-320h160q17 0 28.5 11.5T360-280q0 17-11.5 28.5T320-240H160Zm0-200q-17 0-28.5-11.5T120-480q0-17 11.5-28.5T160-520h400q17 0 28.5 11.5T600-480q0 17-11.5 28.5T560-440H160Zm0-200q-17 0-28.5-11.5T120-680q0-17 11.5-28.5T160-720h640q17 0 28.5 11.5T840-680q0 17-11.5 28.5T800-640H160Z\",\n ],\n },\n ],\n arrow_forward: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M647-440H200q-17 0-28.5-11.5T160-480q0-17 11.5-28.5T200-520h447L451-716q-12-12-11.5-28t12.5-28q12-11 28-11.5t28 11.5l264 264q6 6 8.5 13t2.5 15q0 8-2.5 15t-8.5 13L508-188q-11 11-27.5 11T452-188q-12-12-12-28.5t12-28.5l195-195Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M647-440H200q-17 0-28.5-11.5T160-480q0-17 11.5-28.5T200-520h447L451-716q-12-12-11.5-28t12.5-28q12-11 28-11.5t28 11.5l264 264q6 6 8.5 13t2.5 15q0 8-2.5 15t-8.5 13L508-188q-11 11-27.5 11T452-188q-12-12-12-28.5t12-28.5l195-195Z\",\n ],\n },\n ],\n alternate_email: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480v58q0 59-40.5 100.5T740-280q-35 0-66-15t-52-43q-29 29-65.5 43.5T480-280q-83 0-141.5-58.5T280-480q0-83 58.5-141.5T480-680q83 0 141.5 58.5T680-480v58q0 26 17 44t43 18q26 0 43-18t17-44v-58q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93h160q17 0 28.5 11.5T680-120q0 17-11.5 28.5T640-80H480Zm0-280q50 0 85-35t35-85q0-50-35-85t-85-35q-50 0-85 35t-35 85q0 50 35 85t85 35Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480v58q0 59-40.5 100.5T740-280q-35 0-66-15t-52-43q-29 29-65.5 43.5T480-280q-83 0-141.5-58.5T280-480q0-83 58.5-141.5T480-680q83 0 141.5 58.5T680-480v58q0 26 17 44t43 18q26 0 43-18t17-44v-58q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93h160q17 0 28.5 11.5T680-120q0 17-11.5 28.5T640-80H480Zm0-280q50 0 85-35t35-85q0-50-35-85t-85-35q-50 0-85 35t-35 85q0 50 35 85t85 35Z\",\n ],\n },\n ],\n arrow_left: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M526-314 381-459q-5-5-7-10t-2-11q0-6 2-11t7-10l145-145q3-3 6.5-4.5t7.5-1.5q8 0 14 5.5t6 14.5v304q0 9-6 14.5t-14 5.5q-2 0-14-6Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M526-314 381-459q-5-5-7-10t-2-11q0-6 2-11t7-10l145-145q3-3 6.5-4.5t7.5-1.5q8 0 14 5.5t6 14.5v304q0 9-6 14.5t-14 5.5q-2 0-14-6Z\",\n ],\n },\n ],\n arrow_drop_up: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M328-400q-9 0-14.5-6t-5.5-14q0-2 6-14l145-145q5-5 10-7t11-2q6 0 11 2t10 7l145 145q3 3 4.5 6.5t1.5 7.5q0 8-5.5 14t-14.5 6H328Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M328-400q-9 0-14.5-6t-5.5-14q0-2 6-14l145-145q5-5 10-7t11-2q6 0 11 2t10 7l145 145q3 3 4.5 6.5t1.5 7.5q0 8-5.5 14t-14.5 6H328Z\",\n ],\n },\n ],\n arrow_drop_down: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M459-381 314-526q-3-3-4.5-6.5T308-540q0-8 5.5-14t14.5-6h304q9 0 14.5 6t5.5 14q0 2-6 14L501-381q-5 5-10 7t-11 2q-6 0-11-2t-10-7Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M459-381 314-526q-3-3-4.5-6.5T308-540q0-8 5.5-14t14.5-6h304q9 0 14.5 6t5.5 14q0 2-6 14L501-381q-5 5-10 7t-11 2q-6 0-11-2t-10-7Z\",\n ],\n },\n ],\n group: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M40-272q0-34 17.5-62.5T104-378q62-31 126-46.5T360-440q66 0 130 15.5T616-378q29 15 46.5 43.5T680-272v32q0 33-23.5 56.5T600-160H120q-33 0-56.5-23.5T40-240v-32Zm800 112H738q11-18 16.5-38.5T760-240v-40q0-44-24.5-84.5T666-434q51 6 96 20.5t84 35.5q36 20 55 44.5t19 53.5v40q0 33-23.5 56.5T840-160ZM360-480q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47Zm400-160q0 66-47 113t-113 47q-11 0-28-2.5t-28-5.5q27-32 41.5-71t14.5-81q0-42-14.5-81T544-792q14-5 28-6.5t28-1.5q66 0 113 47t47 113ZM120-240h480v-32q0-11-5.5-20T580-306q-54-27-109-40.5T360-360q-56 0-111 13.5T140-306q-9 5-14.5 14t-5.5 20v32Zm240-320q33 0 56.5-23.5T440-640q0-33-23.5-56.5T360-720q-33 0-56.5 23.5T280-640q0 33 23.5 56.5T360-560Zm0 320Zm0-400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M40-272q0-34 17.5-62.5T104-378q62-31 126-46.5T360-440q66 0 130 15.5T616-378q29 15 46.5 43.5T680-272v32q0 33-23.5 56.5T600-160H120q-33 0-56.5-23.5T40-240v-32Zm698 112q11-18 16.5-38.5T760-240v-40q0-44-24.5-84.5T666-434q51 6 96 20.5t84 35.5q36 20 55 44.5t19 53.5v40q0 33-23.5 56.5T840-160H738ZM360-480q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47Zm400-160q0 66-47 113t-113 47q-11 0-28-2.5t-28-5.5q27-32 41.5-71t14.5-81q0-42-14.5-81T544-792q14-5 28-6.5t28-1.5q66 0 113 47t47 113Z\",\n ],\n },\n ],\n arrow_right: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M420-308q-8 0-14-5.5t-6-14.5v-304q0-9 6-14.5t14-5.5q2 0 14 6l145 145q5 5 7 10t2 11q0 6-2 11t-7 10L434-314q-3 3-6.5 4.5T420-308Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M420-308q-8 0-14-5.5t-6-14.5v-304q0-9 6-14.5t14-5.5q2 0 14 6l145 145q5 5 7 10t2 11q0 6-2 11t-7 10L434-314q-3 3-6.5 4.5T420-308Z\",\n ],\n },\n ],\n refresh: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-160q-134 0-227-93t-93-227q0-134 93-227t227-93q69 0 132 28.5T720-690v-70q0-17 11.5-28.5T760-800q17 0 28.5 11.5T800-760v200q0 17-11.5 28.5T760-520H560q-17 0-28.5-11.5T520-560q0-17 11.5-28.5T560-600h128q-32-56-87.5-88T480-720q-100 0-170 70t-70 170q0 100 70 170t170 70q68 0 124.5-34.5T692-367q8-14 22.5-19.5t29.5-.5q16 5 23 21t-1 30q-41 80-117 128t-169 48Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-160q-134 0-227-93t-93-227q0-134 93-227t227-93q69 0 132 28.5T720-690v-70q0-17 11.5-28.5T760-800q17 0 28.5 11.5T800-760v200q0 17-11.5 28.5T760-520H560q-17 0-28.5-11.5T520-560q0-17 11.5-28.5T560-600h128q-32-56-87.5-88T480-720q-100 0-170 70t-70 170q0 100 70 170t170 70q68 0 124.5-34.5T692-367q8-14 22.5-19.5t29.5-.5q16 5 23 21t-1 30q-41 80-117 128t-169 48Z\",\n ],\n },\n ],\n robot_2: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-17 0-28.5-11.5T160-160v-160q0-33 23.5-56.5T240-400h480q33 0 56.5 23.5T800-320v160q0 17-11.5 28.5T760-120H200Zm160-320q-83 0-141.5-58.5T160-640q0-83 58.5-141.5T360-840h240q83 0 141.5 58.5T800-640q0 83-58.5 141.5T600-440H360ZM240-200h480v-120H240v120Zm120-320h240q50 0 85-35t35-85q0-50-35-85t-85-35H360q-50 0-85 35t-35 85q0 50 35 85t85 35Zm0-80q17 0 28.5-11.5T400-640q0-17-11.5-28.5T360-680q-17 0-28.5 11.5T320-640q0 17 11.5 28.5T360-600Zm240 0q17 0 28.5-11.5T640-640q0-17-11.5-28.5T600-680q-17 0-28.5 11.5T560-640q0 17 11.5 28.5T600-600ZM480-200Zm0-440Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-17 0-28.5-11.5T160-160v-160q0-33 23.5-56.5T240-400h480q33 0 56.5 23.5T800-320v160q0 17-11.5 28.5T760-120H200Zm160-320q-83 0-141.5-58.5T160-640q0-83 58.5-141.5T360-840h240q83 0 141.5 58.5T800-640q0 83-58.5 141.5T600-440H360Zm0-160q17 0 28.5-11.5T400-640q0-17-11.5-28.5T360-680q-17 0-28.5 11.5T320-640q0 17 11.5 28.5T360-600Zm240 0q17 0 28.5-11.5T640-640q0-17-11.5-28.5T600-680q-17 0-28.5 11.5T560-640q0 17 11.5 28.5T600-600Z\",\n ],\n },\n ],\n conversion_path: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M760-120q-39 0-70-22.5T647-200H440q-66 0-113-47t-47-113q0-66 47-113t113-47h80q33 0 56.5-23.5T600-600q0-33-23.5-56.5T520-680H313q-13 35-43.5 57.5T200-600q-50 0-85-35t-35-85q0-50 35-85t85-35q39 0 69.5 22.5T313-760h207q66 0 113 47t47 113q0 66-47 113t-113 47h-80q-33 0-56.5 23.5T360-360q0 33 23.5 56.5T440-280h207q13-35 43.5-57.5T760-360q50 0 85 35t35 85q0 50-35 85t-85 35ZM200-680q17 0 28.5-11.5T240-720q0-17-11.5-28.5T200-760q-17 0-28.5 11.5T160-720q0 17 11.5 28.5T200-680Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M760-120q-39 0-70-22.5T647-200H440q-66 0-113-47t-47-113q0-66 47-113t113-47h80q33 0 56.5-23.5T600-600q0-33-23.5-56.5T520-680H313q-13 35-43.5 57.5T200-600q-50 0-85-35t-35-85q0-50 35-85t85-35q39 0 69.5 22.5T313-760h207q66 0 113 47t47 113q0 66-47 113t-113 47h-80q-33 0-56.5 23.5T360-360q0 33 23.5 56.5T440-280h207q13-35 43.5-57.5T760-360q50 0 85 35t35 85q0 50-35 85t-85 35ZM200-680q17 0 28.5-11.5T240-720q0-17-11.5-28.5T200-760q-17 0-28.5 11.5T160-720q0 17 11.5 28.5T200-680Z\",\n ],\n },\n ],\n radio_button_unchecked: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0 0q-134 0-227-93t-93-227q0-134 93-227t227-93q134 0 227 93t93 227q0 134-93 227t-227 93Z\",\n ],\n },\n ],\n smartphone: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-40q-33 0-56.5-23.5T200-120v-720q0-33 23.5-56.5T280-920h400q33 0 56.5 23.5T760-840v720q0 33-23.5 56.5T680-40H280Zm0-120v40h400v-40H280Zm0-80h400v-480H280v480Zm0-560h400v-40H280v40Zm0 0v-40 40Zm0 640v40-40Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-40q-33 0-56.5-23.5T200-120v-720q0-33 23.5-56.5T280-920h400q33 0 56.5 23.5T760-840v720q0 33-23.5 56.5T680-40H280Zm0-200h400v-480H280v480Z\",\n ],\n },\n ],\n};\nconst symbol = (name: keyof typeof symbols, filled = false) => (\n <g\n transform={symbols[name][filled ? 1 : 0].transform}\n fill=\"currentColor\"\n data-material-symbol={name}\n >\n {symbols[name][filled ? 1 : 0].paths.map((d) => (\n <path key={d} d={d} />\n ))}\n </g>\n);\nconst badge = (name: keyof typeof symbols, filled = false) => (\n <g transform=\"translate(14 14) scale(0.42)\">{symbol(name, filled)}</g>\n);\nexport const Icons: Record<IconName, IconSrc> = {\n Home: (filled) => symbol(\"home\", filled),\n User: (filled) => symbol(\"person\", filled),\n UserPlus: (filled) => symbol(\"person_add\", filled),\n Mail: (filled) => symbol(\"mail\", filled),\n MailPlus: (filled) => symbol(\"mark_email_unread\", filled),\n Star: (filled) => symbol(\"star\", filled),\n PlusCircle: (filled) => symbol(\"add_circle\", filled),\n Explore: (filled) => symbol(\"explore\", filled),\n Smile: (filled) => symbol(\"sentiment_satisfied\", filled),\n SmilePlus: (filled) => symbol(\"add_reaction\", filled),\n Leaf: (filled) => symbol(\"eco\", filled),\n Sticker: (filled) => symbol(\"sticky_note_2\", filled),\n Delete: (filled) => symbol(\"delete\", filled),\n Phone: (filled) => symbol(\"call\", filled),\n PhoneDown: (filled) => symbol(\"call_end\", filled),\n Headphone: (filled) => symbol(\"headphones\", filled),\n HeadphoneMute: (filled) => symbol(\"headset_off\", filled),\n Send: (filled) => symbol(\"arrow_upward\", filled),\n Bell: (filled) => symbol(\"notifications\", filled),\n BellRing: (filled) => symbol(\"notifications_active\", filled),\n BellPing: (filled) => symbol(\"notification_important\", filled),\n BellMute: (filled) => symbol(\"notifications_off\", filled),\n Message: (filled) => symbol(\"chat\", filled),\n MessageUnread: (filled) => symbol(\"mark_chat_unread\", filled),\n Setting: (filled) => symbol(\"settings\", filled),\n Search: (filled) => symbol(\"search\", filled),\n Heart: (filled) => symbol(\"favorite\", filled),\n Play: (filled) => symbol(\"play_arrow\", filled),\n Pause: (filled) => symbol(\"pause\", filled),\n Sun: (filled) => symbol(\"light_mode\", filled),\n Photo: (filled) => symbol(\"image\", filled),\n Lock: (filled) => symbol(\"lock\", filled),\n Vlc: (filled) => symbol(\"movie\", filled),\n Flag: (filled) => symbol(\"flag\", filled),\n Ball: (filled) => symbol(\"sports_basketball\", filled),\n Bulb: (filled) => symbol(\"lightbulb\", filled),\n Terminal: (filled) => symbol(\"terminal\", filled),\n Pencil: (filled) => symbol(\"edit\", filled),\n Info: (filled) => symbol(\"info\", filled),\n Shield: (filled) => symbol(\"shield\", filled),\n ShieldLock: (filled) => symbol(\"encrypted\", filled),\n ShieldUser: (filled) => symbol(\"admin_panel_settings\", filled),\n Cup: (filled) => symbol(\"local_cafe\", filled),\n Pin: (filled) => symbol(\"push_pin\", filled),\n VolumeHigh: (filled) => symbol(\"volume_up\", filled),\n VolumeHighLock: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"volume_up\", filled)}</g>\n {badge(\"lock\", filled)}\n </>\n ),\n VolumeHighGlobe: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"volume_up\", filled)}</g>\n {badge(\"public\", filled)}\n </>\n ),\n VolumeMute: (filled) => symbol(\"volume_off\", filled),\n File: (filled) => symbol(\"draft\", filled),\n Category: (filled) => symbol(\"grid_view\", filled),\n Peace: (filled) => symbol(\"public\", filled),\n Eye: (filled) => symbol(\"visibility\", filled),\n EyeBlind: (filled) => symbol(\"visibility_off\", filled),\n Warning: (filled) => symbol(\"warning\", filled),\n Funnel: (filled) => symbol(\"filter_alt\", filled),\n Bookmark: (filled) => symbol(\"bookmark\", filled),\n Inbox: (filled) => symbol(\"inbox\", filled),\n Thread: (filled) => symbol(\"forum\", filled),\n ThreadPlus: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"forum\", filled)}</g>\n {badge(\"add\", filled)}\n </>\n ),\n ThreadUnread: (filled) => symbol(\"mark_unread_chat_alt\", filled),\n ThreadReply: (filled) => symbol(\"reply\", filled),\n Monitor: (filled) => symbol(\"desktop_windows\", filled),\n ScreenShare: (filled) => symbol(\"screen_share\", filled),\n Server: (filled) => symbol(\"dns\", filled),\n Prohibited: (filled) => symbol(\"block\", filled),\n NoEntry: (filled) => symbol(\"do_not_disturb_on\", filled),\n Mic: (filled) => symbol(\"mic\", filled),\n MicMute: (filled) => symbol(\"mic_off\", filled),\n VideoCamera: (filled) => symbol(\"videocam\", filled),\n VideoCameraMute: (filled) => symbol(\"videocam_off\", filled),\n Hash: (filled) => symbol(\"tag\", filled),\n HashLock: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"tag\", filled)}</g>\n {badge(\"lock\", filled)}\n </>\n ),\n HashGlobe: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"tag\", filled)}</g>\n {badge(\"public\", filled)}\n </>\n ),\n HashSearch: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"tag\", filled)}</g>\n {badge(\"search\", filled)}\n </>\n ),\n HashPlus: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"tag\", filled)}</g>\n {badge(\"add\", filled)}\n </>\n ),\n Space: (filled) => symbol(\"workspaces\", filled),\n SpaceLock: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"workspaces\", filled)}</g>\n {badge(\"lock\", filled)}\n </>\n ),\n SpaceGlobe: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"workspaces\", filled)}</g>\n {badge(\"public\", filled)}\n </>\n ),\n SpaceSearch: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"workspaces\", filled)}</g>\n {badge(\"search\", filled)}\n </>\n ),\n SpacePlus: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"workspaces\", filled)}</g>\n {badge(\"add\", filled)}\n </>\n ),\n ChevronRight: (filled) => symbol(\"chevron_right\", filled),\n ChevronLeft: (filled) => symbol(\"chevron_left\", filled),\n ChevronTop: (filled) => symbol(\"keyboard_arrow_up\", filled),\n ChevronBottom: (filled) => symbol(\"keyboard_arrow_down\", filled),\n Plus: (filled) => symbol(\"add\", filled),\n Minus: (filled) => symbol(\"remove\", filled),\n Cross: (filled) => symbol(\"close\", filled),\n VerticalDots: (filled) => symbol(\"more_vert\", filled),\n HorizontalDots: (filled) => symbol(\"more_horiz\", filled),\n Check: (filled) => symbol(\"check\", filled),\n CheckTwice: (filled) => symbol(\"done_all\", filled),\n Download: (filled) => symbol(\"download\", filled),\n External: (filled) => symbol(\"open_in_new\", filled),\n Clock: (filled) => symbol(\"schedule\", filled),\n RecentClock: (filled) => symbol(\"history\", filled),\n Power: (filled) => symbol(\"power_settings_new\", filled),\n ReplyArrow: (filled) => symbol(\"reply\", filled),\n ArrowGoRight: (filled) => symbol(\"login\", filled),\n ArrowGoRightPlus: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"login\", filled)}</g>\n {badge(\"add\", filled)}\n </>\n ),\n ArrowGoRightCross: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"logout\", filled)}</g>\n {badge(\"close\", filled)}\n </>\n ),\n ArrowGoLeft: (filled) => symbol(\"logout\", filled),\n Markdown: (filled) => symbol(\"markdown\", filled),\n Attachment: (filled) => symbol(\"attach_file\", filled),\n Alphabet: (filled) => symbol(\"match_case\", filled),\n AlphabetUnderline: (filled) => symbol(\"format_color_text\", filled),\n Text: (filled) => symbol(\"text_fields\", filled),\n Heading1: (filled) => symbol(\"format_h1\", filled),\n Heading2: (filled) => symbol(\"format_h2\", filled),\n Heading3: (filled) => symbol(\"format_h3\", filled),\n Bold: (filled) => symbol(\"format_bold\", filled),\n Italic: (filled) => symbol(\"format_italic\", filled),\n Underline: (filled) => symbol(\"format_underlined\", filled),\n Strike: (filled) => symbol(\"format_strikethrough\", filled),\n Link: (filled) => symbol(\"link\", filled),\n Code: (filled) => symbol(\"code\", filled),\n BlockCode: (filled) => symbol(\"code_blocks\", filled),\n BlockQuote: (filled) => symbol(\"format_quote\", filled),\n OrderList: (filled) => symbol(\"format_list_numbered\", filled),\n UnorderList: (filled) => symbol(\"format_list_bulleted\", filled),\n Mention: (filled) => symbol(\"alternate_email\", filled),\n Filter: (filled) => symbol(\"filter_list\", filled),\n Sort: (filled) => symbol(\"sort\", filled),\n ArrowUpDown: (filled) => symbol(\"swap_vert\", filled),\n ArrowRight: (filled) => symbol(\"arrow_forward\", filled),\n ArrowLeft: (filled) => symbol(\"arrow_back\", filled),\n ArrowTop: (filled) => symbol(\"arrow_upward\", filled),\n ArrowBottom: (filled) => symbol(\"arrow_downward\", filled),\n ArrowDropRight: (filled) => symbol(\"arrow_right\", filled),\n ArrowDropLeft: (filled) => symbol(\"arrow_left\", filled),\n ArrowDropTop: (filled) => symbol(\"arrow_drop_up\", filled),\n ArrowDropBottom: (filled) => symbol(\"arrow_drop_down\", filled),\n Reload: (filled) => symbol(\"refresh\", filled),\n Globe: (filled) => symbol(\"public\", filled),\n Agent: (filled) => symbol(\"robot_2\", filled),\n People: (filled) => symbol(\"group\", filled),\n PullRequest: (filled) => symbol(\"conversion_path\", filled),\n Smartphone: (filled) => symbol(\"smartphone\", filled),\n Unavailable: (filled) => symbol(\"radio_button_unchecked\", filled),\n Admin: (filled) => symbol(\"admin_panel_settings\", filled),\n};\n","import classNames from \"classnames\";\nimport React, { AllHTMLAttributes, ChangeEventHandler, forwardRef } from \"react\";\n\nimport { Icon, Icons } from \"../icon\";\nimport * as css from \"./Checkbox.css\";\n\ntype CheckboxProps = Omit<\n AllHTMLAttributes<HTMLInputElement>,\n \"children\" | \"onChange\" | \"type\" | \"size\"\n> &\n css.CheckboxVariants & {\n onChange?: ChangeEventHandler<HTMLInputElement>;\n defaultChecked?: boolean;\n checked?: boolean;\n };\n\nexport const Checkbox = forwardRef<HTMLInputElement, CheckboxProps>(\n ({ className, variant, size, style, ...props }, ref) => (\n <span className={classNames(css.Checkbox({ variant, size }), className)} style={style}>\n <input className={css.CheckboxInput} type=\"checkbox\" {...props} ref={ref} />\n <Icon className={css.CheckboxIcon} aria-hidden size={size} src={Icons.Check} />\n </span>\n )\n);\n","import classNames from \"classnames\";\nimport React, { ReactNode } from \"react\";\nimport { as } from \"../as\";\n\nimport * as css from \"./Chip.css\";\n\ntype ChipProps = {\n before?: ReactNode;\n after?: ReactNode;\n};\n\nexport const Chip = as<\"button\", ChipProps & css.ChipVariants>(\n (\n {\n as: AsChip = \"button\",\n className,\n variant,\n fill,\n size,\n outlined,\n radii,\n before,\n after,\n children,\n ...props\n },\n ref\n ) => (\n <AsChip\n className={classNames(\n css.Chip({\n variant,\n fill,\n size,\n outlined,\n radii,\n }),\n className\n )}\n data-ui-before={before ? true : undefined}\n data-ui-after={after ? true : undefined}\n {...props}\n ref={ref}\n >\n {before}\n {children}\n {after}\n </AsChip>\n )\n);\n","import classNames from \"classnames\";\nimport React from \"react\";\nimport { as } from \"../as\";\nimport * as css from \"./Dialog.css\";\n\nexport const Dialog = as<\"div\", css.DialogVariants>(\n ({ as: AsDialog = \"div\", className, variant, ...props }, ref) => (\n <AsDialog className={classNames(css.Dialog({ variant }), className)} {...props} ref={ref} />\n )\n);\n","import classNames from \"classnames\";\nimport React from \"react\";\nimport { as } from \"../as\";\nimport * as css from \"./Header.css\";\n\nexport const Header = as<\"header\", css.HeaderVariants>(\n ({ as: AsHeader = \"header\", className, variant, size, ...props }, ref) => (\n <AsHeader\n className={classNames(css.Header({ variant, size }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport * as css from \"./IconButton.css\";\n\nexport const IconButton = as<\"button\", css.IconButtonVariants>(\n (\n { as: AsIconButton = \"button\", className, size, variant, fill, radii, outlined, ...props },\n ref\n ) => (\n <AsIconButton\n className={classNames(css.IconButton({ variant, fill, size, radii, outlined }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import React, { AllHTMLAttributes, forwardRef, ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Input.css\";\n\ntype InputProps = Omit<AllHTMLAttributes<HTMLInputElement>, \"size\"> & {\n before?: ReactNode;\n after?: ReactNode;\n inputSize?: number;\n};\n\nexport const Input = forwardRef<HTMLInputElement, InputProps & css.InputVariants>(\n (\n { className, style, variant, size, inputSize = 1, outlined, radii, before, after, ...props },\n ref\n ) => (\n <div\n className={classNames(css.Input({ variant, size, outlined, radii }), className)}\n style={style}\n data-ui-before={before ? true : undefined}\n data-ui-after={after ? true : undefined}\n data-disabled={props.disabled || undefined}\n >\n {before}\n <input className={css.InputInput} size={inputSize} {...props} ref={ref} />\n {after}\n </div>\n )\n);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Line.css\";\nimport { as } from \"../as\";\n\nexport const Line = as<\"div\", css.LineVariants>(\n ({ as: AsLine = \"div\", className, variant, direction, size, ...props }, ref) => (\n <AsLine\n className={classNames(css.Line({ variant, direction, size }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import classNames from \"classnames\";\nimport React, { ReactNode } from \"react\";\nimport { as } from \"../as\";\nimport * as css from \"./MenuItem.css\";\n\ntype MenuItemProps = {\n before?: ReactNode;\n after?: ReactNode;\n};\n\nexport const MenuItem = as<\"button\", MenuItemProps & css.MenuItemVariants>(\n (\n {\n as: AsMenuItem = \"button\",\n className,\n variant,\n fill,\n size,\n radii,\n before,\n after,\n children,\n ...props\n },\n ref\n ) => (\n <AsMenuItem\n className={classNames(css.MenuItem({ variant, fill, size, radii }), className)}\n data-ui-before={before ? true : undefined}\n data-ui-after={after ? true : undefined}\n {...props}\n ref={ref}\n >\n {before}\n {children}\n {after}\n </AsMenuItem>\n )\n);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Menu.css\";\nimport { as } from \"../as\";\n\nexport const Menu = as<\"div\", css.MenuVariants>(\n ({ as: AsMenu = \"div\", className, variant, ...props }, ref) => (\n <AsMenu className={classNames(css.Menu({ variant }), className)} {...props} ref={ref} />\n )\n);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Modal.css\";\nimport { as } from \"../as\";\n\nexport const Modal = as<\"div\", css.ModalVariants>(\n ({ as: AsModal = \"div\", className, variant, size, flexHeight, ...props }, ref) => (\n <AsModal\n className={classNames(css.Modal({ variant, size, flexHeight }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import React, { ReactNode } from \"react\";\nimport { createPortal } from \"react-dom\";\n\nexport type PortalProps = {\n container?: Element | DocumentFragment;\n children: ReactNode | ReactNode[];\n};\nexport const Portal = ({ container, children }: PortalProps) => (\n <>{createPortal(children, container ?? document.body)}</>\n);\n","import React, { createContext, ReactNode, useContext } from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Overlay.css\";\nimport { Portal } from \"../portal\";\nimport { as } from \"../as\";\n\nconst OverlayContainerContext = createContext<Element | DocumentFragment | undefined>(undefined);\nexport const OverlayContainerProvider = OverlayContainerContext.Provider;\nexport const useOverlayContainer = (): Element | DocumentFragment | undefined => {\n const container = useContext(OverlayContainerContext);\n\n return container;\n};\n\nexport type OverlayProps = {\n open: boolean;\n container?: Element | DocumentFragment;\n backdrop?: ReactNode;\n};\n\nexport const Overlay = as<\"div\", OverlayProps>(\n ({ as: AsOverlay = \"div\", className, open, container, backdrop, children, ...props }, ref) => {\n const contextContainer = useOverlayContainer();\n\n return (\n <Portal container={container ?? contextContainer}>\n {open ? (\n <AsOverlay className={classNames(css.Overlay, className)} {...props} ref={ref}>\n {backdrop}\n {children}\n </AsOverlay>\n ) : null}\n </Portal>\n );\n }\n);\n\nexport const OverlayBackdrop = as<\"div\">(\n ({ as: AsOverlayBackdrop = \"div\", className, ...props }, ref) => (\n <AsOverlayBackdrop\n className={classNames(css.OverlayBackdrop, className)}\n {...props}\n ref={ref}\n />\n )\n);\n\nexport const OverlayCenter = as<\"div\">(\n ({ as: AsOverlayCenter = \"div\", className, ...props }, ref) => (\n <AsOverlayCenter className={classNames(css.OverlayCenter, className)} {...props} ref={ref} />\n )\n);\n","import classNames from \"classnames\";\nimport React, {\n createContext,\n ReactNode,\n useCallback,\n useContext,\n useEffect,\n useLayoutEffect,\n useRef,\n} from \"react\";\nimport { as } from \"../as\";\nimport { Portal } from \"../portal\";\nimport { Align, getRelativeFixedPosition, Position, RectCords } from \"../util\";\nimport * as css from \"./PopOut.css\";\n\nconst PopOutContainerContext = createContext<Element | DocumentFragment | undefined>(undefined);\nexport const PopOutContainerProvider = PopOutContainerContext.Provider;\nexport const usePopOutContainer = (): Element | DocumentFragment | undefined => {\n const container = useContext(PopOutContainerContext);\n\n return container;\n};\n\nexport interface PopOutProps {\n anchor?: RectCords;\n position?: Position;\n align?: Align;\n offset?: number;\n alignOffset?: number;\n content: ReactNode;\n container?: Element | DocumentFragment;\n}\nexport const PopOut = as<\"div\", PopOutProps>(\n (\n {\n as: AsPopOut = \"div\",\n className,\n anchor,\n position = \"Bottom\",\n align = \"Center\",\n offset = 10,\n alignOffset = 0,\n content,\n children,\n container,\n ...props\n },\n ref\n ) => {\n const baseRef = useRef<HTMLDivElement>(null);\n const contextContainer = usePopOutContainer();\n\n const positionPopOut = useCallback(() => {\n const baseEl = baseRef.current;\n if (!baseEl || !anchor) return;\n\n const pCSS = getRelativeFixedPosition(\n anchor,\n baseEl.getBoundingClientRect(),\n position,\n align,\n offset,\n alignOffset\n );\n baseEl.style.top = pCSS.top ?? \"unset\";\n baseEl.style.bottom = pCSS.bottom ?? \"unset\";\n baseEl.style.left = pCSS.left ?? \"unset\";\n baseEl.style.right = pCSS.right ?? \"unset\";\n }, [anchor, position, align, offset, alignOffset]);\n\n useEffect(() => {\n window.addEventListener(\"resize\", positionPopOut);\n return () => {\n window.removeEventListener(\"resize\", positionPopOut);\n };\n }, [positionPopOut]);\n\n useLayoutEffect(() => {\n positionPopOut();\n }, [positionPopOut]);\n\n return (\n <>\n {children}\n {anchor && (\n <Portal container={container ?? contextContainer}>\n <AsPopOut className={classNames(css.PopOut, className)} {...props} ref={ref}>\n <div ref={baseRef} className={css.PopOutContainer}>\n <div className={css.PopOutContent}>{content}</div>\n </div>\n </AsPopOut>\n </Portal>\n )}\n </>\n );\n }\n);\n","import classNames from \"classnames\";\nimport React from \"react\";\nimport { as } from \"../as\";\nimport { percent } from \"../util\";\n\nimport * as css from \"./ProgressBar.css\";\n\ntype ProgressBarProps = {\n value: number;\n min?: number;\n max: number;\n};\n\nexport const ProgressBar = as<\"span\", ProgressBarProps & css.ProgressBarVariant>(\n (\n {\n as: AsProgressBar = \"span\",\n className,\n variant,\n size,\n fill,\n radii,\n outlined,\n value,\n min = 0,\n max,\n ...props\n },\n ref\n ) => (\n <AsProgressBar\n className={classNames(css.ProgressBar({ variant, size, fill, radii, outlined }), className)}\n role=\"progressbar\"\n aria-valuenow={value}\n aria-valuemin={min}\n aria-valuemax={max}\n {...props}\n ref={ref}\n >\n <span className={css.ProgressBarFill} style={{ width: `${percent(min, max, value)}%` }} />\n </AsProgressBar>\n )\n);\n","import React, { AllHTMLAttributes, forwardRef } from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./RadioButton.css\";\n\ntype RadioButtonProps = Omit<AllHTMLAttributes<HTMLInputElement>, \"type\" | \"onChange\" | \"size\"> & {\n defaultChecked?: boolean;\n checked?: boolean;\n};\n\nexport const RadioButton = forwardRef<HTMLInputElement, RadioButtonProps & css.RadioButtonVariants>(\n ({ className, variant, size, ...props }, ref) => (\n <input\n className={classNames(css.RadioButton({ variant, size }), className)}\n {...props}\n type=\"radio\"\n ref={ref}\n />\n )\n);\n","import React, { useLayoutEffect, useRef } from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Scroll.css\";\nimport { as } from \"../as\";\n\nexport const Scroll = as<\"div\", css.ScrollVariants>(\n (\n { as: AsScroll = \"div\", className, variant, visibility, hideTrack, size, direction, ...props },\n ref\n ) => {\n const scrollLocalRef = useRef<HTMLDivElement>();\n\n useLayoutEffect(() => {\n if (scrollLocalRef.current) {\n const $scroll = scrollLocalRef.current;\n if (size === \"0\") {\n $scroll.setAttribute(\"data-x-scrollbar-width\", \"0\");\n $scroll.setAttribute(\"data-y-scrollbar-width\", \"0\");\n } else {\n const xScrollbarWidth = $scroll.offsetHeight - $scroll.clientHeight;\n const yScrollbarWidth = $scroll.offsetWidth - $scroll.clientWidth;\n\n $scroll.setAttribute(\"data-x-scrollbar-width\", `${xScrollbarWidth}`);\n $scroll.setAttribute(\"data-y-scrollbar-width\", `${yScrollbarWidth}`);\n }\n }\n }, [size]);\n\n return (\n <AsScroll\n className={classNames(\n css.Scroll({\n variant,\n visibility,\n hideTrack,\n size,\n direction,\n }),\n className\n )}\n {...props}\n ref={(r) => {\n if (r) scrollLocalRef.current = r;\n if (ref) {\n if (\"current\" in ref) {\n const propRef: any = ref;\n propRef.current = r;\n }\n if (typeof ref === \"function\") {\n ref(r);\n }\n }\n }}\n />\n );\n }\n);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Spinner.css\";\nimport { as } from \"../as\";\n\nconst SpinnerSvg = () => (\n <svg\n className={css.SpinnerSvg}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n className={css.SpinnerOuter}\n d=\"M5.98986 18.0104C7.52806 19.5486 9.65306 20.5 12.0003 20.5C16.6947 20.5 20.5003 16.6944 20.5003 12C20.5003 7.30558 16.6947 3.5 12.0003 3.5C9.65306 3.5 7.52806 4.45139 5.98986 5.98959L4.9292 4.92893C6.73884 3.11929 9.23884 2 12.0003 2C17.5231 2 22.0003 6.47715 22.0003 12C22.0003 17.5228 17.5231 22 12.0003 22C9.23884 22 6.73884 20.8807 4.9292 19.0711L5.98986 18.0104Z\"\n />\n <path\n className={css.SpinnerInner}\n d=\"M4.92908 19.0711C3.1204 17.2624 2.00134 14.7641 2.00015 12.0044L2.00015 11.9956C2.00134 9.23593 3.1204 6.73763 4.92909 4.92896L5.98975 5.98962C4.45155 7.52781 3.50015 9.65281 3.50015 12C3.50015 14.3472 4.45155 16.4722 5.98975 18.0104L4.92908 19.0711Z\"\n />\n </svg>\n);\n\nexport const Spinner = as<\"span\", css.SpinnerVariants>(\n ({ as: AsSpinner = \"span\", className, size, variant, fill, shape, ...props }, ref) => (\n <AsSpinner\n className={classNames(css.Spinner({ size, variant, fill, shape }), className)}\n {...props}\n ref={ref}\n >\n {shape === \"Morph\" ? <span className={css.SpinnerMorph} /> : <SpinnerSvg />}\n </AsSpinner>\n )\n);\n","import React, { ButtonHTMLAttributes, forwardRef } from \"react\";\nimport classNames from \"classnames\";\nimport { Icon, Icons } from \"../icon\";\nimport * as css from \"./Switch.css\";\n\ntype SwitchProps = Omit<\n ButtonHTMLAttributes<HTMLButtonElement>,\n \"value\" | \"onClick\" | \"onChange\" | \"children\" | \"role\"\n> & {\n value?: boolean;\n onChange?: (on: boolean) => void;\n};\nexport const Switch = forwardRef<HTMLButtonElement, SwitchProps & css.SwitchVariants>(\n ({ className, variant, value = false, onChange, ...props }, ref) => {\n const handleClick = () => onChange?.(!value);\n\n return (\n <button\n className={classNames(css.Switch({ variant }), className)}\n role=\"switch\"\n type=\"button\"\n aria-checked={value}\n onClick={handleClick}\n {...props}\n ref={ref}\n >\n <span className={css.SwitchThumb} aria-hidden>\n <Icon src={Icons.Check} size=\"100\" />\n </span>\n </button>\n );\n }\n);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Text.css\";\nimport { as } from \"../as\";\n\nexport const Text = as<\"p\", css.TextVariants>(\n ({ as: AsText = \"p\", className, size, truncate, align, priority, ...props }, ref) => (\n <AsText\n className={classNames(css.Text({ size, truncate, align, priority }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import React, { AllHTMLAttributes, forwardRef } from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./TextArea.css\";\n\nexport const TextArea = forwardRef<\n HTMLTextAreaElement,\n Omit<AllHTMLAttributes<HTMLTextAreaElement>, \"size\"> & css.TextAreaVariants\n>(({ className, variant, size, outlined, radii, resize, ...props }, ref) => (\n <textarea\n className={classNames(css.TextArea({ variant, size, outlined, radii, resize }), className)}\n {...props}\n ref={ref}\n />\n));\n","import classNames from \"classnames\";\nimport React, {\n createContext,\n MutableRefObject,\n ReactNode,\n RefCallback,\n useCallback,\n useContext,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\nimport { as } from \"../as\";\nimport { Portal } from \"../portal\";\nimport { Align, getRelativeFixedPosition, Position } from \"../util\";\nimport * as css from \"./Tooltip.css\";\n\nconst TooltipContainerContext = createContext<Element | DocumentFragment | undefined>(undefined);\nexport const TooltipContainerProvider = TooltipContainerContext.Provider;\nexport const useTooltipContainer = (): Element | DocumentFragment | undefined => {\n const container = useContext(TooltipContainerContext);\n\n return container;\n};\n\nexport const Tooltip = as<\"div\", css.TooltipVariants>(\n ({ as: AsTooltip = \"div\", className, variant, radii, ...props }, ref) => (\n <AsTooltip\n className={classNames(css.Tooltip({ variant, radii }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n\nconst useTooltip = (\n position: Position,\n align: Align,\n offset: number,\n alignOffset: number,\n delay: number\n) => {\n const triggerRef = useRef<HTMLElement | SVGElement | null>(null);\n const baseRef = useRef<HTMLElement | SVGElement | null>(null);\n const [open, setOpen] = useState(false);\n\n const positionTooltip = useCallback(() => {\n const anchor = triggerRef.current;\n const baseEl = baseRef.current;\n if (!anchor) return;\n if (!baseEl) return;\n\n const tooltipCss = getRelativeFixedPosition(\n anchor.getBoundingClientRect(),\n baseEl.getBoundingClientRect(),\n position,\n align,\n offset,\n alignOffset\n );\n baseEl.style.top = tooltipCss.top ?? \"unset\";\n baseEl.style.bottom = tooltipCss.bottom ?? \"unset\";\n baseEl.style.left = tooltipCss.left ?? \"unset\";\n baseEl.style.right = tooltipCss.right ?? \"unset\";\n }, [position, align, offset, alignOffset]);\n\n useEffect(() => {\n const trigger = triggerRef.current;\n let timeoutId: number | undefined;\n\n const openTooltip = (_?: unknown, skipDelay?: boolean) => {\n clearTimeout(timeoutId);\n\n if (skipDelay) {\n setOpen(true);\n return;\n }\n timeoutId = window.setTimeout(() => {\n setOpen(true);\n timeoutId = undefined;\n }, delay);\n };\n\n const closeTooltip = (_?: unknown, skipDelay?: boolean) => {\n clearTimeout(timeoutId);\n\n if (skipDelay) {\n setOpen(false);\n return;\n }\n timeoutId = window.setTimeout(\n () => {\n setOpen(false);\n timeoutId = undefined;\n },\n delay < 100 ? delay : 100\n );\n };\n\n const onKeyUp = (evt: Event) => {\n const { key } = evt as unknown as KeyboardEvent;\n if (key === \"Escape\" || key === \"Enter\" || key === \" \") {\n closeTooltip(undefined, true);\n return;\n }\n\n openTooltip(undefined, true);\n };\n\n const onFocus = () => openTooltip(undefined, true);\n\n const onBlur = () => {\n closeTooltip(undefined, true);\n };\n\n trigger?.addEventListener(\"focus\", onFocus);\n trigger?.addEventListener(\"mouseenter\", openTooltip);\n trigger?.addEventListener(\"keyup\", onKeyUp);\n trigger?.addEventListener(\"mouseleave\", closeTooltip);\n trigger?.addEventListener(\"blur\", onBlur);\n trigger?.addEventListener(\"click\", closeTooltip);\n // Focus can arrive before passive effects (autofocus or keyboard navigation on mount).\n if (trigger?.matches(\":focus\")) openTooltip(undefined, true);\n return () => {\n clearTimeout(timeoutId);\n trigger?.removeEventListener(\"focus\", onFocus);\n trigger?.removeEventListener(\"mouseenter\", openTooltip);\n trigger?.removeEventListener(\"keyup\", onKeyUp);\n trigger?.removeEventListener(\"mouseleave\", closeTooltip);\n trigger?.removeEventListener(\"blur\", onBlur);\n trigger?.removeEventListener(\"click\", closeTooltip);\n };\n }, [position, align, offset, alignOffset, delay]);\n\n useLayoutEffect(() => {\n if (open) positionTooltip();\n }, [open, positionTooltip]);\n\n const handleTriggerRef: RefCallback<HTMLElement | SVGElement> = useCallback((element) => {\n triggerRef.current = element;\n }, []);\n const handleBaseRef: RefCallback<HTMLElement | SVGElement> = useCallback((element) => {\n baseRef.current = element;\n }, []);\n\n return {\n triggerRef: handleTriggerRef,\n baseRef: handleBaseRef,\n open,\n };\n};\n\ninterface TooltipProviderProps {\n position?: Position;\n align?: Align;\n offset?: number;\n alignOffset?: number;\n delay?: number;\n tooltip: ReactNode;\n children: (triggerRef: RefCallback<HTMLElement | SVGElement>) => ReactNode;\n container?: Element | DocumentFragment;\n}\nexport const TooltipProvider = as<\"div\", TooltipProviderProps>(\n (\n {\n as: AsTooltipProvider = \"div\",\n className,\n position = \"Top\",\n align = \"Center\",\n offset = 10,\n alignOffset = 0,\n delay = 200,\n tooltip,\n children,\n container,\n ...props\n },\n ref\n ) => {\n const contextContainer = useTooltipContainer();\n const { open, triggerRef, baseRef } = useTooltip(position, align, offset, alignOffset, delay);\n\n return (\n <>\n {children(triggerRef)}\n {open && (\n <Portal container={container ?? contextContainer}>\n <AsTooltipProvider\n role=\"tooltip\"\n className={classNames(css.TooltipProvider, className)}\n {...props}\n ref={(instance) => {\n baseRef(instance);\n if (ref) {\n if (typeof ref === \"function\") ref(instance);\n // eslint-disable-next-line no-param-reassign\n else (ref as MutableRefObject<typeof instance>).current = instance;\n }\n }}\n >\n {tooltip}\n </AsTooltipProvider>\n </Portal>\n )}\n </>\n );\n }\n);\n","import React, { ComponentProps, ReactNode, RefCallback } from \"react\";\nimport { Tooltip, TooltipProvider } from \"./Tooltip\";\nimport { Text } from \"../text\";\n\nexport type HintProps = Pick<\n ComponentProps<typeof TooltipProvider>,\n \"position\" | \"align\" | \"delay\" | \"container\"\n> & {\n /** Unique in the document; also connects the trigger's accessible description. */\n id: string;\n content: ReactNode;\n children: (props: {\n ref: RefCallback<HTMLElement | SVGElement>;\n \"aria-describedby\": string;\n }) => ReactNode;\n};\n\n/** Shared tooltip composition for a focusable trigger that forwards its ref. */\nexport const Hint = ({ id, content, children, ...props }: HintProps) => (\n <TooltipProvider\n {...props}\n id={id}\n tooltip={\n <Tooltip>\n <Text size=\"T200\">{content}</Text>\n </Tooltip>\n }\n >\n {(ref) => children({ ref, \"aria-describedby\": id })}\n </TooltipProvider>\n);\n","import React, { ComponentProps } from \"react\";\nimport classNames from \"classnames\";\nimport { Box } from \"../box/Box\";\nimport { as } from \"../as\";\nimport { ContainerColor, ContainerColorVariants } from \"../../styles/ContainerColor.css\";\nimport * as css from \"./style.css\";\n\nexport const SequenceCard = as<\n \"div\",\n ComponentProps<typeof Box> & ContainerColorVariants & css.SequenceCardVariants\n>(\n (\n {\n as: AsSequenceCard = \"div\",\n className,\n variant,\n radii,\n firstChild,\n lastChild,\n outlined,\n mergeBorder,\n ...props\n },\n ref\n ) => (\n <Box\n as={AsSequenceCard}\n className={classNames(\n css.SequenceCard({ radii, outlined, mergeBorder }),\n ContainerColor({ variant }),\n className\n )}\n data-first-child={firstChild}\n data-last-child={lastChild}\n {...props}\n ref={ref}\n />\n )\n);\n","import React, { ReactNode } from \"react\";\nimport { Box } from \"../box/Box\";\nimport { Text } from \"../text/Text\";\nimport { BreakWord } from \"../../styles/Text.css\";\n\ntype SettingTileProps = {\n title?: ReactNode;\n description?: ReactNode;\n before?: ReactNode;\n after?: ReactNode;\n children?: ReactNode;\n};\nexport const SettingTile = ({ title, description, before, after, children }: SettingTileProps) => (\n <Box alignItems=\"Center\" gap=\"300\">\n {before && <Box shrink=\"No\">{before}</Box>}\n <Box grow=\"Yes\" direction=\"Column\" gap=\"100\">\n {title && (\n <Text className={BreakWord} size=\"B400\">\n {title}\n </Text>\n )}\n {description && (\n <Text className={BreakWord} size=\"T200\" priority=\"300\">\n {description}\n </Text>\n )}\n {children}\n </Box>\n {after && <Box shrink=\"No\">{after}</Box>}\n </Box>\n);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { ContainerColor as TContainerColor } from \"../types\";\nimport { ContainerColor } from \"../../styles/ContainerColor.css\";\nimport * as css from \"./CutoutCard.css\";\n\nexport const CutoutCard = as<\"div\", { variant?: TContainerColor }>(\n ({ as: AsCutoutCard = \"div\", className, variant = \"Surface\", ...props }, ref) => (\n <AsCutoutCard\n className={classNames(ContainerColor({ variant }), css.CutoutCard, className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import React, { ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { Box } from \"../box/Box\";\nimport { ContainerColor } from \"../types\";\nimport { Text } from \"../text/Text\";\nimport { BreakWord } from \"../../styles/Text.css\";\nimport { ContainerColor as ContainerClr } from \"../../styles/ContainerColor.css\";\nimport * as css from \"./styles.css\";\n\ntype InfoCardProps = {\n variant?: ContainerColor;\n title?: ReactNode;\n description?: ReactNode;\n before?: ReactNode;\n after?: ReactNode;\n children?: ReactNode;\n};\nexport const InfoCard = ({\n variant = \"Primary\",\n title,\n description,\n before,\n after,\n children,\n}: InfoCardProps) => (\n <Box direction=\"Column\" className={classNames(css.InfoCard, ContainerClr({ variant }))} gap=\"300\">\n <Box gap=\"200\" alignItems=\"Center\">\n {before && (\n <Box shrink=\"No\" alignSelf=\"Start\">\n {before}\n </Box>\n )}\n <Box grow=\"Yes\" direction=\"Column\" gap=\"100\">\n {title && (\n <Text size=\"L400\" className={BreakWord}>\n {title}\n </Text>\n )}\n {description && (\n <Text size=\"T200\" className={BreakWord}>\n {description}\n </Text>\n )}\n </Box>\n {after && <Box shrink=\"No\">{after}</Box>}\n </Box>\n {children}\n </Box>\n);\n","import classNames from \"classnames\";\nimport React from \"react\";\nimport { as } from \"../as\";\nimport * as css from \"./Sidebar.css\";\n\nexport const Sidebar = as<\"div\">(({ as: AsSidebar = \"div\", className, ...props }, ref) => (\n <AsSidebar className={classNames(css.Sidebar, className)} {...props} ref={ref} />\n));\n","import classNames from \"classnames\";\nimport React, { ComponentProps, ReactNode, RefCallback } from \"react\";\nimport { as } from \"../as\";\nimport { Avatar } from \"../avatar/Avatar\";\nimport { Text } from \"../text/Text\";\nimport { Tooltip, TooltipProvider } from \"../tooltip/Tooltip\";\nimport { toRem } from \"../../theme/util\";\nimport * as css from \"./Sidebar.css\";\n\nexport const SidebarItem = as<\"div\", css.SidebarItemVariants>(\n ({ as: AsSidebarAvatarBox = \"div\", className, active, ...props }, ref) => (\n <AsSidebarAvatarBox\n className={classNames(css.SidebarItem({ active }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n\nexport const SidebarItemBadge = as<\"div\", css.SidebarItemBadgeVariants>(\n ({ as: AsSidebarBadgeBox = \"div\", className, hasCount, ...props }, ref) => (\n <AsSidebarBadgeBox\n className={classNames(css.SidebarItemBadge({ hasCount }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n\nexport const SidebarItemTooltip = ({\n tooltip,\n children,\n}: {\n tooltip?: ReactNode | string;\n children: (triggerRef: RefCallback<HTMLElement | SVGElement>) => ReactNode;\n}) => {\n if (!tooltip) {\n return children(() => undefined);\n }\n\n return (\n <TooltipProvider\n delay={400}\n position=\"Right\"\n tooltip={\n <Tooltip style={{ maxWidth: toRem(280) }}>\n <Text size=\"H5\">{tooltip}</Text>\n </Tooltip>\n }\n >\n {children}\n </TooltipProvider>\n );\n};\n\nexport const SidebarAvatar = as<\"div\", css.SidebarAvatarVariants & ComponentProps<typeof Avatar>>(\n ({ className, size, outlined, radii, ...props }, ref) => (\n <Avatar\n className={classNames(css.SidebarAvatar({ size, outlined }), className)}\n radii={radii}\n {...props}\n ref={ref}\n />\n )\n);\n\nexport const SidebarFolder = as<\"div\", css.SidebarFolderVariants>(\n ({ as: AsSidebarFolder = \"div\", className, state, ...props }, ref) => (\n <AsSidebarFolder\n className={classNames(css.SidebarFolder({ state }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n\nexport const SidebarFolderDropTarget = as<\"div\", css.SidebarFolderDropTargetVariants>(\n ({ as: AsSidebarFolderDropTarget = \"div\", className, position, ...props }, ref) => (\n <AsSidebarFolderDropTarget\n className={classNames(css.SidebarFolderDropTarget({ position }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import React, { ReactNode } from \"react\";\nimport { Box } from \"../box/Box\";\n\ntype SidebarContentProps = {\n scrollable: ReactNode;\n sticky: ReactNode;\n};\nexport const SidebarContent = ({ scrollable, sticky }: SidebarContentProps) => (\n <>\n <Box direction=\"Column\" grow=\"Yes\">\n {scrollable}\n </Box>\n <Box direction=\"Column\" shrink=\"No\">\n {sticky}\n </Box>\n </>\n);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport * as css from \"./Sidebar.css\";\n\nexport const SidebarStack = as<\"div\">(\n ({ as: AsSidebarStack = \"div\", className, ...props }, ref) => (\n <AsSidebarStack className={classNames(css.SidebarStack, className)} {...props} ref={ref} />\n )\n);\n","import React from \"react\";\nimport { Line } from \"../line/Line\";\nimport { toRem } from \"../../theme/util\";\n\nexport const SidebarStackSeparator = () => (\n <Line\n role=\"separator\"\n style={{ width: toRem(24), margin: \"0 auto\" }}\n variant=\"Background\"\n size=\"300\"\n />\n);\n","import React from \"react\";\n\n/**\n * The shared robot glyph that marks an AI agent across the app — the rail's\n * Agents tab and the default avatar for agent accounts that have no picture.\n * Stroke-based so it inherits its color from `currentColor` (e.g. the light\n * text color inside a colored avatar fallback).\n *\n * Single source of truth: previously the rail (AgentsTab) carried its own copy\n * of this SVG. Keep new agent-glyph usages pointed here so they never drift.\n */\nexport const AgentGlyph = ({\n size = 22,\n strokeWidth = 2,\n}: {\n size?: number;\n strokeWidth?: number;\n}) => (\n <svg\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden\n >\n <path d=\"M12 8V4H8\" />\n <rect width=\"16\" height=\"12\" x=\"4\" y=\"8\" rx=\"2\" />\n <path d=\"M2 14h2\" />\n <path d=\"M20 14h2\" />\n <path d=\"M15 13v2\" />\n <path d=\"M9 13v2\" />\n </svg>\n);\n","import React from \"react\";\nimport { Badge } from \"../badge/Badge\";\nimport { Text } from \"../text/Text\";\nimport { toRem } from \"../../theme/util\";\nimport { AgentGlyph } from \"./AgentGlyph\";\n\n/**\n * Agent visual identity (step 3 of the room-nav UX plan).\n *\n * Two marks, both driven by `isAgentMxid` (local part ends `.agent` or starts\n * `sutando-`) — the same predicate the room agent-policy + profile use:\n * - `AgentMark`, rendered INSIDE the avatar's presence badge (see PresenceBadge\n * `glyph` prop) so \"this is an agent\" and the agent's presence colour are one\n * combined mark instead of two competing corner badges, and\n * - `AgentNameTag`, the neutral \"Agent\" pill shown after the display name.\n *\n * The mark was a bot glyph, then an \"S\" the owner asked for (2026-07-05), and is\n * a bot glyph again. `isAgentMxid` says an account is an agent; it cannot say\n * *which* agent, and since a BYO owner's Claude Code answers behind exactly the\n * same kind of identity, a Sutando initial on it was branding a guess. Neutral\n * for all agents (byo-agent spec, US37) — the shared AgentGlyph, so the badge,\n * the rail tab and the default avatar are one mark rather than three.\n */\n\nexport const AgentMark = ({ size = 10 }: { size?: number }) => (\n <span\n aria-hidden\n style={{\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n color: \"currentColor\",\n }}\n >\n {/* The glyph is drawn on a 24px grid; inside a ~9px badge a 2px stroke\n thins to sub-pixel, so the weight scales with the box. */}\n <AgentGlyph size={size} strokeWidth={2.8} />\n </span>\n);\n\n/** Small, quiet \"Agent\" pill shown right after an agent's display name. */\nexport const AgentNameTag = () => (\n <Badge\n as=\"span\"\n variant=\"Secondary\"\n fill=\"Soft\"\n style={{\n display: \"inline-flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n padding: `0 ${toRem(5)}`,\n opacity: 0.85,\n }}\n title=\"Agent\"\n aria-label=\"Agent\"\n >\n <Text as=\"span\" size=\"L400\" style={{ fontWeight: 500, letterSpacing: \"0.01em\" }}>\n Agent\n </Text>\n </Badge>\n);\n","import React from \"react\";\n\n/**\n * Two-person \"members\" glyph (lucide users outline) — the Buzz-style header\n * icon the owner picked for the web members toggle (2026-07-26). folds ships\n * only a single-person Icons.User; stroke-based like AgentGlyph so it\n * inherits `currentColor`.\n */\nexport const PeopleGlyph = ({\n size = 22,\n strokeWidth = 2,\n}: {\n size?: number;\n strokeWidth?: number;\n}) => (\n <svg\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden\n >\n <path d=\"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2\" />\n <circle cx=\"9\" cy=\"7\" r=\"4\" />\n <path d=\"M22 21v-2a4 4 0 0 0-3-3.87\" />\n <path d=\"M16 3.13a4 4 0 0 1 0 7.75\" />\n </svg>\n);\n","import React from \"react\";\n\n/**\n * Scroll \"skill\" glyph (lucide scroll-text) — the Skills header button.\n * Owner 2026-07-26 (second pass): match the marketplace nav's scroll icon\n * for Skills, replacing the interim lightning bolt. Stroke-based like its\n * siblings.\n */\nexport const SkillGlyph = ({\n size = 22,\n strokeWidth = 2,\n}: {\n size?: number;\n strokeWidth?: number;\n}) => (\n <svg\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden\n >\n <path d=\"M15 12h-5\" />\n <path d=\"M15 8h-5\" />\n <path d=\"M19 17V5a2 2 0 0 0-2-2H4\" />\n <path d=\"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3\" />\n </svg>\n);\n","/**\n * The AG2 stand mark per agent state, from the design kit\n * (`kit-states/agents/air/states/svg/<state>-clean.svg`).\n *\n * Departures from the files on disk:\n * 1. the plate's fill is `var(--agent-mark-plate, #6C4BE8)`, so the colour is\n * a theme token rather than a rebuild. `off` keeps its own `opacity`\n * dimming on top of whatever colour is set;\n * 2. the artwork is scaled 1.15x about the viewBox centre while the plate\n * stays full-bleed -- at rail size the kit's native ratio leaves the bubble\n * too small to read. Change SCALE in the generator, not here. At 1.28x the\n * right-edge margin measured 2.3%, so there is headroom but not much.\n *\n * Only working / needs_attention / available / offline are reachable from\n * `space.ag2.presence`. `thinking` is the resting default the rail shows when\n * presence says nothing; `warning` and `error` are drawn but have no driver yet\n * and are reachable only through the preview override.\n *\n * `-clean` rather than drawn: the hand filter destroys strokes under ~3px.\n * Each file keeps its own `<style>` (kit animations + reduced-motion\n * fallbacks); those animate inner classes with `transform-box: view-box`, so\n * their origins stay in viewBox coordinates and compose with the outer scale.\n */\nexport type AgentMarkState =\n | \"needs_attention\"\n | \"working\"\n | \"available\"\n | \"offline\"\n | \"warning\"\n | \"error\"\n | \"thinking\";\n\n/** Set this CSS custom property to recolour the plate. */\nexport const AGENT_MARK_PLATE_VAR = \"--agent-mark-plate\";\nexport const AGENT_MARK_PLATE_DEFAULT = \"#6C4BE8\";\n\nexport const AGENT_STATE_MARKS: Record<AgentMarkState, string> = {\n // attention-clean.svg\n needs_attention:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 64 64\" fill=\"none\"><defs><filter id=\"rough\" x=\"-25%\" y=\"-25%\" width=\"150%\" height=\"150%\"><feTurbulence type=\"fractalNoise\" baseFrequency=\"0.04\" numOctaves=\"2\" seed=\"4\" result=\"n\"/><feDisplacementMap in=\"SourceGraphic\" in2=\"n\" scale=\"2.2\" xChannelSelector=\"R\" yChannelSelector=\"G\"/></filter></defs><style>/* AG2Space stand states \\u2014 apply to the inline SVG */\\n.gaze{animation:gaze 4.2s cubic-bezier(.6,0,.2,1) infinite}\\n@keyframes gaze{0%,10%{transform:translate(0,0)}18%,34%{transform:translate(-1.9px,-1px)}\\n 42%,58%{transform:translate(2.1px,.4px)}66%,84%{transform:translate(.8px,-1.4px)}92%,100%{transform:translate(0,0)}}\\n.pulse{transform-box:view-box;transform-origin:32px 32px;animation:pulse 2.6s ease-out infinite}\\n@keyframes pulse{0%{transform:scale(.86);opacity:.9}70%,100%{transform:scale(1.06);opacity:0}}\\n.scribble{transform-box:view-box;transform-origin:22px 32px;animation:scribble 1.5s ease-in-out infinite}\\n@keyframes scribble{0%,100%{transform:scaleX(.15);opacity:.55}50%{transform:scaleX(1);opacity:1}}\\n.talk{animation:talk 1.6s ease-in-out infinite}\\n.talk2{animation-delay:.22s;opacity:.5}\\n@keyframes talk{0%,100%{opacity:.28}50%{opacity:1}}\\n.zzz{animation:zzz 3.4s ease-in-out infinite}\\n.zzz2{animation-delay:.8s}\\n@keyframes zzz{0%{transform:translate(0,4px);opacity:0}35%{opacity:.95}100%{transform:translate(4px,-8px);opacity:0}}\\n.attn{transform-box:view-box;transform-origin:32px 32px;animation:attn 3.2s cubic-bezier(.3,1.3,.4,1) infinite}\\n@keyframes attn{0%,70%,100%{transform:rotate(0)}75%{transform:rotate(-5.5deg)}\\n 81%{transform:rotate(4.5deg)}87%{transform:rotate(-2deg)}93%{transform:rotate(0)}}\\n.flash{transform-box:view-box;transform-origin:32px 32px;animation:flash 3.2s ease-out infinite}\\n@keyframes flash{0%,66%{opacity:0;transform:scale(.9)}73%{opacity:1;transform:scale(1)}\\n 100%{opacity:0;transform:scale(1.14)}}\\n.slowring{transform-box:view-box;transform-origin:32px 32px;animation:slowring 2.8s ease-in-out infinite}\\n@keyframes slowring{0%,100%{opacity:.35}50%{opacity:1}}\\n@media (prefers-reduced-motion: reduce){\\n .gaze,.pulse,.scribble,.talk,.zzz,.attn,.flash,.slowring{animation:none}\\n .gaze{transform:translate(2.1px,-1px)}.pulse{opacity:.6}.flash{opacity:1}\\n .attn{transform:rotate(-4deg)}.talk,.scribble,.zzz{opacity:.9}}\\n</style><g class=\"attn\"><rect width=\"64\" height=\"64\" fill=\"var(--agent-mark-plate, #6C4BE8)\"/><g transform=\"translate(32 32) scale(1.15) translate(-32 -32)\"><rect class=\"flash\" x=\"6\" y=\"6\" width=\"52\" height=\"52\" rx=\"15\" fill=\"none\" stroke=\"#FFCE3A\" stroke-width=\"3\"/><g transform=\"translate(-8.043 -9.470) scale(1.16)\"><g stroke=\"#FFFFFF\" stroke-width=\"3.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M17 22.5h30a6.5 6.5 0 0 1 6.5 6.5v7a6.5 6.5 0 0 1 -6.5 6.5H29l-8.5 6.5 1.5-6.6A6.6 6.6 0 0 1 16 36v-7a6.5 6.5 0 0 1 1-6.5z\"/></g><rect x=\"19.5\" y=\"26.25\" width=\"25\" height=\"9.5\" rx=\"4.75\" fill=\"#FFCE3A\" transform=\"rotate(0 33 31)\"/><g fill=\"#12212F\"><circle cx=\"26.5\" cy=\"31\" r=\"3.808\"/><circle cx=\"37.5\" cy=\"31\" r=\"3.808\"/></g></g></g></g></svg>',\n // working-clean.svg\n working:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 64 64\" fill=\"none\"><defs><filter id=\"rough\" x=\"-25%\" y=\"-25%\" width=\"150%\" height=\"150%\"><feTurbulence type=\"fractalNoise\" baseFrequency=\"0.04\" numOctaves=\"2\" seed=\"4\" result=\"n\"/><feDisplacementMap in=\"SourceGraphic\" in2=\"n\" scale=\"2.2\" xChannelSelector=\"R\" yChannelSelector=\"G\"/></filter></defs><style>/* AG2Space stand states \\u2014 apply to the inline SVG */\\n.gaze{animation:gaze 4.2s cubic-bezier(.6,0,.2,1) infinite}\\n@keyframes gaze{0%,10%{transform:translate(0,0)}18%,34%{transform:translate(-1.9px,-1px)}\\n 42%,58%{transform:translate(2.1px,.4px)}66%,84%{transform:translate(.8px,-1.4px)}92%,100%{transform:translate(0,0)}}\\n.pulse{transform-box:view-box;transform-origin:32px 32px;animation:pulse 2.6s ease-out infinite}\\n@keyframes pulse{0%{transform:scale(.86);opacity:.9}70%,100%{transform:scale(1.06);opacity:0}}\\n.scribble{transform-box:view-box;transform-origin:22px 32px;animation:scribble 1.5s ease-in-out infinite}\\n@keyframes scribble{0%,100%{transform:scaleX(.15);opacity:.55}50%{transform:scaleX(1);opacity:1}}\\n.talk{animation:talk 1.6s ease-in-out infinite}\\n.talk2{animation-delay:.22s;opacity:.5}\\n@keyframes talk{0%,100%{opacity:.28}50%{opacity:1}}\\n.zzz{animation:zzz 3.4s ease-in-out infinite}\\n.zzz2{animation-delay:.8s}\\n@keyframes zzz{0%{transform:translate(0,4px);opacity:0}35%{opacity:.95}100%{transform:translate(4px,-8px);opacity:0}}\\n.attn{transform-box:view-box;transform-origin:32px 32px;animation:attn 3.2s cubic-bezier(.3,1.3,.4,1) infinite}\\n@keyframes attn{0%,70%,100%{transform:rotate(0)}75%{transform:rotate(-5.5deg)}\\n 81%{transform:rotate(4.5deg)}87%{transform:rotate(-2deg)}93%{transform:rotate(0)}}\\n.flash{transform-box:view-box;transform-origin:32px 32px;animation:flash 3.2s ease-out infinite}\\n@keyframes flash{0%,66%{opacity:0;transform:scale(.9)}73%{opacity:1;transform:scale(1)}\\n 100%{opacity:0;transform:scale(1.14)}}\\n.slowring{transform-box:view-box;transform-origin:32px 32px;animation:slowring 2.8s ease-in-out infinite}\\n@keyframes slowring{0%,100%{opacity:.35}50%{opacity:1}}\\n@media (prefers-reduced-motion: reduce){\\n .gaze,.pulse,.scribble,.talk,.zzz,.attn,.flash,.slowring{animation:none}\\n .gaze{transform:translate(2.1px,-1px)}.pulse{opacity:.6}.flash{opacity:1}\\n .attn{transform:rotate(-4deg)}.talk,.scribble,.zzz{opacity:.9}}\\n</style><rect width=\"64\" height=\"64\" fill=\"var(--agent-mark-plate, #6C4BE8)\"/><g transform=\"translate(32 32) scale(1.15) translate(-32 -32)\"><g transform=\"translate(-8.043 -9.470) scale(1.16)\"><g stroke=\"#FFFFFF\" stroke-width=\"3.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M17 22.5h30a6.5 6.5 0 0 1 6.5 6.5v7a6.5 6.5 0 0 1 -6.5 6.5H29l-8.5 6.5 1.5-6.6A6.6 6.6 0 0 1 16 36v-7a6.5 6.5 0 0 1 1-6.5z\"/></g><rect x=\"19.5\" y=\"26.25\" width=\"25\" height=\"9.5\" rx=\"4.75\" fill=\"#FFCE3A\" transform=\"rotate(-4 33 31)\"/><g fill=\"#12212F\"><circle cx=\"26\" cy=\"31\" r=\"3.4\"/><circle cx=\"38\" cy=\"31\" r=\"3.4\"/></g><g class=\"scribble\" stroke=\"#FFCE3A\" stroke-width=\"3\" stroke-linecap=\"round\" fill=\"none\"><path d=\"M22 40h14\"/></g></g></g></svg>',\n // idle-clean.svg\n available:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 64 64\" fill=\"none\"><defs><filter id=\"rough\" x=\"-25%\" y=\"-25%\" width=\"150%\" height=\"150%\"><feTurbulence type=\"fractalNoise\" baseFrequency=\"0.04\" numOctaves=\"2\" seed=\"4\" result=\"n\"/><feDisplacementMap in=\"SourceGraphic\" in2=\"n\" scale=\"2.2\" xChannelSelector=\"R\" yChannelSelector=\"G\"/></filter></defs><style>/* AG2Space stand states \\u2014 apply to the inline SVG */\\n.gaze{animation:gaze 4.2s cubic-bezier(.6,0,.2,1) infinite}\\n@keyframes gaze{0%,10%{transform:translate(0,0)}18%,34%{transform:translate(-1.9px,-1px)}\\n 42%,58%{transform:translate(2.1px,.4px)}66%,84%{transform:translate(.8px,-1.4px)}92%,100%{transform:translate(0,0)}}\\n.pulse{transform-box:view-box;transform-origin:32px 32px;animation:pulse 2.6s ease-out infinite}\\n@keyframes pulse{0%{transform:scale(.86);opacity:.9}70%,100%{transform:scale(1.06);opacity:0}}\\n.scribble{transform-box:view-box;transform-origin:22px 32px;animation:scribble 1.5s ease-in-out infinite}\\n@keyframes scribble{0%,100%{transform:scaleX(.15);opacity:.55}50%{transform:scaleX(1);opacity:1}}\\n.talk{animation:talk 1.6s ease-in-out infinite}\\n.talk2{animation-delay:.22s;opacity:.5}\\n@keyframes talk{0%,100%{opacity:.28}50%{opacity:1}}\\n.zzz{animation:zzz 3.4s ease-in-out infinite}\\n.zzz2{animation-delay:.8s}\\n@keyframes zzz{0%{transform:translate(0,4px);opacity:0}35%{opacity:.95}100%{transform:translate(4px,-8px);opacity:0}}\\n.attn{transform-box:view-box;transform-origin:32px 32px;animation:attn 3.2s cubic-bezier(.3,1.3,.4,1) infinite}\\n@keyframes attn{0%,70%,100%{transform:rotate(0)}75%{transform:rotate(-5.5deg)}\\n 81%{transform:rotate(4.5deg)}87%{transform:rotate(-2deg)}93%{transform:rotate(0)}}\\n.flash{transform-box:view-box;transform-origin:32px 32px;animation:flash 3.2s ease-out infinite}\\n@keyframes flash{0%,66%{opacity:0;transform:scale(.9)}73%{opacity:1;transform:scale(1)}\\n 100%{opacity:0;transform:scale(1.14)}}\\n.slowring{transform-box:view-box;transform-origin:32px 32px;animation:slowring 2.8s ease-in-out infinite}\\n@keyframes slowring{0%,100%{opacity:.35}50%{opacity:1}}\\n@media (prefers-reduced-motion: reduce){\\n .gaze,.pulse,.scribble,.talk,.zzz,.attn,.flash,.slowring{animation:none}\\n .gaze{transform:translate(2.1px,-1px)}.pulse{opacity:.6}.flash{opacity:1}\\n .attn{transform:rotate(-4deg)}.talk,.scribble,.zzz{opacity:.9}}\\n</style><rect width=\"64\" height=\"64\" fill=\"var(--agent-mark-plate, #6C4BE8)\"/><g transform=\"translate(32 32) scale(1.15) translate(-32 -32)\"><g transform=\"translate(-8.043 -9.470) scale(1.16)\"><g stroke=\"#FFFFFF\" stroke-width=\"3.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M17 22.5h30a6.5 6.5 0 0 1 6.5 6.5v7a6.5 6.5 0 0 1 -6.5 6.5H29l-8.5 6.5 1.5-6.6A6.6 6.6 0 0 1 16 36v-7a6.5 6.5 0 0 1 1-6.5z\"/></g><rect x=\"19.5\" y=\"26.25\" width=\"25\" height=\"9.5\" rx=\"4.75\" fill=\"#FFCE3A\" transform=\"rotate(-4 33 31)\"/><g fill=\"#12212F\"><circle cx=\"26\" cy=\"31\" r=\"3.4\"/><circle cx=\"38\" cy=\"31\" r=\"3.4\"/></g></g></g></svg>',\n // off-clean.svg — plate keeps opacity=\".45\"\n offline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 64 64\" fill=\"none\"><defs><filter id=\"rough\" x=\"-25%\" y=\"-25%\" width=\"150%\" height=\"150%\"><feTurbulence type=\"fractalNoise\" baseFrequency=\"0.04\" numOctaves=\"2\" seed=\"4\" result=\"n\"/><feDisplacementMap in=\"SourceGraphic\" in2=\"n\" scale=\"2.2\" xChannelSelector=\"R\" yChannelSelector=\"G\"/></filter></defs><style>/* AG2Space stand states \\u2014 apply to the inline SVG */\\n.gaze{animation:gaze 4.2s cubic-bezier(.6,0,.2,1) infinite}\\n@keyframes gaze{0%,10%{transform:translate(0,0)}18%,34%{transform:translate(-1.9px,-1px)}\\n 42%,58%{transform:translate(2.1px,.4px)}66%,84%{transform:translate(.8px,-1.4px)}92%,100%{transform:translate(0,0)}}\\n.pulse{transform-box:view-box;transform-origin:32px 32px;animation:pulse 2.6s ease-out infinite}\\n@keyframes pulse{0%{transform:scale(.86);opacity:.9}70%,100%{transform:scale(1.06);opacity:0}}\\n.scribble{transform-box:view-box;transform-origin:22px 32px;animation:scribble 1.5s ease-in-out infinite}\\n@keyframes scribble{0%,100%{transform:scaleX(.15);opacity:.55}50%{transform:scaleX(1);opacity:1}}\\n.talk{animation:talk 1.6s ease-in-out infinite}\\n.talk2{animation-delay:.22s;opacity:.5}\\n@keyframes talk{0%,100%{opacity:.28}50%{opacity:1}}\\n.zzz{animation:zzz 3.4s ease-in-out infinite}\\n.zzz2{animation-delay:.8s}\\n@keyframes zzz{0%{transform:translate(0,4px);opacity:0}35%{opacity:.95}100%{transform:translate(4px,-8px);opacity:0}}\\n.attn{transform-box:view-box;transform-origin:32px 32px;animation:attn 3.2s cubic-bezier(.3,1.3,.4,1) infinite}\\n@keyframes attn{0%,70%,100%{transform:rotate(0)}75%{transform:rotate(-5.5deg)}\\n 81%{transform:rotate(4.5deg)}87%{transform:rotate(-2deg)}93%{transform:rotate(0)}}\\n.flash{transform-box:view-box;transform-origin:32px 32px;animation:flash 3.2s ease-out infinite}\\n@keyframes flash{0%,66%{opacity:0;transform:scale(.9)}73%{opacity:1;transform:scale(1)}\\n 100%{opacity:0;transform:scale(1.14)}}\\n.slowring{transform-box:view-box;transform-origin:32px 32px;animation:slowring 2.8s ease-in-out infinite}\\n@keyframes slowring{0%,100%{opacity:.35}50%{opacity:1}}\\n@media (prefers-reduced-motion: reduce){\\n .gaze,.pulse,.scribble,.talk,.zzz,.attn,.flash,.slowring{animation:none}\\n .gaze{transform:translate(2.1px,-1px)}.pulse{opacity:.6}.flash{opacity:1}\\n .attn{transform:rotate(-4deg)}.talk,.scribble,.zzz{opacity:.9}}\\n</style><rect width=\"64\" height=\"64\" fill=\"var(--agent-mark-plate, #6C4BE8)\" opacity=\".45\"/><g transform=\"translate(32 32) scale(1.15) translate(-32 -32)\"><g transform=\"translate(-8.043 -9.470) scale(1.16)\"><g stroke=\"#FFFFFF\" stroke-width=\"3.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\" opacity=\".6\"><path d=\"M17 22.5h30a6.5 6.5 0 0 1 6.5 6.5v7a6.5 6.5 0 0 1 -6.5 6.5H29l-8.5 6.5 1.5-6.6A6.6 6.6 0 0 1 16 36v-7a6.5 6.5 0 0 1 1-6.5z\"/></g><g fill=\"#FFFFFF\" opacity=\".6\"><circle cx=\"26\" cy=\"31\" r=\"3.4\"/><circle cx=\"38\" cy=\"31\" r=\"3.4\"/></g></g></g></svg>',\n // warning-clean.svg\n warning:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 64 64\" fill=\"none\"><defs><filter id=\"rough\" x=\"-25%\" y=\"-25%\" width=\"150%\" height=\"150%\"><feTurbulence type=\"fractalNoise\" baseFrequency=\"0.04\" numOctaves=\"2\" seed=\"4\" result=\"n\"/><feDisplacementMap in=\"SourceGraphic\" in2=\"n\" scale=\"2.2\" xChannelSelector=\"R\" yChannelSelector=\"G\"/></filter></defs><style>/* AG2Space stand states \\u2014 apply to the inline SVG */\\n.gaze{animation:gaze 4.2s cubic-bezier(.6,0,.2,1) infinite}\\n@keyframes gaze{0%,10%{transform:translate(0,0)}18%,34%{transform:translate(-1.9px,-1px)}\\n 42%,58%{transform:translate(2.1px,.4px)}66%,84%{transform:translate(.8px,-1.4px)}92%,100%{transform:translate(0,0)}}\\n.pulse{transform-box:view-box;transform-origin:32px 32px;animation:pulse 2.6s ease-out infinite}\\n@keyframes pulse{0%{transform:scale(.86);opacity:.9}70%,100%{transform:scale(1.06);opacity:0}}\\n.scribble{transform-box:view-box;transform-origin:22px 32px;animation:scribble 1.5s ease-in-out infinite}\\n@keyframes scribble{0%,100%{transform:scaleX(.15);opacity:.55}50%{transform:scaleX(1);opacity:1}}\\n.talk{animation:talk 1.6s ease-in-out infinite}\\n.talk2{animation-delay:.22s;opacity:.5}\\n@keyframes talk{0%,100%{opacity:.28}50%{opacity:1}}\\n.zzz{animation:zzz 3.4s ease-in-out infinite}\\n.zzz2{animation-delay:.8s}\\n@keyframes zzz{0%{transform:translate(0,4px);opacity:0}35%{opacity:.95}100%{transform:translate(4px,-8px);opacity:0}}\\n.attn{transform-box:view-box;transform-origin:32px 32px;animation:attn 3.2s cubic-bezier(.3,1.3,.4,1) infinite}\\n@keyframes attn{0%,70%,100%{transform:rotate(0)}75%{transform:rotate(-5.5deg)}\\n 81%{transform:rotate(4.5deg)}87%{transform:rotate(-2deg)}93%{transform:rotate(0)}}\\n.flash{transform-box:view-box;transform-origin:32px 32px;animation:flash 3.2s ease-out infinite}\\n@keyframes flash{0%,66%{opacity:0;transform:scale(.9)}73%{opacity:1;transform:scale(1)}\\n 100%{opacity:0;transform:scale(1.14)}}\\n.slowring{transform-box:view-box;transform-origin:32px 32px;animation:slowring 2.8s ease-in-out infinite}\\n@keyframes slowring{0%,100%{opacity:.35}50%{opacity:1}}\\n@media (prefers-reduced-motion: reduce){\\n .gaze,.pulse,.scribble,.talk,.zzz,.attn,.flash,.slowring{animation:none}\\n .gaze{transform:translate(2.1px,-1px)}.pulse{opacity:.6}.flash{opacity:1}\\n .attn{transform:rotate(-4deg)}.talk,.scribble,.zzz{opacity:.9}}\\n</style><rect width=\"64\" height=\"64\" fill=\"var(--agent-mark-plate, #6C4BE8)\"/><g transform=\"translate(32 32) scale(1.15) translate(-32 -32)\"><g transform=\"translate(-8.043 -9.470) scale(1.16)\"><g stroke=\"#FFFFFF\" stroke-width=\"3.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M17 22.5h30a6.5 6.5 0 0 1 6.5 6.5v7a6.5 6.5 0 0 1 -6.5 6.5H29l-8.5 6.5 1.5-6.6A6.6 6.6 0 0 1 16 36v-7a6.5 6.5 0 0 1 1-6.5z\"/></g><g transform=\"rotate(-4 33 31)\"><rect x=\"19.5\" y=\"26.25\" width=\"10.8\" height=\"9.5\" rx=\"4.75\" fill=\"#E08A16\"/><rect x=\"33.7\" y=\"26.25\" width=\"10.8\" height=\"9.5\" rx=\"4.75\" fill=\"#E08A16\"/></g><g fill=\"#12212F\"><circle cx=\"26\" cy=\"31\" r=\"3.4\"/><circle cx=\"38\" cy=\"31\" r=\"3.4\"/></g></g><rect class=\"slowring\" x=\"6\" y=\"6\" width=\"52\" height=\"52\" rx=\"15\" fill=\"none\" stroke=\"#E08A16\" stroke-width=\"2.6\"/></g></svg>',\n // error-clean.svg\n error:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 64 64\" fill=\"none\"><defs><filter id=\"rough\" x=\"-25%\" y=\"-25%\" width=\"150%\" height=\"150%\"><feTurbulence type=\"fractalNoise\" baseFrequency=\"0.04\" numOctaves=\"2\" seed=\"4\" result=\"n\"/><feDisplacementMap in=\"SourceGraphic\" in2=\"n\" scale=\"2.2\" xChannelSelector=\"R\" yChannelSelector=\"G\"/></filter></defs><style>/* AG2Space stand states \\u2014 apply to the inline SVG */\\n.gaze{animation:gaze 4.2s cubic-bezier(.6,0,.2,1) infinite}\\n@keyframes gaze{0%,10%{transform:translate(0,0)}18%,34%{transform:translate(-1.9px,-1px)}\\n 42%,58%{transform:translate(2.1px,.4px)}66%,84%{transform:translate(.8px,-1.4px)}92%,100%{transform:translate(0,0)}}\\n.pulse{transform-box:view-box;transform-origin:32px 32px;animation:pulse 2.6s ease-out infinite}\\n@keyframes pulse{0%{transform:scale(.86);opacity:.9}70%,100%{transform:scale(1.06);opacity:0}}\\n.scribble{transform-box:view-box;transform-origin:22px 32px;animation:scribble 1.5s ease-in-out infinite}\\n@keyframes scribble{0%,100%{transform:scaleX(.15);opacity:.55}50%{transform:scaleX(1);opacity:1}}\\n.talk{animation:talk 1.6s ease-in-out infinite}\\n.talk2{animation-delay:.22s;opacity:.5}\\n@keyframes talk{0%,100%{opacity:.28}50%{opacity:1}}\\n.zzz{animation:zzz 3.4s ease-in-out infinite}\\n.zzz2{animation-delay:.8s}\\n@keyframes zzz{0%{transform:translate(0,4px);opacity:0}35%{opacity:.95}100%{transform:translate(4px,-8px);opacity:0}}\\n.attn{transform-box:view-box;transform-origin:32px 32px;animation:attn 3.2s cubic-bezier(.3,1.3,.4,1) infinite}\\n@keyframes attn{0%,70%,100%{transform:rotate(0)}75%{transform:rotate(-5.5deg)}\\n 81%{transform:rotate(4.5deg)}87%{transform:rotate(-2deg)}93%{transform:rotate(0)}}\\n.flash{transform-box:view-box;transform-origin:32px 32px;animation:flash 3.2s ease-out infinite}\\n@keyframes flash{0%,66%{opacity:0;transform:scale(.9)}73%{opacity:1;transform:scale(1)}\\n 100%{opacity:0;transform:scale(1.14)}}\\n.slowring{transform-box:view-box;transform-origin:32px 32px;animation:slowring 2.8s ease-in-out infinite}\\n@keyframes slowring{0%,100%{opacity:.35}50%{opacity:1}}\\n@media (prefers-reduced-motion: reduce){\\n .gaze,.pulse,.scribble,.talk,.zzz,.attn,.flash,.slowring{animation:none}\\n .gaze{transform:translate(2.1px,-1px)}.pulse{opacity:.6}.flash{opacity:1}\\n .attn{transform:rotate(-4deg)}.talk,.scribble,.zzz{opacity:.9}}\\n</style><rect width=\"64\" height=\"64\" fill=\"var(--agent-mark-plate, #6C4BE8)\"/><g transform=\"translate(32 32) scale(1.15) translate(-32 -32)\"><g transform=\"translate(-8.043 -9.470) scale(1.16)\"><g stroke=\"#FFFFFF\" stroke-width=\"3.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M17 22.5h30a6.5 6.5 0 0 1 6.5 6.5v7a6.5 6.5 0 0 1 -6.5 6.5H29l-8.5 6.5 1.5-6.6A6.6 6.6 0 0 1 16 36v-7a6.5 6.5 0 0 1 1-6.5z\"/></g><g transform=\"rotate(0 33 31)\"><rect x=\"19.5\" y=\"26.25\" width=\"9\" height=\"9.5\" rx=\"4.75\" fill=\"#E78899\"/><rect x=\"35.5\" y=\"28.65\" width=\"9\" height=\"9.5\" rx=\"4.75\" fill=\"#E78899\"/></g><g stroke=\"#12212F\" stroke-width=\"3\" stroke-linecap=\"round\"><path d=\"M22.6 31h6.8\"/><path d=\"M34.6 31h6.8\"/></g></g><rect x=\"4.5\" y=\"4.5\" width=\"55\" height=\"55\" rx=\"14\" fill=\"none\" stroke=\"#E78899\" stroke-width=\"3.4\"/></g></svg>',\n // thinking-clean.svg\n thinking:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 64 64\" fill=\"none\"><defs><filter id=\"rough\" x=\"-25%\" y=\"-25%\" width=\"150%\" height=\"150%\"><feTurbulence type=\"fractalNoise\" baseFrequency=\"0.04\" numOctaves=\"2\" seed=\"4\" result=\"n\"/><feDisplacementMap in=\"SourceGraphic\" in2=\"n\" scale=\"2.2\" xChannelSelector=\"R\" yChannelSelector=\"G\"/></filter></defs><style>/* AG2Space stand states \\u2014 apply to the inline SVG */\\n.gaze{animation:gaze 4.2s cubic-bezier(.6,0,.2,1) infinite}\\n@keyframes gaze{0%,10%{transform:translate(0,0)}18%,34%{transform:translate(-1.9px,-1px)}\\n 42%,58%{transform:translate(2.1px,.4px)}66%,84%{transform:translate(.8px,-1.4px)}92%,100%{transform:translate(0,0)}}\\n.pulse{transform-box:view-box;transform-origin:32px 32px;animation:pulse 2.6s ease-out infinite}\\n@keyframes pulse{0%{transform:scale(.86);opacity:.9}70%,100%{transform:scale(1.06);opacity:0}}\\n.scribble{transform-box:view-box;transform-origin:22px 32px;animation:scribble 1.5s ease-in-out infinite}\\n@keyframes scribble{0%,100%{transform:scaleX(.15);opacity:.55}50%{transform:scaleX(1);opacity:1}}\\n.talk{animation:talk 1.6s ease-in-out infinite}\\n.talk2{animation-delay:.22s;opacity:.5}\\n@keyframes talk{0%,100%{opacity:.28}50%{opacity:1}}\\n.zzz{animation:zzz 3.4s ease-in-out infinite}\\n.zzz2{animation-delay:.8s}\\n@keyframes zzz{0%{transform:translate(0,4px);opacity:0}35%{opacity:.95}100%{transform:translate(4px,-8px);opacity:0}}\\n.attn{transform-box:view-box;transform-origin:32px 32px;animation:attn 3.2s cubic-bezier(.3,1.3,.4,1) infinite}\\n@keyframes attn{0%,70%,100%{transform:rotate(0)}75%{transform:rotate(-5.5deg)}\\n 81%{transform:rotate(4.5deg)}87%{transform:rotate(-2deg)}93%{transform:rotate(0)}}\\n.flash{transform-box:view-box;transform-origin:32px 32px;animation:flash 3.2s ease-out infinite}\\n@keyframes flash{0%,66%{opacity:0;transform:scale(.9)}73%{opacity:1;transform:scale(1)}\\n 100%{opacity:0;transform:scale(1.14)}}\\n.slowring{transform-box:view-box;transform-origin:32px 32px;animation:slowring 2.8s ease-in-out infinite}\\n@keyframes slowring{0%,100%{opacity:.35}50%{opacity:1}}\\n@media (prefers-reduced-motion: reduce){\\n .gaze,.pulse,.scribble,.talk,.zzz,.attn,.flash,.slowring{animation:none}\\n .gaze{transform:translate(2.1px,-1px)}.pulse{opacity:.6}.flash{opacity:1}\\n .attn{transform:rotate(-4deg)}.talk,.scribble,.zzz{opacity:.9}}\\n</style><rect width=\"64\" height=\"64\" fill=\"var(--agent-mark-plate, #6C4BE8)\"/><g transform=\"translate(32 32) scale(1.15) translate(-32 -32)\"><g transform=\"translate(-8.043 -9.470) scale(1.16)\"><g stroke=\"#FFFFFF\" stroke-width=\"3.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M17 22.5h30a6.5 6.5 0 0 1 6.5 6.5v7a6.5 6.5 0 0 1 -6.5 6.5H29l-8.5 6.5 1.5-6.6A6.6 6.6 0 0 1 16 36v-7a6.5 6.5 0 0 1 1-6.5z\"/></g><rect x=\"19.5\" y=\"26.25\" width=\"25\" height=\"9.5\" rx=\"4.75\" fill=\"#FFCE3A\" transform=\"rotate(-4 33 31)\"/><g class=\"gaze\" fill=\"#12212F\"><circle cx=\"26\" cy=\"31\" r=\"3.4\"/><circle cx=\"38\" cy=\"31\" r=\"3.4\"/></g></g></g></svg>',\n};\n","import React from \"react\";\nimport { Box } from \"../box/Box\";\nimport { as } from \"../as\";\nimport { toRem } from \"../../theme/util\";\nimport * as css from \"./TypingIndicator.css\";\n\nexport type TypingIndicatorProps = {\n size?: \"300\" | \"400\";\n disableAnimation?: boolean;\n};\n\nexport const TypingIndicator = as<\"div\", TypingIndicatorProps>(\n ({ size, disableAnimation, style, ...props }, ref) => (\n <Box\n as=\"span\"\n alignItems=\"Center\"\n shrink=\"No\"\n style={{ gap: toRem(size === \"300\" ? 1 : 2), ...style }}\n {...props}\n ref={ref}\n >\n <span className={css.TypingDot({ size, index: \"0\", animated: !disableAnimation })} />\n <span className={css.TypingDot({ size, index: \"1\", animated: !disableAnimation })} />\n <span className={css.TypingDot({ size, index: \"2\", animated: !disableAnimation })} />\n </Box>\n )\n);\n","import React from \"react\";\n\n// folds ships no robot/agent glyph, so this is the shared one. currentColor +\n// 1rem so it matches sibling folds icons at size=\"100\".\nexport const RobotIcon = ({ filled = false }: { filled?: boolean }) => (\n <svg\n width=\"1rem\"\n height=\"1rem\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={filled ? 2.2 : 1.8}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n style={{ display: \"block\" }}\n aria-hidden\n >\n <rect x=\"5\" y=\"8\" width=\"14\" height=\"11\" rx=\"3\" />\n <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"8\" />\n <circle cx=\"12\" cy=\"4\" r=\"1.1\" fill=\"currentColor\" stroke=\"none\" />\n <circle cx=\"9.5\" cy=\"13.5\" r=\"1.3\" fill=\"currentColor\" stroke=\"none\" />\n <circle cx=\"14.5\" cy=\"13.5\" r=\"1.3\" fill=\"currentColor\" stroke=\"none\" />\n <line x1=\"3\" y1=\"12\" x2=\"3\" y2=\"15\" />\n <line x1=\"21\" y1=\"12\" x2=\"21\" y2=\"15\" />\n </svg>\n);\n","// VENDORED: public/docs/alive-mark.html lines 220-556 from ag2-space/design-system.\n// Ported verbatim — do NOT edit or reformat here. The GEOMETRY block duplicates that\n// repo's worker/mark.js generator constants and must stay in sync with it.\n// See VENDORED.md in this folder.\n/* eslint-disable */\n// @ts-nocheck\nexport function mountAliveMark(container, opts) {\n \"use strict\";\n\n /* ------------------------------------------------------------------------------\n GEOMETRY — COPIED VERBATIM FROM worker/mark.js. KEEP IN SYNC.\n This is the one place in this repo that duplicates the generator's constants; it\n exists because the webclient cannot call /api/mark (Cloudflare Access) and cannot\n animate an <img>. If mark.js changes, change this block and the webclient's copy.\n ------------------------------------------------------------------------------ */\n var BRAND = \"#6C4BE8\";\n var INK = \"#16324F\";\n var WHITE = \"#FFFFFF\";\n\n var GCX = 34.52; // bbox centre in x\n var GCY = 33.2; // 1 — OPTICAL centre, not the bbox centre 35.75 (the box has the tail)\n var FIT = 1.36; // 2 — of the tile; the mark touches the edges at 1.56\n var FIT_SMALL = 1.42;\n var SMALL_AT = 24; // 3 — below this the identity moves to the tile\n var FACE_CX = 34.75; // the face centres on the BUBBLE BODY (x 16..53.5), not the tile\n\n var DEFAULT_C = { y: 31, gap: 12, r: 3.4, tilt: -4, hex: \"#FFCE3A\" };\n\n var FACE_PATH =\n \"M17 22.5h30a6.5 6.5 0 0 1 6.5 6.5v7a6.5 6.5 0 0 1 -6.5 6.5H29\" +\n \"l-8.5 6.5 1.5-6.6A6.6 6.6 0 0 1 16 36v-7a6.5 6.5 0 0 1 1-6.5z\";\n\n function fitFor(px) {\n return px < SMALL_AT ? FIT_SMALL : FIT;\n }\n\n function eyeBoost(c, px) {\n if (px >= SMALL_AT) return { r: c.r, gap: c.gap };\n var r = Math.min(c.r * 1.18, 4.4);\n return { r: r, gap: Math.min(c.gap * 1.06, 2 * (13.0 - r)) };\n }\n /* --- end of the copied block. The generator's feTurbulence wobble filters (#rlg /\n #rmd) are deliberately NOT copied: they are a static-render flourish, and running a\n displacement map under animation re-rasterises the whole tile every frame for an\n effect nobody can see at sidebar sizes. -------------------------------------- */\n\n var DEFAULTS = {\n size: 160,\n character: DEFAULT_C, // { y, gap, r, tilt, hex } — any generator character works\n label: \"AG2 Space\",\n blinkMin: 5, // seconds\n blinkMax: 10, // seconds\n blinkMs: 120, // one blink, close + open\n doubleBlinkChance: 0.2, // ~1 in 5 blinks is a double\n driftMin: 2, // seconds between look-around targets\n driftMax: 5,\n driftX: 4, // viewBox units, ± — the pill clip is the hard bound\n driftY: 1.2,\n winkMs: 350,\n squintMs: 420,\n squintTo: 0.4,\n lidClosed: 0.08,\n // The mark does NOT track the pointer continuously by default: a face that follows you\n // everywhere reads as needy, and in a sidebar it would never sit still. It glances.\n pointerMode: \"glance\", // 'off' | 'glance' | 'follow'\n followRadius: 60, // px from the mark's centre — the radius a glance triggers inside.\n // Tuned deliberately tight: at sidebar sizes the pointer has to be\n // basically on the mark before it looks up. No slider — the Pointer\n // select took that slot; change it here or via setOptions().\n glanceMs: 1000, // one glance, before it eases back to idle drift\n glanceCooldown: 8, // seconds; at most one glance per cooldown, however you wave at it\n clickLookMs: 1500, // after a click it looks at you for this long, then lets go\n sleepAfter: 60, // seconds of no pointer activity\n tiltNudge: 3, // degrees the swipe is knocked on a click\n doubleClickMs: 600,\n };\n\n var o = {},\n key;\n for (key in DEFAULTS) o[key] = DEFAULTS[key];\n if (opts) for (key in opts) if (opts[key] !== undefined) o[key] = opts[key];\n\n var c = o.character;\n var size = o.size;\n var uid = \"am\" + Math.random().toString(36).slice(2, 9); // ids must be unique per instance\n\n var k = fitFor(size);\n var eb = eyeBoost(c, size);\n var gap = eb.gap,\n y = c.y,\n r = eb.r;\n var lx = FACE_CX - gap / 2,\n rx = FACE_CX + gap / 2;\n var pillY = y - 5;\n var arcL = \"M\" + (FACE_CX - gap / 2 - r) + \" \" + y + \"q\" + r + \" \" + r * 1.1 + \" \" + r * 2 + \" 0\";\n var arcR = \"M\" + (FACE_CX + gap / 2 - r) + \" \" + y + \"q\" + r + \" \" + r * 1.1 + \" \" + r * 2 + \" 0\";\n var tx = (32 - GCX * k).toFixed(2),\n ty = (32 - GCY * k).toFixed(2);\n\n function pillT(tilt) {\n return \"rotate(\" + tilt + \" \" + FACE_CX + \" \" + y + \")\";\n }\n\n container.innerHTML =\n '<svg class=\"alive-mark\" xmlns=\"http://www.w3.org/2000/svg\" width=\"' +\n size +\n '\" height=\"' +\n size +\n '\" viewBox=\"0 0 64 64\" fill=\"none\" role=\"img\" aria-label=\"' +\n o.label +\n '\">' +\n '<defs><clipPath id=\"' +\n uid +\n '-pill\">' +\n '<rect class=\"am-clip\" x=\"20.75\" y=\"' +\n pillY +\n '\" width=\"28\" height=\"10\" rx=\"5\" ' +\n 'transform=\"' +\n pillT(c.tilt) +\n '\"/>' +\n \"</clipPath></defs>\" +\n '<rect x=\"2\" y=\"2\" width=\"60\" height=\"60\" rx=\"17\" fill=\"' +\n BRAND +\n '\"/>' +\n '<g transform=\"translate(' +\n tx +\n \" \" +\n ty +\n \") scale(\" +\n k +\n ')\">' +\n '<g stroke=\"' +\n WHITE +\n '\" stroke-width=\"3.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\">' +\n '<path d=\"' +\n FACE_PATH +\n '\"/></g>' +\n '<rect class=\"am-swipe\" x=\"20.75\" y=\"' +\n pillY +\n '\" width=\"28\" height=\"10\" rx=\"5\" ' +\n 'fill=\"' +\n c.hex +\n '\" transform=\"' +\n pillT(c.tilt) +\n '\"/>' +\n // The clip lives on a group with no transform of its own, so the eyes move INSIDE\n // the pill instead of dragging their own clip around with them.\n '<g clip-path=\"url(#' +\n uid +\n '-pill)\">' +\n '<g class=\"am-look\">' +\n '<g class=\"am-eye-l\"><circle cx=\"' +\n lx +\n '\" cy=\"' +\n y +\n '\" r=\"' +\n r +\n '\" fill=\"' +\n INK +\n '\"/></g>' +\n '<g class=\"am-eye-r\"><circle cx=\"' +\n rx +\n '\" cy=\"' +\n y +\n '\" r=\"' +\n r +\n '\" fill=\"' +\n INK +\n '\"/></g>' +\n \"</g>\" +\n \"</g>\" +\n '<g class=\"am-dream\" opacity=\"0\">' +\n '<g stroke=\"' +\n INK +\n '\" stroke-width=\"2.6\" stroke-linecap=\"round\" fill=\"none\">' +\n '<path d=\"' +\n arcL +\n '\"/><path d=\"' +\n arcR +\n '\"/></g>' +\n '<g fill=\"' +\n c.hex +\n '\"><circle cx=\"46\" cy=\"17\" r=\"2.6\"/><circle cx=\"52\" cy=\"12\" r=\"1.8\"/></g>' +\n \"</g>\" +\n \"</g>\" +\n \"</svg>\";\n\n var svg = container.querySelector(\"svg\");\n var look = container.querySelector(\".am-look\");\n var eyeL = container.querySelector(\".am-eye-l\");\n var eyeR = container.querySelector(\".am-eye-r\");\n var swipe = container.querySelector(\".am-swipe\");\n var clip = container.querySelector(\".am-clip\");\n var dream = container.querySelector(\".am-dream\");\n var eyes = look.parentNode;\n\n // ---- state -------------------------------------------------------------------\n var reduced = false;\n try {\n reduced = window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\n } catch (e) {}\n\n var running = true,\n raf = 0,\n last = 0;\n var curX = 0,\n curY = 0,\n tgtX = 0,\n tgtY = 0;\n var animL = null,\n animR = null; // lid envelopes\n var tiltCur = c.tilt;\n var dreamAmt = 0,\n sleeping = false;\n var lastActivity = now();\n var lastClick = -1e9;\n var pointer = null; // {x,y} in client coords, null when unknown\n var rect = null,\n rectAt = -1e9;\n var blinkT = 0,\n driftT = 0;\n var glanceUntil = 0,\n glanceReadyAt = 0,\n clickLookUntil = 0,\n gazing = false;\n\n function now() {\n return window.performance && performance.now ? performance.now() : Date.now();\n }\n function rnd(a, b) {\n return a + Math.random() * (b - a);\n }\n\n /** Write an attribute only when it actually changed — 5 instances x 60 fps otherwise. */\n function setA(el, name, val) {\n var m = el.__am || (el.__am = {});\n if (m[name] === val) return;\n m[name] = val;\n el.setAttribute(name, val);\n }\n\n /** Lid envelope: close over `edge` ms, hold, open over `edge` ms. 1 = open. */\n function lidAt(a, t) {\n if (!a) return 1;\n var e = t - a.t0;\n if (e >= a.dur) return 1;\n var edge = reduced ? 0 : Math.min(a.edge, a.dur / 2);\n var p = 1;\n if (edge > 0) {\n if (e < edge) p = e / edge;\n else if (e > a.dur - edge) p = (a.dur - e) / edge;\n p = p * p * (3 - 2 * p); // smoothstep\n }\n return 1 + (a.to - 1) * p;\n }\n\n function scheduleBlink() {\n clearTimeout(blinkT);\n var mult = reduced ? 2 : 1; // reduced motion: blink half as often\n blinkT = setTimeout(function () {\n if (!sleeping) doBlink(Math.random() < o.doubleBlinkChance);\n scheduleBlink();\n }, rnd(o.blinkMin, o.blinkMax) * 1000 * mult);\n }\n\n function doBlink(dbl) {\n var t = now();\n animL = animR = { t0: t, dur: o.blinkMs, edge: o.blinkMs / 2, to: o.lidClosed };\n if (dbl)\n setTimeout(function () {\n if (!running) return;\n var t2 = now();\n animL = animR = { t0: t2, dur: o.blinkMs, edge: o.blinkMs / 2, to: o.lidClosed };\n }, o.blinkMs + 90);\n }\n\n function doWink() {\n var t = now(),\n a = { t0: t, dur: o.winkMs, edge: Math.min(70, o.winkMs / 2), to: o.lidClosed };\n if (Math.random() < 0.5) animL = a;\n else animR = a;\n tiltCur = c.tilt + (Math.random() < 0.5 ? -o.tiltNudge : o.tiltNudge);\n }\n\n function doSquint() {\n var t = now();\n animL = animR = { t0: t, dur: o.squintMs, edge: Math.min(110, o.squintMs / 2), to: o.squintTo };\n tiltCur = c.tilt + o.tiltNudge;\n if (!reduced) {\n tgtX = 0;\n tgtY = -o.driftY;\n } // a small look up, pleased with itself\n }\n\n function scheduleDrift() {\n clearTimeout(driftT);\n driftT = setTimeout(function () {\n if (!reduced && !sleeping && !gazing) {\n // never yank the eyes mid-glance\n tgtX = rnd(-o.driftX, o.driftX);\n tgtY = rnd(-o.driftY, o.driftY);\n }\n scheduleDrift();\n }, rnd(o.driftMin, o.driftMax) * 1000);\n }\n\n // ---- the loop ----------------------------------------------------------------\n function frame(t) {\n if (!running) return;\n var dt = last ? Math.min(0.05, (t - last) / 1000) : 0.016;\n last = t;\n var ease = function (tau) {\n return reduced ? 1 : 1 - Math.exp(-dt / tau);\n };\n\n // One layout read, four times a second, before any write this frame.\n if (t - rectAt > 250) {\n rect = svg.getBoundingClientRect();\n rectAt = t;\n }\n\n // sleep / wake\n var want = (t - lastActivity) / 1000 >= o.sleepAfter;\n if (want !== sleeping) {\n sleeping = want;\n if (!sleeping) doBlink(false); // wake up with a blink\n else {\n tgtX = 0;\n tgtY = 0;\n }\n }\n dreamAmt += ((sleeping ? 1 : 0) - dreamAmt) * ease(0.12);\n if (dreamAmt < 0.001) dreamAmt = 0;\n if (dreamAmt > 0.999) dreamAmt = 1;\n\n // Where the eyes want to be. The pointer only ever BORROWS the gaze — for one glance, or\n // for a moment after a click — and hands it straight back to the idle drift.\n var gx = null,\n gy = null;\n if (!reduced && !sleeping && pointer && rect && o.pointerMode !== \"off\") {\n var cxp = rect.left + rect.width / 2,\n cyp = rect.top + rect.height / 2;\n var dx = pointer.x - cxp,\n dy = pointer.y - cyp;\n var d = Math.max(1e-3, Math.sqrt(dx * dx + dy * dy));\n var inside = d <= o.followRadius;\n var aim = function (soft) {\n // soft = px at which the look reaches full amplitude\n var m = Math.min(1, d / soft); // don't jitter when the pointer sits on the mark\n gx = (dx / d) * o.driftX * m;\n gy = (dy / d) * o.driftY * m;\n };\n\n if (o.pointerMode === \"follow\") {\n if (inside) aim(80); // the old behaviour, kept for comparison\n } else {\n // 'glance'\n if (!glanceUntil && inside && t >= glanceReadyAt) glanceUntil = t + o.glanceMs;\n if (glanceUntil) {\n if (t < glanceUntil) aim(80);\n else {\n glanceUntil = 0;\n glanceReadyAt = t + o.glanceCooldown * 1000;\n }\n }\n }\n if (t < clickLookUntil) aim(25); // a click always wins, wherever the pointer is\n }\n\n var wasGazing = gazing;\n gazing = gx !== null;\n if (gazing) {\n tgtX = gx;\n tgtY = gy;\n } else if (wasGazing || reduced || sleeping) {\n tgtX = 0;\n tgtY = 0;\n } // ease back to centre\n\n curX += (tgtX - curX) * ease(0.18);\n curY += (tgtY - curY) * ease(0.18);\n setA(look, \"transform\", \"translate(\" + curX.toFixed(3) + \" \" + curY.toFixed(3) + \")\");\n\n // lids\n var sl = lidAt(animL, t),\n sr = lidAt(animR, t);\n if (animL && t - animL.t0 >= animL.dur) animL = null;\n if (animR && t - animR.t0 >= animR.dur) animR = null;\n setA(\n eyeL,\n \"transform\",\n \"translate(\" +\n lx +\n \" \" +\n y +\n \") scale(1 \" +\n sl.toFixed(3) +\n \") translate(\" +\n -lx +\n \" \" +\n -y +\n \")\"\n );\n setA(\n eyeR,\n \"transform\",\n \"translate(\" +\n rx +\n \" \" +\n y +\n \") scale(1 \" +\n sr.toFixed(3) +\n \") translate(\" +\n -rx +\n \" \" +\n -y +\n \")\"\n );\n\n // the swipe eases back to its own tilt after a nudge\n tiltCur += (c.tilt - tiltCur) * ease(0.22);\n var tstr = pillT(tiltCur.toFixed(3));\n setA(swipe, \"transform\", tstr);\n setA(clip, \"transform\", tstr);\n setA(swipe, \"opacity\", (1 - 0.2 * dreamAmt).toFixed(3));\n\n // the dreaming cross-fade\n setA(dream, \"opacity\", dreamAmt.toFixed(3));\n setA(eyes, \"opacity\", (1 - dreamAmt).toFixed(3));\n\n raf = requestAnimationFrame(frame);\n }\n\n // ---- input -------------------------------------------------------------------\n function activity() {\n lastActivity = now();\n }\n\n function onMove(e) {\n pointer = { x: e.clientX, y: e.clientY };\n activity();\n }\n function onDown() {\n activity();\n }\n function onKey() {\n activity();\n } // keyboard counts too, so a typist never dozes off\n\n function onClick() {\n activity();\n var t = now();\n if (t - lastClick < o.doubleClickMs) doSquint();\n else doWink();\n lastClick = t;\n clickLookUntil = t + o.clickLookMs; // it looks at you for a beat, then lets go\n glanceReadyAt = clickLookUntil + o.glanceCooldown * 1000;\n }\n\n window.addEventListener(\"pointermove\", onMove, { passive: true });\n window.addEventListener(\"pointerdown\", onDown, { passive: true });\n window.addEventListener(\"keydown\", onKey, { passive: true });\n container.addEventListener(\"click\", onClick);\n\n scheduleBlink();\n scheduleDrift();\n raf = requestAnimationFrame(frame);\n\n // ---- handle ------------------------------------------------------------------\n return {\n blink: function () {\n doBlink(false);\n },\n wink: function () {\n doWink();\n },\n sleep: function () {\n lastActivity = now() - o.sleepAfter * 1000 - 1;\n },\n wake: function () {\n lastActivity = now();\n },\n setOptions: function (partial) {\n for (var p in partial) if (partial[p] !== undefined) o[p] = partial[p];\n if (o.blinkMax < o.blinkMin) o.blinkMax = o.blinkMin;\n scheduleBlink();\n scheduleDrift();\n },\n destroy: function () {\n running = false;\n cancelAnimationFrame(raf);\n clearTimeout(blinkT);\n clearTimeout(driftT);\n window.removeEventListener(\"pointermove\", onMove);\n window.removeEventListener(\"pointerdown\", onDown);\n window.removeEventListener(\"keydown\", onKey);\n container.removeEventListener(\"click\", onClick);\n container.innerHTML = \"\";\n },\n };\n}\n","import React, { useEffect, useRef } from \"react\";\nimport { mountAliveMark } from \"./mountAliveMark\";\n\ntype AliveMarkHandle = { destroy: () => void };\n\n/**\n * Constant, never the caller's `label`. The vendored mount concatenates its `label`\n * option straight into `container.innerHTML` (mountAliveMark.ts:96), so a caller string\n * containing a quote would break out of the aria-label attribute. SpaceSwitcher builds\n * its label from a room name, which is user-controlled. The vendored file cannot be\n * edited, so the wrapper is where this is contained.\n *\n * Nothing is lost: the accessible name comes from the button's aria-label below, and an\n * inner role=\"img\" repeating it is redundant for assistive tech anyway.\n */\nconst MARK_ALT = \"AG2 Space\";\n\ntype AliveMarkProps = {\n /** Rendered edge length in px. The SVG gets explicit width/height at this size. */\n size?: number;\n /** The button's accessible name. React escapes it; it never reaches innerHTML. */\n label?: string;\n /** Runs alongside the wink — the vendored click handler only animates. */\n onClick?: React.MouseEventHandler<HTMLButtonElement>;\n /** Per-agent stand dials { y, gap, r, tilt, hex }; omitted = the product mark. */\n character?: { y: number; gap: number; r: number; tilt: number; hex: string };\n};\n\n/**\n * The animated AG2 mark.\n *\n * The button IS the mount container, not a wrapper around one: the ported code binds\n * its click handler to the container it is given, and Enter/Space on a button dispatch\n * a click on the button itself — a click on a child span would never see them.\n *\n * Animation logic is vendored verbatim in mountAliveMark.ts; this only owns mount, size,\n * teardown and the caller's onClick. destroy() cancels the rAF loop, both timers and all\n * three window listeners. The vendored handler and this onClick both fire on a click, so\n * the mark winks AND does whatever it replaced.\n */\nexport const AliveMark = ({\n size = 40,\n label = \"AG2 Space\",\n onClick,\n character,\n}: AliveMarkProps) => {\n const ref = useRef<HTMLButtonElement>(null);\n\n useEffect(() => {\n const container = ref.current;\n if (!container) return undefined;\n const handle = mountAliveMark(container, {\n size,\n label: MARK_ALT,\n ...(character ? { character } : {}),\n }) as AliveMarkHandle;\n return () => handle.destroy();\n }, [size, character]);\n\n return (\n <button\n type=\"button\"\n ref={ref}\n aria-label={label}\n onClick={onClick}\n style={{\n // Fixed box so the header's flex rules cannot reflow the SVG off 40x40.\n width: size,\n height: size,\n flexShrink: 0,\n display: \"block\",\n padding: 0,\n border: \"none\",\n background: \"none\",\n lineHeight: 0,\n cursor: \"pointer\",\n }}\n />\n );\n};\n","import React from \"react\";\nimport { as } from \"../as\";\nimport { Badge } from \"../badge/Badge\";\nimport { Text } from \"../text/Text\";\n\nexport const ServerBadge = as<\n \"div\",\n {\n server: string;\n fill?: \"Solid\" | \"None\";\n }\n>(({ as: AsServerBadge = \"div\", fill, server, ...props }, ref) => (\n <Badge as={AsServerBadge} variant=\"Secondary\" fill={fill} {...props} ref={ref}>\n <Text as=\"span\" size=\"L400\" truncate>\n {server}\n </Text>\n </Badge>\n));\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Avatar } from \"../avatar/Avatar\";\nimport * as css from \"./styles.css\";\n\ntype StackedAvatarProps = {\n radii?: \"0\" | \"300\" | \"400\" | \"500\" | \"Pill\" | \"Inherit\" | undefined;\n};\nexport const StackedAvatar = as<\"span\", css.StackedAvatarVariants & StackedAvatarProps>(\n ({ size, variant, className, ...props }, ref) => (\n <Avatar\n size={size}\n className={classNames(css.StackedAvatar({ size, variant }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import React from \"react\";\nimport { IconSrc } from \"../icon/Icons\";\n\n// Owner 2026-08-28: folds ships no compose glyph, so this is the square-and-pencil\n// she referenced. Stroked, because <Icon> renders its src into an svg with fill=\"none\".\nexport const ComposeIcon: IconSrc = () => (\n <>\n <path\n d=\"M12 4H6a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-6\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M17.5 3.5a2.12 2.12 0 0 1 3 3L12 15l-4 1 1-4 8.5-8.5Z\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </>\n);\n","import React, { useEffect, useRef } from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Starfield.css\";\n\ntype Star = {\n x: number;\n y: number;\n r: number;\n phase: number;\n twinkle: number;\n drift: number;\n};\n\n// One star per ~9000 px² keeps the field airy on any viewport size.\nconst STAR_DENSITY = 1 / 9000;\n// Stars closer than this get a faint constellation link.\nconst LINK_DIST = 120;\nconst INK_RESAMPLE_FRAMES = 90;\n\ntype StarfieldProps = {\n className?: string;\n};\n\n/**\n * Space-themed ambient background: a slowly drifting, softly twinkling\n * starfield with faint constellation links between neighboring stars.\n * Ink color comes from the element's CSS `color`, so it follows the active\n * theme; honors prefers-reduced-motion by rendering a static field.\n */\nexport const Starfield = ({ className }: StarfieldProps) => {\n const canvasRef = useRef<HTMLCanvasElement>(null);\n\n useEffect(() => {\n const canvas = canvasRef.current;\n if (!canvas) return undefined;\n const ctx = canvas.getContext(\"2d\");\n if (!ctx) return undefined;\n\n const reduceMotion = window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\n let stars: Star[] = [];\n let raf = 0;\n let frame = 0;\n let width = 0;\n let height = 0;\n let ink = \"128, 128, 128\";\n\n const sampleInk = () => {\n const rgb = getComputedStyle(canvas).color.match(/\\d+/g);\n if (rgb && rgb.length >= 3) ink = `${rgb[0]}, ${rgb[1]}, ${rgb[2]}`;\n };\n\n const seed = () => {\n width = canvas.clientWidth;\n height = canvas.clientHeight;\n const dpr = Math.min(window.devicePixelRatio || 1, 2);\n canvas.width = Math.max(1, Math.round(width * dpr));\n canvas.height = Math.max(1, Math.round(height * dpr));\n ctx.setTransform(dpr, 0, 0, dpr, 0, 0);\n const count = Math.round(width * height * STAR_DENSITY);\n stars = Array.from({ length: count }, () => ({\n x: Math.random() * width,\n y: Math.random() * height,\n r: 0.6 + Math.random() * 1.1,\n phase: Math.random() * Math.PI * 2,\n twinkle: 0.01 + Math.random() * 0.02,\n drift: 0.02 + Math.random() * 0.05,\n }));\n sampleInk();\n };\n\n const draw = () => {\n ctx.clearRect(0, 0, width, height);\n\n ctx.lineWidth = 1;\n for (let i = 0; i < stars.length; i += 1) {\n for (let j = i + 1; j < stars.length; j += 1) {\n const dx = stars[i].x - stars[j].x;\n const dy = stars[i].y - stars[j].y;\n const dist = Math.sqrt(dx * dx + dy * dy);\n if (dist < LINK_DIST) {\n ctx.strokeStyle = `rgba(${ink}, ${(1 - dist / LINK_DIST) * 0.1})`;\n ctx.beginPath();\n ctx.moveTo(stars[i].x, stars[i].y);\n ctx.lineTo(stars[j].x, stars[j].y);\n ctx.stroke();\n }\n }\n }\n\n for (let i = 0; i < stars.length; i += 1) {\n const star = stars[i];\n const alpha = reduceMotion\n ? 0.5\n : 0.35 + 0.3 * (1 + Math.sin(star.phase + frame * star.twinkle)) * 0.5;\n ctx.fillStyle = `rgba(${ink}, ${alpha})`;\n ctx.beginPath();\n ctx.arc(star.x, star.y, star.r, 0, Math.PI * 2);\n ctx.fill();\n }\n };\n\n const tick = () => {\n frame += 1;\n for (let i = 0; i < stars.length; i += 1) {\n const star = stars[i];\n star.x += star.drift;\n star.y -= star.drift * 0.4;\n if (star.x > width + 2) star.x = -2;\n if (star.y < -2) star.y = height + 2;\n }\n if (frame % INK_RESAMPLE_FRAMES === 0) sampleInk();\n draw();\n raf = window.requestAnimationFrame(tick);\n };\n\n seed();\n if (reduceMotion) {\n draw();\n } else {\n raf = window.requestAnimationFrame(tick);\n }\n\n const resizeObserver = new ResizeObserver(() => {\n seed();\n draw();\n });\n resizeObserver.observe(canvas);\n\n return () => {\n window.cancelAnimationFrame(raf);\n resizeObserver.disconnect();\n };\n }, []);\n\n return <canvas ref={canvasRef} className={classNames(css.Starfield, className)} aria-hidden />;\n};\n","import React, { ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { Box } from \"../box/Box\";\nimport { Text } from \"../text/Text\";\nimport { Starfield } from \"../starfield\";\nimport * as starfieldCSS from \"../starfield/Starfield.css\";\nimport * as css from \"./SplashScreen.css\";\n\ntype SplashScreenProps = {\n children: ReactNode;\n};\nexport const SplashScreen = ({ children }: SplashScreenProps) => (\n <Box className={classNames(css.SplashScreen, starfieldCSS.StarfieldHost)} direction=\"Column\">\n <Starfield />\n {children}\n <Box className={css.SplashScreenFooter} shrink=\"No\" alignItems=\"Center\" justifyContent=\"Center\">\n <Text size=\"H2\" align=\"Center\">\n AG2 Space\n </Text>\n </Box>\n </Box>\n);\n","import { useEffect, useMemo } from \"react\";\n\nexport type OnResizeCallback = (entries: ResizeObserverEntry[]) => void;\n\nexport const getResizeObserverEntry = (\n target: Element,\n entries: ResizeObserverEntry[]\n): ResizeObserverEntry | undefined => entries.find((entry) => entry.target === target);\n\nexport const useResizeObserver = (\n onResizeCallback: OnResizeCallback,\n observeElement?: Element | null | (() => Element | null)\n): ResizeObserver => {\n const resizeObserver = useMemo(() => new ResizeObserver(onResizeCallback), [onResizeCallback]);\n\n useEffect(() => () => resizeObserver?.disconnect(), [resizeObserver]);\n\n useEffect(() => {\n const element = typeof observeElement === \"function\" ? observeElement() : observeElement;\n if (element) resizeObserver.observe(element);\n return () => {\n if (element) resizeObserver.unobserve(element);\n };\n }, [resizeObserver, observeElement]);\n\n return resizeObserver;\n};\n","import { useCallback } from \"react\";\nimport { getResizeObserverEntry, useResizeObserver } from \"./useResizeObserver\";\n\nexport const useElementSizeObserver = <T extends Element>(\n element: () => T | null,\n onResize: (width: number, height: number, target: T) => void\n) => {\n useResizeObserver(\n useCallback(\n (entries) => {\n const target = element();\n if (!target) return;\n const targetEntry = getResizeObserverEntry(target, entries);\n if (targetEntry) {\n const { clientWidth, clientHeight } = targetEntry.target;\n onResize(clientWidth, clientHeight, target);\n }\n },\n [element, onResize]\n ),\n element\n );\n};\n","import { createContext, useCallback, useContext, useState } from \"react\";\nimport { useElementSizeObserver } from \"./useElementSizeObserver\";\n\nexport const TABLET_BREAKPOINT = 1124;\nexport const MOBILE_BREAKPOINT = 750;\n\n// eslint-disable-next-line no-shadow -- core no-shadow misreads a TS enum as shadowing itself\nexport enum ScreenSize {\n Desktop = \"Desktop\",\n Tablet = \"Tablet\",\n Mobile = \"Mobile\",\n}\n\nexport const getScreenSize = (width: number): ScreenSize => {\n if (width > TABLET_BREAKPOINT) return ScreenSize.Desktop;\n if (width > MOBILE_BREAKPOINT) return ScreenSize.Tablet;\n return ScreenSize.Mobile;\n};\n\nexport const useScreenSize = (): ScreenSize => {\n const [size, setSize] = useState<ScreenSize>(getScreenSize(document.body.clientWidth));\n\n useElementSizeObserver(\n useCallback(() => document.body, []),\n useCallback((width) => setSize(getScreenSize(width)), [])\n );\n\n return size;\n};\n\nconst ScreenSizeContext = createContext<ScreenSize | null>(null);\nexport const ScreenSizeProvider = ScreenSizeContext.Provider;\n\nexport const useScreenSizeContext = (): ScreenSize => {\n const screenSize = useContext(ScreenSizeContext);\n if (screenSize === null) {\n throw new Error(\"Screen size not provided!\");\n }\n return screenSize;\n};\n","/**\n * A full-viewport transparent overlay held for the duration of a pointer drag.\n *\n * Two things only an overlay can do. A cursor set on `body` is ignored wherever\n * the pointer is over an element that declares its own — which is most of this\n * app — so the resize cursor has to come from something that covers everything.\n * And the overlay stops an embedded iframe from swallowing the move/up events,\n * which otherwise leaves a divider stuck in drag mode.\n *\n * Returns the release function; call it from the same handler that removes the\n * move/up listeners.\n */\nexport function beginDragOverlay(cursor: \"col-resize\" | \"row-resize\"): () => void {\n const overlay = document.createElement(\"div\");\n overlay.style.cssText = `position:fixed;inset:0;z-index:2147483647;cursor:${cursor};background:transparent`;\n document.body.appendChild(overlay);\n return () => overlay.remove();\n}\n","import React, {\n ComponentProps,\n MutableRefObject,\n ReactNode,\n useCallback,\n useEffect,\n useState,\n} from \"react\";\nimport classNames from \"classnames\";\nimport { Box } from \"../box/Box\";\nimport { Header } from \"../header/Header\";\nimport { Scroll } from \"../scroll/Scroll\";\nimport { Text } from \"../text/Text\";\nimport { as } from \"../as\";\nimport { toRem } from \"../../theme/util\";\nimport { ContainerColor } from \"../../styles/ContainerColor.css\";\nimport * as css from \"./style.css\";\nimport { ScreenSize, useScreenSizeContext } from \"../../hooks/useScreenSize\";\nimport { beginDragOverlay } from \"../../utils/dragOverlay\";\n\ntype PageRootProps = {\n nav: ReactNode;\n children: ReactNode;\n};\n\nexport const PageRoot = ({ nav, children }: PageRootProps) => (\n // No divider between nav and content — the seam reads by the panel/content\n // tone step alone, so the line doesn't clutter the boundary (owner, 2026-07-11).\n <Box grow=\"Yes\" className={ContainerColor({ variant: \"Background\" })}>\n {nav}\n {children}\n </Box>\n);\n\ntype ClientDrawerLayoutProps = {\n children: ReactNode;\n};\nconst ROOM_NAV_COLLAPSED_KEY = \"roomNavCollapsed\";\n\n// Shared so the toggle can live OUTSIDE PageNav — it now renders as its own row above\n// the user bar, where it cannot sit on top of the header's buttons (owner 2026-08-30).\nconst navCollapseListeners = new Set<() => void>();\nconst readNavCollapsed = (): boolean => {\n try {\n return localStorage.getItem(ROOM_NAV_COLLAPSED_KEY) === \"1\";\n } catch {\n return false;\n }\n};\nexport function useRoomNavCollapsed(): [boolean, () => void] {\n const [collapsed, set] = useState<boolean>(readNavCollapsed);\n useEffect(() => {\n const cb = () => set(readNavCollapsed());\n navCollapseListeners.add(cb);\n return () => {\n navCollapseListeners.delete(cb);\n };\n }, []);\n const toggle = useCallback(() => {\n try {\n localStorage.setItem(ROOM_NAV_COLLAPSED_KEY, readNavCollapsed() ? \"0\" : \"1\");\n } catch {\n /* ignore storage failure */\n }\n navCollapseListeners.forEach((cb) => cb());\n }, []);\n return [collapsed, toggle];\n}\nconst ROOM_NAV_WIDTH_KEY = \"roomNavWidth\";\nconst NAV_MIN_WIDTH = 180;\nconst NAV_MAX_WIDTH = 480;\nconst navBtnStyle: React.CSSProperties = {\n cursor: \"pointer\",\n background: \"transparent\",\n border: \"none\",\n color: \"inherit\",\n lineHeight: 1,\n display: \"inline-flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n};\nexport const PageNav = ({ size, children }: ClientDrawerLayoutProps & css.PageNavVariants) => {\n const screenSize = useScreenSizeContext();\n const isMobile = screenSize === ScreenSize.Mobile;\n // Collapse the room-list column to reclaim horizontal space (desktop only — mobile\n // keeps the full-screen nav). Persisted in localStorage so it sticks across pages.\n const [collapsed, toggle] = useRoomNavCollapsed();\n\n // User-adjustable width for the room-list column. Drag the right edge to resize;\n // persisted in localStorage so it sticks across pages and reloads. Desktop only.\n const defaultWidth = size === \"300\" ? 222 : 256;\n const [width, setWidth] = useState<number>(() => {\n try {\n const raw = localStorage.getItem(ROOM_NAV_WIDTH_KEY);\n const n = raw ? parseInt(raw, 10) : NaN;\n if (!Number.isNaN(n)) return Math.min(NAV_MAX_WIDTH, Math.max(NAV_MIN_WIDTH, n));\n } catch {\n /* ignore storage failure */\n }\n return defaultWidth;\n });\n const [resizing, setResizing] = useState(false);\n const startResize = (e: React.MouseEvent) => {\n e.preventDefault();\n const startX = e.clientX;\n const startWidth = width;\n setResizing(true);\n const releaseOverlay = beginDragOverlay(\"col-resize\");\n const onMove = (me: MouseEvent) => {\n const next = Math.min(\n NAV_MAX_WIDTH,\n Math.max(NAV_MIN_WIDTH, startWidth + (me.clientX - startX))\n );\n setWidth(next);\n };\n const onUp = () => {\n document.removeEventListener(\"mousemove\", onMove);\n document.removeEventListener(\"mouseup\", onUp);\n releaseOverlay();\n setResizing(false);\n setWidth((w) => {\n try {\n localStorage.setItem(ROOM_NAV_WIDTH_KEY, String(w));\n } catch {\n /* ignore storage failure */\n }\n return w;\n });\n };\n document.addEventListener(\"mousemove\", onMove);\n document.addEventListener(\"mouseup\", onUp);\n };\n\n // Collapsed: a thin rail with a single \"show\" button.\n if (collapsed && !isMobile) {\n return (\n <Box\n shrink=\"No\"\n direction=\"Column\"\n alignItems=\"Center\"\n className={ContainerColor({ variant: \"Background\" })}\n style={{ width: toRem(30), paddingTop: toRem(8) }}\n >\n <button\n type=\"button\"\n title=\"Show room list\"\n onClick={toggle}\n style={{ ...navBtnStyle, fontSize: 18, padding: toRem(4) }}\n >\n ›\n </button>\n </Box>\n );\n }\n\n return (\n <Box\n grow={isMobile ? \"Yes\" : undefined}\n className={css.PageNav({ size })}\n shrink={isMobile ? \"Yes\" : \"No\"}\n style={isMobile ? { position: \"relative\" } : { width: `${width}px`, position: \"relative\" }}\n >\n <Box grow=\"Yes\" direction=\"Column\">\n {children}\n </Box>\n {!isMobile && (\n // eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions -- drag-to-resize handle; mouse-only by design, ported as-is\n <div\n role=\"separator\"\n aria-orientation=\"vertical\"\n title=\"Drag to resize\"\n onMouseDown={startResize}\n data-resizing={resizing}\n className={css.PageNavResizeHandle}\n />\n )}\n </Box>\n );\n};\n\nexport const PageNavHeader = as<\"header\", css.PageNavHeaderVariants>(\n ({ className, outlined, ...props }, ref) => (\n <Header\n className={classNames(css.PageNavHeader({ outlined }), className)}\n variant=\"Background\"\n size=\"500\"\n {...props}\n ref={ref}\n />\n )\n);\n\nexport const PageNavContent = ({\n scrollRef,\n children,\n}: {\n children: ReactNode;\n scrollRef?: MutableRefObject<HTMLDivElement | null>;\n}) => (\n <Box grow=\"Yes\" direction=\"Column\">\n <Scroll\n ref={scrollRef}\n variant=\"Background\"\n direction=\"Vertical\"\n size=\"300\"\n hideTrack\n visibility=\"Hover\"\n >\n <div className={css.PageNavContent}>{children}</div>\n </Scroll>\n </Box>\n);\n\nexport const Page = as<\"div\">(({ className, ...props }, ref) => (\n <Box\n grow=\"Yes\"\n direction=\"Column\"\n className={classNames(ContainerColor({ variant: \"Surface\" }), className)}\n {...props}\n ref={ref}\n />\n));\n\nexport const PageHeader = as<\"div\", css.PageHeaderVariants>(\n ({ className, outlined, balance, ...props }, ref) => (\n <Header\n as=\"header\"\n size=\"500\"\n className={classNames(css.PageHeader({ balance, outlined }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n\nexport const PageContent = as<\"div\">(({ className, ...props }, ref) => (\n <div className={classNames(css.PageContent, className)} {...props} ref={ref} />\n));\n\nexport const PageHeroEmpty = ({\n children,\n compact,\n}: {\n children: ReactNode;\n // Drop the 450px floor — for a docked panel, where that floor is most of the\n // available height and reads as dead space rather than breathing room.\n compact?: boolean;\n}) => (\n <Box\n className={classNames(\n ContainerColor({ variant: \"SurfaceVariant\" }),\n compact ? css.PageHeroEmptyCompact : css.PageHeroEmpty\n )}\n direction=\"Column\"\n alignItems=\"Center\"\n justifyContent=\"Center\"\n gap=\"200\"\n >\n {children}\n </Box>\n);\n\nexport const PageHeroSection = as<\"div\", ComponentProps<typeof Box>>(\n ({ className, ...props }, ref) => (\n <Box\n direction=\"Column\"\n className={classNames(css.PageHeroSection, className)}\n {...props}\n ref={ref}\n />\n )\n);\n\nexport const PageHero = ({\n icon,\n title,\n subTitle,\n children,\n}: {\n icon: ReactNode;\n title: ReactNode;\n subTitle: ReactNode;\n children?: ReactNode;\n}) => (\n <Box direction=\"Column\" gap=\"400\">\n <Box direction=\"Column\" alignItems=\"Center\" gap=\"200\">\n {icon}\n </Box>\n <Box as=\"h2\" direction=\"Column\" gap=\"200\" alignItems=\"Center\">\n <Text align=\"Center\" size=\"H2\">\n {title}\n </Text>\n <Text align=\"Center\" priority=\"400\">\n {subTitle}\n </Text>\n </Box>\n {children}\n </Box>\n);\n\nexport const PageContentCenter = as<\"div\">(({ className, ...props }, ref) => (\n <div className={classNames(css.PageContentCenter, className)} {...props} ref={ref} />\n));\n","import React from \"react\";\nimport { Box } from \"../box/Box\";\nimport { config } from \"../../theme/config.css\";\nimport { toRem } from \"../../theme/util\";\nimport { useRoomNavCollapsed } from \"./Page\";\n\n// Its own row, so the collapse control is in layout flow and cannot land on top of\n// anything (owner 2026-08-30 — floating it at the top clipped the compose button).\nexport const NavCollapseRow = () => {\n const [, toggle] = useRoomNavCollapsed();\n return (\n <Box\n shrink=\"No\"\n alignItems=\"Center\"\n justifyContent=\"End\"\n style={{ height: toRem(22), paddingRight: config.space.S200 }}\n >\n <button\n type=\"button\"\n title=\"Hide room list\"\n onClick={toggle}\n style={{\n background: \"none\",\n border: \"none\",\n cursor: \"pointer\",\n fontSize: 15,\n lineHeight: 1,\n padding: toRem(2),\n opacity: 0.65,\n color: \"inherit\",\n }}\n >\n ‹\n </button>\n </Box>\n );\n};\n","/** Accent palettes never own semantic status colours or neutral surfaces. */\nexport type Appearance = \"light\" | \"dark\";\nexport type AccentRoles = {\n solid: string;\n onSolid: string;\n hover: string;\n pressed: string;\n secondary: string;\n onSecondary: string;\n secondaryHover: string;\n secondaryPressed: string;\n focus: string;\n mention: string;\n onMention: string;\n};\nexport type AccentPalette = Record<Appearance, AccentRoles>;\n\nexport const blueAccent: AccentPalette = {\n dark: {\n solid: \"#2c72cf\",\n onSolid: \"#ffffff\",\n hover: \"#2364bc\",\n pressed: \"#194e96\",\n secondary: \"#294e7b\",\n onSecondary: \"#f1f6ff\",\n secondaryHover: \"#203f66\",\n secondaryPressed: \"#172f4e\",\n focus: \"#7cc4ff\",\n mention: \"#203447\",\n onMention: \"#b8dcff\",\n },\n light: {\n solid: \"#2469c2\",\n onSolid: \"#ffffff\",\n hover: \"#1c58a5\",\n pressed: \"#174886\",\n secondary: \"#294e7b\",\n onSecondary: \"#f1f6ff\",\n secondaryHover: \"#203f66\",\n secondaryPressed: \"#172f4e\",\n focus: \"#1f6fd0\",\n mention: \"#e1edfc\",\n onMention: \"#18579f\",\n },\n};\n\nconst fixed = {\n dark: {\n surface: \"#111318\",\n inset: \"#171a20\",\n line: \"#232830\",\n text: \"#e6e8ec\",\n body: \"#c9ced6\",\n secondary: \"#9aa3ad\",\n status: {\n success: { solid: \"#74c596\", onSolid: \"#0b2315\", soft: \"#233d32\" },\n warning: { solid: \"#f0ad67\", onSolid: \"#201408\", soft: \"#453322\" },\n info: { solid: \"#74b9f5\", onSolid: \"#0b2136\", soft: \"#243b55\" },\n critical: { solid: \"#e0806f\", onSolid: \"#281411\", soft: \"#302224\" },\n neutral: { solid: \"#9aa3ad\", onSolid: \"#111318\", soft: \"#242830\" },\n },\n },\n light: {\n surface: \"#ffffff\",\n inset: \"#f0f1f4\",\n line: \"#e1e4e9\",\n text: \"#14171c\",\n body: \"#3a414b\",\n secondary: \"#5f6873\",\n status: {\n success: { solid: \"#28764b\", onSolid: \"#ffffff\", soft: \"#e7f0eb\" },\n warning: { solid: \"#9b5417\", onSolid: \"#ffffff\", soft: \"#f6eee6\" },\n info: { solid: \"#246ab8\", onSolid: \"#ffffff\", soft: \"#e7eff7\" },\n critical: { solid: \"#a94332\", onSolid: \"#ffffff\", soft: \"#f8e8e4\" },\n neutral: { solid: \"#5f6873\", onSolid: \"#ffffff\", soft: \"#eceef1\" },\n },\n },\n};\n\nexport const resolveCurrentPalette = (mode: Appearance, accent: AccentPalette = blueAccent) => ({\n ...fixed[mode],\n accent: accent[mode],\n});\n\nexport const motion = {\n open: 240,\n close: 180,\n openEasing: \"cubic-bezier(.2,0,0,1)\",\n closeEasing: \"cubic-bezier(.4,0,1,1)\",\n};\n","/* eslint-disable react/function-component-definition */\nimport React, { createContext, useContext, useMemo } from \"react\";\nimport type { CSSProperties, ReactNode } from \"react\";\nimport { AccentPalette, Appearance, blueAccent } from \"./palette\";\nimport { current, darkClass, lightClass } from \"./theme.css\";\nimport * as css from \"./primitives.css\";\nimport \"./fonts.css\";\n\nconst Context = createContext<{ mode: Appearance; accent: AccentPalette }>({\n mode: \"light\",\n accent: blueAccent,\n});\n\n/** No DOM or global styles: only opted-in boundaries adopt the new appearance. */\nexport function CurrentProvider({\n mode,\n accent = blueAccent,\n children,\n}: {\n mode: Appearance;\n accent?: AccentPalette;\n children: ReactNode;\n}) {\n const value = useMemo(() => ({ mode, accent }), [mode, accent]);\n return <Context.Provider value={value}>{children}</Context.Provider>;\n}\n\n/** Future user palette selection supplies one complete light/dark AccentPalette here. */\nexport function CurrentBoundary({\n children,\n className,\n}: {\n children: ReactNode;\n className?: string;\n}) {\n const { mode, accent } = useContext(Context);\n const style = Object.fromEntries(\n Object.entries(current.accent).map(([key, variable]) => [\n variable.slice(4, -1),\n accent[mode][key as keyof typeof current.accent],\n ])\n ) as CSSProperties;\n return (\n <div\n className={`${mode === \"dark\" ? darkClass : lightClass} ${css.boundary}${\n className ? ` ${className}` : \"\"\n }`}\n style={style}\n data-ag2-design=\"current\"\n >\n {children}\n </div>\n );\n}\n","/* eslint-disable react/function-component-definition */\nimport React, { useLayoutEffect, useRef, useState } from \"react\";\nimport type { ReactNode } from \"react\";\nimport { motion } from \"./palette\";\n\n/** Animate from the visible height, including when a user reverses mid-transition. */\nexport function Disclosure({\n open,\n id,\n children,\n}: {\n open: boolean;\n id: string;\n children: ReactNode;\n}) {\n const ref = useRef<HTMLDivElement>(null);\n const animation = useRef<Animation>();\n const [mounted, setMounted] = useState(open);\n useLayoutEffect(() => {\n if (open && !mounted) {\n setMounted(true);\n return;\n }\n const element = ref.current;\n if (!element) return;\n const { height } = element.getBoundingClientRect();\n const { opacity } = getComputedStyle(element);\n animation.current?.cancel();\n const finish = () => {\n element.style.height = open ? \"auto\" : \"0px\";\n element.style.opacity = open ? \"1\" : \"0\";\n if (!open) setMounted(false);\n };\n if (!element.animate || matchMedia(\"(prefers-reduced-motion: reduce)\").matches) {\n finish();\n return;\n }\n element.style.height = open ? \"auto\" : \"0px\";\n const target = open ? element.scrollHeight : 0;\n element.style.height = `${height}px`;\n const run = element.animate(\n [\n { height: `${height}px`, opacity },\n { height: `${target}px`, opacity: open ? 1 : 0 },\n ],\n {\n duration: open ? motion.open : motion.close,\n easing: open ? motion.openEasing : motion.closeEasing,\n fill: \"forwards\",\n }\n );\n animation.current = run;\n run.onfinish = () => {\n finish();\n run.cancel();\n };\n }, [open, mounted]);\n useLayoutEffect(() => () => animation.current?.cancel(), []);\n return (\n <div\n ref={ref}\n id={id}\n aria-hidden={!open}\n {...(!open ? { inert: \"\" } : {})}\n style={{ overflow: \"hidden\", height: 0, opacity: 0 }}\n >\n {mounted && children}\n </div>\n );\n}\n","/* eslint-disable react/function-component-definition */\nimport React from \"react\";\nimport * as css from \"./primitives.css\";\n// Official Phosphor paths; see PHOSPHOR-LICENSE.txt. No runtime CDN or icon font.\nconst paths = {\n \"comment-bold\":\n \"M172,108a12,12,0,0,1-12,12H96a12,12,0,0,1,0-24h64A12,12,0,0,1,172,108Zm-12,28H96a12,12,0,0,0,0,24h64a12,12,0,0,0,0-24Zm76-8A108,108,0,0,1,78.77,224.15L46.34,235A20,20,0,0,1,21,209.66l10.81-32.43A108,108,0,1,1,236,128Zm-24,0A84,84,0,1,0,55.27,170.06a12,12,0,0,1,1,9.81l-9.93,29.79,29.79-9.93a12.1,12.1,0,0,1,3.8-.62,12,12,0,0,1,6,1.62A84,84,0,0,0,212,128Z\",\n chevron:\n \"M216.49,104.49l-80,80a12,12,0,0,1-17,0l-80-80a12,12,0,0,1,17-17L128,159l71.51-71.52a12,12,0,0,1,17,17Z\",\n check:\n \"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\",\n warning:\n \"M128,20A108,108,0,1,0,236,128,108.12,108.12,0,0,0,128,20Zm0,192a84,84,0,1,1,84-84A84.09,84.09,0,0,1,128,212Zm-12-80V80a12,12,0,0,1,24,0v52a12,12,0,0,1-24,0Zm28,40a16,16,0,1,1-16-16A16,16,0,0,1,144,172Z\",\n comment:\n \"M168,112a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h64A8,8,0,0,1,168,112Zm-8,24H96a8,8,0,0,0,0,16h64a8,8,0,0,0,0-16Zm72-8A104,104,0,0,1,79.12,219.82L45.07,231.17a16,16,0,0,1-20.24-20.24l11.35-34.05A104,104,0,1,1,232,128Zm-16,0A88,88,0,1,0,51.81,172.06a8,8,0,0,1,.66,6.54L40,216,77.4,203.53a7.85,7.85,0,0,1,2.53-.42,8,8,0,0,1,4,1.08A88,88,0,0,0,216,128Z\",\n agent:\n \"M200,48H136V16a8,8,0,0,0-16,0V48H56A32,32,0,0,0,24,80V192a32,32,0,0,0,32,32H200a32,32,0,0,0,32-32V80A32,32,0,0,0,200,48Zm16,144a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V80A16,16,0,0,1,56,64H200a16,16,0,0,1,16,16Zm-52-56H92a28,28,0,0,0,0,56h72a28,28,0,0,0,0-56Zm-24,16v24H116V152ZM80,164a12,12,0,0,1,12-12h8v24H92A12,12,0,0,1,80,164Zm84,12h-8V152h8a12,12,0,0,1,0,24ZM72,108a12,12,0,1,1,12,12A12,12,0,0,1,72,108Zm88,0a12,12,0,1,1,12,12A12,12,0,0,1,160,108Z\",\n people:\n \"M117.25,157.92a60,60,0,1,0-66.5,0A95.83,95.83,0,0,0,3.53,195.63a8,8,0,1,0,13.4,8.74,80,80,0,0,1,134.14,0,8,8,0,0,0,13.4-8.74A95.83,95.83,0,0,0,117.25,157.92ZM40,108a44,44,0,1,1,44,44A44.05,44.05,0,0,1,40,108Zm210.14,98.7a8,8,0,0,1-11.07-2.33A79.83,79.83,0,0,0,172,168a8,8,0,0,1,0-16,44,44,0,1,0-16.34-84.87,8,8,0,1,1-5.94-14.85,60,60,0,0,1,55.53,105.64,95.83,95.83,0,0,1,47.22,37.71A8,8,0,0,1,250.14,206.7Z\",\n \"pull-request\":\n \"M104,64A32,32,0,1,0,64,95v66a32,32,0,1,0,16,0V95A32.06,32.06,0,0,0,104,64ZM56,64A16,16,0,1,1,72,80,16,16,0,0,1,56,64ZM88,192a16,16,0,1,1-16-16A16,16,0,0,1,88,192Zm120-31V110.63a23.85,23.85,0,0,0-7-17L163.31,56H192a8,8,0,0,0,0-16H144a8,8,0,0,0-8,8V96a8,8,0,0,0,16,0V67.31L189.66,105a8,8,0,0,1,2.34,5.66V161a32,32,0,1,0,16,0Zm-8,47a16,16,0,1,1,16-16A16,16,0,0,1,200,208Z\",\n clock:\n \"M140,80v41.21l34.17,20.5a12,12,0,1,1-12.34,20.58l-40-24A12,12,0,0,1,116,128V80a12,12,0,0,1,24,0ZM128,28A99.38,99.38,0,0,0,57.24,57.34c-4.69,4.74-9,9.37-13.24,14V64a12,12,0,0,0-24,0v40a12,12,0,0,0,12,12H72a12,12,0,0,0,0-24H57.77C63,86,68.37,80.22,74.26,74.26a76,76,0,1,1,1.58,109,12,12,0,0,0-16.48,17.46A100,100,0,1,0,128,28Z\",\n} as const;\nexport type IconName = keyof typeof paths;\nexport function Icon({\n name,\n size = 16,\n verdict = false,\n}: {\n name: IconName;\n size?: number;\n verdict?: boolean;\n}) {\n return (\n <svg\n width={size}\n height={size}\n viewBox={verdict ? \"20 20 216 216\" : \"0 0 256 256\"}\n style={\n verdict && name === \"check\"\n ? { stroke: \"currentColor\", strokeWidth: 5, strokeLinejoin: \"round\" }\n : undefined\n }\n className={css.icon}\n aria-hidden=\"true\"\n focusable=\"false\"\n >\n <path d={paths[name]} />\n </svg>\n );\n}\n","/* eslint-disable react/function-component-definition */\nimport React, { useId, useState } from \"react\";\nimport type { ReactNode } from \"react\";\nimport { CurrentBoundary } from \"../../current/CurrentProvider\";\nimport { Disclosure } from \"../../current/Disclosure\";\nimport { Icon } from \"../../current/Icon\";\nimport * as css from \"../../current/primitives.css\";\nimport { ReviewCardData, ReviewFinding } from \"./types\";\n\nconst verdicts = {\n approve: { label: \"Approved\", tone: \"success\", icon: \"check\" },\n request_changes: { label: \"Changes requested\", tone: \"warning\", icon: \"warning\" },\n comment: { label: \"Comment\", tone: \"info\", icon: \"comment\" },\n} as const;\nconst freshness = {\n current: \"Current when reviewed\",\n outdated: \"Older commit\",\n unknown: \"Freshness unknown\",\n};\nconst severity = { high: \"critical\", medium: \"warning\", low: \"neutral\", info: \"info\" } as const;\nexport type ReviewMember = { id: string; name: string; isSelf?: boolean };\n\nfunction Chevron() {\n return (\n <span className={css.chevron}>\n <Icon name=\"chevron\" size={12} />\n </span>\n );\n}\nfunction Finding({ finding }: { finding: ReviewFinding }) {\n const [open, setOpen] = useState(false);\n const id = useId();\n return (\n <div className={`${css.finding} ${css.tones[severity[finding.severity]]}`}>\n <button\n type=\"button\"\n className={css.findingToggle}\n aria-expanded={open}\n aria-controls={id}\n onClick={() => setOpen(!open)}\n >\n <span className={css.severity}>{finding.severity}</span>\n <span className={css.findingTitle}>{finding.title}</span>\n <Chevron />\n </button>\n <Disclosure id={id} open={open}>\n <div className={css.findingBody}>\n {finding.location && (\n <code className={css.mono}>\n {finding.location.path}:{finding.location.line}\n </code>\n )}\n <p className={css.paragraph}>{finding.description}</p>\n {finding.requested_change && (\n <p className={css.paragraph}>\n <strong>Requested change: </strong>\n {finding.requested_change}\n </p>\n )}\n </div>\n </Disclosure>\n </div>\n );\n}\n\n/** Presentation only: actions and identity resolution stay with the room adapter. */\nexport function CurrentReviewCard({\n authorLogin,\n owned = false,\n review,\n actions,\n members = [],\n}: {\n authorLogin?: string;\n owned?: boolean;\n review: ReviewCardData;\n actions?: ReactNode;\n members?: ReviewMember[];\n}) {\n const [expanded, setExpanded] = useState(false);\n const detailsId = useId();\n const verdict = verdicts[review.verdict];\n const title = review.title?.trim();\n const ref = `${review.repo} #${review.number}`;\n return (\n <CurrentBoundary>\n <section\n className={`${css.card} ${css.tones[verdict.tone]} ${owned ? css.ownedCard : \"\"}`}\n aria-label={owned ? \"PR review of your pull request\" : \"PR review\"}\n data-owned={owned}\n >\n <div className={css.header}>\n <div className={css.identity}>\n <span className={css.typeIcon}>\n <Icon name=\"pull-request\" size={20} />\n </span>\n {review.url ? (\n <a\n className={css.prLink}\n data-expanded={expanded}\n title={expanded ? undefined : title || ref}\n href={review.url}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {title || ref}\n </a>\n ) : (\n <span\n className={css.prLink}\n data-expanded={expanded}\n title={expanded ? undefined : title}\n >\n {title || ref}\n </span>\n )}\n <span className={css.badge}>{verdict.label}</span>\n </div>\n <span className={css.verdictIcon}>\n <Icon\n name={review.verdict === \"comment\" ? \"comment-bold\" : verdict.icon}\n size={32}\n verdict\n />\n </span>\n <div className={css.author}>\n {title && <span className={css.prRef}>{ref}</span>}\n {authorLogin ? (\n <span className={css.authorName}>@{authorLogin.replace(/^@/, \"\")}</span>\n ) : (\n <span className={css.authorMissing}>PR author unavailable</span>\n )}\n </div>\n <div className={css.overview}>\n <p\n className={css.summary}\n data-expanded={expanded}\n title={expanded ? undefined : review.summary}\n >\n {review.summary}\n </p>\n <button\n type=\"button\"\n className={css.control}\n aria-expanded={expanded}\n aria-controls={detailsId}\n aria-label={`${expanded ? \"Collapse\" : \"Expand\"} review, ${\n review.findings.length\n } findings`}\n onClick={() => setExpanded(!expanded)}\n >\n {review.findings.length} finding{review.findings.length === 1 ? \"\" : \"s\"}\n <Chevron />\n </button>\n </div>\n </div>\n <Disclosure id={detailsId} open={expanded}>\n <div className={css.details}>\n {review.findings.length > 0 && (\n <div className={css.findings}>\n {review.findings.map((finding) => (\n <Finding key={finding.id} finding={finding} />\n ))}\n </div>\n )}\n <div className={css.meta}>\n <span>\n Reviewed <code className={css.mono}>{review.reviewed_commit.slice(0, 12)}</code>\n </span>\n <span>{freshness[review.freshness]}</span>\n <span>Room review only · not submitted to GitHub</span>\n </div>\n {actions}\n </div>\n </Disclosure>\n {members.length > 0 && (\n <div className={css.mentions}>\n <span className={css.mentionLabel}>Mentions</span>\n {members.map((member) => (\n <span\n key={member.id}\n title={member.id}\n className={`${css.member} ${member.isSelf ? css.ownMention : \"\"}`}\n >\n @{member.name}\n </span>\n ))}\n </div>\n )}\n </section>\n </CurrentBoundary>\n );\n}\n","import React, { ReactNode } from \"react\";\nimport FocusTrap from \"focus-trap-react\";\nimport { Box } from \"../box/Box\";\nimport { Dialog } from \"../dialog/Dialog\";\nimport { Header } from \"../header/Header\";\nimport { Icon } from \"../icon/Icon\";\nimport { Icons } from \"../icon/Icons\";\nimport { IconButton } from \"../icon-button/IconButton\";\nimport { Overlay, OverlayBackdrop, OverlayCenter } from \"../overlay/Overlay\";\nimport { Text } from \"../text/Text\";\nimport { toRem } from \"../../theme/util\";\nimport * as css from \"./DialogFrame.css\";\n\nexport type DialogFrameProps = {\n open: boolean;\n title: ReactNode;\n /** Runs on the close button, on Escape and on a click outside. */\n onClose: () => void;\n /** Max width in px; the dialog is fluid below it. */\n width?: number;\n className?: string;\n children: ReactNode;\n};\n\n/**\n * The frame every create / join / confirm dialog opens in: a backdropped\n * overlay, a focus trap, and a Dialog whose header carries the title and the\n * close button. `open` is controlled by the caller.\n */\nexport const DialogFrame = ({\n open,\n title,\n onClose,\n width,\n className,\n children,\n}: DialogFrameProps) => (\n <Overlay open={open} backdrop={<OverlayBackdrop />}>\n <OverlayCenter>\n <FocusTrap\n focusTrapOptions={{\n onDeactivate: onClose,\n clickOutsideDeactivates: true,\n escapeDeactivates: true,\n }}\n >\n <Dialog\n role=\"dialog\"\n aria-modal=\"true\"\n aria-label={typeof title === \"string\" ? title : undefined}\n variant=\"Surface\"\n className={className}\n style={width ? { maxWidth: toRem(width) } : undefined}\n >\n <Header size=\"500\" variant=\"Surface\" className={css.DialogFrameHeader}>\n <Box grow=\"Yes\" alignItems=\"Center\" style={{ minWidth: 0 }}>\n <Text size=\"H4\" truncate>\n {title}\n </Text>\n </Box>\n <IconButton size=\"300\" variant=\"Surface\" aria-label=\"Close\" onClick={onClose}>\n <Icon src={Icons.Cross} size=\"100\" />\n </IconButton>\n </Header>\n <Box direction=\"Column\" gap=\"400\" className={css.DialogFrameContent}>\n {children}\n </Box>\n </Dialog>\n </FocusTrap>\n </OverlayCenter>\n </Overlay>\n);\n","import React, { ComponentProps, useEffect, useRef, useState } from \"react\";\nimport FocusTrap from \"focus-trap-react\";\nimport { Icon } from \"../icon/Icon\";\nimport { Icons } from \"../icon/Icons\";\nimport { IconButton } from \"../icon-button/IconButton\";\nimport { Menu } from \"../menu/Menu\";\nimport { MenuItem } from \"../menu/MenuItem\";\nimport { PopOut } from \"../pop-out/PopOut\";\nimport { Text } from \"../text/Text\";\nimport { Align, Position, RectCords } from \"../util\";\nimport * as css from \"./MenuButton.css\";\n\nexport type MenuEntry = {\n label: string;\n icon?: ComponentProps<typeof Icon>[\"src\"];\n /** Renders in the Critical variant — destructive entries (leave, delete). */\n critical?: boolean;\n disabled?: boolean;\n onSelect?: () => void;\n};\n\nexport type MenuButtonProps = {\n /** Accessible name of the trigger, e.g. \"More Options\". */\n label: string;\n entries: MenuEntry[];\n icon?: ComponentProps<typeof Icon>[\"src\"];\n variant?: ComponentProps<typeof IconButton>[\"variant\"];\n /** Open on mount without a click, for a story or a screenshot of the menu. */\n defaultOpen?: boolean;\n position?: Position;\n align?: Align;\n className?: string;\n disabled?: boolean;\n};\n\n/**\n * An icon button that opens an anchored PopOut menu — the \"More Options\"\n * pattern the room header, the room-list row and the settings pages share.\n * Selecting an entry closes the menu; so does Escape or a click outside.\n */\nexport const MenuButton = ({\n label,\n entries,\n icon = Icons.VerticalDots,\n variant = \"Background\",\n defaultOpen,\n position = \"Bottom\",\n align = \"End\",\n className,\n disabled,\n}: MenuButtonProps) => {\n const [anchor, setAnchor] = useState<RectCords>();\n const ref = useRef<HTMLButtonElement>(null);\n const menuRef = useRef<HTMLDivElement>(null);\n useEffect(() => {\n if (defaultOpen && ref.current) setAnchor(ref.current.getBoundingClientRect());\n }, [defaultOpen]);\n return (\n <>\n <PopOut\n anchor={anchor}\n position={position}\n align={align}\n offset={4}\n content={\n <FocusTrap\n focusTrapOptions={{\n fallbackFocus: () => menuRef.current as HTMLDivElement,\n onDeactivate: () => setAnchor(undefined),\n clickOutsideDeactivates: true,\n }}\n >\n <Menu\n ref={menuRef}\n role=\"menu\"\n aria-label={label}\n tabIndex={-1}\n className={css.MenuButtonMenu}\n onKeyDown={(event: React.KeyboardEvent<HTMLDivElement>) => {\n const items = Array.from(\n event.currentTarget.querySelectorAll<HTMLButtonElement>(\n '[role=\"menuitem\"]:not(:disabled)'\n )\n );\n if (!items.length) return;\n const current = items.indexOf(\n event.currentTarget.ownerDocument.activeElement as HTMLButtonElement\n );\n let next: number;\n if (event.key === \"ArrowDown\") next = (current + 1) % items.length;\n else if (event.key === \"ArrowUp\")\n next = (current - 1 + items.length) % items.length;\n else if (event.key === \"Home\") next = 0;\n else if (event.key === \"End\") next = items.length - 1;\n else return;\n event.preventDefault();\n items[next].focus();\n }}\n >\n {entries.map((entry) => (\n <MenuItem\n key={entry.label}\n type=\"button\"\n role=\"menuitem\"\n disabled={entry.disabled}\n size=\"300\"\n variant={entry.critical ? \"Critical\" : \"Surface\"}\n fill=\"None\"\n before={entry.icon && <Icon size=\"100\" src={entry.icon} />}\n onClick={() => {\n setAnchor(undefined);\n entry.onSelect?.();\n }}\n >\n <Text size=\"T300\" truncate>\n {entry.label}\n </Text>\n </MenuItem>\n ))}\n </Menu>\n </FocusTrap>\n }\n />\n <IconButton\n ref={ref}\n type=\"button\"\n className={className}\n disabled={disabled}\n aria-haspopup=\"menu\"\n variant={variant}\n fill=\"None\"\n size=\"300\"\n aria-label={label}\n aria-expanded={anchor !== undefined}\n onKeyDown={(event: React.KeyboardEvent<HTMLButtonElement>) => {\n if (event.key === \"ArrowDown\" || event.key === \"ArrowUp\") {\n event.preventDefault();\n setAnchor(event.currentTarget.getBoundingClientRect());\n }\n }}\n onClick={(evt: React.MouseEvent<HTMLButtonElement>) =>\n setAnchor(anchor ? undefined : evt.currentTarget.getBoundingClientRect())\n }\n >\n <Icon src={icon} size=\"100\" />\n </IconButton>\n </>\n );\n};\n","import React from \"react\";\nimport { Box } from \"../box/Box\";\nimport { Chip } from \"../chip/Chip\";\nimport { Text } from \"../text/Text\";\n\nexport type TabBarProps = {\n tabs: string[];\n /** The selected tab; compared to each entry by value. */\n active: string;\n onSelect?: (tab: string) => void;\n};\n\n/**\n * A row of tab chips — the settings tab strip, the explore filters, the\n * console sections. A tablist, so the selected chip carries aria-selected;\n * for a pressed-state toggle that is not a tab, use Pill.\n */\nexport const TabBar = ({ tabs, active, onSelect }: TabBarProps) => (\n <Box gap=\"200\" wrap=\"Wrap\" role=\"tablist\">\n {tabs.map((tab) => (\n <Chip\n key={tab}\n as=\"button\"\n type=\"button\"\n role=\"tab\"\n aria-selected={tab === active}\n variant={tab === active ? \"Primary\" : \"SurfaceVariant\"}\n fill=\"Soft\"\n outlined={tab === active}\n size=\"400\"\n onClick={() => onSelect?.(tab)}\n >\n <Text as=\"span\" size=\"T200\">\n {tab}\n </Text>\n </Chip>\n ))}\n </Box>\n);\n","import React from \"react\";\nimport { Chip } from \"../chip/Chip\";\nimport { Text } from \"../text/Text\";\n\nexport type PillProps = {\n label: string;\n /** Renders pressed (Primary) and sets aria-pressed. */\n active?: boolean;\n onClick?: () => void;\n};\n\n/**\n * A pill-shaped toggle chip: join rules, filters, and tab-like choices that\n * are not routes. It is a toggle, so it reports its state with aria-pressed.\n */\nexport const Pill = ({ label, active, onClick }: PillProps) => (\n <Chip\n as=\"button\"\n type=\"button\"\n variant={active ? \"Primary\" : \"SurfaceVariant\"}\n fill=\"Soft\"\n size=\"400\"\n aria-pressed={active}\n onClick={onClick}\n >\n <Text as=\"span\" size=\"T200\">\n {label}\n </Text>\n </Chip>\n);\n","import React, { ReactNode } from \"react\";\nimport { PageHero, PageHeroEmpty } from \"../page/Page\";\n\nexport type EmptyStateProps = {\n icon: ReactNode;\n title: ReactNode;\n subTitle: ReactNode;\n /** Actions under the copy — a primary button, a pair of links. */\n children?: ReactNode;\n /** Drop the height floor, for a docked panel. */\n compact?: boolean;\n};\n\n/** The hero a page shows when it has nothing to list: icon, title, sub-title, actions. */\nexport const EmptyState = ({ icon, title, subTitle, children, compact }: EmptyStateProps) => (\n <PageHeroEmpty compact={compact}>\n <PageHero icon={icon} title={title} subTitle={subTitle}>\n {children}\n </PageHero>\n </PageHeroEmpty>\n);\n","import React from \"react\";\nimport { Box } from \"../box/Box\";\nimport { Spinner } from \"../spinner/Spinner\";\nimport { Text } from \"../text/Text\";\n\nexport type LoadingStateProps = {\n label?: string;\n};\n\n/** A centred spinner with a label, as every page shows while its data loads. */\nexport const LoadingState = ({ label = \"Loading…\" }: LoadingStateProps) => (\n <Box grow=\"Yes\" direction=\"Column\" alignItems=\"Center\" justifyContent=\"Center\" gap=\"300\">\n <Spinner size=\"600\" variant=\"Secondary\" />\n <Text size=\"T300\" priority=\"300\">\n {label}\n </Text>\n </Box>\n);\n","import React from \"react\";\nimport { Box } from \"../box/Box\";\nimport { Button } from \"../button/Button\";\nimport { Icon } from \"../icon/Icon\";\nimport { Icons } from \"../icon/Icons\";\nimport { Text } from \"../text/Text\";\nimport * as css from \"./PageState.css\";\n\nexport type ErrorStateProps = {\n title: string;\n description: string;\n /** Label of the retry button. */\n retry?: string;\n onRetry?: () => void;\n};\n\n/** A centred error with a retry, as pages show when a request fails. */\nexport const ErrorState = ({ title, description, retry = \"Retry\", onRetry }: ErrorStateProps) => (\n <Box grow=\"Yes\" direction=\"Column\" alignItems=\"Center\" justifyContent=\"Center\" gap=\"400\">\n <Box direction=\"Column\" alignItems=\"Center\" gap=\"200\" className={css.ErrorStateMark}>\n <Icon src={Icons.Warning} size=\"600\" />\n <Text size=\"H4\" style={{ color: \"inherit\" }}>\n {title}\n </Text>\n </Box>\n <Text size=\"T300\" priority=\"300\" align=\"Center\" className={css.ErrorStateDescription}>\n {description}\n </Text>\n <Button\n variant=\"Secondary\"\n fill=\"Soft\"\n size=\"400\"\n onClick={onRetry}\n before={<Icon src={Icons.Reload} size=\"100\" />}\n >\n <Text as=\"span\" size=\"B400\">\n {retry}\n </Text>\n </Button>\n </Box>\n);\n","import React, { ReactNode } from \"react\";\nimport { Box } from \"../box/Box\";\nimport { Icon } from \"../icon/Icon\";\nimport { Icons } from \"../icon/Icons\";\nimport { IconButton } from \"../icon-button/IconButton\";\nimport { PageHeader } from \"../page/Page\";\nimport { Text } from \"../text/Text\";\nimport * as css from \"./PageState.css\";\n\nexport type PageTitleHeaderProps = {\n title: string;\n /** Before the title — a room avatar, a section icon. */\n icon?: ReactNode;\n /** Trailing actions, right-aligned. */\n after?: ReactNode;\n /** Show the back arrow; narrow layouts push instead of splitting. */\n back?: boolean;\n onBack?: () => void;\n};\n\n/** A page-level header: back arrow, icon, title, trailing actions. */\nexport const PageTitleHeader = ({ title, icon, after, back, onBack }: PageTitleHeaderProps) => (\n <PageHeader outlined>\n <Box grow=\"Yes\" alignItems=\"Center\" gap=\"200\" className={css.PageTitleHeaderTitle}>\n {back && (\n <IconButton variant=\"Background\" fill=\"None\" size=\"300\" aria-label=\"Back\" onClick={onBack}>\n <Icon src={Icons.ArrowLeft} size=\"100\" />\n </IconButton>\n )}\n {icon}\n <Text size=\"H3\" truncate>\n {title}\n </Text>\n </Box>\n {after && (\n <Box shrink=\"No\" alignItems=\"Center\" gap=\"200\">\n {after}\n </Box>\n )}\n </PageHeader>\n);\n","import React, { ComponentProps, ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Box } from \"../box\";\nimport { SequenceCard } from \"../sequence-card\";\nimport { Text } from \"../text\";\nimport * as css from \"./Card.css\";\n\nexport const Card = as<\"div\", ComponentProps<typeof SequenceCard>>(\n ({ as: AsCard = \"div\", className, ...props }, ref) => (\n <SequenceCard\n as={AsCard}\n variant=\"SurfaceVariant\"\n direction=\"Column\"\n gap=\"400\"\n outlined\n firstChild\n lastChild\n {...props}\n className={classNames(css.Card, className)}\n ref={ref}\n />\n )\n);\nexport type RowEntry = { id: string; content: ReactNode };\nexport type RowsProps = {\n title?: ReactNode;\n /** Stable ids preserve state when rows are inserted, removed or reordered. */\n rows: RowEntry[];\n};\nexport const Rows = as<\"div\", RowsProps>(\n ({ as: AsRows = \"div\", title, rows, className, ...props }, ref) => (\n <Box\n as={AsRows}\n direction=\"Column\"\n gap=\"200\"\n className={classNames(css.Rows, className)}\n {...props}\n ref={ref}\n >\n {title && (\n <Text as=\"h3\" size=\"LabelMono\" priority=\"300\">\n {title}\n </Text>\n )}\n <Box direction=\"Column\">\n {rows.map((row, index) => (\n <Card\n key={row.id}\n firstChild={index === 0}\n lastChild={index === rows.length - 1}\n mergeBorder\n >\n {row.content}\n </Card>\n ))}\n </Box>\n </Box>\n )\n);\n","import React, { ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Box } from \"../box\";\nimport { Text } from \"../text\";\nimport * as css from \"./ListRow.css\";\n\nexport type ListRowProps = {\n before?: ReactNode;\n title: ReactNode;\n description?: ReactNode;\n badge?: ReactNode;\n /** Use a non-interactive root when this slot contains its own actions. */\n after?: ReactNode;\n};\n/** Content shared by member, room and settings lists; no app data or selection state. */\nexport const ListRow = as<\"div\", ListRowProps>(\n ({ as: AsRow = \"div\", className, before, title, description, badge, after, ...props }, ref) => (\n <Box\n as={AsRow}\n alignItems=\"Center\"\n gap=\"300\"\n className={classNames(css.Row, className)}\n {...props}\n ref={ref}\n >\n {before && (\n <Box as=\"span\" shrink=\"No\" alignItems=\"Center\">\n {before}\n </Box>\n )}\n <Box as=\"span\" grow=\"Yes\" direction=\"Column\" className={css.Content}>\n <Box as=\"span\" alignItems=\"Center\" gap=\"100\" className={css.Content}>\n <Text as=\"span\" size=\"T300\" truncate>\n {title}\n </Text>\n {badge}\n </Box>\n {description && (\n <Text as=\"span\" size=\"T200\" priority=\"300\" truncate>\n {description}\n </Text>\n )}\n </Box>\n {after && (\n <Box as=\"span\" shrink=\"No\" alignItems=\"Center\" gap=\"100\">\n {after}\n </Box>\n )}\n </Box>\n )\n);\n","import React, { ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Badge } from \"../badge\";\nimport { Box } from \"../box\";\nimport { ContainerColor, MainColor } from \"../types\";\nimport * as css from \"./Presence.css\";\n\nexport type Presence = \"online\" | \"unavailable\" | \"offline\";\nconst variants: Record<Presence, MainColor> = {\n online: \"Success\",\n unavailable: \"Warning\",\n offline: \"Secondary\",\n};\nconst labels: Record<Presence, string> = {\n online: \"Online\",\n unavailable: \"Unavailable\",\n offline: \"Offline\",\n};\nexport type PresenceBadgeProps = {\n presence: Presence;\n status?: string;\n /** Localised presence label. Status text is appended when supplied. */\n label?: string;\n size?: \"200\" | \"300\" | \"400\" | \"500\";\n variantOverride?: MainColor;\n glyph?: ReactNode;\n};\n/** A named image, with no tooltip id or network/state dependency. */\nexport const PresenceBadge = as<\"span\", PresenceBadgeProps>(\n (\n {\n as: AsBadge = \"span\",\n presence,\n status,\n label,\n size = \"300\",\n variantOverride,\n glyph,\n ...props\n },\n ref\n ) => {\n const description = [label ?? labels[presence], status].filter(Boolean).join(\" · \");\n return (\n <Badge\n as={AsBadge}\n ref={ref}\n role=\"img\"\n aria-label={description}\n title={description}\n size={size}\n variant={variantOverride ?? variants[presence]}\n fill={presence === \"offline\" ? \"Soft\" : \"Solid\"}\n {...props}\n >\n {glyph && <span aria-hidden=\"true\">{glyph}</span>}\n </Badge>\n );\n }\n);\nexport type AvatarPresenceProps = {\n badge?: ReactNode;\n variant?: ContainerColor;\n animate?: boolean;\n};\nexport const AvatarPresence = as<\"span\", AvatarPresenceProps>(\n (\n { as: AsPresence = \"span\", className, badge, variant = \"Surface\", animate, children, ...props },\n ref\n ) => (\n <Box as={AsPresence} className={classNames(css.AvatarPresence, className)} {...props} ref={ref}>\n {children}\n {badge && <span className={css.BadgeFrame({ variant, animate })}>{badge}</span>}\n </Box>\n )\n);\n","import React, { ComponentProps, ReactNode, useState } from \"react\";\nimport classNames from \"classnames\";\nimport { Avatar, AvatarFallback, AvatarImage } from \"../avatar\";\nimport { AgentGlyph, AgentNameTag, AgentMarkState } from \"../agent-tag\";\nimport { Badge } from \"../badge\";\nimport { Box } from \"../box\";\nimport { Card } from \"../card\";\nimport { ListRow } from \"../list-row\";\nimport { Text } from \"../text\";\nimport { Icon, Icons } from \"../icon\";\nimport { AvatarPresence, PresenceBadge } from \"../presence\";\nimport { MainColor } from \"../types\";\nimport * as css from \"./Identity.css\";\n\nexport type IdentityKind = \"person\" | \"agent\" | \"room\";\nexport type IdentityAvatarProps = {\n name: string;\n kind?: IdentityKind;\n src?: string;\n initial?: string;\n fallback?: ReactNode;\n size?: ComponentProps<typeof Avatar>[\"size\"];\n radii?: ComponentProps<typeof Avatar>[\"radii\"];\n busy?: boolean;\n};\nconst glyphSize = { \"200\": 14, \"300\": 18, \"400\": 22, \"500\": 30 };\nexport const IdentityAvatar = ({\n name,\n kind = \"person\",\n src,\n initial,\n fallback,\n size = \"300\",\n radii,\n busy,\n}: IdentityAvatarProps) => {\n const [failedSrc, setFailedSrc] = useState<string>();\n const shape = radii ?? (kind === \"person\" ? \"Pill\" : \"500\");\n let defaultFallback: ReactNode = (\n <Text as=\"span\" size={size === \"200\" ? \"L400\" : \"H6\"}>\n {initial ?? (name.trim().charAt(0) || \"?\")}\n </Text>\n );\n if (kind === \"agent\") defaultFallback = <AgentGlyph size={glyphSize[size]} />;\n if (kind === \"room\") defaultFallback = <Icon src={Icons.Hash} size=\"200\" />;\n return (\n <Avatar\n size={size}\n radii={shape}\n activity={busy ? \"Busy\" : \"Idle\"}\n title={name}\n role=\"img\"\n aria-label={name}\n className={css.Avatar}\n >\n {src && src !== failedSrc ? (\n <AvatarImage\n key={src}\n src={src}\n alt=\"\"\n draggable={false}\n onError={() => setFailedSrc(src)}\n />\n ) : (\n <AvatarFallback aria-hidden=\"true\">{fallback ?? defaultFallback}</AvatarFallback>\n )}\n </Avatar>\n );\n};\nexport type AgentVisualState = AgentMarkState;\nexport const agentStatePresentation: Record<\n AgentVisualState,\n { label: string; variant: MainColor; busy: boolean }\n> = {\n working: { label: \"Working\", variant: \"Primary\", busy: true },\n thinking: { label: \"Thinking\", variant: \"Primary\", busy: true },\n available: { label: \"Available\", variant: \"Success\", busy: false },\n needs_attention: { label: \"Needs attention\", variant: \"Warning\", busy: false },\n offline: { label: \"Offline\", variant: \"Secondary\", busy: false },\n warning: { label: \"Warning\", variant: \"Warning\", busy: false },\n error: { label: \"Error\", variant: \"Critical\", busy: false },\n};\nexport type AgentAvatarProps = Omit<IdentityAvatarProps, \"kind\" | \"busy\"> & {\n state?: AgentVisualState;\n statusLabel?: string;\n};\nexport const AgentAvatar = ({ state, statusLabel, ...props }: AgentAvatarProps) => {\n const presentation = state && agentStatePresentation[state];\n return (\n <AvatarPresence\n badge={\n presentation && (\n <PresenceBadge\n presence={state === \"offline\" ? \"offline\" : \"online\"}\n variantOverride={presentation.variant}\n label={statusLabel ?? presentation.label}\n />\n )\n }\n >\n <IdentityAvatar {...props} kind=\"agent\" busy={presentation?.busy} />\n </AvatarPresence>\n );\n};\nexport type WorkerCorner = \"tl\" | \"tr\" | \"bl\" | \"br\";\nexport type WorkerShape = \"corner\" | \"star\";\nexport type WorkerAvatarProps = {\n name: string;\n color: string;\n corner?: WorkerCorner;\n shape?: WorkerShape;\n children: ReactNode;\n};\n/** Colour, name and placement have already been resolved by the caller. */\nexport const WorkerAvatar = ({\n name,\n color,\n corner = \"tr\",\n shape = \"corner\",\n children,\n}: WorkerAvatarProps) => (\n <span className={css.Worker} role=\"img\" aria-label={name}>\n <span aria-hidden=\"true\">{children}</span>\n <span\n aria-hidden=\"true\"\n className={classNames(css.Decorator({ corner, shape }), css.WorkerSeam)}\n />\n <span\n aria-hidden=\"true\"\n className={css.Decorator({ corner, shape })}\n style={{ backgroundColor: color }}\n />\n </span>\n);\nexport type MemberTileProps = {\n name: string;\n description?: ReactNode;\n avatar?: ReactNode;\n agent?: boolean;\n after?: ReactNode;\n};\nexport const MemberTile = ({ name, description, avatar, agent, after }: MemberTileProps) => (\n <ListRow\n before={avatar ?? <IdentityAvatar name={name} kind={agent ? \"agent\" : \"person\"} />}\n title={name}\n description={description}\n badge={agent ? <AgentNameTag /> : undefined}\n after={after}\n />\n);\nexport type AgentCardProps = {\n name: string;\n src?: string;\n state?: AgentVisualState;\n statusLabel?: string;\n description?: ReactNode;\n identifier?: string;\n actions?: ReactNode;\n children?: ReactNode;\n};\nexport const AgentCard = ({\n name,\n src,\n state,\n statusLabel,\n description,\n identifier,\n actions,\n children,\n}: AgentCardProps) => {\n const presentation = state && agentStatePresentation[state];\n return (\n <Card>\n <MemberTile\n name={name}\n agent\n description={identifier}\n avatar={\n <AgentAvatar name={name} src={src} state={state} statusLabel={statusLabel} size=\"400\" />\n }\n after={\n presentation && (\n <Badge variant={presentation.variant}>\n <Text as=\"span\" size=\"L400\">\n {statusLabel ?? presentation.label}\n </Text>\n </Badge>\n )\n }\n />\n {description && (\n <Text size=\"T300\" priority=\"300\">\n {description}\n </Text>\n )}\n {children}\n {actions && (\n <Box gap=\"200\" wrap=\"Wrap\">\n {actions}\n </Box>\n )}\n </Card>\n );\n};\nexport const RoomAvatar = (props: Omit<IdentityAvatarProps, \"kind\">) => (\n <IdentityAvatar {...props} kind=\"room\" />\n);\n","import React from \"react\";\nimport { IdentityAvatar, IdentityAvatarProps } from \"../identity/Identity\";\n\nexport type PersonAvatarProps = Omit<IdentityAvatarProps, \"kind\" | \"fallback\" | \"busy\"> & {\n agent?: boolean;\n};\n/** Legacy agent avatars remain glyph-only; AgentAvatar also accepts uploaded photos. */\nexport const PersonAvatar = ({ agent, src, radii, ...props }: PersonAvatarProps) => (\n <IdentityAvatar\n {...props}\n kind={agent ? \"agent\" : \"person\"}\n src={agent ? undefined : src}\n radii={radii ?? (agent ? \"400\" : \"Pill\")}\n />\n);\n","import React, { forwardRef, SelectHTMLAttributes } from \"react\";\nimport classNames from \"classnames\";\nimport { Icon, Icons } from \"../icon\";\nimport * as inputCss from \"../input/Input.css\";\nimport * as css from \"./Select.css\";\n\nexport type SelectOption = { value: string; label: string; disabled?: boolean };\nexport type SelectProps = Omit<SelectHTMLAttributes<HTMLSelectElement>, \"size\" | \"children\"> &\n inputCss.InputVariants & {\n options: SelectOption[];\n onValueChange?: (value: string) => void;\n };\n\n/** A native choice field: keyboard navigation, touch picker and form submission stay native. */\nexport const Select = forwardRef<HTMLSelectElement, SelectProps>(\n (\n {\n options,\n onValueChange,\n onChange,\n className,\n style,\n variant,\n size,\n radii,\n outlined,\n ...props\n },\n ref\n ) => (\n <div\n className={classNames(\n inputCss.Input({ variant, size, radii, outlined }),\n css.Root,\n className\n )}\n style={style}\n data-disabled={props.disabled || undefined}\n >\n <select\n {...props}\n ref={ref}\n className={classNames(inputCss.InputInput, css.Select)}\n onChange={(event) => {\n onChange?.(event);\n onValueChange?.(event.target.value);\n }}\n >\n {options.map(({ value, label, disabled }) => (\n <option key={value} value={value} disabled={disabled}>\n {label}\n </option>\n ))}\n </select>\n <Icon src={Icons.ChevronBottom} size=\"100\" className={css.Arrow} />\n </div>\n )\n);\n","import { KeyboardEvent } from \"react\";\n\n/** Move among enabled buttons while leaving Tab to the browser. */\nexport const moveFocus = (event: KeyboardEvent<HTMLElement>): HTMLButtonElement | undefined => {\n const buttons = Array.from(\n event.currentTarget.querySelectorAll<HTMLButtonElement>(\"button:not(:disabled)\")\n );\n if (!buttons.length) return undefined;\n const current = buttons.indexOf(\n event.currentTarget.ownerDocument.activeElement as HTMLButtonElement\n );\n const rtl = getComputedStyle(event.currentTarget).direction === \"rtl\";\n let next: number;\n if (event.key === \"Home\") next = 0;\n else if (event.key === \"End\") next = buttons.length - 1;\n else if (event.key === \"ArrowRight\")\n next = (current + (rtl ? -1 : 1) + buttons.length) % buttons.length;\n else if (event.key === \"ArrowLeft\")\n next = (current + (rtl ? 1 : -1) + buttons.length) % buttons.length;\n else return undefined;\n event.preventDefault();\n buttons[next].focus();\n return buttons[next];\n};\n","import React, { ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { moveFocus } from \"../../utils/rovingFocus\";\nimport * as css from \"./ButtonGroup.css\";\n\nexport type ButtonGroupOption = { value: string; label: ReactNode; disabled?: boolean };\nexport type ButtonGroupProps = {\n label: string;\n options: ButtonGroupOption[];\n value: string;\n onValueChange: (value: string) => void;\n disabled?: boolean;\n className?: string;\n};\n\n/** Connected single-choice controls. Use TabBar for navigation between tab panels. */\nexport const ButtonGroup = ({\n label,\n options,\n value,\n onValueChange,\n disabled,\n className,\n}: ButtonGroupProps) => {\n const selected = options.find((option) => option.value === value && !option.disabled);\n const tabValue = (selected ?? options.find((option) => !option.disabled))?.value;\n return (\n <div\n role=\"radiogroup\"\n tabIndex={-1}\n aria-label={label}\n aria-disabled={disabled || undefined}\n className={classNames(css.Group, className)}\n onKeyDown={(event) => {\n const button = moveFocus(event);\n if (button?.dataset.value !== undefined) onValueChange(button.dataset.value);\n }}\n >\n {options.map((option) => (\n <button\n key={option.value}\n type=\"button\"\n role=\"radio\"\n aria-checked={option.value === value}\n disabled={disabled || option.disabled}\n tabIndex={option.value === tabValue ? 0 : -1}\n data-value={option.value}\n className={css.Option}\n onClick={() => onValueChange(option.value)}\n >\n {option.label}\n </button>\n ))}\n </div>\n );\n};\n","import React, { ComponentProps, ReactNode } from \"react\";\nimport { Button } from \"../button\";\nimport { Icon, Icons } from \"../icon\";\nimport { MenuButton, MenuEntry } from \"../menu-button\";\nimport { Spinner } from \"../spinner\";\nimport { Text } from \"../text\";\nimport * as css from \"./SplitButton.css\";\n\nexport type SplitButtonProps = {\n children: ReactNode;\n onClick: ComponentProps<typeof Button>[\"onClick\"];\n entries: MenuEntry[];\n menuLabel: string;\n disabled?: boolean;\n /** Controlled: the consumer owns async work, errors and completion lifetime. */\n busy?: boolean;\n complete?: boolean;\n busyLabel?: string;\n completeLabel?: string;\n};\nexport const SplitButton = ({\n children,\n onClick,\n entries,\n menuLabel,\n disabled,\n busy,\n complete,\n busyLabel = \"Working\",\n completeLabel = \"Done\",\n}: SplitButtonProps) => {\n let content = complete ? completeLabel : children;\n let indicator = complete ? <Icon src={Icons.Check} size=\"100\" /> : undefined;\n if (busy) {\n content = busyLabel;\n indicator = <Spinner size=\"100\" shape=\"Morph\" className={css.Spinner} aria-hidden=\"true\" />;\n }\n return (\n <div className={css.Group}>\n <Button\n type=\"button\"\n className={css.Primary}\n variant=\"Primary\"\n disabled={disabled || busy}\n aria-busy={busy || undefined}\n onClick={onClick}\n before={indicator}\n >\n <Text as=\"span\" size=\"B400\">\n {content}\n </Text>\n </Button>\n <MenuButton\n className={css.More}\n label={menuLabel}\n icon={Icons.ChevronBottom}\n variant=\"Primary\"\n disabled={disabled || busy || entries.length === 0}\n entries={entries}\n />\n </div>\n );\n};\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport * as css from \"./WavyProgress.css\";\n\nexport type WavyProgressProps = {\n /** Omit for indeterminate work. Values are clamped to the range. */\n value?: number;\n min?: number;\n max?: number;\n};\nexport const WavyProgress = as<\"div\", WavyProgressProps>(\n ({ as: Component = \"div\", value, min = 0, max = 100, className, ...props }, ref) => {\n const lower = Number.isFinite(min) ? min : 0;\n const upper = Number.isFinite(max) && max > lower ? max : lower + 100;\n const current =\n value !== undefined && Number.isFinite(value)\n ? Math.min(upper, Math.max(lower, value))\n : undefined;\n const progress = current === undefined ? 100 : ((current - lower) / (upper - lower)) * 100;\n return (\n <Component\n {...props}\n ref={ref}\n role=\"progressbar\"\n aria-valuemin={lower}\n aria-valuemax={upper}\n aria-valuenow={current}\n className={classNames(css.Track, className)}\n >\n <span className={css.Fill} style={{ width: `${progress}%` }}>\n <span className={css.Wave} />\n </span>\n </Component>\n );\n }\n);\n","import React, { ComponentProps, useState } from \"react\";\nimport { Icon } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { moveFocus } from \"../../utils/rovingFocus\";\nimport * as css from \"./FloatingToolbar.css\";\n\nexport type ToolbarAction = {\n id: string;\n label: string;\n icon: ComponentProps<typeof Icon>[\"src\"];\n onClick: () => void;\n disabled?: boolean;\n};\nexport type FloatingToolbarProps = { label: string; actions: ToolbarAction[] };\nexport const FloatingToolbar = ({ label, actions }: FloatingToolbarProps) => {\n const [focused, setFocused] = useState<string>();\n const tabId =\n actions.find((action) => action.id === focused && !action.disabled)?.id ??\n actions.find((action) => !action.disabled)?.id;\n return (\n <div\n role=\"toolbar\"\n aria-label={label}\n aria-orientation=\"horizontal\"\n className={css.Toolbar}\n onKeyDown={(event) => {\n moveFocus(event);\n }}\n >\n {actions.map((action) => (\n <IconButton\n key={action.id}\n type=\"button\"\n variant=\"Surface\"\n size=\"400\"\n aria-label={action.label}\n disabled={action.disabled}\n tabIndex={action.id === tabId ? 0 : -1}\n onFocus={() => setFocused(action.id)}\n onClick={action.onClick}\n >\n <Icon src={action.icon} size=\"200\" />\n </IconButton>\n ))}\n </div>\n );\n};\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport * as css from \"./Motion.css\";\n\n/** Runs once when mounted. Change the React key to replay; delay is in milliseconds. */\nexport const Enter = as<\"div\", { delay?: number }>(\n ({ as: Component = \"div\", delay = 0, className, style, ...props }, ref) => (\n <Component\n {...props}\n ref={ref}\n className={classNames(css.Enter, className)}\n style={{ animationDelay: `${Number.isFinite(delay) ? Math.max(0, delay) : 0}ms`, ...style }}\n />\n )\n);\n/** An awaiting-decision surface. Reduced motion keeps a steady inset ring. */\nexport const Attention = as<\"div\", { active?: boolean }>(\n ({ as: Component = \"div\", active = true, className, ...props }, ref) => (\n <Component\n {...props}\n ref={ref}\n className={classNames(css.AttentionFrame, active && css.Attention, className)}\n />\n )\n);\n","import React, { ReactNode, useEffect, useRef } from \"react\";\nimport { Box } from \"../box\";\nimport { Icon, Icons } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { MenuItem } from \"../menu\";\nimport { Page, PageContent, PageHeader, PageRoot } from \"../page\";\nimport { Header } from \"../header\";\nimport { Scroll } from \"../scroll\";\nimport { Text } from \"../text\";\nimport * as css from \"./SettingsShell.css\";\n\nexport type NavSection = { id: string; label: string; icon?: ReactNode; disabled?: boolean };\nexport type SectionNavProps = {\n header: ReactNode;\n sections: NavSection[];\n active: string;\n onSelect?: (id: string) => void;\n onClose?: () => void;\n label?: string;\n};\nexport const SectionNav = ({\n header,\n sections,\n active,\n onSelect,\n onClose,\n label = \"Settings sections\",\n}: SectionNavProps) => (\n <Box as=\"nav\" aria-label={label} direction=\"Column\" className={css.Navigation}>\n <Header size=\"500\" variant=\"Background\" className={css.NavHeader}>\n <Box grow=\"Yes\" alignItems=\"Center\" gap=\"200\">\n {header}\n </Box>\n {onClose && (\n <IconButton\n type=\"button\"\n variant=\"Background\"\n fill=\"None\"\n size=\"300\"\n aria-label=\"Close\"\n onClick={onClose}\n >\n <Icon src={Icons.Cross} size=\"100\" />\n </IconButton>\n )}\n </Header>\n <Scroll variant=\"Background\" size=\"300\" visibility=\"Hover\" hideTrack>\n <Box direction=\"Column\" gap=\"50\" className={css.NavItems}>\n {sections.map((item) => (\n <MenuItem\n key={item.id}\n type=\"button\"\n className={css.NavItem}\n size=\"400\"\n fill=\"None\"\n variant={item.id === active ? \"Primary\" : \"Background\"}\n aria-current={item.id === active ? \"page\" : undefined}\n disabled={item.disabled}\n before={item.icon}\n onClick={() => onSelect?.(item.id)}\n >\n <Text size=\"T300\" truncate>\n {item.label}\n </Text>\n </MenuItem>\n ))}\n </Box>\n </Scroll>\n </Box>\n);\n\nexport type SettingsPageProps = {\n title: string;\n children: ReactNode;\n after?: ReactNode;\n onBack?: () => void;\n};\nexport const SettingsPage = ({ title, children, after, onBack }: SettingsPageProps) => (\n <Page>\n <PageHeader outlined>\n <Box grow=\"Yes\" alignItems=\"Center\" gap=\"200\">\n {onBack && (\n <IconButton\n type=\"button\"\n variant=\"Background\"\n fill=\"None\"\n size=\"300\"\n aria-label=\"Back\"\n onClick={onBack}\n >\n <Icon src={Icons.ArrowLeft} size=\"100\" />\n </IconButton>\n )}\n <Text as=\"h1\" size=\"D400\" tabIndex={-1} data-settings-heading truncate>\n {title}\n </Text>\n </Box>\n {after}\n </PageHeader>\n <Scroll variant=\"Surface\" direction=\"Vertical\" size=\"300\" visibility=\"Hover\" hideTrack>\n <PageContent>\n <Box direction=\"Column\" gap=\"500\" className={css.Content}>\n {children}\n </Box>\n </PageContent>\n </Scroll>\n </Page>\n);\n\nexport type SettingsShellProps = SettingsPageProps & {\n nav: ReactNode;\n /** The consuming layout decides when the two columns no longer fit. */\n compact?: boolean;\n /** Controlled mobile navigation; routing and history stay with the consumer. */\n navigationVisible?: boolean;\n};\nexport const SettingsShell = ({\n nav,\n compact,\n navigationVisible,\n ...pageProps\n}: SettingsShellProps) => {\n const ref = useRef<HTMLDivElement>(null);\n const previousNavigation = useRef(navigationVisible);\n useEffect(() => {\n const changed = previousNavigation.current !== navigationVisible;\n previousNavigation.current = navigationVisible;\n if (!compact || !changed) return;\n const target = navigationVisible\n ? ref.current?.querySelector<HTMLElement>('[aria-current=\"page\"]:not(:disabled)') ??\n ref.current?.querySelector<HTMLElement>(\"button:not(:disabled)\")\n : ref.current?.querySelector<HTMLElement>(\"[data-settings-heading]\");\n target?.focus();\n }, [compact, navigationVisible]);\n let content = <SettingsPage {...pageProps} />;\n if (compact && navigationVisible) content = <Box className={css.NarrowNavigation}>{nav}</Box>;\n else if (!compact)\n content = (\n <PageRoot nav={nav}>\n <SettingsPage {...pageProps} onBack={undefined} />\n </PageRoot>\n );\n return (\n <Box grow=\"Yes\" ref={ref}>\n {content}\n </Box>\n );\n};\n","import React, { ComponentProps, ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Box } from \"../box\";\nimport { Text } from \"../text\";\nimport { ListRow, ListRowProps } from \"../list-row\";\nimport * as css from \"./Nav.css\";\n\nexport const NavItem = as<\"div\", css.NavItemVariants & { highlight?: boolean; active?: boolean }>(\n ({ as: AsItem = \"div\", className, variant, radii, highlight, active, ...props }, ref) => (\n <AsItem\n className={classNames(css.NavItem({ variant, radii }), className)}\n data-highlight={highlight || undefined}\n data-active={active || undefined}\n {...props}\n ref={ref}\n />\n )\n);\n/** Polymorphic so routers can supply their own link without a library dependency. */\nexport const NavLink = as<\"a\">(({ as: AsLink = \"a\", className, ...props }, ref) => (\n <AsLink className={classNames(css.NavLink, className)} {...props} ref={ref} />\n));\nexport const NavButton = as<\"button\">(({ as: AsButton = \"button\", ...props }, ref) => (\n <NavLink as={AsButton} type={AsButton === \"button\" ? \"button\" : undefined} {...props} ref={ref} />\n));\nexport const NavItemContent = as<\"span\", ComponentProps<typeof Text>>(\n ({ as: AsContent = \"span\", className, ...props }, ref) => (\n <Text\n as={AsContent}\n size=\"T300\"\n truncate\n className={classNames(css.ItemContent, className)}\n {...props}\n ref={ref}\n />\n )\n);\nexport const NavItemOptions = as<\"div\", ComponentProps<typeof Box>>(\n ({ as: AsOptions = \"div\", className, ...props }, ref) => (\n <Box\n as={AsOptions}\n alignItems=\"Center\"\n gap=\"100\"\n className={classNames(css.Options, className)}\n {...props}\n ref={ref}\n />\n )\n);\nexport const NavCategory = as<\"section\", { title?: string; after?: ReactNode }>(\n ({ as: AsCategory = \"section\", title, after, children, className, ...props }, ref) => (\n <Box\n as={AsCategory}\n direction=\"Column\"\n gap=\"100\"\n aria-label={title}\n className={classNames(css.Category, className)}\n {...props}\n ref={ref}\n >\n {title && (\n <Box alignItems=\"Center\" gap=\"100\" className={css.CategoryHeader}>\n <Text as=\"h2\" size=\"LabelMono\" priority=\"300\">\n {title}\n </Text>\n {after}\n </Box>\n )}\n {children}\n </Box>\n )\n);\nexport type NavHeaderProps = { title: ReactNode; before?: ReactNode; after?: ReactNode };\nexport const NavHeader = ({ title, before, after }: NavHeaderProps) => (\n <>\n <Box grow=\"Yes\" alignItems=\"Center\" gap=\"200\" className={css.HeaderTitle}>\n {before}\n <Text as=\"h1\" size=\"H4\" truncate>\n {title}\n </Text>\n </Box>\n {after && (\n <Box shrink=\"No\" alignItems=\"Center\" gap=\"100\">\n {after}\n </Box>\n )}\n </>\n);\nexport type RoomListItemProps = Omit<ListRowProps, \"after\"> & {\n active?: boolean;\n unread?: boolean;\n /** Non-interactive status displayed inside the main action. */\n status?: ReactNode;\n /** Independent actions are siblings of the link/button, never nested inside it. */\n after?: ReactNode;\n};\nexport const RoomListItem = as<\"button\", RoomListItemProps>(\n (\n {\n as: AsItem = \"button\",\n title,\n description,\n before,\n badge,\n status,\n after,\n active,\n unread,\n className,\n ...props\n },\n ref\n ) => (\n <NavItem active={active} highlight={unread} className={className}>\n <NavButton as={AsItem} aria-current={active ? \"page\" : undefined} {...props} ref={ref}>\n <ListRow\n as=\"span\"\n before={before}\n title={title}\n description={description}\n badge={badge}\n after={status}\n />\n </NavButton>\n {after && <NavItemOptions>{after}</NavItemOptions>}\n </NavItem>\n )\n);\n","import React, { ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Badge } from \"../badge\";\nimport { Box } from \"../box\";\nimport { Text } from \"../text\";\nimport * as css from \"./UnreadBadge.css\";\n\nexport type UnreadBadgeProps = {\n count: number;\n /** When supplied, show mentions as a number and plain unread as a dot. */\n mentionCount?: number;\n highlight?: boolean;\n /** Override for localised accessible text. */\n label?: string;\n /** Override visible formatting, without losing the exact accessible count. */\n formatCount?: (count: number) => ReactNode;\n};\nconst safeCount = (count: number) => (Number.isFinite(count) ? Math.max(0, Math.floor(count)) : 0);\nexport const UnreadBadge = as<\"span\", UnreadBadgeProps>(\n (\n {\n as: AsBadge = \"span\",\n count,\n mentionCount,\n highlight,\n label,\n formatCount,\n className,\n ...props\n },\n ref\n ) => {\n const unread = safeCount(count);\n const shown = safeCount(mentionCount ?? count);\n const needsYou = mentionCount === undefined ? highlight : shown > 0;\n const noun = mentionCount === undefined ? \"message\" : \"mention\";\n let accessible = \"Unread messages\";\n if (unread > 0) accessible = `${unread} unread ${unread === 1 ? \"message\" : \"messages\"}`;\n if (shown > 0) accessible = `${shown} unread ${noun}${shown === 1 ? \"\" : \"s\"}`;\n const formatted = shown > 99 ? \"99+\" : shown;\n return (\n <Badge\n as={AsBadge}\n {...(String(AsBadge) === \"button\" ? { type: \"button\" as const } : {})}\n role={AsBadge === \"span\" ? \"img\" : undefined}\n aria-label={label ?? accessible}\n variant={needsYou ? \"Critical\" : \"Success\"}\n size={shown > 0 ? \"400\" : \"200\"}\n fill=\"Solid\"\n outlined={false}\n className={classNames(css.UnreadBadge, className)}\n {...props}\n ref={ref}\n >\n {shown > 0 && (\n <Text as=\"span\" size=\"L400\" aria-hidden=\"true\">\n {formatCount ? formatCount(shown) : formatted}\n </Text>\n )}\n </Badge>\n );\n }\n);\nexport const UnreadBadgeCenter = as<\"span\">(\n ({ as: AsCenter = \"span\", className, ...props }, ref) => (\n <Box\n as={AsCenter}\n shrink=\"No\"\n alignItems=\"Center\"\n justifyContent=\"Center\"\n className={classNames(css.Center, className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import React, { ComponentProps, forwardRef, useState } from \"react\";\nimport { Icon, Icons } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { Input } from \"../input\";\n\nexport type PasswordInputProps = Omit<ComponentProps<typeof Input>, \"type\"> & {\n revealLabel?: string;\n concealLabel?: string;\n};\nexport const PasswordInput = forwardRef<HTMLInputElement, PasswordInputProps>(\n (\n {\n variant = \"Background\",\n size = \"400\",\n disabled,\n after,\n revealLabel = \"Show password\",\n concealLabel = \"Hide password\",\n ...props\n },\n ref\n ) => {\n const [visible, setVisible] = useState(false);\n return (\n <Input\n {...props}\n ref={ref}\n variant={variant}\n size={size}\n disabled={disabled}\n type={visible ? \"text\" : \"password\"}\n after={\n <>\n {after}\n <IconButton\n type=\"button\"\n size=\"300\"\n variant={variant}\n fill=\"None\"\n disabled={disabled}\n aria-label={visible ? concealLabel : revealLabel}\n aria-pressed={visible}\n onClick={() => setVisible(!visible)}\n >\n <Icon src={visible ? Icons.Eye : Icons.EyeBlind} size=\"100\" />\n </IconButton>\n </>\n }\n />\n );\n }\n);\n","import React, { ComponentProps, ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Box } from \"../box\";\nimport { Chip } from \"../chip\";\nimport { Icon, Icons } from \"../icon\";\nimport { Scroll } from \"../scroll\";\nimport { Text } from \"../text\";\nimport * as css from \"./Timeline.css\";\n\nexport type MessageRowProps = {\n avatar?: ReactNode;\n author?: ReactNode;\n header?: ReactNode;\n reserveAvatarSpace?: boolean;\n inset?: boolean;\n time?: ReactNode;\n dateTime?: string;\n highlight?: boolean;\n after?: ReactNode;\n};\n/** Presentation only: event lookup, body rendering, grouping and virtualisation stay outside. */\nexport const MessageRow = as<\"article\", MessageRowProps>(\n (\n {\n as: AsMessage = \"article\",\n className,\n avatar,\n author,\n header,\n reserveAvatarSpace = false,\n inset = true,\n time,\n dateTime,\n highlight,\n after,\n children,\n ...props\n },\n ref\n ) => (\n <Box\n as={AsMessage}\n gap=\"300\"\n alignItems=\"Start\"\n className={classNames(css.Message({ highlight, inset }), className)}\n {...props}\n ref={ref}\n >\n {(avatar || reserveAvatarSpace) && (\n <Box shrink=\"No\" className={reserveAvatarSpace ? css.AvatarSlot : undefined}>\n {avatar}\n </Box>\n )}\n <Box grow=\"Yes\" direction=\"Column\" gap=\"100\" className={css.Content}>\n {header ??\n ((author || time || after) && (\n <Box gap=\"200\" alignItems=\"Baseline\" justifyContent=\"SpaceBetween\" wrap=\"Wrap\">\n <Box className={css.Author}>{author}</Box>\n {time && (\n <Text\n as=\"time\"\n size=\"Metadata\"\n priority=\"300\"\n dateTime={dateTime}\n className={css.Time}\n >\n {time}\n </Text>\n )}\n {after}\n </Box>\n ))}\n {children}\n </Box>\n </Box>\n )\n);\nexport const Quote = as<\"blockquote\", { author: ReactNode }>(\n ({ as: AsQuote = \"blockquote\", className, author, children, ...props }, ref) => (\n <Box\n as={AsQuote}\n alignItems=\"Center\"\n gap=\"200\"\n className={classNames(css.Quote, className)}\n {...(String(AsQuote) === \"button\" ? { type: \"button\" as const } : {})}\n {...props}\n ref={ref}\n >\n <Icon src={Icons.ReplyArrow} size=\"50\" />\n <Box as=\"span\" direction=\"Column\" className={css.Content}>\n <Text as=\"span\" size=\"B300\" truncate>\n {author}\n </Text>\n <Text as=\"span\" size=\"T200\" priority=\"300\" truncate>\n {children}\n </Text>\n </Box>\n </Box>\n )\n);\nexport const ReactionGroup = as<\"div\">(({ className, ...props }, ref) => (\n <Box\n role=\"group\"\n aria-label=\"Reactions\"\n gap=\"100\"\n wrap=\"Wrap\"\n className={classNames(css.Reactions, className)}\n {...props}\n ref={ref}\n />\n));\nexport const ReactionButton = as<\"button\", { count: number; selected?: boolean }>(\n ({ count, selected = false, children, ...props }, ref) => (\n <Chip\n as=\"button\"\n type=\"button\"\n size=\"400\"\n fill=\"Soft\"\n variant={selected ? \"Primary\" : \"Secondary\"}\n outlined={selected}\n aria-pressed={selected}\n {...props}\n ref={ref}\n >\n {children}\n <Text as=\"span\" size=\"Metadata\">\n {count}\n </Text>\n </Chip>\n )\n);\nexport type ReactionItem = {\n key: string;\n label?: string;\n count: number;\n selected?: boolean;\n disabled?: boolean;\n};\nexport type ReactionRowProps = {\n reactions: ReactionItem[];\n onToggle?: (key: string) => void;\n onAdd?: () => void;\n addLabel?: string;\n label?: string;\n};\nexport const ReactionRow = ({\n reactions,\n onToggle,\n onAdd,\n addLabel = \"Add reaction\",\n label = \"Reactions\",\n}: ReactionRowProps) => (\n <ReactionGroup aria-label={label}>\n {reactions.map((reaction) => (\n <ReactionButton\n key={reaction.key}\n count={reaction.count}\n selected={reaction.selected}\n aria-label={`${reaction.label ?? reaction.key} ${reaction.count}`}\n disabled={reaction.disabled || !onToggle}\n onClick={() => onToggle?.(reaction.key)}\n >\n <Text as=\"span\" size=\"T200\">\n {reaction.key}\n </Text>\n </ReactionButton>\n ))}\n {onAdd && (\n <Chip\n as=\"button\"\n type=\"button\"\n variant=\"Secondary\"\n fill=\"None\"\n size=\"400\"\n aria-label={addLabel}\n onClick={onAdd}\n >\n <Icon src={Icons.SmilePlus} size=\"50\" />\n </Chip>\n )}\n </ReactionGroup>\n);\nexport const DayDivider = as<\"div\", { label: string }>(\n ({ as: AsDivider = \"div\", className, label, ...props }, ref) => (\n <Box\n as={AsDivider}\n role=\"separator\"\n aria-label={label}\n alignItems=\"Center\"\n gap=\"300\"\n className={classNames(css.Divider, className)}\n {...props}\n ref={ref}\n >\n <span className={css.Rule} aria-hidden=\"true\" />\n <Text as=\"span\" size=\"LabelMono\" priority=\"300\">\n {label}\n </Text>\n <span className={css.Rule} aria-hidden=\"true\" />\n </Box>\n )\n);\nexport const UnreadMarker = as<\"div\", { label?: string }>(\n ({ as: AsMarker = \"div\", className, label = \"New messages\", ...props }, ref) => (\n <Box\n as={AsMarker}\n role=\"separator\"\n aria-label={label}\n alignItems=\"Center\"\n gap=\"300\"\n className={classNames(css.Unread, className)}\n {...props}\n ref={ref}\n >\n <span className={css.UnreadRule} aria-hidden=\"true\" />\n <Text as=\"span\" size=\"LabelMono\">\n {label}\n </Text>\n </Box>\n )\n);\n/** A scrolling frame; consumers choose live-region semantics and scroll/virtualisation policy. */\nexport const Timeline = as<\"div\", ComponentProps<typeof Scroll>>(\n ({ as: AsTimeline = \"div\", children, ...props }, ref) => (\n <Scroll\n as={AsTimeline}\n variant=\"Background\"\n direction=\"Vertical\"\n visibility=\"Hover\"\n hideTrack\n {...props}\n ref={ref}\n >\n <Box direction=\"Column\" gap=\"100\" className={css.Timeline}>\n {children}\n </Box>\n </Scroll>\n )\n);\n","import React, { ReactNode } from \"react\";\nimport { Card } from \"../card\";\nimport { Icon, Icons } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { ListRow } from \"../list-row\";\nimport * as css from \"./FileAttachment.css\";\n\nexport type FileAttachmentProps = {\n name: string;\n description?: ReactNode;\n /** Download/authentication logic is owned by the caller. No URL is inferred or fetched. */\n onDownload?: () => void;\n downloadLabel?: string;\n busy?: boolean;\n};\nexport const FileAttachment = ({\n name,\n description,\n onDownload,\n downloadLabel = `Download ${name}`,\n busy,\n}: FileAttachmentProps) => (\n <Card className={css.FileAttachment}>\n <ListRow\n title={name}\n description={description}\n before={<Icon src={Icons.File} size=\"200\" />}\n after={\n onDownload && (\n <IconButton\n type=\"button\"\n variant=\"SurfaceVariant\"\n size=\"300\"\n aria-label={downloadLabel}\n disabled={busy}\n aria-busy={busy || undefined}\n onClick={onDownload}\n >\n <Icon src={Icons.Download} size=\"100\" />\n </IconButton>\n )\n }\n />\n </Card>\n);\n","import React, { ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Badge } from \"../badge\";\nimport { Box } from \"../box\";\nimport { Header } from \"../header\";\nimport { Icon, Icons } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { Scroll } from \"../scroll\";\nimport { Text } from \"../text\";\nimport * as css from \"./Dock.css\";\n\nexport type DockProps = {\n title: string;\n count?: number;\n after?: ReactNode;\n onClose?: () => void;\n closeLabel?: string;\n};\n/** A non-modal side panel. The caller owns opening it and returning focus on close. */\nexport const Dock = as<\"aside\", DockProps>(\n (\n {\n as: AsDock = \"aside\",\n className,\n title,\n count,\n after,\n onClose,\n closeLabel = \"Close\",\n children,\n ...props\n },\n ref\n ) => (\n <Box\n as={AsDock}\n aria-label={title}\n shrink=\"No\"\n direction=\"Column\"\n className={classNames(css.Dock, className)}\n {...props}\n ref={ref}\n >\n <Header size=\"500\" variant=\"Surface\" className={css.Header}>\n <Box grow=\"Yes\" alignItems=\"Center\" gap=\"200\" className={css.Title}>\n <Text as=\"h2\" size=\"H5\" truncate>\n {title}\n </Text>\n {count !== undefined && (\n <Badge variant=\"Secondary\" fill=\"Soft\">\n <Text as=\"span\" size=\"L400\">\n {count}\n </Text>\n </Badge>\n )}\n </Box>\n {after}\n {onClose && (\n <IconButton\n type=\"button\"\n variant=\"Surface\"\n fill=\"None\"\n size=\"300\"\n aria-label={closeLabel}\n onClick={onClose}\n >\n <Icon src={Icons.Cross} size=\"100\" />\n </IconButton>\n )}\n </Header>\n <Scroll variant=\"Surface\" direction=\"Vertical\">\n {children}\n </Scroll>\n </Box>\n )\n);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Box } from \"../box\";\nimport * as css from \"./Skeleton.css\";\n\nexport const Skeleton = as<\"span\", css.SkeletonVariants>(\n ({ as: AsSkeleton = \"span\", className, shape, short, animate, ...props }, ref) => (\n <AsSkeleton\n aria-hidden=\"true\"\n className={classNames(css.Skeleton({ shape, short, animate }), className)}\n {...props}\n ref={ref}\n />\n )\n);\nexport const SkeletonRow = ({\n avatar = true,\n animate = true,\n}: {\n avatar?: boolean;\n animate?: boolean;\n}) => (\n <Box aria-hidden=\"true\" gap=\"300\" alignItems=\"Start\" className={css.Row}>\n {avatar && <Skeleton shape=\"avatar\" animate={animate} />}\n <Box grow=\"Yes\" direction=\"Column\" gap=\"200\">\n <Skeleton short animate={animate} />\n <Skeleton animate={animate} />\n </Box>\n </Box>\n);\n","import React, { ReactNode } from \"react\";\nimport { Attention } from \"../motion\";\nimport { Card } from \"../card\";\nimport { Box } from \"../box\";\nimport { Button } from \"../button\";\nimport { Spinner } from \"../spinner\";\nimport { Text } from \"../text\";\nimport { ContainerColor, MainColor } from \"../types\";\n\nexport type DecisionOption = { id: string; label: string; variant?: MainColor; disabled?: boolean };\nexport type HitlCardProps = {\n title: string;\n description?: ReactNode;\n options: DecisionOption[];\n onChoose: (id: string) => void;\n /** Parent owns the operation and supplies its result, including errors. */\n busy?: boolean;\n answer?: ReactNode;\n};\nexport const HitlCard = ({\n title,\n description,\n options,\n onChoose,\n busy,\n answer,\n}: HitlCardProps) => (\n <Attention active={!answer}>\n <Card variant={answer ? \"Success\" : \"Primary\"} aria-busy={busy || undefined}>\n <Text as=\"h3\" size=\"H4\">\n {title}\n </Text>\n {description && <Text size=\"T300\">{description}</Text>}\n {answer ? (\n <Text role=\"status\" size=\"T300\">\n {answer}\n </Text>\n ) : (\n <Box gap=\"200\" wrap=\"Wrap\" alignItems=\"Center\">\n {options.map((option, index) => (\n <Button\n key={option.id}\n type=\"button\"\n size=\"300\"\n variant={option.variant ?? \"Primary\"}\n fill={index === 0 ? \"Solid\" : \"Soft\"}\n disabled={busy || option.disabled}\n onClick={() => onChoose(option.id)}\n >\n {option.label}\n </Button>\n ))}\n {busy && <Spinner shape=\"Morph\" size=\"100\" />}\n </Box>\n )}\n </Card>\n </Attention>\n);\nexport type StatusCardProps = {\n title: string;\n description?: ReactNode;\n before?: ReactNode;\n variant?: ContainerColor;\n children?: ReactNode;\n};\nexport const StatusCard = ({\n title,\n description,\n before,\n variant = \"SurfaceVariant\",\n children,\n}: StatusCardProps) => (\n <Card variant={variant}>\n <Box alignItems=\"Center\" gap=\"200\">\n {before}\n <Text as=\"h3\" size=\"H5\">\n {title}\n </Text>\n </Box>\n {description && <Text size=\"T300\">{description}</Text>}\n {children}\n </Card>\n);\n","import React, { ReactNode } from \"react\";\nimport { Box } from \"../box\";\nimport { Icon, Icons, IconSrc } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { Spinner } from \"../spinner\";\nimport { Text } from \"../text\";\nimport * as css from \"./Composer.css\";\n\nexport type ComposerAction = {\n id: string;\n label: string;\n icon: IconSrc;\n onClick: () => void;\n pressed?: boolean;\n disabled?: boolean;\n};\nexport type ComposerShellProps = {\n editor: (state: { disabled: boolean; busy: boolean }) => ReactNode;\n actions?: ComposerAction[];\n attachments?: ReactNode;\n context?: ReactNode;\n footer?: ReactNode;\n disabled?: boolean;\n busy?: boolean;\n canSend?: boolean;\n onSend: () => void;\n label?: string;\n sendLabel?: string;\n};\n/** The client owns the editor, drafts, key bindings, uploads and sending. */\nexport const ComposerShell = ({\n editor,\n actions = [],\n attachments,\n context,\n footer,\n disabled = false,\n busy = false,\n canSend = true,\n onSend,\n label = \"Message composer\",\n sendLabel = \"Send\",\n}: ComposerShellProps) => (\n <form\n aria-label={label}\n aria-busy={busy || undefined}\n className={css.Root}\n onSubmit={(event) => {\n event.preventDefault();\n if (!disabled && !busy && canSend) onSend();\n }}\n >\n <fieldset disabled={disabled || busy} className={css.Fieldset}>\n {context}\n {attachments && (\n <Box gap=\"200\" wrap=\"Wrap\">\n {attachments}\n </Box>\n )}\n <Box className={css.Editor}>{editor({ disabled: disabled || busy, busy })}</Box>\n <Box alignItems=\"Center\" gap=\"200\" wrap=\"Wrap\">\n <Box role=\"group\" aria-label={`${label} actions`} gap=\"100\" wrap=\"Wrap\" grow=\"Yes\">\n {actions.map((action) => (\n <IconButton\n key={action.id}\n type=\"button\"\n size=\"300\"\n variant=\"SurfaceVariant\"\n fill=\"None\"\n aria-label={action.label}\n title={action.label}\n aria-pressed={action.pressed}\n disabled={action.disabled}\n onClick={action.onClick}\n >\n <Icon src={action.icon} size=\"100\" />\n </IconButton>\n ))}\n </Box>\n <IconButton type=\"submit\" size=\"300\" aria-label={sendLabel} disabled={!canSend}>\n {busy ? (\n <Spinner size=\"100\" shape=\"Morph\" className={css.Sending} />\n ) : (\n <Icon src={Icons.Send} size=\"100\" />\n )}\n </IconButton>\n </Box>\n </fieldset>\n {footer}\n </form>\n);\nexport const ComposerPlaceholder = ({ children }: { children: ReactNode }) => (\n <Box className={css.Placeholder}>\n <Text size=\"T300\" priority=\"300\">\n {children}\n </Text>\n </Box>\n);\n","import React, { ReactNode } from \"react\";\nimport { Box } from \"../box\";\nimport { Button } from \"../button\";\nimport { Card } from \"../card\";\nimport { Icon, Icons } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { Text } from \"../text\";\nimport * as css from \"./Call.css\";\n\nexport type CallControlLabels = {\n microphoneOn: string;\n microphoneOff: string;\n cameraOn: string;\n cameraOff: string;\n shareOn: string;\n shareOff: string;\n chat: string;\n leave: string;\n};\nconst defaults: CallControlLabels = {\n microphoneOn: \"Mute microphone\",\n microphoneOff: \"Unmute microphone\",\n cameraOn: \"Stop camera\",\n cameraOff: \"Start camera\",\n shareOn: \"Stop sharing\",\n shareOff: \"Share screen\",\n chat: \"Open chat\",\n leave: \"Leave call\",\n};\nexport type CallControlsProps = {\n microphone: boolean;\n camera?: boolean;\n sharing?: boolean;\n disabled?: boolean;\n compact?: boolean;\n onMicrophoneChange?: (enabled: boolean) => void;\n onCameraChange?: (enabled: boolean) => void;\n onSharingChange?: (enabled: boolean) => void;\n onChat?: () => void;\n onLeave: () => void;\n before?: ReactNode;\n menu?: ReactNode;\n labels?: Partial<CallControlLabels>;\n};\nexport const CallControls = ({\n microphone,\n camera = false,\n sharing = false,\n disabled,\n compact,\n onMicrophoneChange,\n onCameraChange,\n onSharingChange,\n onChat,\n onLeave,\n before,\n menu,\n labels,\n}: CallControlsProps) => {\n const names = { ...defaults, ...labels };\n return (\n <Box\n role=\"group\"\n aria-label=\"Call controls\"\n alignItems=\"Center\"\n gap=\"100\"\n wrap=\"Wrap\"\n className={css.Controls({ compact })}\n >\n {before}\n <IconButton\n type=\"button\"\n size=\"300\"\n variant={microphone ? \"Surface\" : \"Critical\"}\n fill={microphone ? \"None\" : \"Soft\"}\n aria-label={microphone ? names.microphoneOn : names.microphoneOff}\n aria-pressed={microphone}\n disabled={disabled || !onMicrophoneChange}\n onClick={() => onMicrophoneChange?.(!microphone)}\n >\n <Icon src={microphone ? Icons.Mic : Icons.MicMute} size=\"100\" />\n </IconButton>\n <IconButton\n type=\"button\"\n size=\"300\"\n variant={camera ? \"Primary\" : \"Surface\"}\n fill={camera ? \"Soft\" : \"None\"}\n aria-label={camera ? names.cameraOn : names.cameraOff}\n aria-pressed={camera}\n disabled={disabled || !onCameraChange}\n onClick={() => onCameraChange?.(!camera)}\n >\n <Icon src={camera ? Icons.VideoCamera : Icons.VideoCameraMute} size=\"100\" />\n </IconButton>\n <IconButton\n type=\"button\"\n size=\"300\"\n variant={sharing ? \"Primary\" : \"Surface\"}\n fill={sharing ? \"Soft\" : \"None\"}\n aria-label={sharing ? names.shareOn : names.shareOff}\n aria-pressed={sharing}\n disabled={disabled || !onSharingChange}\n onClick={() => onSharingChange?.(!sharing)}\n >\n <Icon src={Icons.ScreenShare} size=\"100\" />\n </IconButton>\n {onChat && (\n <IconButton\n type=\"button\"\n size=\"300\"\n variant=\"Surface\"\n fill=\"None\"\n aria-label={names.chat}\n onClick={onChat}\n disabled={disabled}\n >\n <Icon src={Icons.Message} size=\"100\" />\n </IconButton>\n )}\n {menu}\n <Button\n type=\"button\"\n variant=\"Critical\"\n size=\"300\"\n onClick={onLeave}\n before={<Icon src={Icons.PhoneDown} size=\"100\" />}\n >\n {names.leave}\n </Button>\n </Box>\n );\n};\nexport type CallStatusStripProps = {\n status: ReactNode;\n room: ReactNode;\n detail?: ReactNode;\n members?: ReactNode;\n actions?: ReactNode;\n compact?: boolean;\n};\nexport const CallStatusStrip = ({\n status,\n room,\n detail,\n members,\n actions,\n compact,\n}: CallStatusStripProps) => (\n <Box\n direction={compact ? \"Column\" : \"Row\"}\n alignItems={compact ? \"Start\" : \"Center\"}\n gap=\"200\"\n wrap=\"Wrap\"\n className={css.Strip}\n >\n <Box alignItems=\"Center\" gap=\"200\" wrap=\"Wrap\">\n <Box role=\"status\">{status}</Box>\n {room}\n </Box>\n {detail && (\n <Text size=\"T200\" priority=\"300\">\n {detail}\n </Text>\n )}\n {members}\n {actions && <Box className={css.StripActions}>{actions}</Box>}\n </Box>\n);\nexport type CallMemberCardProps = {\n name: string;\n avatar: ReactNode;\n media?: ReactNode;\n speaking?: boolean;\n muted?: boolean;\n status?: ReactNode;\n};\nexport const CallMemberCard = ({\n name,\n avatar,\n media,\n speaking,\n muted,\n status,\n}: CallMemberCardProps) => (\n <Card className={css.Member({ speaking })}>\n {media && <Box className={css.Media}>{media}</Box>}\n <Box\n direction=\"Column\"\n alignItems=\"Center\"\n justifyContent=\"Center\"\n gap=\"200\"\n className={css.MemberContent}\n >\n {!media && avatar}\n <Box alignItems=\"Center\" gap=\"100\">\n <Text size=\"T300\">{name}</Text>\n {muted && <Icon src={Icons.MicMute} size=\"50\" aria-label=\"Microphone muted\" />}\n {speaking && <Icon src={Icons.VolumeHigh} size=\"50\" aria-label=\"Speaking\" />}\n </Box>\n {status}\n </Box>\n </Card>\n);\n","import React, { ReactNode } from \"react\";\nimport { Box } from \"../box\";\nimport { Rows } from \"../card\";\nimport { Checkbox } from \"../checkbox\";\nimport { RoomListItem } from \"../nav\";\nimport { Text } from \"../text\";\nimport { IdentityAvatar, MemberTile } from \"./Identity\";\n\nexport type IdentityListEntry = {\n id: string;\n name: string;\n description?: ReactNode;\n avatar?: ReactNode;\n agent?: boolean;\n disabled?: boolean;\n};\nexport const PeopleList = ({\n people,\n onPick,\n label = \"People\",\n emptyLabel = \"No people found\",\n}: {\n people: IdentityListEntry[];\n onPick: (id: string) => void;\n label?: string;\n emptyLabel?: string;\n}) => (\n <Box role=\"group\" aria-label={label} direction=\"Column\" gap=\"100\">\n {people.length === 0 && <Text size=\"T300\">{emptyLabel}</Text>}\n {people.map((person) => (\n <RoomListItem\n key={person.id}\n title={person.name}\n description={person.description}\n before={\n person.avatar ?? (\n <IdentityAvatar name={person.name} kind={person.agent ? \"agent\" : \"person\"} />\n )\n }\n disabled={person.disabled}\n onClick={() => onPick(person.id)}\n />\n ))}\n </Box>\n);\nexport const WorkerRoster = ({\n workers,\n selected = [],\n onSelectionChange,\n actions,\n title = \"Workers\",\n}: {\n workers: IdentityListEntry[];\n selected?: string[];\n onSelectionChange?: (ids: string[]) => void;\n actions?: ReactNode;\n title?: string;\n}) => (\n <Box direction=\"Column\" gap=\"200\">\n <Rows\n title={title}\n rows={workers.map((worker) => ({\n id: worker.id,\n content: (\n <MemberTile\n name={worker.name}\n description={worker.description}\n avatar={worker.avatar}\n agent\n after={\n onSelectionChange && (\n <Checkbox\n aria-label={`Include ${worker.name}`}\n checked={selected.includes(worker.id)}\n disabled={worker.disabled}\n onChange={(event) =>\n onSelectionChange(\n event.target.checked\n ? [...selected, worker.id]\n : selected.filter((id) => id !== worker.id)\n )\n }\n />\n )\n }\n />\n ),\n }))}\n />\n {workers.length === 0 && (\n <Text size=\"T300\" priority=\"300\">\n No workers\n </Text>\n )}\n {actions}\n </Box>\n);\n","import React, { ComponentProps, ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Box } from \"../box\";\nimport { Card } from \"../card\";\nimport { MemberTile, RoomAvatar } from \"../identity\";\nimport { Text } from \"../text\";\nimport * as css from \"./ContentCard.css\";\n\nexport const CardGrid = as<\"div\">(({ as: AsGrid = \"div\", className, ...props }, ref) => (\n <AsGrid className={classNames(css.Grid, className)} {...props} ref={ref} />\n));\nexport type RoomCardProps = {\n name: string;\n description?: ReactNode;\n detail?: ReactNode;\n avatar?: ReactNode;\n actions?: ReactNode;\n children?: ReactNode;\n};\nexport const RoomCard = ({\n name,\n description,\n detail,\n avatar,\n actions,\n children,\n}: RoomCardProps) => (\n <Card>\n <MemberTile\n name={name}\n avatar={avatar ?? <RoomAvatar name={name} size=\"400\" />}\n description={detail}\n />\n {description && (\n <Text size=\"T300\" priority=\"300\">\n {description}\n </Text>\n )}\n {children}\n {actions && (\n <Box gap=\"200\" wrap=\"Wrap\">\n {actions}\n </Box>\n )}\n </Card>\n);\nexport type LinkPreviewProps = {\n title: string;\n href: string;\n description?: string;\n site?: string;\n media?: ReactNode;\n};\nconst safeHref = (href: string) => {\n try {\n const url = new URL(href);\n return [\"http:\", \"https:\"].includes(url.protocol) ? url.href : undefined;\n } catch {\n return undefined;\n }\n};\n/** Receives fetched metadata; no network work, HTML injection or media authentication. */\nexport const LinkPreview = ({ title, href, description, site, media }: LinkPreviewProps) => {\n const target = safeHref(href);\n return (\n <Card>\n {media}\n <Text size=\"H5\">{title}</Text>\n {description && <Text size=\"T300\">{description}</Text>}\n {target ? (\n <Text\n as=\"a\"\n href={target}\n rel=\"noreferrer\"\n target=\"_blank\"\n size=\"T200\"\n className={css.Link}\n >\n {site ?? href}\n </Text>\n ) : (\n <Text size=\"T200\">{site ?? href}</Text>\n )}\n </Card>\n );\n};\nexport const ScrollTopContainer = as<\"div\", ComponentProps<typeof Box> & { visible: boolean }>(\n ({ as: AsContainer = \"div\", visible, className, ...props }, ref) =>\n visible ? (\n <Box as={AsContainer} className={classNames(css.ScrollTop, className)} {...props} ref={ref} />\n ) : null\n);\n","import React, { ComponentProps } from \"react\";\nimport { Badge } from \"../badge\";\nimport { Box } from \"../box\";\nimport { Select } from \"../select\";\nimport { Text } from \"../text\";\nimport { MainColor } from \"../types\";\nimport * as css from \"./Power.css\";\n\nexport type PowerOption = { value: number; label: string; disabled?: boolean };\nexport type PowerSelectorProps = Omit<\n ComponentProps<typeof Select>,\n \"options\" | \"value\" | \"onValueChange\" | \"onChange\"\n> & {\n options: PowerOption[];\n value: number;\n onValueChange: (value: number) => void;\n};\nexport const PowerSelector = ({ options, value, onValueChange, ...props }: PowerSelectorProps) => (\n <Select\n {...props}\n value={String(value)}\n options={options.map((option) => ({ ...option, value: String(option.value) }))}\n onValueChange={(next) => {\n const option = options.find((item) => String(item.value) === next);\n if (option && !option.disabled) onValueChange(option.value);\n }}\n />\n);\nexport const PowerBadge = ({\n label,\n level,\n variant = \"Secondary\",\n}: {\n label: string;\n level?: number;\n variant?: MainColor;\n}) => (\n <Badge variant={variant} title={level === undefined ? label : `${label} (${level})`}>\n <Text as=\"span\" size=\"L400\">\n {label}\n </Text>\n </Badge>\n);\nexport const PowerIcon = ({\n name,\n imageSrc,\n children,\n}: {\n name: string;\n imageSrc?: string;\n children?: string;\n}) =>\n imageSrc ? (\n <img className={css.Icon} src={imageSrc} alt={name} />\n ) : (\n <Box as=\"span\" role=\"img\" aria-label={name} className={css.Icon}>\n {children}\n </Box>\n );\n","import React, { ComponentProps, forwardRef } from \"react\";\nimport { Input } from \"../input\";\nimport { Text } from \"../text\";\n\nexport type DateTimeInputProps = Omit<\n ComponentProps<typeof Input>,\n \"type\" | \"value\" | \"defaultValue\"\n> & { value?: string; defaultValue?: string };\n/** ISO local date/time strings; timezone and epoch conversions belong to the caller. */\nexport const DatePicker = forwardRef<HTMLInputElement, DateTimeInputProps>((props, ref) => (\n <Input {...props} type=\"date\" ref={ref} />\n));\nexport const TimePicker = forwardRef<HTMLInputElement, DateTimeInputProps>((props, ref) => (\n <Input {...props} type=\"time\" ref={ref} />\n));\nexport type TimestampProps = {\n value: number | string | Date;\n locale?: string;\n timeZone?: string;\n options?: Intl.DateTimeFormatOptions;\n fallback?: string;\n};\nexport const Timestamp = ({\n value,\n locale = \"en\",\n timeZone = \"UTC\",\n options,\n fallback = \"Unknown time\",\n}: TimestampProps) => {\n const date = new Date(value instanceof Date ? value.getTime() : value);\n if (!Number.isFinite(date.getTime()))\n return (\n <Text as=\"span\" size=\"LabelMono\">\n {fallback}\n </Text>\n );\n const formatted = new Intl.DateTimeFormat(locale, {\n ...(options ?? {\n year: \"numeric\",\n month: \"short\",\n day: \"numeric\",\n hour: \"2-digit\",\n minute: \"2-digit\",\n }),\n timeZone,\n } as Intl.DateTimeFormatOptions).format(date);\n return (\n <Text as=\"time\" size=\"LabelMono\" dateTime={date.toISOString()} title={formatted}>\n {formatted}\n </Text>\n );\n};\n","import React, { ReactNode } from \"react\";\nimport { Box } from \"../box\";\nimport { Card } from \"../card\";\nimport { Icon, Icons } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { Text } from \"../text\";\nimport { ContainerColor } from \"../types\";\n\nexport type BannerProps = {\n title: string;\n children?: ReactNode;\n variant?: ContainerColor;\n urgent?: boolean;\n actions?: ReactNode;\n onDismiss?: () => void;\n dismissLabel?: string;\n};\nexport const Banner = ({\n title,\n children,\n variant = \"Primary\",\n urgent,\n actions,\n onDismiss,\n dismissLabel = \"Dismiss\",\n}: BannerProps) => (\n <Card variant={variant}>\n <Box alignItems=\"Start\" gap=\"200\">\n <Box grow=\"Yes\" direction=\"Column\" gap=\"100\" role={urgent ? \"alert\" : \"status\"}>\n <Text size=\"B400\">{title}</Text>\n {children && <Text size=\"T300\">{children}</Text>}\n </Box>\n {onDismiss && (\n <IconButton\n type=\"button\"\n size=\"300\"\n variant={variant}\n fill=\"None\"\n aria-label={dismissLabel}\n onClick={onDismiss}\n >\n <Icon src={Icons.Cross} size=\"100\" />\n </IconButton>\n )}\n </Box>\n {actions && (\n <Box gap=\"200\" wrap=\"Wrap\">\n {actions}\n </Box>\n )}\n </Card>\n);\n/** The parent owns placement and lifetime; actions never disappear on a library timer. */\nexport const Toast = Banner;\n","import React from \"react\";\nimport { Box } from \"../box\";\nimport { Button } from \"../button\";\nimport { Input } from \"../input\";\nimport { Icon, Icons } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { Text } from \"../text\";\n\nexport type FolderFieldProps = {\n value: string;\n onChange: (path: string) => void;\n onBrowse?: () => void;\n disabled?: boolean;\n busy?: boolean;\n label?: string;\n browseLabel?: string;\n clearLabel?: string;\n};\n/** The caller opens the native picker; typed paths remain usable on the web. */\nexport const FolderField = ({\n value,\n onChange,\n onBrowse,\n disabled,\n busy,\n label = \"Folder\",\n browseLabel = \"Choose folder\",\n clearLabel = \"Clear folder\",\n}: FolderFieldProps) => (\n <Box direction=\"Column\" gap=\"100\">\n <Text size=\"L400\">{label}</Text>\n <Box gap=\"200\" alignItems=\"Center\">\n <Input\n aria-label={label}\n value={value}\n onChange={(event) => onChange(event.currentTarget.value)}\n disabled={disabled || busy}\n after={\n value && (\n <IconButton\n type=\"button\"\n size=\"300\"\n variant=\"Background\"\n fill=\"None\"\n aria-label={clearLabel}\n disabled={disabled || busy}\n onClick={() => onChange(\"\")}\n >\n <Icon src={Icons.Cross} size=\"100\" />\n </IconButton>\n )\n }\n />\n {onBrowse && (\n <Button\n type=\"button\"\n size=\"300\"\n variant=\"Secondary\"\n fill=\"Soft\"\n disabled={disabled || busy}\n aria-busy={busy || undefined}\n onClick={onBrowse}\n >\n {browseLabel}\n </Button>\n )}\n </Box>\n </Box>\n);\n","/* eslint-disable react/function-component-definition */\nimport React from \"react\";\nimport { Icon, IconName } from \"./Icon\";\nimport * as css from \"./primitives.css\";\n\nexport type CurrentAction = {\n id: string;\n label: string;\n title?: string;\n icon: IconName;\n primary?: boolean;\n onClick: () => void;\n};\nexport function ActionGroup({ actions, hint }: { actions: CurrentAction[]; hint: string }) {\n return (\n <div className={css.actionSection}>\n <div className={css.actionGroup} role=\"group\" aria-label=\"Draft a PR request\">\n {actions.map((action) => (\n <button\n key={action.id}\n type=\"button\"\n className={`${css.action} ${action.primary ? css.primaryAction : \"\"}`}\n title={action.title}\n onClick={action.onClick}\n >\n <Icon name={action.icon} />\n {action.label}\n </button>\n ))}\n </div>\n <p className={css.hint} role=\"status\">\n {hint}\n </p>\n </div>\n );\n}\n"],"names":["symbols","config","Avatar","css.Avatar","css.AvatarImage","css.AvatarFallback","css.Badge","css.Box","css.Button","Icon","css.Icon","badge","css.Checkbox","css.CheckboxInput","css.CheckboxIcon","css.Chip","css.Dialog","Header","css.Header","css.IconButton","css.Input","css.InputInput","css.Line","css.MenuItem","css.Menu","css.Modal","css.Overlay","css.OverlayBackdrop","css.OverlayCenter","css.PopOut","css.PopOutContainer","css.PopOutContent","css.ProgressBar","css.ProgressBarFill","css.RadioButton","css.Scroll","css.SpinnerSvg","css.SpinnerOuter","css.SpinnerInner","Spinner","css.Spinner","css.SpinnerMorph","css.Switch","css.SwitchThumb","css.Text","css.TextArea","css.Tooltip","css.TooltipProvider","css.SequenceCard","css.CutoutCard","css.InfoCard","ContainerClr","css.Sidebar","css.SidebarItem","css.SidebarItemBadge","css.SidebarAvatar","css.SidebarFolder","css.SidebarFolderDropTarget","css.SidebarStack","css.TypingDot","c","r","css.StackedAvatar","css.Starfield","css.SplashScreen","starfieldCSS.StarfieldHost","css.SplashScreenFooter","ScreenSize","css.PageNav","css.PageNavResizeHandle","css.PageNavHeader","css.PageNavContent","css.PageHeader","css.PageContent","css.PageHeroEmptyCompact","css.PageHeroEmpty","css.PageHeroSection","icon","css.PageContentCenter","css.boundary","css.icon","css.chevron","finding","css.finding","css.tones","css.findingToggle","css.severity","css.findingTitle","css.findingBody","css.mono","css.paragraph","review","css.card","css.ownedCard","css.header","css.identity","css.typeIcon","css.prLink","css.badge","css.verdictIcon","css.author","css.prRef","css.authorName","css.authorMissing","css.overview","css.summary","css.control","css.details","css.findings","css.meta","css.mentions","css.mentionLabel","member","css.member","css.ownMention","css.DialogFrameHeader","css.DialogFrameContent","css.MenuButtonMenu","current","css.ErrorStateMark","css.ErrorStateDescription","css.PageTitleHeaderTitle","css.Card","css.Rows","css.Row","css.Content","css.AvatarPresence","css.BadgeFrame","color","css.Worker","css.Decorator","css.WorkerSeam","inputCss.Input","css.Root","inputCss.InputInput","css.Select","css.Arrow","css.Group","css.Option","css.Primary","css.More","css.Track","css.Fill","css.Wave","action","css.Toolbar","css.Enter","css.AttentionFrame","css.Attention","header","css.Navigation","css.NavHeader","css.NavItems","css.NavItem","css.NarrowNavigation","css.NavLink","css.ItemContent","css.Options","css.Category","css.CategoryHeader","css.HeaderTitle","css.UnreadBadge","css.Center","author","css.Message","css.AvatarSlot","css.Author","css.Time","css.Quote","css.Reactions","css.Divider","css.Rule","css.Unread","css.UnreadRule","css.Timeline","css.FileAttachment","css.Dock","css.Title","css.Skeleton","css.Fieldset","css.Editor","css.Sending","css.Placeholder","labels","css.Controls","css.Strip","css.StripActions","css.Member","css.Media","css.MemberContent","css.Grid","css.Link","css.ScrollTop","hint","css.actionSection","css.actionGroup","css.action","css.primaryAction","css.hint"],"mappings":"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","x_google_ignoreList":[3]}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/theme/util.ts","../src/components/util.ts","../src/components/as.tsx","../node_modules/@vanilla-extract/recipes/createRuntimeFn/dist/vanilla-extract-recipes-createRuntimeFn.esm.js","../src/components/avatar/Avatar.tsx","../src/components/badge/Badge.tsx","../src/components/box/Box.tsx","../src/components/button/Button.tsx","../src/components/icon/Icon.tsx","../src/components/icon/Icons.tsx","../src/components/checkbox/Checkbox.tsx","../src/components/chip/Chip.tsx","../src/components/dialog/Dialog.tsx","../src/components/header/Header.tsx","../src/components/icon-button/IconButton.tsx","../src/components/input/Input.tsx","../src/components/line/Line.tsx","../src/components/menu/MenuItem.tsx","../src/components/menu/Menu.tsx","../src/components/modal/Modal.tsx","../src/components/portal/Portal.tsx","../src/components/overlay/Overlay.tsx","../src/components/pop-out/PopOut.tsx","../src/components/progress-bar/ProgressBar.tsx","../src/components/radio-button/RadioButton.tsx","../src/components/scroll/Scroll.tsx","../src/components/spinner/Spinner.tsx","../src/components/switch/Switch.tsx","../src/components/text/Text.tsx","../src/components/text-area/TextArea.tsx","../src/components/tooltip/Tooltip.tsx","../src/components/tooltip/Hint.tsx","../src/components/sequence-card/SequenceCard.tsx","../src/components/setting-tile/SettingTile.tsx","../src/components/cutout-card/CutoutCard.tsx","../src/components/info-card/InfoCard.tsx","../src/components/sidebar/Sidebar.tsx","../src/components/sidebar/SidebarItem.tsx","../src/components/sidebar/SidebarContent.tsx","../src/components/sidebar/SidebarStack.tsx","../src/components/sidebar/SidebarStackSeparator.tsx","../src/components/agent-tag/AgentGlyph.tsx","../src/components/agent-tag/AgentTag.tsx","../src/components/agent-tag/PeopleGlyph.tsx","../src/components/agent-tag/SkillGlyph.tsx","../src/components/agent-tag/agentStateMarks.ts","../src/components/typing-indicator/TypingIndicator.tsx","../src/components/robot-icon/RobotIcon.tsx","../src/components/window-title/mountAliveMark.ts","../src/components/window-title/AliveMark.tsx","../src/components/server-badge/ServerBadge.tsx","../src/components/stacked-avatar/StackedAvatar.tsx","../src/components/compose-icon/ComposeIcon.tsx","../src/components/starfield/Starfield.tsx","../src/components/splash-screen/SplashScreen.tsx","../src/hooks/useResizeObserver.ts","../src/hooks/useElementSizeObserver.ts","../src/hooks/useScreenSize.ts","../src/utils/dragOverlay.ts","../src/components/page/Page.tsx","../src/components/page/NavCollapseRow.tsx","../src/current/palette.ts","../src/current/CurrentProvider.tsx","../src/current/Disclosure.tsx","../src/current/Icon.tsx","../src/components/review-card/CurrentReviewCard.tsx","../src/components/dialog-frame/DialogFrame.tsx","../src/components/menu-button/MenuButton.tsx","../src/components/tab-bar/TabBar.tsx","../src/components/pill/Pill.tsx","../src/components/page-state/EmptyState.tsx","../src/components/page-state/LoadingState.tsx","../src/components/page-state/ErrorState.tsx","../src/components/page-state/PageTitleHeader.tsx","../src/components/card/Card.tsx","../src/components/list-row/ListRow.tsx","../src/components/presence/Presence.tsx","../src/components/identity/Identity.tsx","../src/components/person-avatar/PersonAvatar.tsx","../src/components/select/Select.tsx","../src/utils/rovingFocus.ts","../src/components/button-group/ButtonGroup.tsx","../src/components/split-button/SplitButton.tsx","../src/components/wavy-progress/WavyProgress.tsx","../src/components/floating-toolbar/FloatingToolbar.tsx","../src/components/motion/Motion.tsx","../src/components/settings-shell/SettingsShell.tsx","../src/components/nav/Nav.tsx","../src/components/unread-badge/UnreadBadge.tsx","../src/components/password-input/PasswordInput.tsx","../src/components/timeline/Timeline.tsx","../src/components/file-attachment/FileAttachment.tsx","../src/components/dock/Dock.tsx","../src/components/skeleton/Skeleton.tsx","../src/components/activity-card/ActivityCard.tsx","../src/components/composer/Composer.tsx","../src/components/call/CallMicrophoneButton.tsx","../src/components/call/Call.tsx","../src/components/identity/IdentityLists.tsx","../src/components/content-card/ContentCard.tsx","../src/components/power/Power.tsx","../src/components/date-time/DateTime.tsx","../src/components/banner/Banner.tsx","../src/components/folder-field/FolderField.tsx","../src/current/ActionGroup.tsx"],"sourcesContent":["export const pxToRem = (px: number) => parseFloat((px / 16).toFixed(4));\nexport const toRem = (px: number) => `${pxToRem(px)}rem`;\n","export interface PositionCSS {\n top?: string;\n right?: string;\n bottom?: string;\n left?: string;\n}\nexport type Position = \"Top\" | \"Right\" | \"Bottom\" | \"Left\";\nexport type Align = \"Start\" | \"Center\" | \"End\";\n\nexport type RectCords = {\n x: number;\n y: number;\n width: number;\n height: number;\n};\n\nconst canAlignXStart = (anchor: RectCords, target: RectCords, offset: number): boolean =>\n anchor.x + offset + target.width <= document.documentElement.clientWidth;\nconst canAlignXCenter = (anchor: RectCords, target: RectCords, offset: number): boolean => {\n const xCenter = anchor.x + anchor.width / 2;\n const left = xCenter - target.width / 2;\n if (left < 0) return false;\n\n return left + offset + target.width <= document.documentElement.clientWidth;\n};\nconst canAlignXEnd = (anchor: RectCords, target: RectCords, offset: number): boolean => {\n const xEnd = anchor.x + anchor.width;\n return xEnd - (target.width + offset) >= 0;\n};\nconst canAlignYStart = (anchor: RectCords, target: RectCords, offset: number): boolean =>\n anchor.y + offset + target.height <= document.documentElement.clientHeight;\nconst canAlignYCenter = (anchor: RectCords, target: RectCords, offset: number): boolean => {\n const yCenter = anchor.y + anchor.height / 2;\n const top = yCenter - target.height / 2;\n if (top < 0) return false;\n\n return top + offset + target.height <= document.documentElement.clientHeight;\n};\nconst canAlignYEnd = (anchor: RectCords, target: RectCords, offset: number): boolean => {\n const yEnd = anchor.y + anchor.height;\n\n return yEnd - (target.height + offset) >= 0;\n};\n\nconst alignXStart = (anchor: RectCords, offset: number): PositionCSS => ({\n left: `${anchor.x + offset}px`,\n});\nconst alignXCenter = (anchor: RectCords, target: RectCords, offset: number): PositionCSS => {\n const xCenter = anchor.x + anchor.width / 2;\n const left = xCenter - target.width / 2;\n\n return {\n left: `${left + offset}px`,\n };\n};\nconst alignXEnd = (anchor: RectCords, offset: number): PositionCSS => {\n const xEnd = anchor.x + anchor.width;\n const right = document.documentElement.clientWidth - xEnd;\n\n return {\n right: `${right + offset}px`,\n };\n};\nconst alignXAuto = (\n anchor: RectCords,\n target: RectCords,\n offset: number\n): PositionCSS | undefined => {\n if (canAlignXCenter(anchor, target, offset)) {\n return alignXCenter(anchor, target, offset);\n }\n if (canAlignXStart(anchor, target, offset)) {\n return alignXStart(anchor, offset);\n }\n if (canAlignXEnd(anchor, target, offset)) {\n return alignXEnd(anchor, offset);\n }\n return undefined;\n};\nconst alignX = (\n align: Align,\n anchor: RectCords,\n target: RectCords,\n offset: number\n): PositionCSS | undefined => {\n if (align === \"Start\" && canAlignXStart(anchor, target, offset)) {\n return alignXStart(anchor, offset);\n }\n if (align === \"Center\" && canAlignXCenter(anchor, target, offset)) {\n return alignXCenter(anchor, target, offset);\n }\n if (align === \"End\" && canAlignXEnd(anchor, target, offset)) {\n return alignXEnd(anchor, offset);\n }\n return alignXAuto(anchor, target, offset);\n};\n\nconst alignYStart = (anchor: RectCords, offset: number): PositionCSS => ({\n top: `${anchor.y + offset}px`,\n});\nconst alignYCenter = (anchor: RectCords, target: RectCords, offset: number): PositionCSS => {\n const yCenter = anchor.y + anchor.height / 2;\n const top = yCenter - target.height / 2;\n\n return {\n top: `${top + offset}px`,\n };\n};\nconst alignYEnd = (anchor: RectCords, offset: number): PositionCSS => {\n const yEnd = anchor.y + anchor.height;\n const bottom = document.documentElement.clientHeight - yEnd;\n\n return {\n bottom: `${bottom + offset}px`,\n };\n};\nconst alignYAuto = (\n anchor: RectCords,\n target: RectCords,\n offset: number\n): PositionCSS | undefined => {\n if (canAlignYCenter(anchor, target, offset)) {\n return alignYCenter(anchor, target, offset);\n }\n if (canAlignYStart(anchor, target, offset)) {\n return alignYStart(anchor, offset);\n }\n if (canAlignYEnd(anchor, target, offset)) {\n return alignYEnd(anchor, offset);\n }\n return undefined;\n};\nconst alignY = (\n align: Align,\n anchor: RectCords,\n target: RectCords,\n offset: number\n): PositionCSS | undefined => {\n if (align === \"Start\" && canAlignYStart(anchor, target, offset)) {\n return alignYStart(anchor, offset);\n }\n if (align === \"Center\" && canAlignYCenter(anchor, target, offset)) {\n return alignYCenter(anchor, target, offset);\n }\n if (align === \"End\" && canAlignYEnd(anchor, target, offset)) {\n return alignYEnd(anchor, offset);\n }\n return alignYAuto(anchor, target, offset);\n};\n\nconst canPositionTop = (anchor: RectCords, target: RectCords, offset: number): boolean =>\n target.height + offset <= anchor.y;\nconst canPositionRight = (anchor: RectCords, target: RectCords, offset: number): boolean =>\n anchor.x + anchor.width + offset + target.width <= document.documentElement.clientWidth;\nconst canPositionBottom = (anchor: RectCords, target: RectCords, offset: number): boolean =>\n anchor.y + anchor.height + offset + target.height <= document.documentElement.clientHeight;\nconst canPositionLeft = (anchor: RectCords, target: RectCords, offset: number): boolean =>\n target.width + offset <= anchor.x;\n\nconst positionTop = (anchor: RectCords, offset: number): PositionCSS => {\n const bottom = document.documentElement.clientHeight - anchor.y;\n return {\n bottom: `${bottom + offset}px`,\n };\n};\n\nconst positionRight = (anchor: RectCords, offset: number): PositionCSS => {\n const left = anchor.x + anchor.width;\n return {\n left: `${left + offset}px`,\n };\n};\nconst positionBottom = (anchor: RectCords, offset: number): PositionCSS => {\n const top = anchor.y + anchor.height;\n return {\n top: `${top + offset}px`,\n };\n};\nconst positionLeft = (anchor: RectCords, offset: number): PositionCSS => {\n const right = document.documentElement.clientWidth - anchor.x;\n return {\n right: `${right + offset}px`,\n };\n};\nconst positionAuto = (\n align: Align,\n anchor: RectCords,\n target: RectCords,\n offset: number,\n alignOffset: number\n): PositionCSS => {\n if (canPositionRight(anchor, target, offset)) {\n return {\n ...positionRight(anchor, offset),\n ...alignY(align, anchor, target, alignOffset),\n };\n }\n if (canPositionBottom(anchor, target, offset)) {\n return {\n ...positionBottom(anchor, offset),\n ...alignX(align, anchor, target, alignOffset),\n };\n }\n if (canPositionLeft(anchor, target, offset)) {\n return {\n ...positionLeft(anchor, offset),\n ...alignY(align, anchor, target, alignOffset),\n };\n }\n if (canPositionTop(anchor, target, offset)) {\n return {\n ...positionTop(anchor, offset),\n ...alignX(align, anchor, target, alignOffset),\n };\n }\n return {\n ...alignX(align, anchor, target, alignOffset),\n };\n};\n\nexport const getRelativeFixedPosition = (\n anchor: RectCords,\n target: RectCords,\n position: Position,\n align: Align,\n offset: number,\n alignOffset: number\n): PositionCSS => {\n if (position === \"Top\" && canPositionTop(anchor, target, offset)) {\n return {\n ...positionTop(anchor, offset),\n ...alignX(align, anchor, target, alignOffset),\n };\n }\n if (position === \"Right\" && canPositionRight(anchor, target, offset)) {\n return {\n ...positionRight(anchor, offset),\n ...alignY(align, anchor, target, alignOffset),\n };\n }\n if (position === \"Bottom\" && canPositionBottom(anchor, target, offset)) {\n return {\n ...positionBottom(anchor, offset),\n ...alignX(align, anchor, target, alignOffset),\n };\n }\n\n if (position === \"Left\" && canPositionLeft(anchor, target, offset)) {\n return {\n ...positionLeft(anchor, offset),\n ...alignY(align, anchor, target, alignOffset),\n };\n }\n\n return positionAuto(align, anchor, target, offset, alignOffset);\n};\n\nexport const percent = (min: number, max: number, value: number) =>\n ((value - min) / (max - min)) * 100;\n","import { ElementType, forwardRef, ReactElement } from \"react\";\nimport { AsInProps, AsOutProps, RefOfType } from \"./types\";\n\nexport const as = <DefaultType extends ElementType, ExtraProps = object>(\n fc: (\n props: AsInProps<DefaultType, ExtraProps>,\n ref: RefOfType<DefaultType>\n ) => ReactElement | null\n) =>\n forwardRef(fc) as unknown as <T extends ElementType = DefaultType>(\n props: AsOutProps<T, ExtraProps>\n ) => ReturnType<typeof fc>;\n","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n\n return target;\n}\n\nvar shouldApplyCompound = (compoundCheck, selections, defaultVariants) => {\n for (var key of Object.keys(compoundCheck)) {\n var _selections$key;\n\n if (compoundCheck[key] !== ((_selections$key = selections[key]) !== null && _selections$key !== void 0 ? _selections$key : defaultVariants[key])) {\n return false;\n }\n }\n\n return true;\n};\n\nvar createRuntimeFn = config => options => {\n var className = config.defaultClassName;\n\n var selections = _objectSpread2(_objectSpread2({}, config.defaultVariants), options);\n\n for (var variantName in selections) {\n var _selections$variantNa;\n\n var variantSelection = (_selections$variantNa = selections[variantName]) !== null && _selections$variantNa !== void 0 ? _selections$variantNa : config.defaultVariants[variantName];\n\n if (variantSelection != null) {\n var selection = variantSelection;\n\n if (typeof selection === 'boolean') {\n // @ts-expect-error\n selection = selection === true ? 'true' : 'false';\n }\n\n var selectionClassName = // @ts-expect-error\n config.variantClassNames[variantName][selection];\n\n if (selectionClassName) {\n className += ' ' + selectionClassName;\n }\n }\n }\n\n for (var [compoundCheck, compoundClassName] of config.compoundVariants) {\n if (shouldApplyCompound(compoundCheck, selections, config.defaultVariants)) {\n className += ' ' + compoundClassName;\n }\n }\n\n return className;\n};\n\nexport { createRuntimeFn };\n","import classNames from \"classnames\";\nimport React from \"react\";\nimport { as } from \"../as\";\nimport * as css from \"./Avatar.css\";\n\nexport const Avatar = as<\"span\", css.AvatarVariants>(\n ({ as: AsAvatar = \"span\", size, radii, activity, className, ...props }, ref) => (\n <AsAvatar\n className={classNames(css.Avatar({ size, radii, activity }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n\nexport const AvatarImage = as<\"img\">(({ as: AsAvatarImage = \"img\", className, ...props }, ref) => (\n <AsAvatarImage className={classNames(css.AvatarImage, className)} {...props} ref={ref} />\n));\n\nexport const AvatarFallback = as<\"span\">(\n ({ as: AsAvatarFallback = \"span\", className, ...props }, ref) => (\n <AsAvatarFallback className={classNames(css.AvatarFallback, className)} {...props} ref={ref} />\n )\n);\n","import classNames from \"classnames\";\nimport React from \"react\";\n\nimport { as } from \"../as\";\nimport * as css from \"./Badge.css\";\n\nexport const Badge = as<\"span\", css.BadgeVariants>(\n ({ as: AsBadge = \"span\", className, size, variant, fill, radii, outlined, ...props }, ref) => (\n <AsBadge\n className={classNames(css.Badge({ size, variant, fill, radii, outlined }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import classNames from \"classnames\";\nimport React from \"react\";\nimport { as } from \"../as\";\n\nimport * as css from \"./Box.css\";\n\nexport const Box = as<\"div\", css.BoxVariants>(\n (\n {\n as: AsBox = \"div\",\n className,\n display,\n direction,\n wrap,\n justifyContent,\n justifyItems,\n justifySelf,\n alignContent,\n alignItems,\n alignSelf,\n gap,\n grow,\n shrink,\n basis,\n ...props\n },\n ref\n ) => (\n <AsBox\n className={classNames(\n css.Box({\n display,\n direction,\n wrap,\n justifyContent,\n justifyItems,\n justifySelf,\n alignContent,\n alignItems,\n alignSelf,\n gap,\n grow,\n shrink,\n basis,\n }),\n className\n )}\n {...props}\n ref={ref}\n />\n )\n);\n","import React, { ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport * as css from \"./Button.css\";\n\ntype ButtonProps = {\n before?: ReactNode;\n after?: ReactNode;\n};\n\nexport const Button = as<\"button\", css.ButtonVariants & ButtonProps>(\n (\n {\n as: AsButton = \"button\",\n className,\n size,\n variant,\n fill,\n outlined,\n radii,\n before,\n after,\n children,\n ...props\n },\n ref\n ) => (\n <AsButton\n className={classNames(css.Button({ size, variant, fill, outlined, radii }), className)}\n data-ui-before={before ? true : undefined}\n data-ui-after={after ? true : undefined}\n {...props}\n ref={ref}\n >\n {before}\n {children}\n {after}\n </AsButton>\n )\n);\n","import React, { forwardRef, SVGAttributes } from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Icon.css\";\n\nimport { IconSrc } from \"./Icons\";\n\nexport type IconProps = SVGAttributes<SVGElement> & {\n filled?: boolean;\n src: IconSrc;\n};\nexport const Icon = forwardRef<SVGSVGElement, IconProps & css.IconVariants>(\n ({ className, size, filled = false, src, ...props }, ref) => (\n <svg\n className={classNames(css.Icon({ size }), className)}\n focusable=\"false\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n ref={ref}\n >\n {src(filled)}\n </svg>\n )\n);\n","// Generated by scripts/generate-material-symbols.mjs from Google's Apache-2.0 sources.\nimport React from \"react\";\n\nexport type IconSrc = (filled?: boolean) => JSX.Element;\nexport type IconName =\n | \"Home\"\n | \"User\"\n | \"UserPlus\"\n | \"Mail\"\n | \"MailPlus\"\n | \"Star\"\n | \"PlusCircle\"\n | \"Explore\"\n | \"Smile\"\n | \"SmilePlus\"\n | \"Leaf\"\n | \"Sticker\"\n | \"Delete\"\n | \"Phone\"\n | \"PhoneDown\"\n | \"Headphone\"\n | \"HeadphoneMute\"\n | \"Send\"\n | \"Bell\"\n | \"BellRing\"\n | \"BellPing\"\n | \"BellMute\"\n | \"Message\"\n | \"MessageUnread\"\n | \"Setting\"\n | \"Search\"\n | \"Heart\"\n | \"Play\"\n | \"Pause\"\n | \"Sun\"\n | \"Photo\"\n | \"Lock\"\n | \"Vlc\"\n | \"Flag\"\n | \"Ball\"\n | \"Bulb\"\n | \"Terminal\"\n | \"Pencil\"\n | \"Info\"\n | \"Shield\"\n | \"ShieldLock\"\n | \"ShieldUser\"\n | \"Cup\"\n | \"Pin\"\n | \"VolumeHigh\"\n | \"VolumeHighLock\"\n | \"VolumeHighGlobe\"\n | \"VolumeMute\"\n | \"File\"\n | \"Category\"\n | \"Peace\"\n | \"Eye\"\n | \"EyeBlind\"\n | \"Warning\"\n | \"Funnel\"\n | \"Bookmark\"\n | \"Inbox\"\n | \"Thread\"\n | \"ThreadPlus\"\n | \"ThreadUnread\"\n | \"ThreadReply\"\n | \"Monitor\"\n | \"ScreenShare\"\n | \"Server\"\n | \"Prohibited\"\n | \"NoEntry\"\n | \"Mic\"\n | \"MicMute\"\n | \"VideoCamera\"\n | \"VideoCameraMute\"\n | \"Hash\"\n | \"HashLock\"\n | \"HashGlobe\"\n | \"HashSearch\"\n | \"HashPlus\"\n | \"Space\"\n | \"SpaceLock\"\n | \"SpaceGlobe\"\n | \"SpaceSearch\"\n | \"SpacePlus\"\n | \"ChevronRight\"\n | \"ChevronLeft\"\n | \"ChevronTop\"\n | \"ChevronBottom\"\n | \"Plus\"\n | \"Minus\"\n | \"Cross\"\n | \"VerticalDots\"\n | \"HorizontalDots\"\n | \"Check\"\n | \"CheckTwice\"\n | \"Download\"\n | \"External\"\n | \"Clock\"\n | \"RecentClock\"\n | \"Power\"\n | \"ReplyArrow\"\n | \"ArrowGoRight\"\n | \"ArrowGoRightPlus\"\n | \"ArrowGoRightCross\"\n | \"ArrowGoLeft\"\n | \"Markdown\"\n | \"Attachment\"\n | \"Alphabet\"\n | \"AlphabetUnderline\"\n | \"Text\"\n | \"Heading1\"\n | \"Heading2\"\n | \"Heading3\"\n | \"Bold\"\n | \"Italic\"\n | \"Underline\"\n | \"Strike\"\n | \"Link\"\n | \"Code\"\n | \"BlockCode\"\n | \"BlockQuote\"\n | \"OrderList\"\n | \"UnorderList\"\n | \"Mention\"\n | \"Filter\"\n | \"Sort\"\n | \"ArrowUpDown\"\n | \"ArrowRight\"\n | \"ArrowLeft\"\n | \"ArrowTop\"\n | \"ArrowBottom\"\n | \"ArrowDropRight\"\n | \"ArrowDropLeft\"\n | \"ArrowDropTop\"\n | \"ArrowDropBottom\"\n | \"Reload\"\n | \"Globe\"\n | \"Agent\"\n | \"People\"\n | \"PullRequest\"\n | \"Smartphone\"\n | \"Unavailable\"\n | \"Admin\"\n | \"Board\"\n | \"App\"\n | \"Expand\"\n | \"Collapse\";\n\nconst symbols = {\n home: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-200h120v-200q0-17 11.5-28.5T400-440h160q17 0 28.5 11.5T600-400v200h120v-360L480-740 240-560v360Zm-80 0v-360q0-19 8.5-36t23.5-28l240-180q21-16 48-16t48 16l240 180q15 11 23.5 28t8.5 36v360q0 33-23.5 56.5T720-120H560q-17 0-28.5-11.5T520-160v-200h-80v200q0 17-11.5 28.5T400-120H240q-33 0-56.5-23.5T160-200Zm320-270Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-200v-360q0-19 8.5-36t23.5-28l240-180q21-16 48-16t48 16l240 180q15 11 23.5 28t8.5 36v360q0 33-23.5 56.5T720-120H600q-17 0-28.5-11.5T560-160v-200q0-17-11.5-28.5T520-400h-80q-17 0-28.5 11.5T400-360v200q0 17-11.5 28.5T360-120H240q-33 0-56.5-23.5T160-200Z\",\n ],\n },\n ],\n person: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-480q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47ZM160-240v-32q0-34 17.5-62.5T224-378q62-31 126-46.5T480-440q66 0 130 15.5T736-378q29 15 46.5 43.5T800-272v32q0 33-23.5 56.5T720-160H240q-33 0-56.5-23.5T160-240Zm80 0h480v-32q0-11-5.5-20T700-306q-54-27-109-40.5T480-360q-56 0-111 13.5T260-306q-9 5-14.5 14t-5.5 20v32Zm240-320q33 0 56.5-23.5T560-640q0-33-23.5-56.5T480-720q-33 0-56.5 23.5T400-640q0 33 23.5 56.5T480-560Zm0-80Zm0 400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-480q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47ZM160-240v-32q0-34 17.5-62.5T224-378q62-31 126-46.5T480-440q66 0 130 15.5T736-378q29 15 46.5 43.5T800-272v32q0 33-23.5 56.5T720-160H240q-33 0-56.5-23.5T160-240Z\",\n ],\n },\n ],\n person_add: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M720-520h-80q-17 0-28.5-11.5T600-560q0-17 11.5-28.5T640-600h80v-80q0-17 11.5-28.5T760-720q17 0 28.5 11.5T800-680v80h80q17 0 28.5 11.5T920-560q0 17-11.5 28.5T880-520h-80v80q0 17-11.5 28.5T760-400q-17 0-28.5-11.5T720-440v-80Zm-360 40q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47ZM40-240v-32q0-34 17.5-62.5T104-378q62-31 126-46.5T360-440q66 0 130 15.5T616-378q29 15 46.5 43.5T680-272v32q0 33-23.5 56.5T600-160H120q-33 0-56.5-23.5T40-240Zm80 0h480v-32q0-11-5.5-20T580-306q-54-27-109-40.5T360-360q-56 0-111 13.5T140-306q-9 5-14.5 14t-5.5 20v32Zm240-320q33 0 56.5-23.5T440-640q0-33-23.5-56.5T360-720q-33 0-56.5 23.5T280-640q0 33 23.5 56.5T360-560Zm0-80Zm0 400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M720-520h-80q-17 0-28.5-11.5T600-560q0-17 11.5-28.5T640-600h80v-80q0-17 11.5-28.5T760-720q17 0 28.5 11.5T800-680v80h80q17 0 28.5 11.5T920-560q0 17-11.5 28.5T880-520h-80v80q0 17-11.5 28.5T760-400q-17 0-28.5-11.5T720-440v-80Zm-360 40q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47ZM40-240v-32q0-34 17.5-62.5T104-378q62-31 126-46.5T360-440q66 0 130 15.5T616-378q29 15 46.5 43.5T680-272v32q0 33-23.5 56.5T600-160H120q-33 0-56.5-23.5T40-240Z\",\n ],\n },\n ],\n mail: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h640q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160Zm640-480L501-453q-5 3-10.5 4.5T480-447q-5 0-10.5-1.5T459-453L160-640v400h640v-400ZM480-520l320-200H160l320 200ZM160-640v10-59 1-32 32-.5 58.5-10 400-400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h640q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160Zm320-287q5 0 10.5-1.5T501-453l283-177q8-5 12-12.5t4-16.5q0-20-17-30t-35 1L480-520 212-688q-18-11-35-.5T160-659q0 10 4 17.5t12 11.5l283 177q5 3 10.5 4.5T480-447Z\",\n ],\n },\n ],\n mark_email_unread: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h360q17 0 28.5 11.5T560-760q0 17-11.5 28.5T520-720H160v480h640v-280q0-17 11.5-28.5T840-560q17 0 28.5 11.5T880-520v280q0 33-23.5 56.5T800-160H160Zm0-560v480-480Zm320 200 129-80q14-9 26.5-4.5T655-589q7 11 5 24t-16 22l-143 90q-10 6-21 6t-21-6L160-640v-80l320 200Zm280-120q-50 0-85-35t-35-85q0-50 35-85t85-35q50 0 85 35t35 85q0 50-35 85t-85 35Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M760-640q-50 0-85-35t-35-85q0-50 35-85t85-35q50 0 85 35t35 85q0 50-35 85t-85 35ZM160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h364q16 0 26.5 12t9.5 28q0 11 1 20.5t3 19.5q7 32 23 59.5t39 48.5l-146 92-268-168q-17-11-34.5-1T160-659q0 9 4 16.5t12 12.5l283 177q10 6 21 6t21-6l190-119q17 6 34 9t35 3q18 0 36-3t35-10q17-7 33 2t16 26v305q0 33-23.5 56.5T800-160H160Z\",\n ],\n },\n ],\n star: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m354-287 126-76 126 77-33-144 111-96-146-13-58-136-58 135-146 13 111 97-33 143Zm126 18L314-169q-11 7-23 6t-21-8q-9-7-14-17.5t-2-23.5l44-189-147-127q-10-9-12.5-20.5T140-571q4-11 12-18t22-9l194-17 75-178q5-12 15.5-18t21.5-6q11 0 21.5 6t15.5 18l75 178 194 17q14 2 22 9t12 18q4 11 1.5 22.5T809-528L662-401l44 189q3 13-2 23.5T690-171q-9 7-21 8t-23-6L480-269Zm0-201Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-269 314-169q-11 7-23 6t-21-8q-9-7-14-17.5t-2-23.5l44-189-147-127q-10-9-12.5-20.5T140-571q4-11 12-18t22-9l194-17 75-178q5-12 15.5-18t21.5-6q11 0 21.5 6t15.5 18l75 178 194 17q14 2 22 9t12 18q4 11 1.5 22.5T809-528L662-401l44 189q3 13-2 23.5T690-171q-9 7-21 8t-23-6L480-269Z\",\n ],\n },\n ],\n add_circle: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-440v120q0 17 11.5 28.5T480-280q17 0 28.5-11.5T520-320v-120h120q17 0 28.5-11.5T680-480q0-17-11.5-28.5T640-520H520v-120q0-17-11.5-28.5T480-680q-17 0-28.5 11.5T440-640v120H320q-17 0-28.5 11.5T280-480q0 17 11.5 28.5T320-440h120Zm40 360q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-440v120q0 17 11.5 28.5T480-280q17 0 28.5-11.5T520-320v-120h120q17 0 28.5-11.5T680-480q0-17-11.5-28.5T640-520H520v-120q0-17-11.5-28.5T480-680q-17 0-28.5 11.5T440-640v120H320q-17 0-28.5 11.5T280-480q0 17 11.5 28.5T320-440h120Zm40 360q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z\",\n ],\n },\n ],\n explore: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-440q-17 0-28.5-11.5T440-480q0-17 11.5-28.5T480-520q17 0 28.5 11.5T520-480q0 17-11.5 28.5T480-440Zm0 360q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320ZM297-277l250-117q6-3 11-8t8-11l117-250q5-10-2.5-17.5T663-683L413-566q-6 3-11 8t-8 11L277-297q-5 10 2.5 17.5T297-277Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-440q-17 0-28.5-11.5T440-480q0-17 11.5-28.5T480-520q17 0 28.5 11.5T520-480q0 17-11.5 28.5T480-440Zm0 360q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0 0q-134 0-227-93t-93-227q0-134 93-227t227-93q134 0 227 93t93 227q0 134-93 227t-227 93Zm67-234q6-3 11-8t8-11l117-250q5-10-2.5-17.5T663-683L413-566q-6 3-11 8t-8 11L277-297q-5 10 2.5 17.5T297-277l250-117Z\",\n ],\n },\n ],\n sentiment_satisfied: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-260q53 0 100.5-23t76.5-67q11-17 3-33.5T634-400q-8 0-14.5 3.5T609-386q-23 31-57 48.5T480-320q-38 0-72-17.5T351-386q-5-7-11.5-10.5T325-400q-18 0-26 16t3 32q29 45 76.5 68.5T480-260Zm140-260q25 0 42.5-17.5T680-580q0-25-17.5-42.5T620-640q-25 0-42.5 17.5T560-580q0 25 17.5 42.5T620-520Zm-280 0q25 0 42.5-17.5T400-580q0-25-17.5-42.5T340-640q-25 0-42.5 17.5T280-580q0 25 17.5 42.5T340-520ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-400Zm0 320q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-260q53 0 100.5-23t76.5-67q11-17 3-33.5T634-400q-8 0-14.5 3.5T609-386q-23 31-57 48.5T480-320q-38 0-72-17.5T351-386q-5-7-11.5-10.5T325-400q-18 0-26 16t3 32q29 45 76.5 68.5T480-260Zm140-260q25 0 42.5-17.5T680-580q0-25-17.5-42.5T620-640q-25 0-42.5 17.5T560-580q0 25 17.5 42.5T620-520Zm-280 0q25 0 42.5-17.5T400-580q0-25-17.5-42.5T340-640q-25 0-42.5 17.5T280-580q0 25 17.5 42.5T340-520ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z\",\n ],\n },\n ],\n add_reaction: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-480Zm0 400q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q33 0 65 5t62 15q23 8 29 23.5t1 30.5q-5 15-18.5 23.5T588-781q-26-9-52.5-14t-55.5-5q-133 0-226.5 93.5T160-480q0 133 93.5 226.5T480-160q133 0 226.5-93.5T800-480q0-18-2-36t-6-35q-5-19 5-31t25-15q15-3 29.5 4.5T871-564q5 20 7 41t2 43q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm320-680h-40q-17 0-28.5-11.5T720-800q0-17 11.5-28.5T760-840h40v-40q0-17 11.5-28.5T840-920q17 0 28.5 11.5T880-880v40h40q17 0 28.5 11.5T960-800q0 17-11.5 28.5T920-760h-40v40q0 17-11.5 28.5T840-680q-17 0-28.5-11.5T800-720v-40ZM620-520q25 0 42.5-17.5T680-580q0-25-17.5-42.5T620-640q-25 0-42.5 17.5T560-580q0 25 17.5 42.5T620-520Zm-280 0q25 0 42.5-17.5T400-580q0-25-17.5-42.5T340-640q-25 0-42.5 17.5T280-580q0 25 17.5 42.5T340-520Zm140 260q58 0 107-28t79-76q6-12-1-24t-21-12H316q-14 0-21 12t-1 24q30 48 79.5 76T480-260Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q34 0 66 5t63 16q14 5 22.5 17.5T640-814v57q0 32 22.5 54.5T717-680h3v23q0 23 17 40t40 17h51q15 0 27 9t16 24q5 21 7 42.5t2 44.5q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-180q58 0 107-28t79-76q6-12-1-24t-21-12H316q-14 0-21 12t-1 24q30 48 79.5 76T480-260ZM340-520q25 0 42.5-17.5T400-580q0-25-17.5-42.5T340-640q-25 0-42.5 17.5T280-580q0 25 17.5 42.5T340-520Zm280 0q25 0 42.5-17.5T680-580q0-25-17.5-42.5T620-640q-25 0-42.5 17.5T560-580q0 25 17.5 42.5T620-520Zm180-240h-40q-17 0-28.5-11.5T720-800q0-17 11.5-28.5T760-840h40v-40q0-17 11.5-28.5T840-920q17 0 28.5 11.5T880-880v40h40q17 0 28.5 11.5T960-800q0 17-11.5 28.5T920-760h-40v40q0 17-11.5 28.5T840-680q-17 0-28.5-11.5T800-720v-40Z\",\n ],\n },\n ],\n eco: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M216-176q-45-45-70.5-104T120-402q0-63 24-124.5T222-642q60-60 169.5-91T675-759q26 1 48 11t39 27q17 17 27 39.5t11 48.5q2 82-4.5 151.5t-21 125.5q-14.5 56-37 99.5T684-182q-53 53-112.5 77.5T450-80q-65 0-127-25.5T216-176Zm112-16q29 17 59.5 24.5T450-160q46 0 91-18.5t86-59.5q18-18 36.5-50.5t32-85Q709-426 716-500.5t2-177.5q-49-2-110.5-1.5T485-670q-61 9-116 29t-90 55q-45 45-62 89t-17 85q0 59 22.5 103.5T262-246q42-80 111-153.5T534-520q-72 63-125.5 142.5T328-192Zm0 0Zm0 0Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M450-80q-33 0-66.5-7.5T315-109q12-121 70-226t149-185q-110 56-190.5 148T231-162q-4-3-7.5-6.5L216-176q-47-47-71.5-105T120-402q0-68 27-130t75-110q70-70 173.5-98T675-760q26 1 48 11.5t39 27.5q17 17 27 39.5t12 48.5q6 180-21 281t-96 170q-49 49-109.5 75.5T450-80Z\",\n ],\n },\n ],\n sticky_note_2: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-200h360v-160q0-17 11.5-28.5T600-400h160v-360H200v560Zm0 80q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v367q0 16-6 30.5T817-337L623-143q-11 11-25.5 17t-30.5 6H200Zm240-280H320q-17 0-28.5-11.5T280-440q0-17 11.5-28.5T320-480h120q17 0 28.5 11.5T480-440q0 17-11.5 28.5T440-400Zm200-160H320q-17 0-28.5-11.5T280-600q0-17 11.5-28.5T320-640h320q17 0 28.5 11.5T680-600q0 17-11.5 28.5T640-560ZM200-200v-560 560Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m560-200 200-200H600q-17 0-28.5 11.5T560-360v160Zm-360 80q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v367q0 16-6 30.5T817-337L623-143q-11 11-25.5 17t-30.5 6H200Zm120-280h120q17 0 28.5-11.5T480-440q0-17-11.5-28.5T440-480H320q-17 0-28.5 11.5T280-440q0 17 11.5 28.5T320-400Zm0-160h320q17 0 28.5-11.5T680-600q0-17-11.5-28.5T640-640H320q-17 0-28.5 11.5T280-600q0 17 11.5 28.5T320-560Z\",\n ],\n },\n ],\n delete: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-120q-33 0-56.5-23.5T200-200v-520q-17 0-28.5-11.5T160-760q0-17 11.5-28.5T200-800h160q0-17 11.5-28.5T400-840h160q17 0 28.5 11.5T600-800h160q17 0 28.5 11.5T800-760q0 17-11.5 28.5T760-720v520q0 33-23.5 56.5T680-120H280Zm400-600H280v520h400v-520ZM400-280q17 0 28.5-11.5T440-320v-280q0-17-11.5-28.5T400-640q-17 0-28.5 11.5T360-600v280q0 17 11.5 28.5T400-280Zm160 0q17 0 28.5-11.5T600-320v-280q0-17-11.5-28.5T560-640q-17 0-28.5 11.5T520-600v280q0 17 11.5 28.5T560-280ZM280-720v520-520Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-120q-33 0-56.5-23.5T200-200v-520q-17 0-28.5-11.5T160-760q0-17 11.5-28.5T200-800h160q0-17 11.5-28.5T400-840h160q17 0 28.5 11.5T600-800h160q17 0 28.5 11.5T800-760q0 17-11.5 28.5T760-720v520q0 33-23.5 56.5T680-120H280Zm120-160q17 0 28.5-11.5T440-320v-280q0-17-11.5-28.5T400-640q-17 0-28.5 11.5T360-600v280q0 17 11.5 28.5T400-280Zm160 0q17 0 28.5-11.5T600-320v-280q0-17-11.5-28.5T560-640q-17 0-28.5 11.5T520-600v280q0 17 11.5 28.5T560-280Z\",\n ],\n },\n ],\n call: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M798-120q-125 0-247-54.5T329-329Q229-429 174.5-551T120-798q0-18 12-30t30-12h162q14 0 25 9.5t13 22.5l26 140q2 16-1 27t-11 19l-97 98q20 37 47.5 71.5T387-386q31 31 65 57.5t72 48.5l94-94q9-9 23.5-13.5T670-390l138 28q14 4 23 14.5t9 23.5v162q0 18-12 30t-30 12ZM241-600l66-66-17-94h-89q5 41 14 81t26 79Zm358 358q39 17 79.5 27t81.5 13v-88l-94-19-67 67ZM241-600Zm358 358Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M798-120q-125 0-247-54.5T329-329Q229-429 174.5-551T120-798q0-18 12-30t30-12h162q14 0 25 9.5t13 22.5l26 140q2 16-1 27t-11 19l-97 98q20 37 47.5 71.5T387-386q31 31 65 57.5t72 48.5l94-94q9-9 23.5-13.5T670-390l138 28q14 4 23 14.5t9 23.5v162q0 18-12 30t-30 12Z\",\n ],\n },\n ],\n call_end: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m136-304-92-90q-12-12-12-28t12-28q88-95 203-142.5T480-640q118 0 232.5 47.5T916-450q12 12 12 28t-12 28l-92 90q-11 11-25.5 12t-26.5-8l-116-88q-8-6-12-14t-4-18v-114q-38-12-78-19t-82-7q-42 0-82 7t-78 19v114q0 10-4 18t-12 14l-116 88q-12 9-26.5 8T136-304Zm104-198q-29 15-56 34.5T128-424l40 40 72-56v-62Zm480 2v60l72 56 40-38q-29-26-56-45t-56-33Zm-480-2Zm480 2Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-640q118 0 232.5 47.5T916-450q12 12 12 28t-12 28l-92 90q-11 11-25.5 12t-26.5-8l-116-88q-8-6-12-14t-4-18v-114q-38-12-78-19t-82-7q-42 0-82 7t-78 19v114q0 10-4 18t-12 14l-116 88q-12 9-26.5 8T136-304l-92-90q-12-12-12-28t12-28q88-95 203-142.5T480-640Z\",\n ],\n },\n ],\n headphones: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-120h-80q-33 0-56.5-23.5T120-200v-280q0-75 28.5-140.5t77-114q48.5-48.5 114-77T480-840q75 0 140.5 28.5t114 77q48.5 48.5 77 114T840-480v280q0 33-23.5 56.5T760-120h-80q-33 0-56.5-23.5T600-200v-160q0-33 23.5-56.5T680-440h80v-40q0-117-81.5-198.5T480-760q-117 0-198.5 81.5T200-480v40h80q33 0 56.5 23.5T360-360v160q0 33-23.5 56.5T280-120Zm0-240h-80v160h80v-160Zm400 0v160h80v-160h-80Zm-400 0h-80 80Zm400 0h80-80Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-120h-80q-33 0-56.5-23.5T120-200v-280q0-75 28.5-140.5t77-114q48.5-48.5 114-77T480-840q75 0 140.5 28.5t114 77q48.5 48.5 77 114T840-480v280q0 33-23.5 56.5T760-120h-80q-33 0-56.5-23.5T600-200v-160q0-33 23.5-56.5T680-440h80v-40q0-117-81.5-198.5T480-760q-117 0-198.5 81.5T200-480v40h80q33 0 56.5 23.5T360-360v160q0 33-23.5 56.5T280-120Z\",\n ],\n },\n ],\n headset_off: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M800-280q-15 0-27.5-10.5T760-321v-79h-80q-20 0-30-12.5T640-440q0-15 10-27.5t30-12.5h80v-40q0-118-82-199t-198-81q-44 0-83.5 12.5T324-752l-58-56q45-35 99.5-53.5T480-880q74 0 139.5 28T734-775q49 49 77.5 114.5T840-520v200q0 20-12.5 30T800-280ZM520-40q-17 0-28.5-11.5T480-80q0-17 11.5-28.5T520-120h207l-40-40h-7q-33 0-56.5-23.5T600-240v-7L221-626q-9 24-15 51.5t-6 54.5v40h80q33 0 56.5 23.5T360-400v160q0 33-23.5 56.5T280-160h-80q-33 0-56.5-23.5T120-240v-280q0-45 10.5-87t30.5-80L56-792q-12-12-12-28t12-28q12-11 28-11.5t28 11.5L868-91q14 14 6.5 32.5T847-40H520ZM200-400v160h80v-160h-80Zm0 0h80-80Zm480 0h80-80Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M840-331q0 40-29.5 39T760-314l-98-98q-19-19-8.5-43.5T691-480h69v-40q0-118-82-199t-198-81q-44 0-83.5 12.5T324-752l-58-56q45-35 99.5-53.5T480-880q74 0 139.5 28T734-775q49 49 77.5 114.5T840-520v189ZM520-40q-17 0-28.5-11.5T480-80q0-17 11.5-28.5T520-120h207l-40-40h-7q-33 0-56.5-23.5T600-240v-7L221-626q-9 24-15 51.5t-6 54.5v40h80q33 0 56.5 23.5T360-400v160q0 33-23.5 56.5T280-160h-80q-33 0-56.5-23.5T120-240v-280q0-45 10.5-87t30.5-80L56-792q-12-12-12-28t12-28q12-11 28-11.5t28 11.5L868-91q14 14 6.5 32.5T847-40H520Z\",\n ],\n },\n ],\n arrow_upward: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-647 244-451q-12 12-28 11.5T188-452q-11-12-11.5-28t11.5-28l264-264q6-6 13-8.5t15-2.5q8 0 15 2.5t13 8.5l264 264q11 11 11 27.5T772-452q-12 12-28.5 12T715-452L520-647v447q0 17-11.5 28.5T480-160q-17 0-28.5-11.5T440-200v-447Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-647 244-451q-12 12-28 11.5T188-452q-11-12-11.5-28t11.5-28l264-264q6-6 13-8.5t15-2.5q8 0 15 2.5t13 8.5l264 264q11 11 11 27.5T772-452q-12 12-28.5 12T715-452L520-647v447q0 17-11.5 28.5T480-160q-17 0-28.5-11.5T440-200v-447Z\",\n ],\n },\n ],\n notifications: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h40v-280q0-83 50-147.5T420-792v-28q0-25 17.5-42.5T480-880q25 0 42.5 17.5T540-820v28q80 20 130 84.5T720-560v280h40q17 0 28.5 11.5T800-240q0 17-11.5 28.5T760-200H200Zm280-300Zm0 420q-33 0-56.5-23.5T400-160h160q0 33-23.5 56.5T480-80ZM320-280h320v-280q0-66-47-113t-113-47q-66 0-113 47t-47 113v280Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h40v-280q0-83 50-147.5T420-792v-28q0-25 17.5-42.5T480-880q25 0 42.5 17.5T540-820v28q80 20 130 84.5T720-560v280h40q17 0 28.5 11.5T800-240q0 17-11.5 28.5T760-200H200ZM480-80q-33 0-56.5-23.5T400-160h160q0 33-23.5 56.5T480-80Z\",\n ],\n },\n ],\n notifications_active: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h40v-280q0-83 50-147.5T420-792v-28q0-25 17.5-42.5T480-880q25 0 42.5 17.5T540-820v28q80 20 130 84.5T720-560v280h40q17 0 28.5 11.5T800-240q0 17-11.5 28.5T760-200H200Zm280-300Zm0 420q-33 0-56.5-23.5T400-160h160q0 33-23.5 56.5T480-80ZM320-280h320v-280q0-66-47-113t-113-47q-66 0-113 47t-47 113v280ZM120-560q-17 0-28.5-13T82-603q8-75 42-139.5T211-855q13-11 29.5-10t26.5 15q10 14 8 30t-15 28q-39 37-64 86t-33 106q-2 17-14 28.5T120-560Zm720 0q-17 0-29-11.5T797-600q-8-57-33-106t-64-86q-13-12-15-28t8-30q10-14 26.5-15t29.5 10q53 48 87 112.5T878-603q2 17-9.5 30T840-560Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h40v-280q0-83 50-147.5T420-792v-28q0-25 17.5-42.5T480-880q25 0 42.5 17.5T540-820v28q80 20 130 84.5T720-560v280h40q17 0 28.5 11.5T800-240q0 17-11.5 28.5T760-200H200ZM480-80q-33 0-56.5-23.5T400-160h160q0 33-23.5 56.5T480-80ZM120-560q-17 0-28.5-13T82-603q8-75 42-139.5T211-855q13-11 29.5-10t26.5 15q10 14 8 30t-15 28q-39 37-64 86t-33 106q-2 17-14 28.5T120-560Zm720 0q-17 0-29-11.5T797-600q-8-57-33-106t-64-86q-13-12-15-28t8-30q10-14 26.5-15t29.5 10q53 48 87 112.5T878-603q2 17-9.5 30T840-560Z\",\n ],\n },\n ],\n notification_important: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h40v-280q0-83 50-147.5T420-792v-28q0-25 17.5-42.5T480-880q25 0 42.5 17.5T540-820v28q80 20 130 84.5T720-560v280h40q17 0 28.5 11.5T800-240q0 17-11.5 28.5T760-200H200Zm280-300Zm0 420q-33 0-56.5-23.5T400-160h160q0 33-23.5 56.5T480-80ZM320-280h320v-280q0-66-47-113t-113-47q-66 0-113 47t-47 113v280Zm160-160q17 0 28.5-11.5T520-480v-120q0-17-11.5-28.5T480-640q-17 0-28.5 11.5T440-600v120q0 17 11.5 28.5T480-440Zm0 120q17 0 28.5-11.5T520-360q0-17-11.5-28.5T480-400q-17 0-28.5 11.5T440-360q0 17 11.5 28.5T480-320Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h40v-280q0-83 50-147.5T420-792v-28q0-25 17.5-42.5T480-880q25 0 42.5 17.5T540-820v28q80 20 130 84.5T720-560v280h40q17 0 28.5 11.5T800-240q0 17-11.5 28.5T760-200H200ZM480-80q-33 0-56.5-23.5T400-160h160q0 33-23.5 56.5T480-80Zm0-360q17 0 28.5-11.5T520-480v-120q0-17-11.5-28.5T480-640q-17 0-28.5 11.5T440-600v120q0 17 11.5 28.5T480-440Zm0 120q17 0 28.5-11.5T520-360q0-17-11.5-28.5T480-400q-17 0-28.5 11.5T440-360q0 17 11.5 28.5T480-320Z\",\n ],\n },\n ],\n notifications_off: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M646-200H200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h40v-280q0-33 8.5-65t25.5-61l60 60q-7 16-10.5 32.5T320-560v280h248L84-764q-11-11-11-28t11-28q11-11 28-11t28 11l680 680q11 11 11.5 27.5T820-84q-11 11-28 11t-28-11L646-200ZM540-792q80 20 130 84.5T720-560v110q0 20-12.5 30T680-410q-15 0-27.5-10.5T640-451v-109q0-66-47-113t-113-47q-16 0-34 4t-32 10q-17 7-33.5 3T355-722q-8-13-5.5-27.5T365-771q13-7 27-12t28-9v-28q0-25 17.5-42.5T480-880q25 0 42.5 17.5T540-820v28Zm-96 388Zm36 324q-30 0-53.5-16.5T403-141q0-8 6.5-13.5T424-160h112q8 0 14.5 5.5T557-141q0 28-23.5 44.5T480-80Zm33-481Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M646-200H200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h40v-280q0-33 8.5-65t25.5-61l126 126H288L84-764q-11-11-11-28t11-28q11-11 28-11t28 11l680 680q11 11 11.5 27.5T820-84q-11 11-28 11t-28-11L646-200Zm74-251q0 12-7 22t-18 15q-11 5-23 2.5T652-422L367-707q-7-7-10-15t-3-17q0-11 5.5-21.5T375-776q11-5 22-9t23-7v-28q0-25 17.5-42.5T480-880q25 0 42.5 17.5T540-820v28q80 20 130 85t50 147v109ZM480-80q-30 0-53.5-16.5T403-141q0-8 6.5-13.5T424-160h112q8 0 14.5 5.5T557-141q0 28-23.5 44.5T480-80Z\",\n ],\n },\n ],\n chat: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m240-240-92 92q-19 19-43.5 8.5T80-177v-623q0-33 23.5-56.5T160-880h640q33 0 56.5 23.5T880-800v480q0 33-23.5 56.5T800-240H240Zm-34-80h594v-480H160v525l46-45Zm-46 0v-480 480Zm120-80h240q17 0 28.5-11.5T560-440q0-17-11.5-28.5T520-480H280q-17 0-28.5 11.5T240-440q0 17 11.5 28.5T280-400Zm0-120h400q17 0 28.5-11.5T720-560q0-17-11.5-28.5T680-600H280q-17 0-28.5 11.5T240-560q0 17 11.5 28.5T280-520Zm0-120h400q17 0 28.5-11.5T720-680q0-17-11.5-28.5T680-720H280q-17 0-28.5 11.5T240-680q0 17 11.5 28.5T280-640Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m240-240-92 92q-19 19-43.5 8.5T80-177v-623q0-33 23.5-56.5T160-880h640q33 0 56.5 23.5T880-800v480q0 33-23.5 56.5T800-240H240Zm40-160h240q17 0 28.5-11.5T560-440q0-17-11.5-28.5T520-480H280q-17 0-28.5 11.5T240-440q0 17 11.5 28.5T280-400Zm0-120h400q17 0 28.5-11.5T720-560q0-17-11.5-28.5T680-600H280q-17 0-28.5 11.5T240-560q0 17 11.5 28.5T280-520Zm0-120h400q17 0 28.5-11.5T720-680q0-17-11.5-28.5T680-720H280q-17 0-28.5 11.5T240-680q0 17 11.5 28.5T280-640Z\",\n ],\n },\n ],\n mark_chat_unread: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m240-240-92 92q-19 19-43.5 8.5T80-177v-623q0-33 23.5-56.5T160-880h360q17 0 28.5 11.5T560-840q0 17-11.5 28.5T520-800H160v525l46-45h594v-280q0-17 11.5-28.5T840-640q17 0 28.5 11.5T880-600v280q0 33-23.5 56.5T800-240H240Zm520-480q-50 0-85-35t-35-85q0-50 35-85t85-35q50 0 85 35t35 85q0 50-35 85t-85 35Zm-600-80v480-480Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M760-720q-50 0-85-35t-35-85q0-50 35-85t85-35q50 0 85 35t35 85q0 50-35 85t-85 35ZM240-240l-92 92q-19 19-43.5 8.5T80-177v-623q0-33 23.5-56.5T160-880h364q16 0 26.5 12t9.5 28q0 45 19.5 85t54.5 69q26 21 58.5 33.5T760-640q18 0 36-3t35-10q17-7 33 2t16 26v305q0 33-23.5 56.5T800-240H240Z\",\n ],\n },\n ],\n settings: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M433-80q-27 0-46.5-18T363-142l-9-66q-13-5-24.5-12T307-235l-62 26q-25 11-50 2t-39-32l-47-82q-14-23-8-49t27-43l53-40q-1-7-1-13.5v-27q0-6.5 1-13.5l-53-40q-21-17-27-43t8-49l47-82q14-23 39-32t50 2l62 26q11-8 23-15t24-12l9-66q4-26 23.5-44t46.5-18h94q27 0 46.5 18t23.5 44l9 66q13 5 24.5 12t22.5 15l62-26q25-11 50-2t39 32l47 82q14 23 8 49t-27 43l-53 40q1 7 1 13.5v27q0 6.5-2 13.5l53 40q21 17 27 43t-8 49l-48 82q-14 23-39 32t-50-2l-60-26q-11 8-23 15t-24 12l-9 66q-4 26-23.5 44T527-80h-94Zm7-80h79l14-106q31-8 57.5-23.5T639-327l99 41 39-68-86-65q5-14 7-29.5t2-31.5q0-16-2-31.5t-7-29.5l86-65-39-68-99 42q-22-23-48.5-38.5T533-694l-13-106h-79l-14 106q-31 8-57.5 23.5T321-633l-99-41-39 68 86 64q-5 15-7 30t-2 32q0 16 2 31t7 30l-86 65 39 68 99-42q22 23 48.5 38.5T427-266l13 106Zm42-180q58 0 99-41t41-99q0-58-41-99t-99-41q-59 0-99.5 41T342-480q0 58 40.5 99t99.5 41Zm-2-140Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M433-80q-27 0-46.5-18T363-142l-9-66q-13-5-24.5-12T307-235l-62 26q-25 11-50 2t-39-32l-47-82q-14-23-8-49t27-43l53-40q-1-7-1-13.5v-27q0-6.5 1-13.5l-53-40q-21-17-27-43t8-49l47-82q14-23 39-32t50 2l62 26q11-8 23-15t24-12l9-66q4-26 23.5-44t46.5-18h94q27 0 46.5 18t23.5 44l9 66q13 5 24.5 12t22.5 15l62-26q25-11 50-2t39 32l47 82q14 23 8 49t-27 43l-53 40q1 7 1 13.5v27q0 6.5-2 13.5l53 40q21 17 27 43t-8 49l-48 82q-14 23-39 32t-50-2l-60-26q-11 8-23 15t-24 12l-9 66q-4 26-23.5 44T527-80h-94Zm49-260q58 0 99-41t41-99q0-58-41-99t-99-41q-59 0-99.5 41T342-480q0 58 40.5 99t99.5 41Z\",\n ],\n },\n ],\n search: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M380-320q-109 0-184.5-75.5T120-580q0-109 75.5-184.5T380-840q109 0 184.5 75.5T640-580q0 44-14 83t-38 69l224 224q11 11 11 28t-11 28q-11 11-28 11t-28-11L532-372q-30 24-69 38t-83 14Zm0-80q75 0 127.5-52.5T560-580q0-75-52.5-127.5T380-760q-75 0-127.5 52.5T200-580q0 75 52.5 127.5T380-400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M380-320q-109 0-184.5-75.5T120-580q0-109 75.5-184.5T380-840q109 0 184.5 75.5T640-580q0 44-14 83t-38 69l224 224q11 11 11 28t-11 28q-11 11-28 11t-28-11L532-372q-30 24-69 38t-83 14Zm0-80q75 0 127.5-52.5T560-580q0-75-52.5-127.5T380-760q-75 0-127.5 52.5T200-580q0 75 52.5 127.5T380-400Z\",\n ],\n },\n ],\n favorite: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-147q-14 0-28.5-5T426-168l-69-63q-106-97-191.5-192.5T80-634q0-94 63-157t157-63q53 0 100 22.5t80 61.5q33-39 80-61.5T660-854q94 0 157 63t63 157q0 115-85 211T602-230l-68 62q-11 11-25.5 16t-28.5 5Zm-38-543q-29-41-62-62.5T300-774q-60 0-100 40t-40 100q0 52 37 110.5T285.5-410q51.5 55 106 103t88.5 79q34-31 88.5-79t106-103Q726-465 763-523.5T800-634q0-60-40-100t-100-40q-47 0-80 21.5T518-690q-7 10-17 15t-21 5q-11 0-21-5t-17-15Zm38 189Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-147q-14 0-28.5-5T426-168l-69-63q-106-97-191.5-192.5T80-634q0-94 63-157t157-63q53 0 100 22.5t80 61.5q33-39 80-61.5T660-854q94 0 157 63t63 157q0 115-85 211T602-230l-68 62q-11 11-25.5 16t-28.5 5Z\",\n ],\n },\n ],\n play_arrow: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M320-273v-414q0-17 12-28.5t28-11.5q5 0 10.5 1.5T381-721l326 207q9 6 13.5 15t4.5 19q0 10-4.5 19T707-446L381-239q-5 3-10.5 4.5T360-233q-16 0-28-11.5T320-273Zm80-207Zm0 134 210-134-210-134v268Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M320-273v-414q0-17 12-28.5t28-11.5q5 0 10.5 1.5T381-721l326 207q9 6 13.5 15t4.5 19q0 10-4.5 19T707-446L381-239q-5 3-10.5 4.5T360-233q-16 0-28-11.5T320-273Z\",\n ],\n },\n ],\n pause: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M600-200q-33 0-56.5-23.5T520-280v-400q0-33 23.5-56.5T600-760h80q33 0 56.5 23.5T760-680v400q0 33-23.5 56.5T680-200h-80Zm-320 0q-33 0-56.5-23.5T200-280v-400q0-33 23.5-56.5T280-760h80q33 0 56.5 23.5T440-680v400q0 33-23.5 56.5T360-200h-80Zm320-80h80v-400h-80v400Zm-320 0h80v-400h-80v400Zm0-400v400-400Zm320 0v400-400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M640-200q-33 0-56.5-23.5T560-280v-400q0-33 23.5-56.5T640-760q33 0 56.5 23.5T720-680v400q0 33-23.5 56.5T640-200Zm-320 0q-33 0-56.5-23.5T240-280v-400q0-33 23.5-56.5T320-760q33 0 56.5 23.5T400-680v400q0 33-23.5 56.5T320-200Z\",\n ],\n },\n ],\n light_mode: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-360q50 0 85-35t35-85q0-50-35-85t-85-35q-50 0-85 35t-35 85q0 50 35 85t85 35Zm0 80q-83 0-141.5-58.5T280-480q0-83 58.5-141.5T480-680q83 0 141.5 58.5T680-480q0 83-58.5 141.5T480-280ZM80-440q-17 0-28.5-11.5T40-480q0-17 11.5-28.5T80-520h80q17 0 28.5 11.5T200-480q0 17-11.5 28.5T160-440H80Zm720 0q-17 0-28.5-11.5T760-480q0-17 11.5-28.5T800-520h80q17 0 28.5 11.5T920-480q0 17-11.5 28.5T880-440h-80ZM480-760q-17 0-28.5-11.5T440-800v-80q0-17 11.5-28.5T480-920q17 0 28.5 11.5T520-880v80q0 17-11.5 28.5T480-760Zm0 720q-17 0-28.5-11.5T440-80v-80q0-17 11.5-28.5T480-200q17 0 28.5 11.5T520-160v80q0 17-11.5 28.5T480-40ZM226-678l-43-42q-12-11-11.5-28t11.5-29q12-12 29-12t28 12l42 43q11 12 11 28t-11 28q-11 12-27.5 11.5T226-678Zm494 495-42-43q-11-12-11-28.5t11-27.5q11-12 27.5-11.5T734-282l43 42q12 11 11.5 28T777-183q-12 12-29 12t-28-12Zm-42-495q-12-11-11.5-27.5T678-734l42-43q11-12 28-11.5t29 11.5q12 12 12 29t-12 28l-43 42q-12 11-28 11t-28-11ZM183-183q-12-12-12-29t12-28l43-42q12-11 28.5-11t27.5 11q12 11 11.5 27.5T282-226l-42 43q-11 12-28 11.5T183-183Zm297-297Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-280q-83 0-141.5-58.5T280-480q0-83 58.5-141.5T480-680q83 0 141.5 58.5T680-480q0 83-58.5 141.5T480-280ZM80-440q-17 0-28.5-11.5T40-480q0-17 11.5-28.5T80-520h80q17 0 28.5 11.5T200-480q0 17-11.5 28.5T160-440H80Zm720 0q-17 0-28.5-11.5T760-480q0-17 11.5-28.5T800-520h80q17 0 28.5 11.5T920-480q0 17-11.5 28.5T880-440h-80ZM480-760q-17 0-28.5-11.5T440-800v-80q0-17 11.5-28.5T480-920q17 0 28.5 11.5T520-880v80q0 17-11.5 28.5T480-760Zm0 720q-17 0-28.5-11.5T440-80v-80q0-17 11.5-28.5T480-200q17 0 28.5 11.5T520-160v80q0 17-11.5 28.5T480-40ZM226-678l-43-42q-12-11-11.5-28t11.5-29q12-12 29-12t28 12l42 43q11 12 11 28t-11 28q-11 12-27.5 11.5T226-678Zm494 495-42-43q-11-12-11-28.5t11-27.5q11-12 27.5-11.5T734-282l43 42q12 11 11.5 28T777-183q-12 12-29 12t-28-12Zm-42-495q-12-11-11.5-27.5T678-734l42-43q11-12 28-11.5t29 11.5q12 12 12 29t-12 28l-43 42q-12 11-28 11t-28-11ZM183-183q-12-12-12-29t12-28l43-42q12-11 28.5-11t27.5 11q12 11 11.5 27.5T282-226l-42 43q-11 12-28 11.5T183-183Z\",\n ],\n },\n ],\n image: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-560H200v560Zm0 0v-560 560Zm80-80h400q12 0 18-11t-2-21L586-459q-6-8-16-8t-16 8L450-320l-74-99q-6-8-16-8t-16 8l-80 107q-8 10-2 21t18 11Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm80-160h400q12 0 18-11t-2-21L586-459q-6-8-16-8t-16 8L450-320l-74-99q-6-8-16-8t-16 8l-80 107q-8 10-2 21t18 11Z\",\n ],\n },\n ],\n lock: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-80q-33 0-56.5-23.5T160-160v-400q0-33 23.5-56.5T240-640h40v-80q0-83 58.5-141.5T480-920q83 0 141.5 58.5T680-720v80h40q33 0 56.5 23.5T800-560v400q0 33-23.5 56.5T720-80H240Zm0-80h480v-400H240v400Zm240-120q33 0 56.5-23.5T560-360q0-33-23.5-56.5T480-440q-33 0-56.5 23.5T400-360q0 33 23.5 56.5T480-280ZM360-640h240v-80q0-50-35-85t-85-35q-50 0-85 35t-35 85v80ZM240-160v-400 400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-80q-33 0-56.5-23.5T160-160v-400q0-33 23.5-56.5T240-640h40v-80q0-83 58.5-141.5T480-920q83 0 141.5 58.5T680-720v80h40q33 0 56.5 23.5T800-560v400q0 33-23.5 56.5T720-80H240Zm240-200q33 0 56.5-23.5T560-360q0-33-23.5-56.5T480-440q-33 0-56.5 23.5T400-360q0 33 23.5 56.5T480-280ZM360-640h240v-80q0-50-35-85t-85-35q-50 0-85 35t-35 85v80Z\",\n ],\n },\n ],\n movie: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m160-800 65 130q7 14 20 22t28 8q30 0 46-25.5t2-52.5l-41-82h80l65 130q7 14 20 22t28 8q30 0 46-25.5t2-52.5l-41-82h80l65 130q7 14 20 22t28 8q30 0 46-25.5t2-52.5l-41-82h120q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800Zm0 240v320h640v-320H160Zm0 0v320-320Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m160-800 65 130q7 14 20 22t28 8q30 0 46-25.5t2-52.5l-41-82h80l65 130q7 14 20 22t28 8q30 0 46-25.5t2-52.5l-41-82h80l65 130q7 14 20 22t28 8q30 0 46-25.5t2-52.5l-41-82h120q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800Z\",\n ],\n },\n ],\n flag: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-400v240q0 17-11.5 28.5T240-120q-17 0-28.5-11.5T200-160v-600q0-17 11.5-28.5T240-800h287q14 0 25 9t14 23l10 48h184q17 0 28.5 11.5T800-680v320q0 17-11.5 28.5T760-320H553q-14 0-25-9t-14-23l-10-48H280Zm306 0h134v-240H543q-14 0-25-9t-14-23l-10-48H280v240h257q14 0 25 9t14 23l10 48Zm-86-160Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-400v240q0 17-11.5 28.5T240-120q-17 0-28.5-11.5T200-160v-600q0-17 11.5-28.5T240-800h287q14 0 25 9t14 23l10 48h184q17 0 28.5 11.5T800-680v320q0 17-11.5 28.5T760-320H553q-14 0-25-9t-14-23l-10-48H280Z\",\n ],\n },\n ],\n sports_basketball: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M162-520h114q-6-38-23-71t-43-59q-18 29-30.5 61.5T162-520Zm522 0h114q-5-36-17.5-68.5T750-650q-26 26-43 59t-23 71ZM210-310q26-26 43-59t23-71H162q5 36 17.5 68.5T210-310Zm540 0q18-29 30.5-61.5T798-440H684q6 38 23 71t43 59ZM358-520h82v-278q-53 8-98.5 29.5T260-712q39 38 64.5 86.5T358-520Zm162 0h82q8-57 33.5-105.5T700-712q-36-35-81.5-56.5T520-798v278Zm-80 358v-278h-82q-8 57-33.5 105.5T260-248q36 35 81.5 56.5T440-162Zm80 0q53-8 98.5-29.5T700-248q-39-38-64.5-86.5T602-440h-82v278Zm-40-318Zm0 400q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M82-521q5-51 21-96.5t44-85.5q35 36 58.5 83.5T236-521H82Zm642 0q7-51 30-98t59-83q28 39 44 85t21 96H724ZM147-258q-28-39-44-84.5T82-439h154q-7 51-30.5 98T147-258Zm666 0q-36-36-59-83t-30-98h154q-5 50-21 96t-44 85ZM317-521q-8-72-39-133t-81-110q48-48 109.5-77T439-878v357H317Zm204 0v-357q71 8 132.5 37T763-764q-51 48-81.5 109.5T643-521H521ZM439-82q-72-8-133-37.5T197-197q51-48 81.5-109T317-439h122v357Zm82 0v-357h122q8 72 38.5 133.5T763-196q-48 48-109.5 77T521-82Z\",\n ],\n },\n ],\n lightbulb: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-33 0-56.5-23.5T400-160h160q0 33-23.5 56.5T480-80ZM360-200q-17 0-28.5-11.5T320-240q0-17 11.5-28.5T360-280h240q17 0 28.5 11.5T640-240q0 17-11.5 28.5T600-200H360Zm-30-120q-69-41-109.5-110T180-580q0-125 87.5-212.5T480-880q125 0 212.5 87.5T780-580q0 81-40.5 150T630-320H330Zm24-80h252q45-32 69.5-79T700-580q0-92-64-156t-156-64q-92 0-156 64t-64 156q0 54 24.5 101t69.5 79Zm126 0Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-33 0-56.5-23.5T400-160h160q0 33-23.5 56.5T480-80ZM360-200q-17 0-28.5-11.5T320-240q0-17 11.5-28.5T360-280h240q17 0 28.5 11.5T640-240q0 17-11.5 28.5T600-200H360Zm-30-120q-69-41-109.5-110T180-580q0-125 87.5-212.5T480-880q125 0 212.5 87.5T780-580q0 81-40.5 150T630-320H330Z\",\n ],\n },\n ],\n terminal: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h640q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160Zm0-80h640v-400H160v400Zm187-200-76-76q-12-12-11.5-28t12.5-28q12-11 28-11.5t28 11.5l104 104q12 12 12 28t-12 28L328-308q-11 11-27.5 11.5T272-308q-11-11-11-28t11-28l75-76Zm173 160q-17 0-28.5-11.5T480-320q0-17 11.5-28.5T520-360h160q17 0 28.5 11.5T720-320q0 17-11.5 28.5T680-280H520Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h640q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160Zm0-80h640v-400H160v400Zm187-200-76-76q-12-12-11.5-28t12.5-28q12-11 28-11.5t28 11.5l104 104q12 12 12 28t-12 28L328-308q-11 11-27.5 11.5T272-308q-11-11-11-28t11-28l75-76Zm173 160q-17 0-28.5-11.5T480-320q0-17 11.5-28.5T520-360h160q17 0 28.5 11.5T720-320q0 17-11.5 28.5T680-280H520Z\",\n ],\n },\n ],\n edit: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-200h57l391-391-57-57-391 391v57Zm-40 80q-17 0-28.5-11.5T120-160v-97q0-16 6-30.5t17-25.5l505-504q12-11 26.5-17t30.5-6q16 0 31 6t26 18l55 56q12 11 17.5 26t5.5 30q0 16-5.5 30.5T817-647L313-143q-11 11-25.5 17t-30.5 6h-97Zm600-584-56-56 56 56Zm-141 85-28-29 57 57-29-28Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-120q-17 0-28.5-11.5T120-160v-97q0-16 6-30.5t17-25.5l505-504q12-11 26.5-17t30.5-6q16 0 31 6t26 18l55 56q12 11 17.5 26t5.5 30q0 16-5.5 30.5T817-647L313-143q-11 11-25.5 17t-30.5 6h-97Zm544-528 56-56-56-56-56 56 56 56Z\",\n ],\n },\n ],\n info: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-280q17 0 28.5-11.5T520-320v-160q0-17-11.5-28.5T480-520q-17 0-28.5 11.5T440-480v160q0 17 11.5 28.5T480-280Zm0-320q17 0 28.5-11.5T520-640q0-17-11.5-28.5T480-680q-17 0-28.5 11.5T440-640q0 17 11.5 28.5T480-600Zm0 520q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-280q17 0 28.5-11.5T520-320v-160q0-17-11.5-28.5T480-520q-17 0-28.5 11.5T440-480v160q0 17 11.5 28.5T480-280Zm0-320q17 0 28.5-11.5T520-640q0-17-11.5-28.5T480-680q-17 0-28.5 11.5T440-640q0 17 11.5 28.5T480-600Zm0 520q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z\",\n ],\n },\n ],\n shield: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-84q-7 0-13-1t-12-3q-135-45-215-166.5T160-516v-189q0-25 14.5-45t37.5-29l240-90q14-5 28-5t28 5l240 90q23 9 37.5 29t14.5 45v189q0 140-80 261.5T505-88q-6 2-12 3t-13 1Zm0-80q104-33 172-132t68-220v-189l-240-90-240 90v189q0 121 68 220t172 132Zm0-316Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-84q-7 0-13-1t-12-3q-135-45-215-166.5T160-516v-189q0-25 14.5-45t37.5-29l240-90q14-5 28-5t28 5l240 90q23 9 37.5 29t14.5 45v189q0 140-80 261.5T505-88q-6 2-12 3t-13 1Z\",\n ],\n },\n ],\n encrypted: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M444-360h72q9 0 15.5-7.5T536-384l-19-105q20-10 31.5-29t11.5-42q0-33-23.5-56.5T480-640q-33 0-56.5 23.5T400-560q0 23 11.5 42t31.5 29l-19 105q-2 9 4.5 16.5T444-360Zm36 276q-7 0-13-1t-12-3q-135-45-215-166.5T160-516v-189q0-25 14.5-45t37.5-29l240-90q14-5 28-5t28 5l240 90q23 9 37.5 29t14.5 45v189q0 140-80 261.5T505-88q-6 2-12 3t-13 1Zm0-80q104-33 172-132t68-220v-189l-240-90-240 90v189q0 121 68 220t172 132Zm0-316Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M444-360h72q9 0 15.5-7.5T536-384l-19-105q20-10 31.5-29t11.5-42q0-33-23.5-56.5T480-640q-33 0-56.5 23.5T400-560q0 23 11.5 42t31.5 29l-19 105q-2 9 4.5 16.5T444-360Zm36 276q-7 0-13-1t-12-3q-135-45-215-166.5T160-516v-189q0-25 14.5-45t37.5-29l240-90q14-5 28-5t28 5l240 90q23 9 37.5 29t14.5 45v189q0 140-80 261.5T505-88q-6 2-12 3t-13 1Z\",\n ],\n },\n ],\n admin_panel_settings: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M680-280q25 0 42.5-17.5T740-340q0-25-17.5-42.5T680-400q-25 0-42.5 17.5T620-340q0 25 17.5 42.5T680-280Zm0 120q31 0 57-14.5t42-38.5q-22-13-47-20t-52-7q-27 0-52 7t-47 20q16 24 42 38.5t57 14.5ZM480-874q8 0 14.5 1t13.5 4l240 90q23 9 37.5 29t14.5 45v125q0 17-11.5 28.5T760-540q-17 0-28.5-11.5T720-580v-124l-240-90-240 90v188q0 50 14.5 100t40 95q25.5 45 62 81t79.5 59q15 8 21.5 23t.5 30q-7 16-22.5 22t-30.5-2q-113-56-179-169t-66-239v-189q0-25 14.5-45t37.5-29l240-90q7-3 14-4t14-1ZM680-80q-83 0-141.5-58.5T480-280q0-83 58.5-141.5T680-480q83 0 141.5 58.5T880-280q0 83-58.5 141.5T680-80ZM480-494Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M680-80q-83 0-141.5-58.5T480-280q0-83 58.5-141.5T680-480q83 0 141.5 58.5T880-280q0 83-58.5 141.5T680-80ZM160-516v-189q0-25 14.5-45t37.5-29l240-90q14-5 28-5t28 5l240 90q23 9 37.5 29t14.5 45v122q0 17-15 27.5t-32 5.5q-18-5-36-7.5t-37-2.5q-116 0-198 82t-82 198q0 32 7.5 62.5T429-156q9 19-5.5 34t-33.5 6q-42-22-77-54t-62-70q-43-59-67-129.5T160-516Zm520 236q25 0 42.5-17.5T740-340q0-25-17.5-42.5T680-400q-25 0-42.5 17.5T620-340q0 25 17.5 42.5T680-280Zm0 120q31 0 57-14.5t42-38.5q-22-13-47-20t-52-7q-27 0-52 7t-47 20q16 24 42 38.5t57 14.5Z\",\n ],\n },\n ],\n local_cafe: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-17 0-28.5-11.5T160-160q0-17 11.5-28.5T200-200h560q17 0 28.5 11.5T800-160q0 17-11.5 28.5T760-120H200Zm120-160q-66 0-113-47t-47-113v-320q0-33 23.5-56.5T240-840h560q33 0 56.5 23.5T880-760v120q0 33-23.5 56.5T800-560h-80v120q0 66-47 113t-113 47H320Zm0-80h240q33 0 56.5-23.5T640-440v-320H240v320q0 33 23.5 56.5T320-360Zm400-280h80v-120h-80v120ZM320-360h-80 400-320Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-17 0-28.5-11.5T160-160q0-17 11.5-28.5T200-200h560q17 0 28.5 11.5T800-160q0 17-11.5 28.5T760-120H200Zm120-160q-66 0-113-47t-47-113v-320q0-33 23.5-56.5T240-840h560q33 0 56.5 23.5T880-760v120q0 33-23.5 56.5T800-560h-80v120q0 66-47 113t-113 47H320Zm400-360h80v-120h-80v120Z\",\n ],\n },\n ],\n push_pin: [\n {\n transform: \"scale(1) translate(0 0)\",\n paths: [\n \"m16 12 2 2v2h-5v6l-1 1-1-1v-6H6v-2l2-2V5H7V3h10v2h-1Zm-7.15 2h6.3L14 12.85V5h-4v7.85ZM12 14Z\",\n ],\n },\n {\n transform: \"scale(1) translate(0 0)\",\n paths: [\"m16 12 2 2v2h-5v6l-1 1-1-1v-6H6v-2l2-2V5H7V3h10v2h-1Z\"],\n },\n ],\n volume_up: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M760-481q0-83-44-151.5T598-735q-15-7-22-21.5t-2-29.5q6-16 21.5-23t31.5 0q97 43 155 131.5T840-481q0 108-58 196.5T627-153q-16 7-31.5 0T574-176q-5-15 2-29.5t22-21.5q74-34 118-102.5T760-481ZM280-360H160q-17 0-28.5-11.5T120-400v-160q0-17 11.5-28.5T160-600h120l132-132q19-19 43.5-8.5T480-703v446q0 27-24.5 37.5T412-228L280-360Zm380-120q0 42-19 79.5T591-339q-10 6-20.5.5T560-356v-250q0-12 10.5-17.5t20.5.5q31 25 50 63t19 80ZM400-606l-86 86H200v80h114l86 86v-252ZM300-480Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M760-481q0-83-44-151.5T598-735q-15-7-22-21.5t-2-29.5q6-16 21.5-23t31.5 0q97 43 155 131.5T840-481q0 108-58 196.5T627-153q-16 7-31.5 0T574-176q-5-15 2-29.5t22-21.5q74-34 118-102.5T760-481ZM280-360H160q-17 0-28.5-11.5T120-400v-160q0-17 11.5-28.5T160-600h120l132-132q19-19 43.5-8.5T480-703v446q0 27-24.5 37.5T412-228L280-360Zm380-120q0 42-19 79.5T591-339q-10 6-20.5.5T560-356v-250q0-12 10.5-17.5t20.5.5q31 25 50 63t19 80Z\",\n ],\n },\n ],\n volume_off: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M671-177q-11 7-22 13t-23 11q-15 7-30.5 0T574-176q-6-15 1.5-29.5T598-227q7-3 13-6.5t12-7.5L480-368v111q0 27-24.5 37.5T412-228L280-360H160q-17 0-28.5-11.5T120-400v-160q0-17 11.5-28.5T160-600h88L84-764q-11-11-11-28t11-28q11-11 28-11t28 11l680 680q11 11 11 28t-11 28q-11 11-28 11t-28-11l-93-93Zm89-304q0-83-44-151.5T598-735q-15-7-22-21.5t-2-29.5q6-16 21.5-23t31.5 0q97 43 155 131t58 197q0 33-6 65.5T817-353q-8 22-24.5 27.5t-30.5.5q-14-5-22.5-18t-.5-30q11-26 16-52.5t5-55.5ZM591-623q33 21 51 63t18 80v10q0 5-1 10-2 13-14 17t-22-6l-51-51q-6-6-9-13.5t-3-15.5v-77q0-12 10.5-17.5t20.5.5Zm-201-59q-6-6-6-14t6-14l22-22q19-19 43.5-8.5T480-703v63q0 14-12 19t-22-5l-56-56Zm10 328v-94l-72-72H200v80h114l86 86Zm-36-130Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M671-177q-11 7-22 13t-23 11q-15 7-30.5 0T574-176q-6-15 1.5-29.5T598-227q7-3 13-6.5t12-7.5L480-368v111q0 27-24.5 37.5T412-228L280-360H160q-17 0-28.5-11.5T120-400v-160q0-17 11.5-28.5T160-600h88L84-764q-11-11-11-28t11-28q11-11 28-11t28 11l680 680q11 11 11 28t-11 28q-11 11-28 11t-28-11l-93-93Zm89-304q0-83-44-151.5T598-735q-15-7-22-21.5t-2-29.5q6-16 21.5-23t31.5 0q97 43 155 131t58 197q0 33-6 65.5T817-353q-8 22-24.5 27.5t-30.5.5q-14-5-22.5-18t-.5-30q11-26 16-52.5t5-55.5ZM591-623q33 21 51 63t18 80v10q0 5-1 10-2 13-14 17t-22-6l-51-51q-6-6-9-13.5t-3-15.5v-77q0-12 10.5-17.5t20.5.5Zm-201-59q-6-6-6-14t6-14l22-22q19-19 43.5-8.5T480-703v63q0 14-12 19t-22-5l-56-56Z\",\n ],\n },\n ],\n draft: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-80q-33 0-56.5-23.5T160-160v-640q0-33 23.5-56.5T240-880h287q16 0 30.5 6t25.5 17l194 194q11 11 17 25.5t6 30.5v447q0 33-23.5 56.5T720-80H240Zm280-560v-160H240v640h480v-440H560q-17 0-28.5-11.5T520-640ZM240-800v200-200 640-640Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-80q-33 0-56.5-23.5T160-160v-640q0-33 23.5-56.5T240-880h287q16 0 30.5 6t25.5 17l194 194q11 11 17 25.5t6 30.5v447q0 33-23.5 56.5T720-80H240Zm280-560q0 17 11.5 28.5T560-600h160L520-800v160Z\",\n ],\n },\n ],\n grid_view: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-520q-33 0-56.5-23.5T120-600v-160q0-33 23.5-56.5T200-840h160q33 0 56.5 23.5T440-760v160q0 33-23.5 56.5T360-520H200Zm0 400q-33 0-56.5-23.5T120-200v-160q0-33 23.5-56.5T200-440h160q33 0 56.5 23.5T440-360v160q0 33-23.5 56.5T360-120H200Zm400-400q-33 0-56.5-23.5T520-600v-160q0-33 23.5-56.5T600-840h160q33 0 56.5 23.5T840-760v160q0 33-23.5 56.5T760-520H600Zm0 400q-33 0-56.5-23.5T520-200v-160q0-33 23.5-56.5T600-440h160q33 0 56.5 23.5T840-360v160q0 33-23.5 56.5T760-120H600ZM200-600h160v-160H200v160Zm400 0h160v-160H600v160Zm0 400h160v-160H600v160Zm-400 0h160v-160H200v160Zm400-400Zm0 240Zm-240 0Zm0-240Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-520q-33 0-56.5-23.5T120-600v-160q0-33 23.5-56.5T200-840h160q33 0 56.5 23.5T440-760v160q0 33-23.5 56.5T360-520H200Zm0 400q-33 0-56.5-23.5T120-200v-160q0-33 23.5-56.5T200-440h160q33 0 56.5 23.5T440-360v160q0 33-23.5 56.5T360-120H200Zm400-400q-33 0-56.5-23.5T520-600v-160q0-33 23.5-56.5T600-840h160q33 0 56.5 23.5T840-760v160q0 33-23.5 56.5T760-520H600Zm0 400q-33 0-56.5-23.5T520-200v-160q0-33 23.5-56.5T600-440h160q33 0 56.5 23.5T840-360v160q0 33-23.5 56.5T760-120H600Z\",\n ],\n },\n ],\n public: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm-40-82v-78q-33 0-56.5-23.5T360-320v-40L168-552q-3 18-5.5 36t-2.5 36q0 121 79.5 212T440-162Zm276-102q20-22 36-47.5t26.5-53q10.5-27.5 16-56.5t5.5-59q0-98-54.5-179T600-776v16q0 33-23.5 56.5T520-680h-80v80q0 17-11.5 28.5T400-560h-80v80h240q17 0 28.5 11.5T600-440v120h40q26 0 47 15.5t29 40.5Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm-40-82v-78q-33 0-56.5-23.5T360-320v-40L168-552q-3 18-5.5 36t-2.5 36q0 121 79.5 212T440-162Zm276-102q20-22 36-47.5t26.5-53q10.5-27.5 16-56.5t5.5-59q0-98-54.5-179T600-776v16q0 33-23.5 56.5T520-680h-80v80q0 17-11.5 28.5T400-560h-80v80h240q17 0 28.5 11.5T600-440v120h40q26 0 47 15.5t29 40.5Z\",\n ],\n },\n ],\n visibility: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-320q75 0 127.5-52.5T660-500q0-75-52.5-127.5T480-680q-75 0-127.5 52.5T300-500q0 75 52.5 127.5T480-320Zm0-72q-45 0-76.5-31.5T372-500q0-45 31.5-76.5T480-608q45 0 76.5 31.5T588-500q0 45-31.5 76.5T480-392Zm0 192q-134 0-244.5-72T61-462q-5-9-7.5-18.5T51-500q0-10 2.5-19.5T61-538q64-118 174.5-190T480-800q134 0 244.5 72T899-538q5 9 7.5 18.5T909-500q0 10-2.5 19.5T899-462q-64 118-174.5 190T480-200Zm0-300Zm0 220q113 0 207.5-59.5T832-500q-50-101-144.5-160.5T480-720q-113 0-207.5 59.5T128-500q50 101 144.5 160.5T480-280Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-320q75 0 127.5-52.5T660-500q0-75-52.5-127.5T480-680q-75 0-127.5 52.5T300-500q0 75 52.5 127.5T480-320Zm0-72q-45 0-76.5-31.5T372-500q0-45 31.5-76.5T480-608q45 0 76.5 31.5T588-500q0 45-31.5 76.5T480-392Zm0 192q-134 0-244.5-72T61-462q-5-9-7.5-18.5T51-500q0-10 2.5-19.5T61-538q64-118 174.5-190T480-800q134 0 244.5 72T899-538q5 9 7.5 18.5T909-500q0 10-2.5 19.5T899-462q-64 118-174.5 190T480-200Z\",\n ],\n },\n ],\n visibility_off: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M607-627q29 29 42.5 66t9.5 76q0 15-11 25.5T622-449q-15 0-25.5-10.5T586-485q5-26-3-50t-25-41q-17-17-41-26t-51-4q-15 0-25.5-11T430-643q0-15 10.5-25.5T466-679q38-4 75 9.5t66 42.5Zm-127-93q-19 0-37 1.5t-36 5.5q-17 3-30.5-5T358-742q-5-16 3.5-31t24.5-18q23-5 46.5-7t47.5-2q137 0 250.5 72T904-534q4 8 6 16.5t2 17.5q0 9-1.5 17.5T905-466q-18 40-44.5 75T802-327q-12 11-28 9t-26-16q-10-14-8.5-30.5T753-392q24-23 44-50t35-58q-50-101-144.5-160.5T480-720Zm0 520q-134 0-245-72.5T60-463q-5-8-7.5-17.5T50-500q0-10 2-19t7-18q20-40 46.5-76.5T166-680l-83-84q-11-12-10.5-28.5T84-820q11-11 28-11t28 11l680 680q11 11 11.5 27.5T820-84q-11 11-28 11t-28-11L624-222q-35 11-71 16.5t-73 5.5ZM222-624q-29 26-53 57t-41 67q50 101 144.5 160.5T480-280q20 0 39-2.5t39-5.5l-36-38q-11 3-21 4.5t-21 1.5q-75 0-127.5-52.5T300-500q0-11 1.5-21t4.5-21l-84-82Zm319 93Zm-151 75Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M764-84 624-222q-35 11-71 16.5t-73 5.5q-134 0-245-72T61-462q-5-9-7.5-18.5T51-500q0-10 2.5-19.5T61-538q22-39 47-76t58-66l-83-84q-11-11-11-27.5T84-820q11-11 28-11t28 11l680 680q11 11 11.5 27.5T820-84q-11 11-28 11t-28-11ZM480-320q11 0 21-1t20-4L305-541q-3 10-4 20t-1 21q0 75 52.5 127.5T480-320Zm0-480q134 0 245.5 72.5T900-537q5 8 7.5 17.5T910-500q0 10-2 19.5t-7 17.5q-19 37-42.5 70T806-331q-14 14-33 13t-33-15l-80-80q-7-7-9-16.5t1-19.5q4-13 6-25t2-26q0-75-52.5-127.5T480-680q-14 0-26 2t-25 6q-10 3-20 1t-17-9l-33-33q-19-19-12.5-44t31.5-32q25-5 50.5-8t51.5-3Zm79 226q11 13 18.5 28.5T587-513q1 8-6 11t-13-3l-82-82q-6-6-2.5-13t11.5-7q19 2 35 10.5t29 22.5Z\",\n ],\n },\n ],\n warning: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M109-120q-11 0-20-5.5T75-140q-5-9-5.5-19.5T75-180l370-640q6-10 15.5-15t19.5-5q10 0 19.5 5t15.5 15l370 640q6 10 5.5 20.5T885-140q-5 9-14 14.5t-20 5.5H109Zm69-80h604L480-720 178-200Zm302-40q17 0 28.5-11.5T520-280q0-17-11.5-28.5T480-320q-17 0-28.5 11.5T440-280q0 17 11.5 28.5T480-240Zm0-120q17 0 28.5-11.5T520-400v-120q0-17-11.5-28.5T480-560q-17 0-28.5 11.5T440-520v120q0 17 11.5 28.5T480-360Zm0-100Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M109-120q-11 0-20-5.5T75-140q-5-9-5.5-19.5T75-180l370-640q6-10 15.5-15t19.5-5q10 0 19.5 5t15.5 15l370 640q6 10 5.5 20.5T885-140q-5 9-14 14.5t-20 5.5H109Zm371-120q17 0 28.5-11.5T520-280q0-17-11.5-28.5T480-320q-17 0-28.5 11.5T440-280q0 17 11.5 28.5T480-240Zm0-120q17 0 28.5-11.5T520-400v-120q0-17-11.5-28.5T480-560q-17 0-28.5 11.5T440-520v120q0 17 11.5 28.5T480-360Z\",\n ],\n },\n ],\n filter_alt: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-160q-17 0-28.5-11.5T400-200v-240L168-736q-15-20-4.5-42t36.5-22h560q26 0 36.5 22t-4.5 42L560-440v240q0 17-11.5 28.5T520-160h-80Zm40-308 198-252H282l198 252Zm0 0Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-160q-17 0-28.5-11.5T400-200v-240L168-736q-15-20-4.5-42t36.5-22h560q26 0 36.5 22t-4.5 42L560-440v240q0 17-11.5 28.5T520-160h-80Z\",\n ],\n },\n ],\n bookmark: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m480-240-168 72q-40 17-76-6.5T200-241v-519q0-33 23.5-56.5T280-840h400q33 0 56.5 23.5T760-760v519q0 43-36 66.5t-76 6.5l-168-72Zm0-88 200 86v-518H280v518l200-86Zm0-432H280h400-200Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m480-240-168 72q-40 17-76-6.5T200-241v-519q0-33 23.5-56.5T280-840h400q33 0 56.5 23.5T760-760v519q0 43-36 66.5t-76 6.5l-168-72Z\",\n ],\n },\n ],\n inbox: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-120H640q-30 38-71.5 59T480-240q-47 0-88.5-21T320-320H200v120Zm280-120q32 0 59-16.5t44-43.5q6-9 15-14.5t20-5.5h142v-360H200v360h142q11 0 20 5.5t15 14.5q17 27 44 43.5t59 16.5ZM200-200h560-560Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm280-200q32 0 59-16.5t44-43.5q6-9 15-14.5t20-5.5h142v-360H200v360h142q11 0 20 5.5t15 14.5q17 27 44 43.5t59 16.5Z\",\n ],\n },\n ],\n forum: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-240q-17 0-28.5-11.5T240-280v-80h520v-360h80q17 0 28.5 11.5T880-680v503q0 27-24.5 37.5T812-148l-92-92H280Zm-40-200-92 92q-19 19-43.5 8.5T80-377v-463q0-17 11.5-28.5T120-880h520q17 0 28.5 11.5T680-840v360q0 17-11.5 28.5T640-440H240Zm360-80v-280H160v280h440Zm-440 0v-280 280Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-240q-17 0-28.5-11.5T240-280v-80h520v-360h80q17 0 28.5 11.5T880-680v503q0 27-24.5 37.5T812-148l-92-92H280Zm-40-200-92 92q-19 19-43.5 8.5T80-377v-463q0-17 11.5-28.5T120-880h520q17 0 28.5 11.5T680-840v360q0 17-11.5 28.5T640-440H240Z\",\n ],\n },\n ],\n mark_unread_chat_alt: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-400h240q17 0 28.5-11.5T560-440q0-17-11.5-28.5T520-480H280q-17 0-28.5 11.5T240-440q0 17 11.5 28.5T280-400Zm0-120h400q17 0 28.5-11.5T720-560q0-17-11.5-28.5T680-600H280q-17 0-28.5 11.5T240-560q0 17 11.5 28.5T280-520Zm0-120h320q17 0 28.5-11.5T640-680q0-17-11.5-28.5T600-720H280q-17 0-28.5 11.5T240-680q0 17 11.5 28.5T280-640Zm-40 400-92 92q-19 19-43.5 8.5T80-177v-623q0-33 23.5-56.5T160-880h360q17 0 28.5 11.5T560-840q0 17-11.5 28.5T520-800H160v525l46-45h594v-280q0-17 11.5-28.5T840-640q17 0 28.5 11.5T880-600v280q0 33-23.5 56.5T800-240H240Zm520-480q-50 0-85-35t-35-85q0-50 35-85t85-35q50 0 85 35t35 85q0 50-35 85t-85 35Zm-600-80v480-480Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M760-720q-50 0-85-35t-35-85q0-50 35-85t85-35q50 0 85 35t35 85q0 50-35 85t-85 35ZM240-240l-92 92q-19 19-43.5 8.5T80-177v-623q0-33 23.5-56.5T160-880h404q-4 20-4 40t4 40q5 23 14 43t22 37H280q-17 0-28.5 11.5T240-680q0 17 11.5 28.5T280-640h480q32 0 63-10t57-30v360q0 33-23.5 56.5T800-240H240Zm40-280h400q17 0 28.5-11.5T720-560q0-17-11.5-28.5T680-600H280q-17 0-28.5 11.5T240-560q0 17 11.5 28.5T280-520Zm0 120h240q17 0 28.5-11.5T560-440q0-17-11.5-28.5T520-480H280q-17 0-28.5 11.5T240-440q0 17 11.5 28.5T280-400Z\",\n ],\n },\n ],\n reply: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m273-480 116 116q12 12 11.5 28T388-308q-12 11-28 11.5T332-308L148-492q-12-12-12-28t12-28l184-184q11-11 27.5-11t28.5 11q12 12 12 28.5T388-675L273-560h367q83 0 141.5 58.5T840-360v120q0 17-11.5 28.5T800-200q-17 0-28.5-11.5T760-240v-120q0-50-35-85t-85-35H273Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m273-480 116 116q12 12 11.5 28T388-308q-12 11-28 11.5T332-308L148-492q-12-12-12-28t12-28l184-184q11-11 27.5-11t28.5 11q12 12 12 28.5T388-675L273-560h367q83 0 141.5 58.5T840-360v120q0 17-11.5 28.5T800-200q-17 0-28.5-11.5T760-240v-120q0-50-35-85t-85-35H273Z\",\n ],\n },\n ],\n desktop_windows: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M400-200v-80H160q-33 0-56.5-23.5T80-360v-400q0-33 23.5-56.5T160-840h640q33 0 56.5 23.5T880-760v400q0 33-23.5 56.5T800-280H560v80h40q17 0 28.5 11.5T640-160q0 17-11.5 28.5T600-120H360q-17 0-28.5-11.5T320-160q0-17 11.5-28.5T360-200h40ZM160-360h640v-400H160v400Zm0 0v-400 400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M400-200v-80H160q-33 0-56.5-23.5T80-360v-400q0-33 23.5-56.5T160-840h640q33 0 56.5 23.5T880-760v400q0 33-23.5 56.5T800-280H560v80h40q17 0 28.5 11.5T640-160q0 17-11.5 28.5T600-120H360q-17 0-28.5-11.5T320-160q0-17 11.5-28.5T360-200h40Z\",\n ],\n },\n ],\n screen_share: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-520h80v56q0 7 6 9.5t11-2.5l89-89q6-6 6-14t-6-14l-89-89q-5-5-11-2.5t-6 9.5v56h-80q-50 0-85 35t-35 85v40q0 17 11.5 28.5T360-400q17 0 28.5-11.5T400-440v-40q0-17 11.5-28.5T440-520ZM80-120q-17 0-28.5-11.5T40-160q0-17 11.5-28.5T80-200h800q17 0 28.5 11.5T920-160q0 17-11.5 28.5T880-120H80Zm80-120q-33 0-56.5-23.5T80-320v-440q0-33 23.5-56.5T160-840h640q33 0 56.5 23.5T880-760v440q0 33-23.5 56.5T800-240H160Zm0-80h640v-440H160v440Zm0 0v-440 440Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-520h80v56q0 7 6 9.5t11-2.5l89-89q6-6 6-14t-6-14l-89-89q-5-5-11-2.5t-6 9.5v56h-80q-50 0-85 35t-35 85v40q0 17 11.5 28.5T360-400q17 0 28.5-11.5T400-440v-40q0-17 11.5-28.5T440-520ZM80-120q-17 0-28.5-11.5T40-160q0-17 11.5-28.5T80-200h800q17 0 28.5 11.5T920-160q0 17-11.5 28.5T880-120H80Zm80-120q-33 0-56.5-23.5T80-320v-440q0-33 23.5-56.5T160-840h640q33 0 56.5 23.5T880-760v440q0 33-23.5 56.5T800-240H160Z\",\n ],\n },\n ],\n dns: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M300-720q-25 0-42.5 17.5T240-660q0 25 17.5 42.5T300-600q25 0 42.5-17.5T360-660q0-25-17.5-42.5T300-720Zm0 400q-25 0-42.5 17.5T240-260q0 25 17.5 42.5T300-200q25 0 42.5-17.5T360-260q0-25-17.5-42.5T300-320ZM160-840h640q17 0 28.5 11.5T840-800v280q0 17-11.5 28.5T800-480H160q-17 0-28.5-11.5T120-520v-280q0-17 11.5-28.5T160-840Zm40 80v200h560v-200H200Zm-40 320h640q17 0 28.5 11.5T840-400v280q0 17-11.5 28.5T800-80H160q-17 0-28.5-11.5T120-120v-280q0-17 11.5-28.5T160-440Zm40 80v200h560v-200H200Zm0-400v200-200Zm0 400v200-200Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M300-720q-25 0-42.5 17.5T240-660q0 25 17.5 42.5T300-600q25 0 42.5-17.5T360-660q0-25-17.5-42.5T300-720Zm0 400q-25 0-42.5 17.5T240-260q0 25 17.5 42.5T300-200q25 0 42.5-17.5T360-260q0-25-17.5-42.5T300-320ZM160-840h640q17 0 28.5 11.5T840-800v280q0 17-11.5 28.5T800-480H160q-17 0-28.5-11.5T120-520v-280q0-17 11.5-28.5T160-840Zm0 400h640q17 0 28.5 11.5T840-400v280q0 17-11.5 28.5T800-80H160q-17 0-28.5-11.5T120-120v-280q0-17 11.5-28.5T160-440Z\",\n ],\n },\n ],\n block: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q54 0 104-17.5t92-50.5L228-676q-33 42-50.5 92T160-480q0 134 93 227t227 93Zm252-124q33-42 50.5-92T800-480q0-134-93-227t-227-93q-54 0-104 17.5T284-732l448 448Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q54 0 104-17.5t92-50.5L228-676q-33 42-50.5 92T160-480q0 134 93 227t227 93Zm252-124q33-42 50.5-92T800-480q0-134-93-227t-227-93q-54 0-104 17.5T284-732l448 448Z\",\n ],\n },\n ],\n do_not_disturb_on: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M320-440h320q17 0 28.5-11.5T680-480q0-17-11.5-28.5T640-520H320q-17 0-28.5 11.5T280-480q0 17 11.5 28.5T320-440ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M320-440h320q17 0 28.5-11.5T680-480q0-17-11.5-28.5T640-520H320q-17 0-28.5 11.5T280-480q0 17 11.5 28.5T320-440ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z\",\n ],\n },\n ],\n mic: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-400q-50 0-85-35t-35-85v-240q0-50 35-85t85-35q50 0 85 35t35 85v240q0 50-35 85t-85 35Zm0-240Zm-40 480v-83q-92-13-157.5-78T203-479q-2-17 9-29t28-12q17 0 28.5 11.5T284-480q14 70 69.5 115T480-320q72 0 127-45.5T676-480q4-17 15.5-28.5T720-520q17 0 28 12t9 29q-14 91-79 157t-158 79v83q0 17-11.5 28.5T480-120q-17 0-28.5-11.5T440-160Zm40-320q17 0 28.5-11.5T520-520v-240q0-17-11.5-28.5T480-800q-17 0-28.5 11.5T440-760v240q0 17 11.5 28.5T480-480Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-400q-50 0-85-35t-35-85v-240q0-50 35-85t85-35q50 0 85 35t35 85v240q0 50-35 85t-85 35Zm-40 240v-83q-92-13-157.5-78T203-479q-2-17 9-29t28-12q17 0 28.5 11.5T284-480q14 70 69.5 115T480-320q72 0 127-45.5T676-480q4-17 15.5-28.5T720-520q17 0 28 12t9 29q-14 91-79 157t-158 79v83q0 17-11.5 28.5T480-120q-17 0-28.5-11.5T440-160Z\",\n ],\n },\n ],\n mic_off: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M672-377q-14-8-18-24.5t4-30.5q7-11 11.5-23.5T676-481q4-17 15.5-28t28.5-11q17 0 28 12t9 29q-3 23-10.5 45T727-392q-8 14-24.5 18.5T672-377ZM480-594Zm0-286q50 0 85 35t35 85v190q0 20-12.5 30T560-530q-15 0-27.5-10.5T520-571v-189q0-17-11.5-28.5T480-800q-17 0-28.5 11.5T440-760v30q0 20-12.5 30T400-690q-15 0-27.5-10.5T360-731v-29q0-50 35-85t85-35Zm-40 720v-83q-92-12-157.5-77.5T203-479q-2-17 9-29t28-12q17 0 29 11.5t15 28.5q14 71 69 115.5T480-320q34 0 64.5-10.5T600-360l57 57q-29 23-63.5 39T520-243v83q0 17-11.5 28.5T480-120q-17 0-28.5-11.5T440-160Zm324 76L84-764q-11-11-11-28t11-28q11-11 28-11t28 11l680 680q11 11 11 28t-11 28q-11 11-28 11t-28-11Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M672-377q-14-8-18-24.5t4-30.5q7-11 11.5-23.5T676-481q4-17 15.5-28t28.5-11q17 0 28 12t9 29q-3 23-10.5 45T727-392q-8 14-24.5 18.5T672-377ZM532-542 383-691q-11-11-17-25.5t-6-30.5v-13q0-50 35-85t85-35q50 0 85 35t35 85v189q0 27-24.5 37.5T532-542Zm-92 382v-84q-92-12-157.5-77T203-479q-2-17 9-29t28-12q17 0 28.5 11.5T284-480q14 70 69.5 115T480-320q34 0 64.5-10.5T600-360l57 57q-29 23-63.5 38.5T520-244v84q0 17-11.5 28.5T480-120q-17 0-28.5-11.5T440-160Zm324 76L84-764q-11-11-11-28t11-28q11-11 28-11t28 11l680 680q11 11 11 28t-11 28q-11 11-28 11t-28-11Z\",\n ],\n },\n ],\n videocam: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h480q33 0 56.5 23.5T720-720v180l126-126q10-10 22-5t12 19v344q0 14-12 19t-22-5L720-420v180q0 33-23.5 56.5T640-160H160Zm0-80h480v-480H160v480Zm0 0v-480 480Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h480q33 0 56.5 23.5T720-720v180l126-126q10-10 22-5t12 19v344q0 14-12 19t-22-5L720-420v180q0 33-23.5 56.5T640-160H160Z\",\n ],\n },\n ],\n videocam_off: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m720-540 126-126q10-10 22-5t12 19v344q0 14-12 19t-22-5L720-420q0 17-11.5 28.5T680-380q-17 0-28.5-11.5T640-420v-300H360q-20 0-30-12.5T320-760q0-15 10-27.5t30-12.5h280q33 0 56.5 23.5T720-720v180Zm74 486L54-794q-11-11-11-28t11-28q11-11 28-11t28 11l740 740q11 11 11 28t-11 28q-11 11-28 11t-28-11ZM498-575ZM382-464ZM160-800l80 80h-80v480h480v-80l80 80q0 33-23.5 56.5T640-160H160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m720-540 126-126q10-10 22-5t12 19v344q0 14-12 19t-22-5L713-427q-10 14-28.5 17T652-421L341-732q-10-10-11.5-21t3.5-22q5-11 14-18t23-7h270q33 0 56.5 23.5T720-720v180Zm74 486L54-794q-11-11-11-28t11-28q11-11 28-11t28 11l740 740q11 11 11 28t-11 28q-11 11-28 11t-28-11ZM160-800l560 560q0 33-23.5 56.5T640-160H160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800Z\",\n ],\n },\n ],\n tag: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m360-320-33 131q-3 13-13 21t-24 8q-19 0-31-15t-7-33l28-112H171q-20 0-32-15.5t-7-34.5q3-14 14-22t25-8h129l40-160H231q-20 0-32-15.5t-7-34.5q3-14 14-22t25-8h129l33-131q3-13 13-21t24-8q19 0 31 15t7 33l-28 112h160l33-131q3-13 13-21t24-8q19 0 31 15t7 33l-28 112h109q20 0 32 15.5t7 34.5q-3 14-14 22t-25 8H660l-40 160h109q20 0 32 15.5t7 34.5q-3 14-14 22t-25 8H600l-33 131q-3 13-13 21t-24 8q-19 0-31-15t-7-33l28-112H360Zm20-80h160l40-160H420l-40 160Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m360-320-33 131q-3 13-13 21t-24 8q-19 0-31-15t-7-33l28-112H171q-20 0-32-15.5t-7-34.5q3-14 14-22t25-8h129l40-160H231q-20 0-32-15.5t-7-34.5q3-14 14-22t25-8h129l33-131q3-13 13-21t24-8q19 0 31 15t7 33l-28 112h160l33-131q3-13 13-21t24-8q19 0 31 15t7 33l-28 112h109q20 0 32 15.5t7 34.5q-3 14-14 22t-25 8H660l-40 160h109q20 0 32 15.5t7 34.5q-3 14-14 22t-25 8H600l-33 131q-3 13-13 21t-24 8q-19 0-31-15t-7-33l28-112H360Zm20-80h160l40-160H420l-40 160Z\",\n ],\n },\n ],\n workspaces: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-120q-66 0-113-47T80-280q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47Zm480 0q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47Zm-480-80q33 0 56.5-23.5T320-280q0-33-23.5-56.5T240-360q-33 0-56.5 23.5T160-280q0 33 23.5 56.5T240-200Zm480 0q33 0 56.5-23.5T800-280q0-33-23.5-56.5T720-360q-33 0-56.5 23.5T640-280q0 33 23.5 56.5T720-200ZM480-520q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47Zm0-80q33 0 56.5-23.5T560-680q0-33-23.5-56.5T480-760q-33 0-56.5 23.5T400-680q0 33 23.5 56.5T480-600Zm0-80Zm240 400Zm-480 0Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-120q-66 0-113-47T80-280q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47Zm480 0q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47ZM480-520q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47Z\",\n ],\n },\n ],\n chevron_right: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M504-480 348-636q-11-11-11-28t11-28q11-11 28-11t28 11l184 184q6 6 8.5 13t2.5 15q0 8-2.5 15t-8.5 13L404-268q-11 11-28 11t-28-11q-11-11-11-28t11-28l156-156Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M504-480 348-636q-11-11-11-28t11-28q11-11 28-11t28 11l184 184q6 6 8.5 13t2.5 15q0 8-2.5 15t-8.5 13L404-268q-11 11-28 11t-28-11q-11-11-11-28t11-28l156-156Z\",\n ],\n },\n ],\n chevron_left: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m432-480 156 156q11 11 11 28t-11 28q-11 11-28 11t-28-11L348-452q-6-6-8.5-13t-2.5-15q0-8 2.5-15t8.5-13l184-184q11-11 28-11t28 11q11 11 11 28t-11 28L432-480Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m432-480 156 156q11 11 11 28t-11 28q-11 11-28 11t-28-11L348-452q-6-6-8.5-13t-2.5-15q0-8 2.5-15t8.5-13l184-184q11-11 28-11t28 11q11 11 11 28t-11 28L432-480Z\",\n ],\n },\n ],\n keyboard_arrow_up: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-528 324-372q-11 11-28 11t-28-11q-11-11-11-28t11-28l184-184q12-12 28-12t28 12l184 184q11 11 11 28t-11 28q-11 11-28 11t-28-11L480-528Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-528 324-372q-11 11-28 11t-28-11q-11-11-11-28t11-28l184-184q12-12 28-12t28 12l184 184q11 11 11 28t-11 28q-11 11-28 11t-28-11L480-528Z\",\n ],\n },\n ],\n keyboard_arrow_down: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-361q-8 0-15-2.5t-13-8.5L268-556q-11-11-11-28t11-28q11-11 28-11t28 11l156 156 156-156q11-11 28-11t28 11q11 11 11 28t-11 28L508-372q-6 6-13 8.5t-15 2.5Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-361q-8 0-15-2.5t-13-8.5L268-556q-11-11-11-28t11-28q11-11 28-11t28 11l156 156 156-156q11-11 28-11t28 11q11 11 11 28t-11 28L508-372q-6 6-13 8.5t-15 2.5Z\",\n ],\n },\n ],\n add: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-440H240q-17 0-28.5-11.5T200-480q0-17 11.5-28.5T240-520h200v-200q0-17 11.5-28.5T480-760q17 0 28.5 11.5T520-720v200h200q17 0 28.5 11.5T760-480q0 17-11.5 28.5T720-440H520v200q0 17-11.5 28.5T480-200q-17 0-28.5-11.5T440-240v-200Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-440H240q-17 0-28.5-11.5T200-480q0-17 11.5-28.5T240-520h200v-200q0-17 11.5-28.5T480-760q17 0 28.5 11.5T520-720v200h200q17 0 28.5 11.5T760-480q0 17-11.5 28.5T720-440H520v200q0 17-11.5 28.5T480-200q-17 0-28.5-11.5T440-240v-200Z\",\n ],\n },\n ],\n remove: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-440q-17 0-28.5-11.5T200-480q0-17 11.5-28.5T240-520h480q17 0 28.5 11.5T760-480q0 17-11.5 28.5T720-440H240Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-440q-17 0-28.5-11.5T200-480q0-17 11.5-28.5T240-520h480q17 0 28.5 11.5T760-480q0 17-11.5 28.5T720-440H240Z\",\n ],\n },\n ],\n close: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-424 284-228q-11 11-28 11t-28-11q-11-11-11-28t11-28l196-196-196-196q-11-11-11-28t11-28q11-11 28-11t28 11l196 196 196-196q11-11 28-11t28 11q11 11 11 28t-11 28L536-480l196 196q11 11 11 28t-11 28q-11 11-28 11t-28-11L480-424Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-424 284-228q-11 11-28 11t-28-11q-11-11-11-28t11-28l196-196-196-196q-11-11-11-28t11-28q11-11 28-11t28 11l196 196 196-196q11-11 28-11t28 11q11 11 11 28t-11 28L536-480l196 196q11 11 11 28t-11 28q-11 11-28 11t-28-11L480-424Z\",\n ],\n },\n ],\n more_vert: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-160q-33 0-56.5-23.5T400-240q0-33 23.5-56.5T480-320q33 0 56.5 23.5T560-240q0 33-23.5 56.5T480-160Zm0-240q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm0-240q-33 0-56.5-23.5T400-720q0-33 23.5-56.5T480-800q33 0 56.5 23.5T560-720q0 33-23.5 56.5T480-640Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-160q-33 0-56.5-23.5T400-240q0-33 23.5-56.5T480-320q33 0 56.5 23.5T560-240q0 33-23.5 56.5T480-160Zm0-240q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm0-240q-33 0-56.5-23.5T400-720q0-33 23.5-56.5T480-800q33 0 56.5 23.5T560-720q0 33-23.5 56.5T480-640Z\",\n ],\n },\n ],\n more_horiz: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-400q-33 0-56.5-23.5T160-480q0-33 23.5-56.5T240-560q33 0 56.5 23.5T320-480q0 33-23.5 56.5T240-400Zm240 0q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm240 0q-33 0-56.5-23.5T640-480q0-33 23.5-56.5T720-560q33 0 56.5 23.5T800-480q0 33-23.5 56.5T720-400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-400q-33 0-56.5-23.5T160-480q0-33 23.5-56.5T240-560q33 0 56.5 23.5T320-480q0 33-23.5 56.5T240-400Zm240 0q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm240 0q-33 0-56.5-23.5T640-480q0-33 23.5-56.5T720-560q33 0 56.5 23.5T800-480q0 33-23.5 56.5T720-400Z\",\n ],\n },\n ],\n check: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m382-354 339-339q12-12 28-12t28 12q12 12 12 28.5T777-636L410-268q-12 12-28 12t-28-12L182-440q-12-12-11.5-28.5T183-497q12-12 28.5-12t28.5 12l142 143Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m382-354 339-339q12-12 28-12t28 12q12 12 12 28.5T777-636L410-268q-12 12-28 12t-28-12L182-440q-12-12-11.5-28.5T183-497q12-12 28.5-12t28.5 12l142 143Z\",\n ],\n },\n ],\n done_all: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M70-438q-12-12-11.5-28T71-494q12-11 28-11.5t28 11.5l142 142 14 14 14 14q12 12 11.5 28T296-268q-12 11-28 11.5T240-268L70-438Zm424 85 340-340q12-12 28-11.5t28 12.5q11 12 11.5 28T890-636L522-268q-12 12-28 12t-28-12L296-438q-11-11-11-27.5t11-28.5q12-12 28.5-12t28.5 12l141 141Zm169-282L522-494q-11 11-27.5 11T466-494q-12-12-12-28.5t12-28.5l141-141q11-11 27.5-11t28.5 11q12 12 12 28.5T663-635Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M70-438q-12-12-11.5-28T71-494q12-11 28-11.5t28 11.5l142 142 14 14 14 14q12 12 11.5 28T296-268q-12 11-28 11.5T240-268L70-438Zm424 85 340-340q12-12 28-11.5t28 12.5q11 12 11.5 28T890-636L522-268q-12 12-28 12t-28-12L296-438q-11-11-11-27.5t11-28.5q12-12 28.5-12t28.5 12l141 141Zm169-282L522-494q-11 11-27.5 11T466-494q-12-12-12-28.5t12-28.5l141-141q11-11 27.5-11t28.5 11q12 12 12 28.5T663-635Z\",\n ],\n },\n ],\n download: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-337q-8 0-15-2.5t-13-8.5L308-492q-12-12-11.5-28t11.5-28q12-12 28.5-12.5T365-549l75 75v-286q0-17 11.5-28.5T480-800q17 0 28.5 11.5T520-760v286l75-75q12-12 28.5-11.5T652-548q11 12 11.5 28T652-492L508-348q-6 6-13 8.5t-15 2.5ZM240-160q-33 0-56.5-23.5T160-240v-80q0-17 11.5-28.5T200-360q17 0 28.5 11.5T240-320v80h480v-80q0-17 11.5-28.5T760-360q17 0 28.5 11.5T800-320v80q0 33-23.5 56.5T720-160H240Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-337q-8 0-15-2.5t-13-8.5L308-492q-12-12-11.5-28t11.5-28q12-12 28.5-12.5T365-549l75 75v-286q0-17 11.5-28.5T480-800q17 0 28.5 11.5T520-760v286l75-75q12-12 28.5-11.5T652-548q11 12 11.5 28T652-492L508-348q-6 6-13 8.5t-15 2.5ZM240-160q-33 0-56.5-23.5T160-240v-80q0-17 11.5-28.5T200-360q17 0 28.5 11.5T240-320v80h480v-80q0-17 11.5-28.5T760-360q17 0 28.5 11.5T800-320v80q0 33-23.5 56.5T720-160H240Z\",\n ],\n },\n ],\n open_in_new: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h240q17 0 28.5 11.5T480-800q0 17-11.5 28.5T440-760H200v560h560v-240q0-17 11.5-28.5T800-480q17 0 28.5 11.5T840-440v240q0 33-23.5 56.5T760-120H200Zm560-584L416-360q-11 11-28 11t-28-11q-11-11-11-28t11-28l344-344H600q-17 0-28.5-11.5T560-800q0-17 11.5-28.5T600-840h200q17 0 28.5 11.5T840-800v200q0 17-11.5 28.5T800-560q-17 0-28.5-11.5T760-600v-104Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h240q17 0 28.5 11.5T480-800q0 17-11.5 28.5T440-760H200v560h560v-240q0-17 11.5-28.5T800-480q17 0 28.5 11.5T840-440v240q0 33-23.5 56.5T760-120H200Zm560-584L416-360q-11 11-28 11t-28-11q-11-11-11-28t11-28l344-344H600q-17 0-28.5-11.5T560-800q0-17 11.5-28.5T600-840h200q17 0 28.5 11.5T840-800v200q0 17-11.5 28.5T800-560q-17 0-28.5-11.5T760-600v-104Z\",\n ],\n },\n ],\n schedule: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M520-496v-144q0-17-11.5-28.5T480-680q-17 0-28.5 11.5T440-640v159q0 8 3 15.5t9 13.5l132 132q11 11 28 11t28-11q11-11 11-28t-11-28L520-496ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-400Zm0 320q133 0 226.5-93.5T800-480q0-133-93.5-226.5T480-800q-133 0-226.5 93.5T160-480q0 133 93.5 226.5T480-160Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M520-496v-144q0-17-11.5-28.5T480-680q-17 0-28.5 11.5T440-640v159q0 8 3 15.5t9 13.5l132 132q11 11 28 11t28-11q11-11 11-28t-11-28L520-496ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z\",\n ],\n },\n ],\n history: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-120q-126 0-223-76.5T131-392q-4-15 6-27.5t27-14.5q16-2 29 6t18 24q24 90 99 147t170 57q117 0 198.5-81.5T760-480q0-117-81.5-198.5T480-760q-69 0-129 32t-101 88h70q17 0 28.5 11.5T360-600q0 17-11.5 28.5T320-560H160q-17 0-28.5-11.5T120-600v-160q0-17 11.5-28.5T160-800q17 0 28.5 11.5T200-760v54q51-64 124.5-99T480-840q75 0 140.5 28.5t114 77q48.5 48.5 77 114T840-480q0 75-28.5 140.5t-77 114q-48.5 48.5-114 77T480-120Zm40-376 100 100q11 11 11 28t-11 28q-11 11-28 11t-28-11L452-452q-6-6-9-13.5t-3-15.5v-159q0-17 11.5-28.5T480-680q17 0 28.5 11.5T520-640v144Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-120q-126 0-223-76.5T131-392q-4-15 6-27.5t27-14.5q16-2 29 6t18 24q24 90 99 147t170 57q117 0 198.5-81.5T760-480q0-117-81.5-198.5T480-760q-69 0-129 32t-101 88h70q17 0 28.5 11.5T360-600q0 17-11.5 28.5T320-560H160q-17 0-28.5-11.5T120-600v-160q0-17 11.5-28.5T160-800q17 0 28.5 11.5T200-760v54q51-64 124.5-99T480-840q75 0 140.5 28.5t114 77q48.5 48.5 77 114T840-480q0 75-28.5 140.5t-77 114q-48.5 48.5-114 77T480-120Zm40-376 100 100q11 11 11 28t-11 28q-11 11-28 11t-28-11L452-452q-6-6-9-13.5t-3-15.5v-159q0-17 11.5-28.5T480-680q17 0 28.5 11.5T520-640v144Z\",\n ],\n },\n ],\n power_settings_new: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-480v-320q0-17 11.5-28.5T480-840q17 0 28.5 11.5T520-800v320q0 17-11.5 28.5T480-440q-17 0-28.5-11.5T440-480Zm40 360q-74 0-139.5-28.5T226-226q-49-49-77.5-114.5T120-480q0-69 25.5-132.5T217-726q11-12 28-12t29 12q11 11 10 27.5T272-669q-34 38-53 86.5T200-480q0 116 82 198t198 82q117 0 198.5-82T760-480q0-54-19-103.5T687-671q-11-12-11.5-28t10.5-27q12-12 29-12t28 12q47 50 72 113.5T840-480q0 74-28.5 139.5t-77 114.5q-48.5 49-114 77.5T480-120Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-480v-320q0-17 11.5-28.5T480-840q17 0 28.5 11.5T520-800v320q0 17-11.5 28.5T480-440q-17 0-28.5-11.5T440-480Zm40 360q-74 0-139.5-28.5T226-226q-49-49-77.5-114.5T120-480q0-69 25-131t70-112q12-14 29.5-14.5T275-725q11 11 10 27.5T273-668q-35 38-54 86t-19 102q0 116 82 198t198 82q117 0 198.5-82T760-480q0-54-18.5-102T688-668q-12-13-13-29.5t10-27.5q13-13 31-12.5t30 14.5q45 50 69.5 112T840-480q0 74-28.5 139.5t-77 114.5q-48.5 49-114 77.5T480-120Z\",\n ],\n },\n ],\n login: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M520-120q-17 0-28.5-11.5T480-160q0-17 11.5-28.5T520-200h240v-560H520q-17 0-28.5-11.5T480-800q0-17 11.5-28.5T520-840h240q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H520Zm-73-320H160q-17 0-28.5-11.5T120-480q0-17 11.5-28.5T160-520h287l-75-75q-11-11-11-27t11-28q11-12 28-12.5t29 11.5l143 143q12 12 12 28t-12 28L429-309q-12 12-28.5 11.5T372-310q-11-12-10.5-28.5T373-366l74-74Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M520-120q-17 0-28.5-11.5T480-160q0-17 11.5-28.5T520-200h240v-560H520q-17 0-28.5-11.5T480-800q0-17 11.5-28.5T520-840h240q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H520Zm-73-320H160q-17 0-28.5-11.5T120-480q0-17 11.5-28.5T160-520h287l-75-75q-11-11-11-27t11-28q11-12 28-12.5t29 11.5l143 143q12 12 12 28t-12 28L429-309q-12 12-28.5 11.5T372-310q-11-12-10.5-28.5T373-366l74-74Z\",\n ],\n },\n ],\n logout: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h240q17 0 28.5 11.5T480-800q0 17-11.5 28.5T440-760H200v560h240q17 0 28.5 11.5T480-160q0 17-11.5 28.5T440-120H200Zm487-320H400q-17 0-28.5-11.5T360-480q0-17 11.5-28.5T400-520h287l-75-75q-11-11-11-27t11-28q11-12 28-12.5t29 11.5l143 143q12 12 12 28t-12 28L669-309q-12 12-28.5 11.5T612-310q-11-12-10.5-28.5T613-366l74-74Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h240q17 0 28.5 11.5T480-800q0 17-11.5 28.5T440-760H200v560h240q17 0 28.5 11.5T480-160q0 17-11.5 28.5T440-120H200Zm487-320H400q-17 0-28.5-11.5T360-480q0-17 11.5-28.5T400-520h287l-75-75q-11-11-11-27t11-28q11-12 28-12.5t29 11.5l143 143q12 12 12 28t-12 28L669-309q-12 12-28.5 11.5T612-310q-11-12-10.5-28.5T613-366l74-74Z\",\n ],\n },\n ],\n markdown: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m610-475-27-27q-9-9-21-8.5t-21 9.5q-9 9-9 21t9 21l71 71q12 12 28 12t28-12l71-71q9-9 9-21t-9-21q-9-9-21.5-9t-21.5 9l-26 26v-95q0-13-8.5-21.5T640-600q-13 0-21.5 8.5T610-570v95ZM160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h640q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160Zm0-80h640v-480H160v480Zm0 0v-480 480Zm120-300h40v90q0 13 8.5 21.5T350-420q13 0 21.5-8.5T380-450v-90h40v150q0 13 8.5 21.5T450-360q13 0 21.5-8.5T480-390v-170q0-17-11.5-28.5T440-600H260q-17 0-28.5 11.5T220-560v170q0 13 8.5 21.5T250-360q13 0 21.5-8.5T280-390v-150Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m610-475-27-27q-9-9-21-8.5t-21 9.5q-9 9-9 21t9 21l71 71q12 12 28 12t28-12l71-71q9-9 9-21t-9-21q-9-9-21.5-9t-21.5 9l-26 26v-95q0-13-8.5-21.5T640-600q-13 0-21.5 8.5T610-570v95ZM160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h640q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160Zm120-380h40v90q0 13 8.5 21.5T350-420q13 0 21.5-8.5T380-450v-90h40v150q0 13 8.5 21.5T450-360q13 0 21.5-8.5T480-390v-170q0-17-11.5-28.5T440-600H260q-17 0-28.5 11.5T220-560v170q0 13 8.5 21.5T250-360q13 0 21.5-8.5T280-390v-150Z\",\n ],\n },\n ],\n attach_file: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M720-330q0 104-73 177T470-80q-104 0-177-73t-73-177v-370q0-75 52.5-127.5T400-880q75 0 127.5 52.5T580-700v350q0 46-32 78t-78 32q-46 0-78-32t-32-78v-330q0-17 11.5-28.5T400-720q17 0 28.5 11.5T440-680v330q0 13 8.5 21.5T470-320q13 0 21.5-8.5T500-350v-350q-1-42-29.5-71T400-800q-42 0-71 29t-29 71v370q-1 71 49 120.5T470-160q70 0 119-49.5T640-330v-350q0-17 11.5-28.5T680-720q17 0 28.5 11.5T720-680v350Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M720-330q0 104-73 177T470-80q-104 0-177-73t-73-177v-370q0-75 52.5-127.5T400-880q75 0 127.5 52.5T580-700v350q0 46-32 78t-78 32q-46 0-78-32t-32-78v-330q0-17 11.5-28.5T400-720q17 0 28.5 11.5T440-680v330q0 13 8.5 21.5T470-320q13 0 21.5-8.5T500-350v-350q-1-42-29.5-71T400-800q-42 0-71 29t-29 71v370q-1 71 49 120.5T470-160q70 0 119-49.5T640-330v-350q0-17 11.5-28.5T680-720q17 0 28.5 11.5T720-680v350Z\",\n ],\n },\n ],\n match_case: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m247-364-32 89q-4 11-13 17t-20 6q-19 0-29.5-15.5T149-300l138-368q4-11 13.5-17.5T321-692h28q11 0 21 6.5t14 17.5l138 369q7 17-4 32t-29 15q-11 0-20-6.5T456-276l-31-88H247Zm23-64h131l-64-182h-4l-63 182Zm395 186q-51 0-81-27.5T554-342q0-44 34.5-72.5T677-443q23 0 45 4t38 11v-12q0-29-20.5-47T685-505q-15 0-29.5 4.5T629-487q-13 10-24.5 7T586-491q-7-8-7-19t11-19q20-16 45-23.5t51-7.5q69 0 103 32.5t34 97.5v147q0 13-9.5 22t-22.5 9q-13 0-22-9.5t-9-22.5v-5h-4q-14 23-38 35t-53 12Zm12-54q35 0 59.5-24t24.5-56q-14-8-33.5-12.5T689-393q-32 0-50 14t-18 37q0 20 16 33t40 13Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m247-364-32 89q-4 11-13 17t-20 6q-19 0-29.5-15.5T149-300l138-368q4-11 13.5-17.5T321-692h28q11 0 21 6.5t14 17.5l138 369q7 17-4 32t-29 15q-11 0-20-6.5T456-276l-31-88H247Zm23-64h131l-64-182h-4l-63 182Zm395 186q-51 0-81-27.5T554-342q0-44 34.5-72.5T677-443q23 0 45 4t38 11v-12q0-29-20.5-47T685-505q-15 0-29.5 4.5T629-487q-13 10-24.5 7T586-491q-7-8-7-19t11-19q20-16 45-23.5t51-7.5q69 0 103 32.5t34 97.5v147q0 13-9.5 22t-22.5 9q-13 0-22-9.5t-9-22.5v-5h-4q-14 23-38 35t-53 12Zm12-54q35 0 59.5-24t24.5-56q-14-8-33.5-12.5T689-393q-32 0-50 14t-18 37q0 20 16 33t40 13Z\",\n ],\n },\n ],\n format_color_text: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M120 0q-17 0-28.5-11.5T80-40v-80q0-17 11.5-28.5T120-160h720q17 0 28.5 11.5T880-120v80q0 17-11.5 28.5T840 0H120Zm165-280q-23 0-36.5-19.5T243-341l176-469q5-14 17-22t26-8h36q15 0 26.5 8t16.5 22l177 470q8 22-5.5 41T676-280q-14 0-26-8t-17-22l-39-114H368l-41 115q-5 14-16.5 21.5T285-280Zm111-224h168l-82-232h-4l-82 232Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M120 0q-17 0-28.5-11.5T80-40v-80q0-17 11.5-28.5T120-160h720q17 0 28.5 11.5T880-120v80q0 17-11.5 28.5T840 0H120Zm165-280q-23 0-36.5-19.5T243-341l176-469q5-14 17-22t26-8h36q15 0 26.5 8t16.5 22l177 470q8 22-5.5 41T676-280q-14 0-26-8t-17-22l-39-114H368l-41 115q-5 14-16.5 21.5T285-280Zm111-224h168l-82-232h-4l-82 232Z\",\n ],\n },\n ],\n text_fields: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M340-160q-25 0-42.5-17.5T280-220v-460H140q-25 0-42.5-17.5T80-740q0-25 17.5-42.5T140-800h400q25 0 42.5 17.5T600-740q0 25-17.5 42.5T540-680H400v460q0 25-17.5 42.5T340-160Zm360 0q-25 0-42.5-17.5T640-220v-260h-60q-25 0-42.5-17.5T520-540q0-25 17.5-42.5T580-600h240q25 0 42.5 17.5T880-540q0 25-17.5 42.5T820-480h-60v260q0 25-17.5 42.5T700-160Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M340-160q-25 0-42.5-17.5T280-220v-460H140q-25 0-42.5-17.5T80-740q0-25 17.5-42.5T140-800h400q25 0 42.5 17.5T600-740q0 25-17.5 42.5T540-680H400v460q0 25-17.5 42.5T340-160Zm360 0q-25 0-42.5-17.5T640-220v-260h-60q-25 0-42.5-17.5T520-540q0-25 17.5-42.5T580-600h240q25 0 42.5 17.5T880-540q0 25-17.5 42.5T820-480h-60v260q0 25-17.5 42.5T700-160Z\",\n ],\n },\n ],\n format_h1: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-280q-17 0-28.5-11.5T200-320v-320q0-17 11.5-28.5T240-680q17 0 28.5 11.5T280-640v120h160v-120q0-17 11.5-28.5T480-680q17 0 28.5 11.5T520-640v320q0 17-11.5 28.5T480-280q-17 0-28.5-11.5T440-320v-120H280v120q0 17-11.5 28.5T240-280Zm480 0q-17 0-28.5-11.5T680-320v-280h-40q-17 0-28.5-11.5T600-640q0-17 11.5-28.5T640-680h80q17 0 28.5 11.5T760-640v320q0 17-11.5 28.5T720-280Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-280q-17 0-28.5-11.5T200-320v-320q0-17 11.5-28.5T240-680q17 0 28.5 11.5T280-640v120h160v-120q0-17 11.5-28.5T480-680q17 0 28.5 11.5T520-640v320q0 17-11.5 28.5T480-280q-17 0-28.5-11.5T440-320v-120H280v120q0 17-11.5 28.5T240-280Zm480 0q-17 0-28.5-11.5T680-320v-280h-40q-17 0-28.5-11.5T600-640q0-17 11.5-28.5T640-680h80q17 0 28.5 11.5T760-640v320q0 17-11.5 28.5T720-280Z\",\n ],\n },\n ],\n format_h2: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-280q-17 0-28.5-11.5T120-320v-320q0-17 11.5-28.5T160-680q17 0 28.5 11.5T200-640v120h160v-120q0-17 11.5-28.5T400-680q17 0 28.5 11.5T440-640v320q0 17-11.5 28.5T400-280q-17 0-28.5-11.5T360-320v-120H200v120q0 17-11.5 28.5T160-280Zm400 0q-17 0-28.5-11.5T520-320v-120q0-33 23.5-56.5T600-520h160v-80H560q-17 0-28.5-11.5T520-640q0-17 11.5-28.5T560-680h200q33 0 56.5 23.5T840-600v80q0 33-23.5 56.5T760-440H600v80h200q17 0 28.5 11.5T840-320q0 17-11.5 28.5T800-280H560Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-280q-17 0-28.5-11.5T120-320v-320q0-17 11.5-28.5T160-680q17 0 28.5 11.5T200-640v120h160v-120q0-17 11.5-28.5T400-680q17 0 28.5 11.5T440-640v320q0 17-11.5 28.5T400-280q-17 0-28.5-11.5T360-320v-120H200v120q0 17-11.5 28.5T160-280Zm400 0q-17 0-28.5-11.5T520-320v-120q0-33 23.5-56.5T600-520h160v-80H560q-17 0-28.5-11.5T520-640q0-17 11.5-28.5T560-680h200q33 0 56.5 23.5T840-600v80q0 33-23.5 56.5T760-440H600v80h200q17 0 28.5 11.5T840-320q0 17-11.5 28.5T800-280H560Z\",\n ],\n },\n ],\n format_h3: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-280q-17 0-28.5-11.5T120-320v-320q0-17 11.5-28.5T160-680q17 0 28.5 11.5T200-640v120h160v-120q0-17 11.5-28.5T400-680q17 0 28.5 11.5T440-640v320q0 17-11.5 28.5T400-280q-17 0-28.5-11.5T360-320v-120H200v120q0 17-11.5 28.5T160-280Zm400 0q-17 0-28.5-11.5T520-320q0-17 11.5-28.5T560-360h200v-80H640q-17 0-28.5-11.5T600-480q0-17 11.5-28.5T640-520h120v-80H560q-17 0-28.5-11.5T520-640q0-17 11.5-28.5T560-680h200q33 0 56.5 23.5T840-600v240q0 33-23.5 56.5T760-280H560Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-280q-17 0-28.5-11.5T120-320v-320q0-17 11.5-28.5T160-680q17 0 28.5 11.5T200-640v120h160v-120q0-17 11.5-28.5T400-680q17 0 28.5 11.5T440-640v320q0 17-11.5 28.5T400-280q-17 0-28.5-11.5T360-320v-120H200v120q0 17-11.5 28.5T160-280Zm400 0q-17 0-28.5-11.5T520-320q0-17 11.5-28.5T560-360h200v-80H640q-17 0-28.5-11.5T600-480q0-17 11.5-28.5T640-520h120v-80H560q-17 0-28.5-11.5T520-640q0-17 11.5-28.5T560-680h200q33 0 56.5 23.5T840-600v240q0 33-23.5 56.5T760-280H560Z\",\n ],\n },\n ],\n format_bold: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M352-200q-33 0-56.5-23.5T272-280v-400q0-33 23.5-56.5T352-760h141q65 0 120 40t55 111q0 51-23 78.5T602-491q25 11 55.5 41t30.5 90q0 89-65 124.5T501-200H352Zm41-112h104q48 0 58.5-24.5T566-372q0-11-10.5-35.5T494-432H393v120Zm0-228h93q33 0 48-17t15-38q0-24-17-39t-44-15h-95v109Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M352-200q-33 0-56.5-23.5T272-280v-400q0-33 23.5-56.5T352-760h141q65 0 120 40t55 111q0 51-23 78.5T602-491q25 11 55.5 41t30.5 90q0 89-65 124.5T501-200H352Zm41-112h104q48 0 58.5-24.5T566-372q0-11-10.5-35.5T494-432H393v120Zm0-228h93q33 0 48-17t15-38q0-24-17-39t-44-15h-95v109Z\",\n ],\n },\n ],\n format_italic: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M250-200q-21 0-35.5-14.5T200-250q0-21 14.5-35.5T250-300h110l120-360H370q-21 0-35.5-14.5T320-710q0-21 14.5-35.5T370-760h300q21 0 35.5 14.5T720-710q0 21-14.5 35.5T670-660h-90L460-300h90q21 0 35.5 14.5T600-250q0 21-14.5 35.5T550-200H250Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M250-200q-21 0-35.5-14.5T200-250q0-21 14.5-35.5T250-300h110l120-360H370q-21 0-35.5-14.5T320-710q0-21 14.5-35.5T370-760h300q21 0 35.5 14.5T720-710q0 21-14.5 35.5T670-660h-90L460-300h90q21 0 35.5 14.5T600-250q0 21-14.5 35.5T550-200H250Z\",\n ],\n },\n ],\n format_underlined: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-120q-17 0-28.5-11.5T200-160q0-17 11.5-28.5T240-200h480q17 0 28.5 11.5T760-160q0 17-11.5 28.5T720-120H240Zm240-160q-101 0-157-63t-56-167v-279q0-21 15.5-36t36.5-15q21 0 36 15t15 36v285q0 56 28 91t82 35q54 0 82-35t28-91v-285q0-21 15.5-36t36.5-15q21 0 36 15t15 36v279q0 104-56 167t-157 63Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M240-120q-17 0-28.5-11.5T200-160q0-17 11.5-28.5T240-200h480q17 0 28.5 11.5T760-160q0 17-11.5 28.5T720-120H240Zm240-160q-101 0-157-63t-56-167v-279q0-21 15.5-36t36.5-15q21 0 36 15t15 36v285q0 56 28 91t82 35q54 0 82-35t28-91v-285q0-21 15.5-36t36.5-15q21 0 36 15t15 36v279q0 104-56 167t-157 63Z\",\n ],\n },\n ],\n format_strikethrough: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M120-400q-17 0-28.5-11.5T80-440q0-17 11.5-28.5T120-480h720q17 0 28.5 11.5T880-440q0 17-11.5 28.5T840-400H120Zm300-160v-120H260q-25 0-42.5-17.5T200-740q0-25 17.5-42.5T260-800h440q25 0 42.5 17.5T760-740q0 25-17.5 42.5T700-680H540v120H420Zm0 240h120v100q0 25-17.5 42.5T480-160q-25 0-42.5-17.5T420-220v-100Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M120-400q-17 0-28.5-11.5T80-440q0-17 11.5-28.5T120-480h720q17 0 28.5 11.5T880-440q0 17-11.5 28.5T840-400H120Zm300-160v-120H260q-25 0-42.5-17.5T200-740q0-25 17.5-42.5T260-800h440q25 0 42.5 17.5T760-740q0 25-17.5 42.5T700-680H540v120H420Zm0 240h120v100q0 25-17.5 42.5T480-160q-25 0-42.5-17.5T420-220v-100Z\",\n ],\n },\n ],\n link: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-280q-83 0-141.5-58.5T80-480q0-83 58.5-141.5T280-680h120q17 0 28.5 11.5T440-640q0 17-11.5 28.5T400-600H280q-50 0-85 35t-35 85q0 50 35 85t85 35h120q17 0 28.5 11.5T440-320q0 17-11.5 28.5T400-280H280Zm80-160q-17 0-28.5-11.5T320-480q0-17 11.5-28.5T360-520h240q17 0 28.5 11.5T640-480q0 17-11.5 28.5T600-440H360Zm200 160q-17 0-28.5-11.5T520-320q0-17 11.5-28.5T560-360h120q50 0 85-35t35-85q0-50-35-85t-85-35H560q-17 0-28.5-11.5T520-640q0-17 11.5-28.5T560-680h120q83 0 141.5 58.5T880-480q0 83-58.5 141.5T680-280H560Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-280q-83 0-141.5-58.5T80-480q0-83 58.5-141.5T280-680h120q17 0 28.5 11.5T440-640q0 17-11.5 28.5T400-600H280q-50 0-85 35t-35 85q0 50 35 85t85 35h120q17 0 28.5 11.5T440-320q0 17-11.5 28.5T400-280H280Zm80-160q-17 0-28.5-11.5T320-480q0-17 11.5-28.5T360-520h240q17 0 28.5 11.5T640-480q0 17-11.5 28.5T600-440H360Zm200 160q-17 0-28.5-11.5T520-320q0-17 11.5-28.5T560-360h120q50 0 85-35t35-85q0-50-35-85t-85-35H560q-17 0-28.5-11.5T520-640q0-17 11.5-28.5T560-680h120q83 0 141.5 58.5T880-480q0 83-58.5 141.5T680-280H560Z\",\n ],\n },\n ],\n code: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m193-479 155 155q11 11 11 28t-11 28q-11 11-28 11t-28-11L108-452q-6-6-8.5-13T97-480q0-8 2.5-15t8.5-13l184-184q12-12 28.5-12t28.5 12q12 12 12 28.5T349-635L193-479Zm574-2L612-636q-11-11-11-28t11-28q11-11 28-11t28 11l184 184q6 6 8.5 13t2.5 15q0 8-2.5 15t-8.5 13L668-268q-12 12-28 11.5T612-269q-12-12-12-28.5t12-28.5l155-155Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m193-479 155 155q11 11 11 28t-11 28q-11 11-28 11t-28-11L108-452q-6-6-8.5-13T97-480q0-8 2.5-15t8.5-13l184-184q12-12 28.5-12t28.5 12q12 12 12 28.5T349-635L193-479Zm574-2L612-636q-11-11-11-28t11-28q11-11 28-11t28 11l184 184q6 6 8.5 13t2.5 15q0 8-2.5 15t-8.5 13L668-268q-12 12-28 11.5T612-269q-12-12-12-28.5t12-28.5l155-155Z\",\n ],\n },\n ],\n code_blocks: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m353-480 59-59q12-12 12-28t-12-28q-12-12-28.5-12T355-595l-87 87q-6 6-8.5 13t-2.5 15q0 8 2.5 15t8.5 13l87 87q12 12 28.5 12t28.5-12q12-12 12-28t-12-28l-59-59Zm254 0-59 59q-12 12-12 28t12 28q12 12 28.5 12t28.5-12l87-87q6-6 8.5-13t2.5-15q0-8-2.5-15t-8.5-13l-87-87q-6-6-13.5-9t-15-3q-7.5 0-15 3t-13.5 9q-12 12-12 28t12 28l59 59ZM200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-560H200v560Zm0-560v560-560Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m353-480 59-59q12-12 12-28t-12-28q-12-12-28.5-12T355-595l-87 87q-6 6-8.5 13t-2.5 15q0 8 2.5 15t8.5 13l87 87q12 12 28.5 12t28.5-12q12-12 12-28t-12-28l-59-59Zm254 0-59 59q-12 12-12 28t12 28q12 12 28.5 12t28.5-12l87-87q6-6 8.5-13t2.5-15q0-8-2.5-15t-8.5-13l-87-87q-6-6-13.5-9t-15-3q-7.5 0-15 3t-13.5 9q-12 12-12 28t12 28l59 59ZM200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Z\",\n ],\n },\n ],\n format_quote: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m262-300 58-100q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 23-5.5 42.5T458-480L331-260q-5 9-14 14.5t-20 5.5q-23 0-34.5-20t-.5-40Zm360 0 58-100q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 23-5.5 42.5T818-480L691-260q-5 9-14 14.5t-20 5.5q-23 0-34.5-20t-.5-40ZM320-500q25 0 42.5-17.5T380-560q0-25-17.5-42.5T320-620q-25 0-42.5 17.5T260-560q0 25 17.5 42.5T320-500Zm360 0q25 0 42.5-17.5T740-560q0-25-17.5-42.5T680-620q-25 0-42.5 17.5T620-560q0 25 17.5 42.5T680-500Zm0-60Zm-360 0Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m262-300 58-100q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 23-5.5 42.5T458-480L331-260q-5 9-14 14.5t-20 5.5q-23 0-34.5-20t-.5-40Zm360 0 58-100q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 23-5.5 42.5T818-480L691-260q-5 9-14 14.5t-20 5.5q-23 0-34.5-20t-.5-40Z\",\n ],\n },\n ],\n format_list_numbered: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M150-80q-13 0-21.5-8.5T120-110q0-13 8.5-21.5T150-140h70v-30h-30q-13 0-21.5-8.5T160-200q0-13 8.5-21.5T190-230h30v-30h-70q-13 0-21.5-8.5T120-290q0-13 8.5-21.5T150-320h90q17 0 28.5 11.5T280-280v40q0 17-11.5 28.5T240-200q17 0 28.5 11.5T280-160v40q0 17-11.5 28.5T240-80h-90Zm0-280q-13 0-21.5-8.5T120-390v-80q0-17 11.5-28.5T160-510h60v-30h-70q-13 0-21.5-8.5T120-570q0-13 8.5-21.5T150-600h90q17 0 28.5 11.5T280-560v70q0 17-11.5 28.5T240-450h-60v30h70q13 0 21.5 8.5T280-390q0 13-8.5 21.5T250-360H150Zm60-280q-13 0-21.5-8.5T180-670v-150h-30q-13 0-21.5-8.5T120-850q0-13 8.5-21.5T150-880h60q13 0 21.5 8.5T240-850v180q0 13-8.5 21.5T210-640Zm190 440q-17 0-28.5-11.5T360-240q0-17 11.5-28.5T400-280h400q17 0 28.5 11.5T840-240q0 17-11.5 28.5T800-200H400Zm0-240q-17 0-28.5-11.5T360-480q0-17 11.5-28.5T400-520h400q17 0 28.5 11.5T840-480q0 17-11.5 28.5T800-440H400Zm0-240q-17 0-28.5-11.5T360-720q0-17 11.5-28.5T400-760h400q17 0 28.5 11.5T840-720q0 17-11.5 28.5T800-680H400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M150-80q-13 0-21.5-8.5T120-110q0-13 8.5-21.5T150-140h70v-30h-30q-13 0-21.5-8.5T160-200q0-13 8.5-21.5T190-230h30v-30h-70q-13 0-21.5-8.5T120-290q0-13 8.5-21.5T150-320h90q17 0 28.5 11.5T280-280v40q0 17-11.5 28.5T240-200q17 0 28.5 11.5T280-160v40q0 17-11.5 28.5T240-80h-90Zm0-280q-13 0-21.5-8.5T120-390v-80q0-17 11.5-28.5T160-510h60v-30h-70q-13 0-21.5-8.5T120-570q0-13 8.5-21.5T150-600h90q17 0 28.5 11.5T280-560v70q0 17-11.5 28.5T240-450h-60v30h70q13 0 21.5 8.5T280-390q0 13-8.5 21.5T250-360H150Zm60-280q-13 0-21.5-8.5T180-670v-150h-30q-13 0-21.5-8.5T120-850q0-13 8.5-21.5T150-880h60q13 0 21.5 8.5T240-850v180q0 13-8.5 21.5T210-640Zm190 440q-17 0-28.5-11.5T360-240q0-17 11.5-28.5T400-280h400q17 0 28.5 11.5T840-240q0 17-11.5 28.5T800-200H400Zm0-240q-17 0-28.5-11.5T360-480q0-17 11.5-28.5T400-520h400q17 0 28.5 11.5T840-480q0 17-11.5 28.5T800-440H400Zm0-240q-17 0-28.5-11.5T360-720q0-17 11.5-28.5T400-760h400q17 0 28.5 11.5T840-720q0 17-11.5 28.5T800-680H400Z\",\n ],\n },\n ],\n format_list_bulleted: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M400-200q-17 0-28.5-11.5T360-240q0-17 11.5-28.5T400-280h400q17 0 28.5 11.5T840-240q0 17-11.5 28.5T800-200H400Zm0-240q-17 0-28.5-11.5T360-480q0-17 11.5-28.5T400-520h400q17 0 28.5 11.5T840-480q0 17-11.5 28.5T800-440H400Zm0-240q-17 0-28.5-11.5T360-720q0-17 11.5-28.5T400-760h400q17 0 28.5 11.5T840-720q0 17-11.5 28.5T800-680H400ZM200-160q-33 0-56.5-23.5T120-240q0-33 23.5-56.5T200-320q33 0 56.5 23.5T280-240q0 33-23.5 56.5T200-160Zm0-240q-33 0-56.5-23.5T120-480q0-33 23.5-56.5T200-560q33 0 56.5 23.5T280-480q0 33-23.5 56.5T200-400Zm0-240q-33 0-56.5-23.5T120-720q0-33 23.5-56.5T200-800q33 0 56.5 23.5T280-720q0 33-23.5 56.5T200-640Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M400-200q-17 0-28.5-11.5T360-240q0-17 11.5-28.5T400-280h400q17 0 28.5 11.5T840-240q0 17-11.5 28.5T800-200H400Zm0-240q-17 0-28.5-11.5T360-480q0-17 11.5-28.5T400-520h400q17 0 28.5 11.5T840-480q0 17-11.5 28.5T800-440H400Zm0-240q-17 0-28.5-11.5T360-720q0-17 11.5-28.5T400-760h400q17 0 28.5 11.5T840-720q0 17-11.5 28.5T800-680H400ZM200-160q-33 0-56.5-23.5T120-240q0-33 23.5-56.5T200-320q33 0 56.5 23.5T280-240q0 33-23.5 56.5T200-160Zm0-240q-33 0-56.5-23.5T120-480q0-33 23.5-56.5T200-560q33 0 56.5 23.5T280-480q0 33-23.5 56.5T200-400Zm0-240q-33 0-56.5-23.5T120-720q0-33 23.5-56.5T200-800q33 0 56.5 23.5T280-720q0 33-23.5 56.5T200-640Z\",\n ],\n },\n ],\n alternate_email: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480v58q0 59-40.5 100.5T740-280q-35 0-66-15t-52-43q-29 29-65.5 43.5T480-280q-83 0-141.5-58.5T280-480q0-83 58.5-141.5T480-680q83 0 141.5 58.5T680-480v58q0 26 17 44t43 18q26 0 43-18t17-44v-58q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93h160q17 0 28.5 11.5T680-120q0 17-11.5 28.5T640-80H480Zm0-280q50 0 85-35t35-85q0-50-35-85t-85-35q-50 0-85 35t-35 85q0 50 35 85t85 35Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480v58q0 59-40.5 100.5T740-280q-35 0-66-15t-52-43q-29 29-65.5 43.5T480-280q-83 0-141.5-58.5T280-480q0-83 58.5-141.5T480-680q83 0 141.5 58.5T680-480v58q0 26 17 44t43 18q26 0 43-18t17-44v-58q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93h160q17 0 28.5 11.5T680-120q0 17-11.5 28.5T640-80H480Zm0-280q50 0 85-35t35-85q0-50-35-85t-85-35q-50 0-85 35t-35 85q0 50 35 85t85 35Z\",\n ],\n },\n ],\n filter_list: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-240q-17 0-28.5-11.5T400-280q0-17 11.5-28.5T440-320h80q17 0 28.5 11.5T560-280q0 17-11.5 28.5T520-240h-80ZM280-440q-17 0-28.5-11.5T240-480q0-17 11.5-28.5T280-520h400q17 0 28.5 11.5T720-480q0 17-11.5 28.5T680-440H280ZM160-640q-17 0-28.5-11.5T120-680q0-17 11.5-28.5T160-720h640q17 0 28.5 11.5T840-680q0 17-11.5 28.5T800-640H160Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-240q-17 0-28.5-11.5T400-280q0-17 11.5-28.5T440-320h80q17 0 28.5 11.5T560-280q0 17-11.5 28.5T520-240h-80ZM280-440q-17 0-28.5-11.5T240-480q0-17 11.5-28.5T280-520h400q17 0 28.5 11.5T720-480q0 17-11.5 28.5T680-440H280ZM160-640q-17 0-28.5-11.5T120-680q0-17 11.5-28.5T160-720h640q17 0 28.5 11.5T840-680q0 17-11.5 28.5T800-640H160Z\",\n ],\n },\n ],\n sort: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-240q-17 0-28.5-11.5T120-280q0-17 11.5-28.5T160-320h160q17 0 28.5 11.5T360-280q0 17-11.5 28.5T320-240H160Zm0-200q-17 0-28.5-11.5T120-480q0-17 11.5-28.5T160-520h400q17 0 28.5 11.5T600-480q0 17-11.5 28.5T560-440H160Zm0-200q-17 0-28.5-11.5T120-680q0-17 11.5-28.5T160-720h640q17 0 28.5 11.5T840-680q0 17-11.5 28.5T800-640H160Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-240q-17 0-28.5-11.5T120-280q0-17 11.5-28.5T160-320h160q17 0 28.5 11.5T360-280q0 17-11.5 28.5T320-240H160Zm0-200q-17 0-28.5-11.5T120-480q0-17 11.5-28.5T160-520h400q17 0 28.5 11.5T600-480q0 17-11.5 28.5T560-440H160Zm0-200q-17 0-28.5-11.5T120-680q0-17 11.5-28.5T160-720h640q17 0 28.5 11.5T840-680q0 17-11.5 28.5T800-640H160Z\",\n ],\n },\n ],\n swap_vert: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M360-440q-17 0-28.5-11.5T320-480v-247l-75 75q-11 11-27.5 11T189-652q-12-12-12-28.5t12-28.5l143-143q6-6 13-8.5t15-2.5q8 0 15 2.5t13 8.5l144 144q12 12 11.5 28T531-652q-12 11-28 11.5T475-652l-75-75v247q0 17-11.5 28.5T360-440ZM600-97q-8 0-15-2.5t-13-8.5L428-252q-12-12-11.5-28t12.5-28q12-11 28-11.5t28 11.5l75 75v-247q0-17 11.5-28.5T600-520q17 0 28.5 11.5T640-480v247l75-75q11-11 27.5-11t28.5 11q12 12 12 28.5T771-251L628-108q-6 6-13 8.5T600-97Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M360-440q-17 0-28.5-11.5T320-480v-247l-75 75q-11 11-27.5 11T189-652q-12-12-12-28.5t12-28.5l143-143q6-6 13-8.5t15-2.5q8 0 15 2.5t13 8.5l144 144q12 12 11.5 28T531-652q-12 11-28 11.5T475-652l-75-75v247q0 17-11.5 28.5T360-440ZM600-97q-8 0-15-2.5t-13-8.5L428-252q-12-12-11.5-28t12.5-28q12-11 28-11.5t28 11.5l75 75v-247q0-17 11.5-28.5T600-520q17 0 28.5 11.5T640-480v247l75-75q11-11 27.5-11t28.5 11q12 12 12 28.5T771-251L628-108q-6 6-13 8.5T600-97Z\",\n ],\n },\n ],\n arrow_forward: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M647-440H200q-17 0-28.5-11.5T160-480q0-17 11.5-28.5T200-520h447L451-716q-12-12-11.5-28t12.5-28q12-11 28-11.5t28 11.5l264 264q6 6 8.5 13t2.5 15q0 8-2.5 15t-8.5 13L508-188q-11 11-27.5 11T452-188q-12-12-12-28.5t12-28.5l195-195Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M647-440H200q-17 0-28.5-11.5T160-480q0-17 11.5-28.5T200-520h447L451-716q-12-12-11.5-28t12.5-28q12-11 28-11.5t28 11.5l264 264q6 6 8.5 13t2.5 15q0 8-2.5 15t-8.5 13L508-188q-11 11-27.5 11T452-188q-12-12-12-28.5t12-28.5l195-195Z\",\n ],\n },\n ],\n arrow_back: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m313-440 196 196q12 12 11.5 28T508-188q-12 11-28 11.5T452-188L188-452q-6-6-8.5-13t-2.5-15q0-8 2.5-15t8.5-13l264-264q11-11 27.5-11t28.5 11q12 12 12 28.5T508-715L313-520h447q17 0 28.5 11.5T800-480q0 17-11.5 28.5T760-440H313Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"m313-440 196 196q12 12 11.5 28T508-188q-12 11-28 11.5T452-188L188-452q-6-6-8.5-13t-2.5-15q0-8 2.5-15t8.5-13l264-264q11-11 27.5-11t28.5 11q12 12 12 28.5T508-715L313-520h447q17 0 28.5 11.5T800-480q0 17-11.5 28.5T760-440H313Z\",\n ],\n },\n ],\n arrow_downward: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-313v-447q0-17 11.5-28.5T480-800q17 0 28.5 11.5T520-760v447l196-196q12-12 28-11.5t28 12.5q11 12 11.5 28T772-452L508-188q-6 6-13 8.5t-15 2.5q-8 0-15-2.5t-13-8.5L188-452q-11-11-11-27.5t11-28.5q12-12 28.5-12t28.5 12l195 195Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M440-313v-447q0-17 11.5-28.5T480-800q17 0 28.5 11.5T520-760v447l196-196q12-12 28-11.5t28 12.5q11 12 11.5 28T772-452L508-188q-6 6-13 8.5t-15 2.5q-8 0-15-2.5t-13-8.5L188-452q-11-11-11-27.5t11-28.5q12-12 28.5-12t28.5 12l195 195Z\",\n ],\n },\n ],\n arrow_right: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M420-308q-8 0-14-5.5t-6-14.5v-304q0-9 6-14.5t14-5.5q2 0 14 6l145 145q5 5 7 10t2 11q0 6-2 11t-7 10L434-314q-3 3-6.5 4.5T420-308Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M420-308q-8 0-14-5.5t-6-14.5v-304q0-9 6-14.5t14-5.5q2 0 14 6l145 145q5 5 7 10t2 11q0 6-2 11t-7 10L434-314q-3 3-6.5 4.5T420-308Z\",\n ],\n },\n ],\n arrow_left: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M526-314 381-459q-5-5-7-10t-2-11q0-6 2-11t7-10l145-145q3-3 6.5-4.5t7.5-1.5q8 0 14 5.5t6 14.5v304q0 9-6 14.5t-14 5.5q-2 0-14-6Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M526-314 381-459q-5-5-7-10t-2-11q0-6 2-11t7-10l145-145q3-3 6.5-4.5t7.5-1.5q8 0 14 5.5t6 14.5v304q0 9-6 14.5t-14 5.5q-2 0-14-6Z\",\n ],\n },\n ],\n arrow_drop_up: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M328-400q-9 0-14.5-6t-5.5-14q0-2 6-14l145-145q5-5 10-7t11-2q6 0 11 2t10 7l145 145q3 3 4.5 6.5t1.5 7.5q0 8-5.5 14t-14.5 6H328Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M328-400q-9 0-14.5-6t-5.5-14q0-2 6-14l145-145q5-5 10-7t11-2q6 0 11 2t10 7l145 145q3 3 4.5 6.5t1.5 7.5q0 8-5.5 14t-14.5 6H328Z\",\n ],\n },\n ],\n arrow_drop_down: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M459-381 314-526q-3-3-4.5-6.5T308-540q0-8 5.5-14t14.5-6h304q9 0 14.5 6t5.5 14q0 2-6 14L501-381q-5 5-10 7t-11 2q-6 0-11-2t-10-7Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M459-381 314-526q-3-3-4.5-6.5T308-540q0-8 5.5-14t14.5-6h304q9 0 14.5 6t5.5 14q0 2-6 14L501-381q-5 5-10 7t-11 2q-6 0-11-2t-10-7Z\",\n ],\n },\n ],\n refresh: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-160q-134 0-227-93t-93-227q0-134 93-227t227-93q69 0 132 28.5T720-690v-70q0-17 11.5-28.5T760-800q17 0 28.5 11.5T800-760v200q0 17-11.5 28.5T760-520H560q-17 0-28.5-11.5T520-560q0-17 11.5-28.5T560-600h128q-32-56-87.5-88T480-720q-100 0-170 70t-70 170q0 100 70 170t170 70q68 0 124.5-34.5T692-367q8-14 22.5-19.5t29.5-.5q16 5 23 21t-1 30q-41 80-117 128t-169 48Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-160q-134 0-227-93t-93-227q0-134 93-227t227-93q69 0 132 28.5T720-690v-70q0-17 11.5-28.5T760-800q17 0 28.5 11.5T800-760v200q0 17-11.5 28.5T760-520H560q-17 0-28.5-11.5T520-560q0-17 11.5-28.5T560-600h128q-32-56-87.5-88T480-720q-100 0-170 70t-70 170q0 100 70 170t170 70q68 0 124.5-34.5T692-367q8-14 22.5-19.5t29.5-.5q16 5 23 21t-1 30q-41 80-117 128t-169 48Z\",\n ],\n },\n ],\n robot_2: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-17 0-28.5-11.5T160-160v-160q0-33 23.5-56.5T240-400h480q33 0 56.5 23.5T800-320v160q0 17-11.5 28.5T760-120H200Zm160-320q-83 0-141.5-58.5T160-640q0-83 58.5-141.5T360-840h240q83 0 141.5 58.5T800-640q0 83-58.5 141.5T600-440H360ZM240-200h480v-120H240v120Zm120-320h240q50 0 85-35t35-85q0-50-35-85t-85-35H360q-50 0-85 35t-35 85q0 50 35 85t85 35Zm0-80q17 0 28.5-11.5T400-640q0-17-11.5-28.5T360-680q-17 0-28.5 11.5T320-640q0 17 11.5 28.5T360-600Zm240 0q17 0 28.5-11.5T640-640q0-17-11.5-28.5T600-680q-17 0-28.5 11.5T560-640q0 17 11.5 28.5T600-600ZM480-200Zm0-440Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-17 0-28.5-11.5T160-160v-160q0-33 23.5-56.5T240-400h480q33 0 56.5 23.5T800-320v160q0 17-11.5 28.5T760-120H200Zm160-320q-83 0-141.5-58.5T160-640q0-83 58.5-141.5T360-840h240q83 0 141.5 58.5T800-640q0 83-58.5 141.5T600-440H360Zm0-160q17 0 28.5-11.5T400-640q0-17-11.5-28.5T360-680q-17 0-28.5 11.5T320-640q0 17 11.5 28.5T360-600Zm240 0q17 0 28.5-11.5T640-640q0-17-11.5-28.5T600-680q-17 0-28.5 11.5T560-640q0 17 11.5 28.5T600-600Z\",\n ],\n },\n ],\n group: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M40-272q0-34 17.5-62.5T104-378q62-31 126-46.5T360-440q66 0 130 15.5T616-378q29 15 46.5 43.5T680-272v32q0 33-23.5 56.5T600-160H120q-33 0-56.5-23.5T40-240v-32Zm800 112H738q11-18 16.5-38.5T760-240v-40q0-44-24.5-84.5T666-434q51 6 96 20.5t84 35.5q36 20 55 44.5t19 53.5v40q0 33-23.5 56.5T840-160ZM360-480q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47Zm400-160q0 66-47 113t-113 47q-11 0-28-2.5t-28-5.5q27-32 41.5-71t14.5-81q0-42-14.5-81T544-792q14-5 28-6.5t28-1.5q66 0 113 47t47 113ZM120-240h480v-32q0-11-5.5-20T580-306q-54-27-109-40.5T360-360q-56 0-111 13.5T140-306q-9 5-14.5 14t-5.5 20v32Zm240-320q33 0 56.5-23.5T440-640q0-33-23.5-56.5T360-720q-33 0-56.5 23.5T280-640q0 33 23.5 56.5T360-560Zm0 320Zm0-400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M40-272q0-34 17.5-62.5T104-378q62-31 126-46.5T360-440q66 0 130 15.5T616-378q29 15 46.5 43.5T680-272v32q0 33-23.5 56.5T600-160H120q-33 0-56.5-23.5T40-240v-32Zm698 112q11-18 16.5-38.5T760-240v-40q0-44-24.5-84.5T666-434q51 6 96 20.5t84 35.5q36 20 55 44.5t19 53.5v40q0 33-23.5 56.5T840-160H738ZM360-480q-66 0-113-47t-47-113q0-66 47-113t113-47q66 0 113 47t47 113q0 66-47 113t-113 47Zm400-160q0 66-47 113t-113 47q-11 0-28-2.5t-28-5.5q27-32 41.5-71t14.5-81q0-42-14.5-81T544-792q14-5 28-6.5t28-1.5q66 0 113 47t47 113Z\",\n ],\n },\n ],\n conversion_path: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M760-120q-39 0-70-22.5T647-200H440q-66 0-113-47t-47-113q0-66 47-113t113-47h80q33 0 56.5-23.5T600-600q0-33-23.5-56.5T520-680H313q-13 35-43.5 57.5T200-600q-50 0-85-35t-35-85q0-50 35-85t85-35q39 0 69.5 22.5T313-760h207q66 0 113 47t47 113q0 66-47 113t-113 47h-80q-33 0-56.5 23.5T360-360q0 33 23.5 56.5T440-280h207q13-35 43.5-57.5T760-360q50 0 85 35t35 85q0 50-35 85t-85 35ZM200-680q17 0 28.5-11.5T240-720q0-17-11.5-28.5T200-760q-17 0-28.5 11.5T160-720q0 17 11.5 28.5T200-680Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M760-120q-39 0-70-22.5T647-200H440q-66 0-113-47t-47-113q0-66 47-113t113-47h80q33 0 56.5-23.5T600-600q0-33-23.5-56.5T520-680H313q-13 35-43.5 57.5T200-600q-50 0-85-35t-35-85q0-50 35-85t85-35q39 0 69.5 22.5T313-760h207q66 0 113 47t47 113q0 66-47 113t-113 47h-80q-33 0-56.5 23.5T360-360q0 33 23.5 56.5T440-280h207q13-35 43.5-57.5T760-360q50 0 85 35t35 85q0 50-35 85t-85 35ZM200-680q17 0 28.5-11.5T240-720q0-17-11.5-28.5T200-760q-17 0-28.5 11.5T160-720q0 17 11.5 28.5T200-680Z\",\n ],\n },\n ],\n smartphone: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-40q-33 0-56.5-23.5T200-120v-720q0-33 23.5-56.5T280-920h400q33 0 56.5 23.5T760-840v720q0 33-23.5 56.5T680-40H280Zm0-120v40h400v-40H280Zm0-80h400v-480H280v480Zm0-560h400v-40H280v40Zm0 0v-40 40Zm0 640v40-40Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M280-40q-33 0-56.5-23.5T200-120v-720q0-33 23.5-56.5T280-920h400q33 0 56.5 23.5T760-840v720q0 33-23.5 56.5T680-40H280Zm0-200h400v-480H280v480Z\",\n ],\n },\n ],\n radio_button_unchecked: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0 0q-134 0-227-93t-93-227q0-134 93-227t227-93q134 0 227 93t93 227q0 134-93 227t-227 93Z\",\n ],\n },\n ],\n view_kanban: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-560H200v560Zm0-560v560-560Zm120 80q-17 0-28.5 11.5T280-640v320q0 17 11.5 28.5T320-280q17 0 28.5-11.5T360-320v-320q0-17-11.5-28.5T320-680Zm320 0q-17 0-28.5 11.5T600-640v240q0 17 11.5 28.5T640-360q17 0 28.5-11.5T680-400v-240q0-17-11.5-28.5T640-680Zm-160 0q-17 0-28.5 11.5T440-640v120q0 17 11.5 28.5T480-480q17 0 28.5-11.5T520-520v-120q0-17-11.5-28.5T480-680Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm120-560q-17 0-28.5 11.5T280-640v320q0 17 11.5 28.5T320-280q17 0 28.5-11.5T360-320v-320q0-17-11.5-28.5T320-680Zm320 0q-17 0-28.5 11.5T600-640v240q0 17 11.5 28.5T640-360q17 0 28.5-11.5T680-400v-240q0-17-11.5-28.5T640-680Zm-160 0q-17 0-28.5 11.5T440-640v120q0 17 11.5 28.5T480-480q17 0 28.5-11.5T520-520v-120q0-17-11.5-28.5T480-680Z\",\n ],\n },\n ],\n web_asset: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h640q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160Zm0-80h640v-400H160v400Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h640q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160Zm0-80h640v-400H160v400Z\",\n ],\n },\n ],\n open_in_full: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-120q-17 0-28.5-11.5T120-160v-240q0-17 11.5-28.5T160-440q17 0 28.5 11.5T200-400v144l504-504H560q-17 0-28.5-11.5T520-800q0-17 11.5-28.5T560-840h240q17 0 28.5 11.5T840-800v240q0 17-11.5 28.5T800-520q-17 0-28.5-11.5T760-560v-144L256-200h144q17 0 28.5 11.5T440-160q0 17-11.5 28.5T400-120H160Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M160-120q-17 0-28.5-11.5T120-160v-240q0-17 11.5-28.5T160-440q17 0 28.5 11.5T200-400v144l504-504H560q-17 0-28.5-11.5T520-800q0-17 11.5-28.5T560-840h240q17 0 28.5 11.5T840-800v240q0 17-11.5 28.5T800-520q-17 0-28.5-11.5T760-560v-144L256-200h144q17 0 28.5 11.5T440-160q0 17-11.5 28.5T400-120H160Z\",\n ],\n },\n ],\n close_fullscreen: [\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M400-344 164-108q-11 11-28 11t-28-11q-11-11-11-28t11-28l236-236H200q-17 0-28.5-11.5T160-440q0-17 11.5-28.5T200-480h240q17 0 28.5 11.5T480-440v240q0 17-11.5 28.5T440-160q-17 0-28.5-11.5T400-200v-144Zm216-216h144q17 0 28.5 11.5T800-520q0 17-11.5 28.5T760-480H520q-17 0-28.5-11.5T480-520v-240q0-17 11.5-28.5T520-800q17 0 28.5 11.5T560-760v144l236-236q11-11 28-11t28 11q11 11 11 28t-11 28L616-560Z\",\n ],\n },\n {\n transform: \"scale(0.025) translate(0 960)\",\n paths: [\n \"M400-344 164-108q-11 11-28 11t-28-11q-11-11-11-28t11-28l236-236H200q-17 0-28.5-11.5T160-440q0-17 11.5-28.5T200-480h240q17 0 28.5 11.5T480-440v240q0 17-11.5 28.5T440-160q-17 0-28.5-11.5T400-200v-144Zm216-216h144q17 0 28.5 11.5T800-520q0 17-11.5 28.5T760-480H520q-17 0-28.5-11.5T480-520v-240q0-17 11.5-28.5T520-800q17 0 28.5 11.5T560-760v144l236-236q11-11 28-11t28 11q11 11 11 28t-11 28L616-560Z\",\n ],\n },\n ],\n};\nconst symbol = (name: keyof typeof symbols, filled = false) => (\n <g\n transform={symbols[name][filled ? 1 : 0].transform}\n fill=\"currentColor\"\n data-material-symbol={name}\n >\n {symbols[name][filled ? 1 : 0].paths.map((d) => (\n <path key={d} d={d} />\n ))}\n </g>\n);\nconst badge = (name: keyof typeof symbols, filled = false) => (\n <g transform=\"translate(14 14) scale(0.42)\">{symbol(name, filled)}</g>\n);\nexport const Icons: Record<IconName, IconSrc> = {\n Home: (filled) => symbol(\"home\", filled),\n User: (filled) => symbol(\"person\", filled),\n UserPlus: (filled) => symbol(\"person_add\", filled),\n Mail: (filled) => symbol(\"mail\", filled),\n MailPlus: (filled) => symbol(\"mark_email_unread\", filled),\n Star: (filled) => symbol(\"star\", filled),\n PlusCircle: (filled) => symbol(\"add_circle\", filled),\n Explore: (filled) => symbol(\"explore\", filled),\n Smile: (filled) => symbol(\"sentiment_satisfied\", filled),\n SmilePlus: (filled) => symbol(\"add_reaction\", filled),\n Leaf: (filled) => symbol(\"eco\", filled),\n Sticker: (filled) => symbol(\"sticky_note_2\", filled),\n Delete: (filled) => symbol(\"delete\", filled),\n Phone: (filled) => symbol(\"call\", filled),\n PhoneDown: (filled) => symbol(\"call_end\", filled),\n Headphone: (filled) => symbol(\"headphones\", filled),\n HeadphoneMute: (filled) => symbol(\"headset_off\", filled),\n Send: (filled) => symbol(\"arrow_upward\", filled),\n Bell: (filled) => symbol(\"notifications\", filled),\n BellRing: (filled) => symbol(\"notifications_active\", filled),\n BellPing: (filled) => symbol(\"notification_important\", filled),\n BellMute: (filled) => symbol(\"notifications_off\", filled),\n Message: (filled) => symbol(\"chat\", filled),\n MessageUnread: (filled) => symbol(\"mark_chat_unread\", filled),\n Setting: (filled) => symbol(\"settings\", filled),\n Search: (filled) => symbol(\"search\", filled),\n Heart: (filled) => symbol(\"favorite\", filled),\n Play: (filled) => symbol(\"play_arrow\", filled),\n Pause: (filled) => symbol(\"pause\", filled),\n Sun: (filled) => symbol(\"light_mode\", filled),\n Photo: (filled) => symbol(\"image\", filled),\n Lock: (filled) => symbol(\"lock\", filled),\n Vlc: (filled) => symbol(\"movie\", filled),\n Flag: (filled) => symbol(\"flag\", filled),\n Ball: (filled) => symbol(\"sports_basketball\", filled),\n Bulb: (filled) => symbol(\"lightbulb\", filled),\n Terminal: (filled) => symbol(\"terminal\", filled),\n Pencil: (filled) => symbol(\"edit\", filled),\n Info: (filled) => symbol(\"info\", filled),\n Shield: (filled) => symbol(\"shield\", filled),\n ShieldLock: (filled) => symbol(\"encrypted\", filled),\n ShieldUser: (filled) => symbol(\"admin_panel_settings\", filled),\n Cup: (filled) => symbol(\"local_cafe\", filled),\n Pin: (filled) => symbol(\"push_pin\", filled),\n VolumeHigh: (filled) => symbol(\"volume_up\", filled),\n VolumeHighLock: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"volume_up\", filled)}</g>\n {badge(\"lock\", filled)}\n </>\n ),\n VolumeHighGlobe: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"volume_up\", filled)}</g>\n {badge(\"public\", filled)}\n </>\n ),\n VolumeMute: (filled) => symbol(\"volume_off\", filled),\n File: (filled) => symbol(\"draft\", filled),\n Category: (filled) => symbol(\"grid_view\", filled),\n Peace: (filled) => symbol(\"public\", filled),\n Eye: (filled) => symbol(\"visibility\", filled),\n EyeBlind: (filled) => symbol(\"visibility_off\", filled),\n Warning: (filled) => symbol(\"warning\", filled),\n Funnel: (filled) => symbol(\"filter_alt\", filled),\n Bookmark: (filled) => symbol(\"bookmark\", filled),\n Inbox: (filled) => symbol(\"inbox\", filled),\n Thread: (filled) => symbol(\"forum\", filled),\n ThreadPlus: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"forum\", filled)}</g>\n {badge(\"add\", filled)}\n </>\n ),\n ThreadUnread: (filled) => symbol(\"mark_unread_chat_alt\", filled),\n ThreadReply: (filled) => symbol(\"reply\", filled),\n Monitor: (filled) => symbol(\"desktop_windows\", filled),\n ScreenShare: (filled) => symbol(\"screen_share\", filled),\n Server: (filled) => symbol(\"dns\", filled),\n Prohibited: (filled) => symbol(\"block\", filled),\n NoEntry: (filled) => symbol(\"do_not_disturb_on\", filled),\n Mic: (filled) => symbol(\"mic\", filled),\n MicMute: (filled) => symbol(\"mic_off\", filled),\n VideoCamera: (filled) => symbol(\"videocam\", filled),\n VideoCameraMute: (filled) => symbol(\"videocam_off\", filled),\n Hash: (filled) => symbol(\"tag\", filled),\n HashLock: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"tag\", filled)}</g>\n {badge(\"lock\", filled)}\n </>\n ),\n HashGlobe: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"tag\", filled)}</g>\n {badge(\"public\", filled)}\n </>\n ),\n HashSearch: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"tag\", filled)}</g>\n {badge(\"search\", filled)}\n </>\n ),\n HashPlus: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"tag\", filled)}</g>\n {badge(\"add\", filled)}\n </>\n ),\n Space: (filled) => symbol(\"workspaces\", filled),\n SpaceLock: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"workspaces\", filled)}</g>\n {badge(\"lock\", filled)}\n </>\n ),\n SpaceGlobe: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"workspaces\", filled)}</g>\n {badge(\"public\", filled)}\n </>\n ),\n SpaceSearch: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"workspaces\", filled)}</g>\n {badge(\"search\", filled)}\n </>\n ),\n SpacePlus: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"workspaces\", filled)}</g>\n {badge(\"add\", filled)}\n </>\n ),\n ChevronRight: (filled) => symbol(\"chevron_right\", filled),\n ChevronLeft: (filled) => symbol(\"chevron_left\", filled),\n ChevronTop: (filled) => symbol(\"keyboard_arrow_up\", filled),\n ChevronBottom: (filled) => symbol(\"keyboard_arrow_down\", filled),\n Plus: (filled) => symbol(\"add\", filled),\n Minus: (filled) => symbol(\"remove\", filled),\n Cross: (filled) => symbol(\"close\", filled),\n VerticalDots: (filled) => symbol(\"more_vert\", filled),\n HorizontalDots: (filled) => symbol(\"more_horiz\", filled),\n Check: (filled) => symbol(\"check\", filled),\n CheckTwice: (filled) => symbol(\"done_all\", filled),\n Download: (filled) => symbol(\"download\", filled),\n External: (filled) => symbol(\"open_in_new\", filled),\n Clock: (filled) => symbol(\"schedule\", filled),\n RecentClock: (filled) => symbol(\"history\", filled),\n Power: (filled) => symbol(\"power_settings_new\", filled),\n ReplyArrow: (filled) => symbol(\"reply\", filled),\n ArrowGoRight: (filled) => symbol(\"login\", filled),\n ArrowGoRightPlus: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"login\", filled)}</g>\n {badge(\"add\", filled)}\n </>\n ),\n ArrowGoRightCross: (filled) => (\n <>\n <g transform=\"scale(0.8)\">{symbol(\"logout\", filled)}</g>\n {badge(\"close\", filled)}\n </>\n ),\n ArrowGoLeft: (filled) => symbol(\"logout\", filled),\n Markdown: (filled) => symbol(\"markdown\", filled),\n Attachment: (filled) => symbol(\"attach_file\", filled),\n Alphabet: (filled) => symbol(\"match_case\", filled),\n AlphabetUnderline: (filled) => symbol(\"format_color_text\", filled),\n Text: (filled) => symbol(\"text_fields\", filled),\n Heading1: (filled) => symbol(\"format_h1\", filled),\n Heading2: (filled) => symbol(\"format_h2\", filled),\n Heading3: (filled) => symbol(\"format_h3\", filled),\n Bold: (filled) => symbol(\"format_bold\", filled),\n Italic: (filled) => symbol(\"format_italic\", filled),\n Underline: (filled) => symbol(\"format_underlined\", filled),\n Strike: (filled) => symbol(\"format_strikethrough\", filled),\n Link: (filled) => symbol(\"link\", filled),\n Code: (filled) => symbol(\"code\", filled),\n BlockCode: (filled) => symbol(\"code_blocks\", filled),\n BlockQuote: (filled) => symbol(\"format_quote\", filled),\n OrderList: (filled) => symbol(\"format_list_numbered\", filled),\n UnorderList: (filled) => symbol(\"format_list_bulleted\", filled),\n Mention: (filled) => symbol(\"alternate_email\", filled),\n Filter: (filled) => symbol(\"filter_list\", filled),\n Sort: (filled) => symbol(\"sort\", filled),\n ArrowUpDown: (filled) => symbol(\"swap_vert\", filled),\n ArrowRight: (filled) => symbol(\"arrow_forward\", filled),\n ArrowLeft: (filled) => symbol(\"arrow_back\", filled),\n ArrowTop: (filled) => symbol(\"arrow_upward\", filled),\n ArrowBottom: (filled) => symbol(\"arrow_downward\", filled),\n ArrowDropRight: (filled) => symbol(\"arrow_right\", filled),\n ArrowDropLeft: (filled) => symbol(\"arrow_left\", filled),\n ArrowDropTop: (filled) => symbol(\"arrow_drop_up\", filled),\n ArrowDropBottom: (filled) => symbol(\"arrow_drop_down\", filled),\n Reload: (filled) => symbol(\"refresh\", filled),\n Globe: (filled) => symbol(\"public\", filled),\n Agent: (filled) => symbol(\"robot_2\", filled),\n People: (filled) => symbol(\"group\", filled),\n PullRequest: (filled) => symbol(\"conversion_path\", filled),\n Smartphone: (filled) => symbol(\"smartphone\", filled),\n Unavailable: (filled) => symbol(\"radio_button_unchecked\", filled),\n Admin: (filled) => symbol(\"admin_panel_settings\", filled),\n Board: (filled) => symbol(\"view_kanban\", filled),\n App: (filled) => symbol(\"web_asset\", filled),\n Expand: (filled) => symbol(\"open_in_full\", filled),\n Collapse: (filled) => symbol(\"close_fullscreen\", filled),\n};\n","import classNames from \"classnames\";\nimport React, { AllHTMLAttributes, ChangeEventHandler, forwardRef } from \"react\";\n\nimport { Icon, Icons } from \"../icon\";\nimport * as css from \"./Checkbox.css\";\n\ntype CheckboxProps = Omit<\n AllHTMLAttributes<HTMLInputElement>,\n \"children\" | \"onChange\" | \"type\" | \"size\"\n> &\n css.CheckboxVariants & {\n onChange?: ChangeEventHandler<HTMLInputElement>;\n defaultChecked?: boolean;\n checked?: boolean;\n };\n\nexport const Checkbox = forwardRef<HTMLInputElement, CheckboxProps>(\n ({ className, variant, size, style, ...props }, ref) => (\n <span className={classNames(css.Checkbox({ variant, size }), className)} style={style}>\n <input className={css.CheckboxInput} type=\"checkbox\" {...props} ref={ref} />\n <Icon className={css.CheckboxIcon} aria-hidden size={size} src={Icons.Check} />\n </span>\n )\n);\n","import classNames from \"classnames\";\nimport React, { ReactNode } from \"react\";\nimport { as } from \"../as\";\n\nimport * as css from \"./Chip.css\";\n\ntype ChipProps = {\n before?: ReactNode;\n after?: ReactNode;\n};\n\nexport const Chip = as<\"button\", ChipProps & css.ChipVariants>(\n (\n {\n as: AsChip = \"button\",\n className,\n variant,\n fill,\n size,\n outlined,\n radii,\n before,\n after,\n children,\n ...props\n },\n ref\n ) => (\n <AsChip\n className={classNames(\n css.Chip({\n variant,\n fill,\n size,\n outlined,\n radii,\n }),\n className\n )}\n data-ui-before={before ? true : undefined}\n data-ui-after={after ? true : undefined}\n {...props}\n ref={ref}\n >\n {before}\n {children}\n {after}\n </AsChip>\n )\n);\n","import classNames from \"classnames\";\nimport React from \"react\";\nimport { as } from \"../as\";\nimport * as css from \"./Dialog.css\";\n\nexport const Dialog = as<\"div\", css.DialogVariants>(\n ({ as: AsDialog = \"div\", className, variant, ...props }, ref) => (\n <AsDialog className={classNames(css.Dialog({ variant }), className)} {...props} ref={ref} />\n )\n);\n","import classNames from \"classnames\";\nimport React from \"react\";\nimport { as } from \"../as\";\nimport * as css from \"./Header.css\";\n\nexport const Header = as<\"header\", css.HeaderVariants>(\n ({ as: AsHeader = \"header\", className, variant, size, ...props }, ref) => (\n <AsHeader\n className={classNames(css.Header({ variant, size }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport * as css from \"./IconButton.css\";\n\nexport const IconButton = as<\"button\", css.IconButtonVariants>(\n (\n { as: AsIconButton = \"button\", className, size, variant, fill, radii, outlined, ...props },\n ref\n ) => (\n <AsIconButton\n className={classNames(css.IconButton({ variant, fill, size, radii, outlined }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import React, { AllHTMLAttributes, forwardRef, ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Input.css\";\n\ntype InputProps = Omit<AllHTMLAttributes<HTMLInputElement>, \"size\"> & {\n before?: ReactNode;\n after?: ReactNode;\n inputSize?: number;\n};\n\nexport const Input = forwardRef<HTMLInputElement, InputProps & css.InputVariants>(\n (\n { className, style, variant, size, inputSize = 1, outlined, radii, before, after, ...props },\n ref\n ) => (\n <div\n className={classNames(css.Input({ variant, size, outlined, radii }), className)}\n style={style}\n data-ui-before={before ? true : undefined}\n data-ui-after={after ? true : undefined}\n data-disabled={props.disabled || undefined}\n >\n {before}\n <input className={css.InputInput} size={inputSize} {...props} ref={ref} />\n {after}\n </div>\n )\n);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Line.css\";\nimport { as } from \"../as\";\n\nexport const Line = as<\"div\", css.LineVariants>(\n ({ as: AsLine = \"div\", className, variant, direction, size, ...props }, ref) => (\n <AsLine\n className={classNames(css.Line({ variant, direction, size }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import classNames from \"classnames\";\nimport React, { ReactNode } from \"react\";\nimport { as } from \"../as\";\nimport * as css from \"./MenuItem.css\";\n\ntype MenuItemProps = {\n before?: ReactNode;\n after?: ReactNode;\n};\n\nexport const MenuItem = as<\"button\", MenuItemProps & css.MenuItemVariants>(\n (\n {\n as: AsMenuItem = \"button\",\n className,\n variant,\n fill,\n size,\n radii,\n before,\n after,\n children,\n ...props\n },\n ref\n ) => (\n <AsMenuItem\n className={classNames(css.MenuItem({ variant, fill, size, radii }), className)}\n data-ui-before={before ? true : undefined}\n data-ui-after={after ? true : undefined}\n {...props}\n ref={ref}\n >\n {before}\n {children}\n {after}\n </AsMenuItem>\n )\n);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Menu.css\";\nimport { as } from \"../as\";\n\nexport const Menu = as<\"div\", css.MenuVariants>(\n ({ as: AsMenu = \"div\", className, variant, ...props }, ref) => (\n <AsMenu className={classNames(css.Menu({ variant }), className)} {...props} ref={ref} />\n )\n);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Modal.css\";\nimport { as } from \"../as\";\n\nexport const Modal = as<\"div\", css.ModalVariants>(\n ({ as: AsModal = \"div\", className, variant, size, flexHeight, ...props }, ref) => (\n <AsModal\n className={classNames(css.Modal({ variant, size, flexHeight }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import React, { ReactNode } from \"react\";\nimport { createPortal } from \"react-dom\";\n\nexport type PortalProps = {\n container?: Element | DocumentFragment;\n children: ReactNode | ReactNode[];\n};\nexport const Portal = ({ container, children }: PortalProps) => (\n <>{createPortal(children, container ?? document.body)}</>\n);\n","import React, { createContext, ReactNode, useContext } from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Overlay.css\";\nimport { Portal } from \"../portal\";\nimport { as } from \"../as\";\n\nconst OverlayContainerContext = createContext<Element | DocumentFragment | undefined>(undefined);\nexport const OverlayContainerProvider = OverlayContainerContext.Provider;\nexport const useOverlayContainer = (): Element | DocumentFragment | undefined => {\n const container = useContext(OverlayContainerContext);\n\n return container;\n};\n\nexport type OverlayProps = {\n open: boolean;\n container?: Element | DocumentFragment;\n backdrop?: ReactNode;\n};\n\nexport const Overlay = as<\"div\", OverlayProps>(\n ({ as: AsOverlay = \"div\", className, open, container, backdrop, children, ...props }, ref) => {\n const contextContainer = useOverlayContainer();\n\n return (\n <Portal container={container ?? contextContainer}>\n {open ? (\n <AsOverlay className={classNames(css.Overlay, className)} {...props} ref={ref}>\n {backdrop}\n {children}\n </AsOverlay>\n ) : null}\n </Portal>\n );\n }\n);\n\nexport const OverlayBackdrop = as<\"div\">(\n ({ as: AsOverlayBackdrop = \"div\", className, ...props }, ref) => (\n <AsOverlayBackdrop\n className={classNames(css.OverlayBackdrop, className)}\n {...props}\n ref={ref}\n />\n )\n);\n\nexport const OverlayCenter = as<\"div\">(\n ({ as: AsOverlayCenter = \"div\", className, ...props }, ref) => (\n <AsOverlayCenter className={classNames(css.OverlayCenter, className)} {...props} ref={ref} />\n )\n);\n","import classNames from \"classnames\";\nimport React, {\n createContext,\n ReactNode,\n useCallback,\n useContext,\n useEffect,\n useLayoutEffect,\n useRef,\n} from \"react\";\nimport { as } from \"../as\";\nimport { Portal } from \"../portal\";\nimport { Align, getRelativeFixedPosition, Position, RectCords } from \"../util\";\nimport * as css from \"./PopOut.css\";\n\nconst PopOutContainerContext = createContext<Element | DocumentFragment | undefined>(undefined);\nexport const PopOutContainerProvider = PopOutContainerContext.Provider;\nexport const usePopOutContainer = (): Element | DocumentFragment | undefined => {\n const container = useContext(PopOutContainerContext);\n\n return container;\n};\n\nexport interface PopOutProps {\n anchor?: RectCords;\n position?: Position;\n align?: Align;\n offset?: number;\n alignOffset?: number;\n content: ReactNode;\n container?: Element | DocumentFragment;\n}\nexport const PopOut = as<\"div\", PopOutProps>(\n (\n {\n as: AsPopOut = \"div\",\n className,\n anchor,\n position = \"Bottom\",\n align = \"Center\",\n offset = 10,\n alignOffset = 0,\n content,\n children,\n container,\n ...props\n },\n ref\n ) => {\n const baseRef = useRef<HTMLDivElement>(null);\n const contextContainer = usePopOutContainer();\n\n const positionPopOut = useCallback(() => {\n const baseEl = baseRef.current;\n if (!baseEl || !anchor) return;\n\n const pCSS = getRelativeFixedPosition(\n anchor,\n baseEl.getBoundingClientRect(),\n position,\n align,\n offset,\n alignOffset\n );\n baseEl.style.top = pCSS.top ?? \"unset\";\n baseEl.style.bottom = pCSS.bottom ?? \"unset\";\n baseEl.style.left = pCSS.left ?? \"unset\";\n baseEl.style.right = pCSS.right ?? \"unset\";\n }, [anchor, position, align, offset, alignOffset]);\n\n useEffect(() => {\n window.addEventListener(\"resize\", positionPopOut);\n return () => {\n window.removeEventListener(\"resize\", positionPopOut);\n };\n }, [positionPopOut]);\n\n useLayoutEffect(() => {\n positionPopOut();\n }, [positionPopOut]);\n\n return (\n <>\n {children}\n {anchor && (\n <Portal container={container ?? contextContainer}>\n <AsPopOut className={classNames(css.PopOut, className)} {...props} ref={ref}>\n <div ref={baseRef} className={css.PopOutContainer}>\n <div className={css.PopOutContent}>{content}</div>\n </div>\n </AsPopOut>\n </Portal>\n )}\n </>\n );\n }\n);\n","import classNames from \"classnames\";\nimport React from \"react\";\nimport { as } from \"../as\";\nimport { percent } from \"../util\";\n\nimport * as css from \"./ProgressBar.css\";\n\ntype ProgressBarProps = {\n value: number;\n min?: number;\n max: number;\n};\n\nexport const ProgressBar = as<\"span\", ProgressBarProps & css.ProgressBarVariant>(\n (\n {\n as: AsProgressBar = \"span\",\n className,\n variant,\n size,\n fill,\n radii,\n outlined,\n value,\n min = 0,\n max,\n ...props\n },\n ref\n ) => (\n <AsProgressBar\n className={classNames(css.ProgressBar({ variant, size, fill, radii, outlined }), className)}\n role=\"progressbar\"\n aria-valuenow={value}\n aria-valuemin={min}\n aria-valuemax={max}\n {...props}\n ref={ref}\n >\n <span className={css.ProgressBarFill} style={{ width: `${percent(min, max, value)}%` }} />\n </AsProgressBar>\n )\n);\n","import React, { AllHTMLAttributes, forwardRef } from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./RadioButton.css\";\n\ntype RadioButtonProps = Omit<AllHTMLAttributes<HTMLInputElement>, \"type\" | \"onChange\" | \"size\"> & {\n defaultChecked?: boolean;\n checked?: boolean;\n};\n\nexport const RadioButton = forwardRef<HTMLInputElement, RadioButtonProps & css.RadioButtonVariants>(\n ({ className, variant, size, ...props }, ref) => (\n <input\n className={classNames(css.RadioButton({ variant, size }), className)}\n {...props}\n type=\"radio\"\n ref={ref}\n />\n )\n);\n","import React, { useLayoutEffect, useRef } from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Scroll.css\";\nimport { as } from \"../as\";\n\nexport const Scroll = as<\"div\", css.ScrollVariants>(\n (\n { as: AsScroll = \"div\", className, variant, visibility, hideTrack, size, direction, ...props },\n ref\n ) => {\n const scrollLocalRef = useRef<HTMLDivElement>();\n\n useLayoutEffect(() => {\n if (scrollLocalRef.current) {\n const $scroll = scrollLocalRef.current;\n if (size === \"0\") {\n $scroll.setAttribute(\"data-x-scrollbar-width\", \"0\");\n $scroll.setAttribute(\"data-y-scrollbar-width\", \"0\");\n } else {\n const xScrollbarWidth = $scroll.offsetHeight - $scroll.clientHeight;\n const yScrollbarWidth = $scroll.offsetWidth - $scroll.clientWidth;\n\n $scroll.setAttribute(\"data-x-scrollbar-width\", `${xScrollbarWidth}`);\n $scroll.setAttribute(\"data-y-scrollbar-width\", `${yScrollbarWidth}`);\n }\n }\n }, [size]);\n\n return (\n <AsScroll\n className={classNames(\n css.Scroll({\n variant,\n visibility,\n hideTrack,\n size,\n direction,\n }),\n className\n )}\n {...props}\n ref={(r) => {\n if (r) scrollLocalRef.current = r;\n if (ref) {\n if (\"current\" in ref) {\n const propRef: any = ref;\n propRef.current = r;\n }\n if (typeof ref === \"function\") {\n ref(r);\n }\n }\n }}\n />\n );\n }\n);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Spinner.css\";\nimport { as } from \"../as\";\n\nconst SpinnerSvg = () => (\n <svg\n className={css.SpinnerSvg}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n className={css.SpinnerOuter}\n d=\"M5.98986 18.0104C7.52806 19.5486 9.65306 20.5 12.0003 20.5C16.6947 20.5 20.5003 16.6944 20.5003 12C20.5003 7.30558 16.6947 3.5 12.0003 3.5C9.65306 3.5 7.52806 4.45139 5.98986 5.98959L4.9292 4.92893C6.73884 3.11929 9.23884 2 12.0003 2C17.5231 2 22.0003 6.47715 22.0003 12C22.0003 17.5228 17.5231 22 12.0003 22C9.23884 22 6.73884 20.8807 4.9292 19.0711L5.98986 18.0104Z\"\n />\n <path\n className={css.SpinnerInner}\n d=\"M4.92908 19.0711C3.1204 17.2624 2.00134 14.7641 2.00015 12.0044L2.00015 11.9956C2.00134 9.23593 3.1204 6.73763 4.92909 4.92896L5.98975 5.98962C4.45155 7.52781 3.50015 9.65281 3.50015 12C3.50015 14.3472 4.45155 16.4722 5.98975 18.0104L4.92908 19.0711Z\"\n />\n </svg>\n);\n\nexport const Spinner = as<\"span\", css.SpinnerVariants>(\n ({ as: AsSpinner = \"span\", className, size, variant, fill, shape, ...props }, ref) => (\n <AsSpinner\n className={classNames(css.Spinner({ size, variant, fill, shape }), className)}\n {...props}\n ref={ref}\n >\n {shape === \"Morph\" ? <span className={css.SpinnerMorph} /> : <SpinnerSvg />}\n </AsSpinner>\n )\n);\n","import React, { ButtonHTMLAttributes, forwardRef } from \"react\";\nimport classNames from \"classnames\";\nimport { Icon, Icons } from \"../icon\";\nimport * as css from \"./Switch.css\";\n\ntype SwitchProps = Omit<\n ButtonHTMLAttributes<HTMLButtonElement>,\n \"value\" | \"onClick\" | \"onChange\" | \"children\" | \"role\"\n> & {\n value?: boolean;\n onChange?: (on: boolean) => void;\n};\nexport const Switch = forwardRef<HTMLButtonElement, SwitchProps & css.SwitchVariants>(\n ({ className, variant, value = false, onChange, ...props }, ref) => {\n const handleClick = () => onChange?.(!value);\n\n return (\n <button\n className={classNames(css.Switch({ variant }), className)}\n role=\"switch\"\n type=\"button\"\n aria-checked={value}\n onClick={handleClick}\n {...props}\n ref={ref}\n >\n <span className={css.SwitchThumb} aria-hidden>\n <Icon src={Icons.Check} size=\"100\" />\n </span>\n </button>\n );\n }\n);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Text.css\";\nimport { as } from \"../as\";\n\nexport const Text = as<\"p\", css.TextVariants>(\n ({ as: AsText = \"p\", className, size, truncate, align, priority, ...props }, ref) => (\n <AsText\n className={classNames(css.Text({ size, truncate, align, priority }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import React, { AllHTMLAttributes, forwardRef } from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./TextArea.css\";\n\nexport const TextArea = forwardRef<\n HTMLTextAreaElement,\n Omit<AllHTMLAttributes<HTMLTextAreaElement>, \"size\"> & css.TextAreaVariants\n>(({ className, variant, size, outlined, radii, resize, ...props }, ref) => (\n <textarea\n className={classNames(css.TextArea({ variant, size, outlined, radii, resize }), className)}\n {...props}\n ref={ref}\n />\n));\n","import classNames from \"classnames\";\nimport React, {\n createContext,\n MutableRefObject,\n ReactNode,\n RefCallback,\n useCallback,\n useContext,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\nimport { as } from \"../as\";\nimport { Portal } from \"../portal\";\nimport { Align, getRelativeFixedPosition, Position } from \"../util\";\nimport * as css from \"./Tooltip.css\";\n\nconst TooltipContainerContext = createContext<Element | DocumentFragment | undefined>(undefined);\nexport const TooltipContainerProvider = TooltipContainerContext.Provider;\nexport const useTooltipContainer = (): Element | DocumentFragment | undefined => {\n const container = useContext(TooltipContainerContext);\n\n return container;\n};\n\nexport const Tooltip = as<\"div\", css.TooltipVariants>(\n ({ as: AsTooltip = \"div\", className, variant, radii, ...props }, ref) => (\n <AsTooltip\n className={classNames(css.Tooltip({ variant, radii }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n\nconst useTooltip = (\n position: Position,\n align: Align,\n offset: number,\n alignOffset: number,\n delay: number\n) => {\n const triggerRef = useRef<HTMLElement | SVGElement | null>(null);\n const baseRef = useRef<HTMLElement | SVGElement | null>(null);\n const [open, setOpen] = useState(false);\n\n const positionTooltip = useCallback(() => {\n const anchor = triggerRef.current;\n const baseEl = baseRef.current;\n if (!anchor) return;\n if (!baseEl) return;\n\n const tooltipCss = getRelativeFixedPosition(\n anchor.getBoundingClientRect(),\n baseEl.getBoundingClientRect(),\n position,\n align,\n offset,\n alignOffset\n );\n baseEl.style.top = tooltipCss.top ?? \"unset\";\n baseEl.style.bottom = tooltipCss.bottom ?? \"unset\";\n baseEl.style.left = tooltipCss.left ?? \"unset\";\n baseEl.style.right = tooltipCss.right ?? \"unset\";\n }, [position, align, offset, alignOffset]);\n\n useEffect(() => {\n const trigger = triggerRef.current;\n let timeoutId: number | undefined;\n\n const openTooltip = (_?: unknown, skipDelay?: boolean) => {\n clearTimeout(timeoutId);\n\n if (skipDelay) {\n setOpen(true);\n return;\n }\n timeoutId = window.setTimeout(() => {\n setOpen(true);\n timeoutId = undefined;\n }, delay);\n };\n\n const closeTooltip = (_?: unknown, skipDelay?: boolean) => {\n clearTimeout(timeoutId);\n\n if (skipDelay) {\n setOpen(false);\n return;\n }\n timeoutId = window.setTimeout(\n () => {\n setOpen(false);\n timeoutId = undefined;\n },\n delay < 100 ? delay : 100\n );\n };\n\n const onKeyUp = (evt: Event) => {\n const { key } = evt as unknown as KeyboardEvent;\n if (key === \"Escape\" || key === \"Enter\" || key === \" \") {\n closeTooltip(undefined, true);\n return;\n }\n\n openTooltip(undefined, true);\n };\n\n const onFocus = () => openTooltip(undefined, true);\n\n const onBlur = () => {\n closeTooltip(undefined, true);\n };\n\n trigger?.addEventListener(\"focus\", onFocus);\n trigger?.addEventListener(\"mouseenter\", openTooltip);\n trigger?.addEventListener(\"keyup\", onKeyUp);\n trigger?.addEventListener(\"mouseleave\", closeTooltip);\n trigger?.addEventListener(\"blur\", onBlur);\n trigger?.addEventListener(\"click\", closeTooltip);\n // Focus can arrive before passive effects (autofocus or keyboard navigation on mount).\n if (trigger?.matches(\":focus\")) openTooltip(undefined, true);\n return () => {\n clearTimeout(timeoutId);\n trigger?.removeEventListener(\"focus\", onFocus);\n trigger?.removeEventListener(\"mouseenter\", openTooltip);\n trigger?.removeEventListener(\"keyup\", onKeyUp);\n trigger?.removeEventListener(\"mouseleave\", closeTooltip);\n trigger?.removeEventListener(\"blur\", onBlur);\n trigger?.removeEventListener(\"click\", closeTooltip);\n };\n }, [position, align, offset, alignOffset, delay]);\n\n useLayoutEffect(() => {\n if (open) positionTooltip();\n }, [open, positionTooltip]);\n\n const handleTriggerRef: RefCallback<HTMLElement | SVGElement> = useCallback((element) => {\n triggerRef.current = element;\n }, []);\n const handleBaseRef: RefCallback<HTMLElement | SVGElement> = useCallback((element) => {\n baseRef.current = element;\n }, []);\n\n return {\n triggerRef: handleTriggerRef,\n baseRef: handleBaseRef,\n open,\n };\n};\n\ninterface TooltipProviderProps {\n position?: Position;\n align?: Align;\n offset?: number;\n alignOffset?: number;\n delay?: number;\n tooltip: ReactNode;\n children: (triggerRef: RefCallback<HTMLElement | SVGElement>) => ReactNode;\n container?: Element | DocumentFragment;\n}\nexport const TooltipProvider = as<\"div\", TooltipProviderProps>(\n (\n {\n as: AsTooltipProvider = \"div\",\n className,\n position = \"Top\",\n align = \"Center\",\n offset = 10,\n alignOffset = 0,\n delay = 200,\n tooltip,\n children,\n container,\n ...props\n },\n ref\n ) => {\n const contextContainer = useTooltipContainer();\n const { open, triggerRef, baseRef } = useTooltip(position, align, offset, alignOffset, delay);\n\n return (\n <>\n {children(triggerRef)}\n {open && (\n <Portal container={container ?? contextContainer}>\n <AsTooltipProvider\n role=\"tooltip\"\n className={classNames(css.TooltipProvider, className)}\n {...props}\n ref={(instance) => {\n baseRef(instance);\n if (ref) {\n if (typeof ref === \"function\") ref(instance);\n // eslint-disable-next-line no-param-reassign\n else (ref as MutableRefObject<typeof instance>).current = instance;\n }\n }}\n >\n {tooltip}\n </AsTooltipProvider>\n </Portal>\n )}\n </>\n );\n }\n);\n","import React, { ComponentProps, ReactNode, RefCallback } from \"react\";\nimport { Tooltip, TooltipProvider } from \"./Tooltip\";\nimport { Text } from \"../text\";\n\nexport type HintProps = Pick<\n ComponentProps<typeof TooltipProvider>,\n \"position\" | \"align\" | \"delay\" | \"container\"\n> & {\n /** Unique in the document; also connects the trigger's accessible description. */\n id: string;\n content: ReactNode;\n children: (props: {\n ref: RefCallback<HTMLElement | SVGElement>;\n \"aria-describedby\": string;\n }) => ReactNode;\n};\n\n/** Shared tooltip composition for a focusable trigger that forwards its ref. */\nexport const Hint = ({ id, content, children, ...props }: HintProps) => (\n <TooltipProvider\n {...props}\n id={id}\n tooltip={\n <Tooltip>\n <Text size=\"T200\">{content}</Text>\n </Tooltip>\n }\n >\n {(ref) => children({ ref, \"aria-describedby\": id })}\n </TooltipProvider>\n);\n","import React, { ComponentProps } from \"react\";\nimport classNames from \"classnames\";\nimport { Box } from \"../box/Box\";\nimport { as } from \"../as\";\nimport { ContainerColor, ContainerColorVariants } from \"../../styles/ContainerColor.css\";\nimport * as css from \"./style.css\";\n\nexport const SequenceCard = as<\n \"div\",\n ComponentProps<typeof Box> & ContainerColorVariants & css.SequenceCardVariants\n>(\n (\n {\n as: AsSequenceCard = \"div\",\n className,\n variant,\n radii,\n firstChild,\n lastChild,\n outlined,\n mergeBorder,\n ...props\n },\n ref\n ) => (\n <Box\n as={AsSequenceCard}\n className={classNames(\n css.SequenceCard({ radii, outlined, mergeBorder }),\n ContainerColor({ variant }),\n className\n )}\n data-first-child={firstChild}\n data-last-child={lastChild}\n {...props}\n ref={ref}\n />\n )\n);\n","import React, { ReactNode } from \"react\";\nimport { Box } from \"../box/Box\";\nimport { Text } from \"../text/Text\";\nimport { BreakWord } from \"../../styles/Text.css\";\n\ntype SettingTileProps = {\n title?: ReactNode;\n description?: ReactNode;\n before?: ReactNode;\n after?: ReactNode;\n children?: ReactNode;\n};\nexport const SettingTile = ({ title, description, before, after, children }: SettingTileProps) => (\n <Box alignItems=\"Center\" gap=\"300\">\n {before && <Box shrink=\"No\">{before}</Box>}\n <Box grow=\"Yes\" direction=\"Column\" gap=\"100\">\n {title && (\n <Text className={BreakWord} size=\"B400\">\n {title}\n </Text>\n )}\n {description && (\n <Text className={BreakWord} size=\"T200\" priority=\"300\">\n {description}\n </Text>\n )}\n {children}\n </Box>\n {after && <Box shrink=\"No\">{after}</Box>}\n </Box>\n);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { ContainerColor as TContainerColor } from \"../types\";\nimport { ContainerColor } from \"../../styles/ContainerColor.css\";\nimport * as css from \"./CutoutCard.css\";\n\nexport const CutoutCard = as<\"div\", { variant?: TContainerColor }>(\n ({ as: AsCutoutCard = \"div\", className, variant = \"Surface\", ...props }, ref) => (\n <AsCutoutCard\n className={classNames(ContainerColor({ variant }), css.CutoutCard, className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import React, { ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { Box } from \"../box/Box\";\nimport { ContainerColor } from \"../types\";\nimport { Text } from \"../text/Text\";\nimport { BreakWord } from \"../../styles/Text.css\";\nimport { ContainerColor as ContainerClr } from \"../../styles/ContainerColor.css\";\nimport * as css from \"./styles.css\";\n\ntype InfoCardProps = {\n variant?: ContainerColor;\n title?: ReactNode;\n description?: ReactNode;\n before?: ReactNode;\n after?: ReactNode;\n children?: ReactNode;\n};\nexport const InfoCard = ({\n variant = \"Primary\",\n title,\n description,\n before,\n after,\n children,\n}: InfoCardProps) => (\n <Box direction=\"Column\" className={classNames(css.InfoCard, ContainerClr({ variant }))} gap=\"300\">\n <Box gap=\"200\" alignItems=\"Center\">\n {before && (\n <Box shrink=\"No\" alignSelf=\"Start\">\n {before}\n </Box>\n )}\n <Box grow=\"Yes\" direction=\"Column\" gap=\"100\">\n {title && (\n <Text size=\"L400\" className={BreakWord}>\n {title}\n </Text>\n )}\n {description && (\n <Text size=\"T200\" className={BreakWord}>\n {description}\n </Text>\n )}\n </Box>\n {after && <Box shrink=\"No\">{after}</Box>}\n </Box>\n {children}\n </Box>\n);\n","import classNames from \"classnames\";\nimport React from \"react\";\nimport { as } from \"../as\";\nimport * as css from \"./Sidebar.css\";\n\nexport const Sidebar = as<\"div\">(({ as: AsSidebar = \"div\", className, ...props }, ref) => (\n <AsSidebar className={classNames(css.Sidebar, className)} {...props} ref={ref} />\n));\n","import classNames from \"classnames\";\nimport React, { ComponentProps, ReactNode, RefCallback } from \"react\";\nimport { as } from \"../as\";\nimport { Avatar } from \"../avatar/Avatar\";\nimport { Text } from \"../text/Text\";\nimport { Tooltip, TooltipProvider } from \"../tooltip/Tooltip\";\nimport { toRem } from \"../../theme/util\";\nimport * as css from \"./Sidebar.css\";\n\nexport const SidebarItem = as<\"div\", css.SidebarItemVariants>(\n ({ as: AsSidebarAvatarBox = \"div\", className, active, ...props }, ref) => (\n <AsSidebarAvatarBox\n className={classNames(css.SidebarItem({ active }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n\nexport const SidebarItemBadge = as<\"div\", css.SidebarItemBadgeVariants>(\n ({ as: AsSidebarBadgeBox = \"div\", className, hasCount, ...props }, ref) => (\n <AsSidebarBadgeBox\n className={classNames(css.SidebarItemBadge({ hasCount }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n\nexport const SidebarItemTooltip = ({\n tooltip,\n children,\n}: {\n tooltip?: ReactNode | string;\n children: (triggerRef: RefCallback<HTMLElement | SVGElement>) => ReactNode;\n}) => {\n if (!tooltip) {\n return children(() => undefined);\n }\n\n return (\n <TooltipProvider\n delay={400}\n position=\"Right\"\n tooltip={\n <Tooltip style={{ maxWidth: toRem(280) }}>\n <Text size=\"H5\">{tooltip}</Text>\n </Tooltip>\n }\n >\n {children}\n </TooltipProvider>\n );\n};\n\nexport const SidebarAvatar = as<\"div\", css.SidebarAvatarVariants & ComponentProps<typeof Avatar>>(\n ({ className, size, outlined, radii, ...props }, ref) => (\n <Avatar\n className={classNames(css.SidebarAvatar({ size, outlined }), className)}\n radii={radii}\n {...props}\n ref={ref}\n />\n )\n);\n\nexport const SidebarFolder = as<\"div\", css.SidebarFolderVariants>(\n ({ as: AsSidebarFolder = \"div\", className, state, ...props }, ref) => (\n <AsSidebarFolder\n className={classNames(css.SidebarFolder({ state }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n\nexport const SidebarFolderDropTarget = as<\"div\", css.SidebarFolderDropTargetVariants>(\n ({ as: AsSidebarFolderDropTarget = \"div\", className, position, ...props }, ref) => (\n <AsSidebarFolderDropTarget\n className={classNames(css.SidebarFolderDropTarget({ position }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import React, { ReactNode } from \"react\";\nimport { Box } from \"../box/Box\";\n\ntype SidebarContentProps = {\n scrollable: ReactNode;\n sticky: ReactNode;\n};\nexport const SidebarContent = ({ scrollable, sticky }: SidebarContentProps) => (\n <>\n <Box direction=\"Column\" grow=\"Yes\">\n {scrollable}\n </Box>\n <Box direction=\"Column\" shrink=\"No\">\n {sticky}\n </Box>\n </>\n);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport * as css from \"./Sidebar.css\";\n\nexport const SidebarStack = as<\"div\">(\n ({ as: AsSidebarStack = \"div\", className, ...props }, ref) => (\n <AsSidebarStack className={classNames(css.SidebarStack, className)} {...props} ref={ref} />\n )\n);\n","import React from \"react\";\nimport { Line } from \"../line/Line\";\nimport { toRem } from \"../../theme/util\";\n\nexport const SidebarStackSeparator = () => (\n <Line\n role=\"separator\"\n style={{ width: toRem(24), margin: \"0 auto\" }}\n variant=\"Background\"\n size=\"300\"\n />\n);\n","import React from \"react\";\n\n/**\n * The shared robot glyph that marks an AI agent across the app — the rail's\n * Agents tab and the default avatar for agent accounts that have no picture.\n * Stroke-based so it inherits its color from `currentColor` (e.g. the light\n * text color inside a colored avatar fallback).\n *\n * Single source of truth: previously the rail (AgentsTab) carried its own copy\n * of this SVG. Keep new agent-glyph usages pointed here so they never drift.\n */\nexport const AgentGlyph = ({\n size = 22,\n strokeWidth = 2,\n}: {\n size?: number;\n strokeWidth?: number;\n}) => (\n <svg\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden\n >\n <path d=\"M12 8V4H8\" />\n <rect width=\"16\" height=\"12\" x=\"4\" y=\"8\" rx=\"2\" />\n <path d=\"M2 14h2\" />\n <path d=\"M20 14h2\" />\n <path d=\"M15 13v2\" />\n <path d=\"M9 13v2\" />\n </svg>\n);\n","import React from \"react\";\nimport { Badge } from \"../badge/Badge\";\nimport { Text } from \"../text/Text\";\nimport { toRem } from \"../../theme/util\";\nimport { AgentGlyph } from \"./AgentGlyph\";\n\n/**\n * Agent visual identity (step 3 of the room-nav UX plan).\n *\n * Two marks, both driven by `isAgentMxid` (local part ends `.agent` or starts\n * `sutando-`) — the same predicate the room agent-policy + profile use:\n * - `AgentMark`, rendered INSIDE the avatar's presence badge (see PresenceBadge\n * `glyph` prop) so \"this is an agent\" and the agent's presence colour are one\n * combined mark instead of two competing corner badges, and\n * - `AgentNameTag`, the neutral \"Agent\" pill shown after the display name.\n *\n * The mark was a bot glyph, then an \"S\" the owner asked for (2026-07-05), and is\n * a bot glyph again. `isAgentMxid` says an account is an agent; it cannot say\n * *which* agent, and since a BYO owner's Claude Code answers behind exactly the\n * same kind of identity, a Sutando initial on it was branding a guess. Neutral\n * for all agents (byo-agent spec, US37) — the shared AgentGlyph, so the badge,\n * the rail tab and the default avatar are one mark rather than three.\n */\n\nexport const AgentMark = ({ size = 10 }: { size?: number }) => (\n <span\n aria-hidden\n style={{\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n color: \"currentColor\",\n }}\n >\n {/* The glyph is drawn on a 24px grid; inside a ~9px badge a 2px stroke\n thins to sub-pixel, so the weight scales with the box. */}\n <AgentGlyph size={size} strokeWidth={2.8} />\n </span>\n);\n\n/** Small, quiet \"Agent\" pill shown right after an agent's display name. */\nexport const AgentNameTag = () => (\n <Badge\n as=\"span\"\n variant=\"Secondary\"\n fill=\"Soft\"\n style={{\n display: \"inline-flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n padding: `0 ${toRem(5)}`,\n opacity: 0.85,\n }}\n title=\"Agent\"\n aria-label=\"Agent\"\n >\n <Text as=\"span\" size=\"L400\" style={{ fontWeight: 500, letterSpacing: \"0.01em\" }}>\n Agent\n </Text>\n </Badge>\n);\n","import React from \"react\";\n\n/**\n * Two-person \"members\" glyph (lucide users outline) — the Buzz-style header\n * icon the owner picked for the web members toggle (2026-07-26). folds ships\n * only a single-person Icons.User; stroke-based like AgentGlyph so it\n * inherits `currentColor`.\n */\nexport const PeopleGlyph = ({\n size = 22,\n strokeWidth = 2,\n}: {\n size?: number;\n strokeWidth?: number;\n}) => (\n <svg\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden\n >\n <path d=\"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2\" />\n <circle cx=\"9\" cy=\"7\" r=\"4\" />\n <path d=\"M22 21v-2a4 4 0 0 0-3-3.87\" />\n <path d=\"M16 3.13a4 4 0 0 1 0 7.75\" />\n </svg>\n);\n","import React from \"react\";\n\n/**\n * Scroll \"skill\" glyph (lucide scroll-text) — the Skills header button.\n * Owner 2026-07-26 (second pass): match the marketplace nav's scroll icon\n * for Skills, replacing the interim lightning bolt. Stroke-based like its\n * siblings.\n */\nexport const SkillGlyph = ({\n size = 22,\n strokeWidth = 2,\n}: {\n size?: number;\n strokeWidth?: number;\n}) => (\n <svg\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden\n >\n <path d=\"M15 12h-5\" />\n <path d=\"M15 8h-5\" />\n <path d=\"M19 17V5a2 2 0 0 0-2-2H4\" />\n <path d=\"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3\" />\n </svg>\n);\n","/**\n * The AG2 stand mark per agent state, from the design kit\n * (`kit-states/agents/air/states/svg/<state>-clean.svg`).\n *\n * Departures from the files on disk:\n * 1. the plate's fill is `var(--agent-mark-plate, #6C4BE8)`, so the colour is\n * a theme token rather than a rebuild. `off` keeps its own `opacity`\n * dimming on top of whatever colour is set;\n * 2. the artwork is scaled 1.15x about the viewBox centre while the plate\n * stays full-bleed -- at rail size the kit's native ratio leaves the bubble\n * too small to read. Change SCALE in the generator, not here. At 1.28x the\n * right-edge margin measured 2.3%, so there is headroom but not much.\n *\n * Only working / needs_attention / available / offline are reachable from\n * `space.ag2.presence`. `thinking` is the resting default the rail shows when\n * presence says nothing; `warning` and `error` are drawn but have no driver yet\n * and are reachable only through the preview override.\n *\n * `-clean` rather than drawn: the hand filter destroys strokes under ~3px.\n * Each file keeps its own `<style>` (kit animations + reduced-motion\n * fallbacks); those animate inner classes with `transform-box: view-box`, so\n * their origins stay in viewBox coordinates and compose with the outer scale.\n */\nexport type AgentMarkState =\n | \"needs_attention\"\n | \"working\"\n | \"available\"\n | \"offline\"\n | \"warning\"\n | \"error\"\n | \"thinking\";\n\n/** Set this CSS custom property to recolour the plate. */\nexport const AGENT_MARK_PLATE_VAR = \"--agent-mark-plate\";\nexport const AGENT_MARK_PLATE_DEFAULT = \"#6C4BE8\";\n\nexport const AGENT_STATE_MARKS: Record<AgentMarkState, string> = {\n // attention-clean.svg\n needs_attention:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 64 64\" fill=\"none\"><defs><filter id=\"rough\" x=\"-25%\" y=\"-25%\" width=\"150%\" height=\"150%\"><feTurbulence type=\"fractalNoise\" baseFrequency=\"0.04\" numOctaves=\"2\" seed=\"4\" result=\"n\"/><feDisplacementMap in=\"SourceGraphic\" in2=\"n\" scale=\"2.2\" xChannelSelector=\"R\" yChannelSelector=\"G\"/></filter></defs><style>/* AG2Space stand states \\u2014 apply to the inline SVG */\\n.gaze{animation:gaze 4.2s cubic-bezier(.6,0,.2,1) infinite}\\n@keyframes gaze{0%,10%{transform:translate(0,0)}18%,34%{transform:translate(-1.9px,-1px)}\\n 42%,58%{transform:translate(2.1px,.4px)}66%,84%{transform:translate(.8px,-1.4px)}92%,100%{transform:translate(0,0)}}\\n.pulse{transform-box:view-box;transform-origin:32px 32px;animation:pulse 2.6s ease-out infinite}\\n@keyframes pulse{0%{transform:scale(.86);opacity:.9}70%,100%{transform:scale(1.06);opacity:0}}\\n.scribble{transform-box:view-box;transform-origin:22px 32px;animation:scribble 1.5s ease-in-out infinite}\\n@keyframes scribble{0%,100%{transform:scaleX(.15);opacity:.55}50%{transform:scaleX(1);opacity:1}}\\n.talk{animation:talk 1.6s ease-in-out infinite}\\n.talk2{animation-delay:.22s;opacity:.5}\\n@keyframes talk{0%,100%{opacity:.28}50%{opacity:1}}\\n.zzz{animation:zzz 3.4s ease-in-out infinite}\\n.zzz2{animation-delay:.8s}\\n@keyframes zzz{0%{transform:translate(0,4px);opacity:0}35%{opacity:.95}100%{transform:translate(4px,-8px);opacity:0}}\\n.attn{transform-box:view-box;transform-origin:32px 32px;animation:attn 3.2s cubic-bezier(.3,1.3,.4,1) infinite}\\n@keyframes attn{0%,70%,100%{transform:rotate(0)}75%{transform:rotate(-5.5deg)}\\n 81%{transform:rotate(4.5deg)}87%{transform:rotate(-2deg)}93%{transform:rotate(0)}}\\n.flash{transform-box:view-box;transform-origin:32px 32px;animation:flash 3.2s ease-out infinite}\\n@keyframes flash{0%,66%{opacity:0;transform:scale(.9)}73%{opacity:1;transform:scale(1)}\\n 100%{opacity:0;transform:scale(1.14)}}\\n.slowring{transform-box:view-box;transform-origin:32px 32px;animation:slowring 2.8s ease-in-out infinite}\\n@keyframes slowring{0%,100%{opacity:.35}50%{opacity:1}}\\n@media (prefers-reduced-motion: reduce){\\n .gaze,.pulse,.scribble,.talk,.zzz,.attn,.flash,.slowring{animation:none}\\n .gaze{transform:translate(2.1px,-1px)}.pulse{opacity:.6}.flash{opacity:1}\\n .attn{transform:rotate(-4deg)}.talk,.scribble,.zzz{opacity:.9}}\\n</style><g class=\"attn\"><rect width=\"64\" height=\"64\" fill=\"var(--agent-mark-plate, #6C4BE8)\"/><g transform=\"translate(32 32) scale(1.15) translate(-32 -32)\"><rect class=\"flash\" x=\"6\" y=\"6\" width=\"52\" height=\"52\" rx=\"15\" fill=\"none\" stroke=\"#FFCE3A\" stroke-width=\"3\"/><g transform=\"translate(-8.043 -9.470) scale(1.16)\"><g stroke=\"#FFFFFF\" stroke-width=\"3.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M17 22.5h30a6.5 6.5 0 0 1 6.5 6.5v7a6.5 6.5 0 0 1 -6.5 6.5H29l-8.5 6.5 1.5-6.6A6.6 6.6 0 0 1 16 36v-7a6.5 6.5 0 0 1 1-6.5z\"/></g><rect x=\"19.5\" y=\"26.25\" width=\"25\" height=\"9.5\" rx=\"4.75\" fill=\"#FFCE3A\" transform=\"rotate(0 33 31)\"/><g fill=\"#12212F\"><circle cx=\"26.5\" cy=\"31\" r=\"3.808\"/><circle cx=\"37.5\" cy=\"31\" r=\"3.808\"/></g></g></g></g></svg>',\n // working-clean.svg\n working:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 64 64\" fill=\"none\"><defs><filter id=\"rough\" x=\"-25%\" y=\"-25%\" width=\"150%\" height=\"150%\"><feTurbulence type=\"fractalNoise\" baseFrequency=\"0.04\" numOctaves=\"2\" seed=\"4\" result=\"n\"/><feDisplacementMap in=\"SourceGraphic\" in2=\"n\" scale=\"2.2\" xChannelSelector=\"R\" yChannelSelector=\"G\"/></filter></defs><style>/* AG2Space stand states \\u2014 apply to the inline SVG */\\n.gaze{animation:gaze 4.2s cubic-bezier(.6,0,.2,1) infinite}\\n@keyframes gaze{0%,10%{transform:translate(0,0)}18%,34%{transform:translate(-1.9px,-1px)}\\n 42%,58%{transform:translate(2.1px,.4px)}66%,84%{transform:translate(.8px,-1.4px)}92%,100%{transform:translate(0,0)}}\\n.pulse{transform-box:view-box;transform-origin:32px 32px;animation:pulse 2.6s ease-out infinite}\\n@keyframes pulse{0%{transform:scale(.86);opacity:.9}70%,100%{transform:scale(1.06);opacity:0}}\\n.scribble{transform-box:view-box;transform-origin:22px 32px;animation:scribble 1.5s ease-in-out infinite}\\n@keyframes scribble{0%,100%{transform:scaleX(.15);opacity:.55}50%{transform:scaleX(1);opacity:1}}\\n.talk{animation:talk 1.6s ease-in-out infinite}\\n.talk2{animation-delay:.22s;opacity:.5}\\n@keyframes talk{0%,100%{opacity:.28}50%{opacity:1}}\\n.zzz{animation:zzz 3.4s ease-in-out infinite}\\n.zzz2{animation-delay:.8s}\\n@keyframes zzz{0%{transform:translate(0,4px);opacity:0}35%{opacity:.95}100%{transform:translate(4px,-8px);opacity:0}}\\n.attn{transform-box:view-box;transform-origin:32px 32px;animation:attn 3.2s cubic-bezier(.3,1.3,.4,1) infinite}\\n@keyframes attn{0%,70%,100%{transform:rotate(0)}75%{transform:rotate(-5.5deg)}\\n 81%{transform:rotate(4.5deg)}87%{transform:rotate(-2deg)}93%{transform:rotate(0)}}\\n.flash{transform-box:view-box;transform-origin:32px 32px;animation:flash 3.2s ease-out infinite}\\n@keyframes flash{0%,66%{opacity:0;transform:scale(.9)}73%{opacity:1;transform:scale(1)}\\n 100%{opacity:0;transform:scale(1.14)}}\\n.slowring{transform-box:view-box;transform-origin:32px 32px;animation:slowring 2.8s ease-in-out infinite}\\n@keyframes slowring{0%,100%{opacity:.35}50%{opacity:1}}\\n@media (prefers-reduced-motion: reduce){\\n .gaze,.pulse,.scribble,.talk,.zzz,.attn,.flash,.slowring{animation:none}\\n .gaze{transform:translate(2.1px,-1px)}.pulse{opacity:.6}.flash{opacity:1}\\n .attn{transform:rotate(-4deg)}.talk,.scribble,.zzz{opacity:.9}}\\n</style><rect width=\"64\" height=\"64\" fill=\"var(--agent-mark-plate, #6C4BE8)\"/><g transform=\"translate(32 32) scale(1.15) translate(-32 -32)\"><g transform=\"translate(-8.043 -9.470) scale(1.16)\"><g stroke=\"#FFFFFF\" stroke-width=\"3.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M17 22.5h30a6.5 6.5 0 0 1 6.5 6.5v7a6.5 6.5 0 0 1 -6.5 6.5H29l-8.5 6.5 1.5-6.6A6.6 6.6 0 0 1 16 36v-7a6.5 6.5 0 0 1 1-6.5z\"/></g><rect x=\"19.5\" y=\"26.25\" width=\"25\" height=\"9.5\" rx=\"4.75\" fill=\"#FFCE3A\" transform=\"rotate(-4 33 31)\"/><g fill=\"#12212F\"><circle cx=\"26\" cy=\"31\" r=\"3.4\"/><circle cx=\"38\" cy=\"31\" r=\"3.4\"/></g><g class=\"scribble\" stroke=\"#FFCE3A\" stroke-width=\"3\" stroke-linecap=\"round\" fill=\"none\"><path d=\"M22 40h14\"/></g></g></g></svg>',\n // idle-clean.svg\n available:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 64 64\" fill=\"none\"><defs><filter id=\"rough\" x=\"-25%\" y=\"-25%\" width=\"150%\" height=\"150%\"><feTurbulence type=\"fractalNoise\" baseFrequency=\"0.04\" numOctaves=\"2\" seed=\"4\" result=\"n\"/><feDisplacementMap in=\"SourceGraphic\" in2=\"n\" scale=\"2.2\" xChannelSelector=\"R\" yChannelSelector=\"G\"/></filter></defs><style>/* AG2Space stand states \\u2014 apply to the inline SVG */\\n.gaze{animation:gaze 4.2s cubic-bezier(.6,0,.2,1) infinite}\\n@keyframes gaze{0%,10%{transform:translate(0,0)}18%,34%{transform:translate(-1.9px,-1px)}\\n 42%,58%{transform:translate(2.1px,.4px)}66%,84%{transform:translate(.8px,-1.4px)}92%,100%{transform:translate(0,0)}}\\n.pulse{transform-box:view-box;transform-origin:32px 32px;animation:pulse 2.6s ease-out infinite}\\n@keyframes pulse{0%{transform:scale(.86);opacity:.9}70%,100%{transform:scale(1.06);opacity:0}}\\n.scribble{transform-box:view-box;transform-origin:22px 32px;animation:scribble 1.5s ease-in-out infinite}\\n@keyframes scribble{0%,100%{transform:scaleX(.15);opacity:.55}50%{transform:scaleX(1);opacity:1}}\\n.talk{animation:talk 1.6s ease-in-out infinite}\\n.talk2{animation-delay:.22s;opacity:.5}\\n@keyframes talk{0%,100%{opacity:.28}50%{opacity:1}}\\n.zzz{animation:zzz 3.4s ease-in-out infinite}\\n.zzz2{animation-delay:.8s}\\n@keyframes zzz{0%{transform:translate(0,4px);opacity:0}35%{opacity:.95}100%{transform:translate(4px,-8px);opacity:0}}\\n.attn{transform-box:view-box;transform-origin:32px 32px;animation:attn 3.2s cubic-bezier(.3,1.3,.4,1) infinite}\\n@keyframes attn{0%,70%,100%{transform:rotate(0)}75%{transform:rotate(-5.5deg)}\\n 81%{transform:rotate(4.5deg)}87%{transform:rotate(-2deg)}93%{transform:rotate(0)}}\\n.flash{transform-box:view-box;transform-origin:32px 32px;animation:flash 3.2s ease-out infinite}\\n@keyframes flash{0%,66%{opacity:0;transform:scale(.9)}73%{opacity:1;transform:scale(1)}\\n 100%{opacity:0;transform:scale(1.14)}}\\n.slowring{transform-box:view-box;transform-origin:32px 32px;animation:slowring 2.8s ease-in-out infinite}\\n@keyframes slowring{0%,100%{opacity:.35}50%{opacity:1}}\\n@media (prefers-reduced-motion: reduce){\\n .gaze,.pulse,.scribble,.talk,.zzz,.attn,.flash,.slowring{animation:none}\\n .gaze{transform:translate(2.1px,-1px)}.pulse{opacity:.6}.flash{opacity:1}\\n .attn{transform:rotate(-4deg)}.talk,.scribble,.zzz{opacity:.9}}\\n</style><rect width=\"64\" height=\"64\" fill=\"var(--agent-mark-plate, #6C4BE8)\"/><g transform=\"translate(32 32) scale(1.15) translate(-32 -32)\"><g transform=\"translate(-8.043 -9.470) scale(1.16)\"><g stroke=\"#FFFFFF\" stroke-width=\"3.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M17 22.5h30a6.5 6.5 0 0 1 6.5 6.5v7a6.5 6.5 0 0 1 -6.5 6.5H29l-8.5 6.5 1.5-6.6A6.6 6.6 0 0 1 16 36v-7a6.5 6.5 0 0 1 1-6.5z\"/></g><rect x=\"19.5\" y=\"26.25\" width=\"25\" height=\"9.5\" rx=\"4.75\" fill=\"#FFCE3A\" transform=\"rotate(-4 33 31)\"/><g fill=\"#12212F\"><circle cx=\"26\" cy=\"31\" r=\"3.4\"/><circle cx=\"38\" cy=\"31\" r=\"3.4\"/></g></g></g></svg>',\n // off-clean.svg — plate keeps opacity=\".45\"\n offline:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 64 64\" fill=\"none\"><defs><filter id=\"rough\" x=\"-25%\" y=\"-25%\" width=\"150%\" height=\"150%\"><feTurbulence type=\"fractalNoise\" baseFrequency=\"0.04\" numOctaves=\"2\" seed=\"4\" result=\"n\"/><feDisplacementMap in=\"SourceGraphic\" in2=\"n\" scale=\"2.2\" xChannelSelector=\"R\" yChannelSelector=\"G\"/></filter></defs><style>/* AG2Space stand states \\u2014 apply to the inline SVG */\\n.gaze{animation:gaze 4.2s cubic-bezier(.6,0,.2,1) infinite}\\n@keyframes gaze{0%,10%{transform:translate(0,0)}18%,34%{transform:translate(-1.9px,-1px)}\\n 42%,58%{transform:translate(2.1px,.4px)}66%,84%{transform:translate(.8px,-1.4px)}92%,100%{transform:translate(0,0)}}\\n.pulse{transform-box:view-box;transform-origin:32px 32px;animation:pulse 2.6s ease-out infinite}\\n@keyframes pulse{0%{transform:scale(.86);opacity:.9}70%,100%{transform:scale(1.06);opacity:0}}\\n.scribble{transform-box:view-box;transform-origin:22px 32px;animation:scribble 1.5s ease-in-out infinite}\\n@keyframes scribble{0%,100%{transform:scaleX(.15);opacity:.55}50%{transform:scaleX(1);opacity:1}}\\n.talk{animation:talk 1.6s ease-in-out infinite}\\n.talk2{animation-delay:.22s;opacity:.5}\\n@keyframes talk{0%,100%{opacity:.28}50%{opacity:1}}\\n.zzz{animation:zzz 3.4s ease-in-out infinite}\\n.zzz2{animation-delay:.8s}\\n@keyframes zzz{0%{transform:translate(0,4px);opacity:0}35%{opacity:.95}100%{transform:translate(4px,-8px);opacity:0}}\\n.attn{transform-box:view-box;transform-origin:32px 32px;animation:attn 3.2s cubic-bezier(.3,1.3,.4,1) infinite}\\n@keyframes attn{0%,70%,100%{transform:rotate(0)}75%{transform:rotate(-5.5deg)}\\n 81%{transform:rotate(4.5deg)}87%{transform:rotate(-2deg)}93%{transform:rotate(0)}}\\n.flash{transform-box:view-box;transform-origin:32px 32px;animation:flash 3.2s ease-out infinite}\\n@keyframes flash{0%,66%{opacity:0;transform:scale(.9)}73%{opacity:1;transform:scale(1)}\\n 100%{opacity:0;transform:scale(1.14)}}\\n.slowring{transform-box:view-box;transform-origin:32px 32px;animation:slowring 2.8s ease-in-out infinite}\\n@keyframes slowring{0%,100%{opacity:.35}50%{opacity:1}}\\n@media (prefers-reduced-motion: reduce){\\n .gaze,.pulse,.scribble,.talk,.zzz,.attn,.flash,.slowring{animation:none}\\n .gaze{transform:translate(2.1px,-1px)}.pulse{opacity:.6}.flash{opacity:1}\\n .attn{transform:rotate(-4deg)}.talk,.scribble,.zzz{opacity:.9}}\\n</style><rect width=\"64\" height=\"64\" fill=\"var(--agent-mark-plate, #6C4BE8)\" opacity=\".45\"/><g transform=\"translate(32 32) scale(1.15) translate(-32 -32)\"><g transform=\"translate(-8.043 -9.470) scale(1.16)\"><g stroke=\"#FFFFFF\" stroke-width=\"3.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\" opacity=\".6\"><path d=\"M17 22.5h30a6.5 6.5 0 0 1 6.5 6.5v7a6.5 6.5 0 0 1 -6.5 6.5H29l-8.5 6.5 1.5-6.6A6.6 6.6 0 0 1 16 36v-7a6.5 6.5 0 0 1 1-6.5z\"/></g><g fill=\"#FFFFFF\" opacity=\".6\"><circle cx=\"26\" cy=\"31\" r=\"3.4\"/><circle cx=\"38\" cy=\"31\" r=\"3.4\"/></g></g></g></svg>',\n // warning-clean.svg\n warning:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 64 64\" fill=\"none\"><defs><filter id=\"rough\" x=\"-25%\" y=\"-25%\" width=\"150%\" height=\"150%\"><feTurbulence type=\"fractalNoise\" baseFrequency=\"0.04\" numOctaves=\"2\" seed=\"4\" result=\"n\"/><feDisplacementMap in=\"SourceGraphic\" in2=\"n\" scale=\"2.2\" xChannelSelector=\"R\" yChannelSelector=\"G\"/></filter></defs><style>/* AG2Space stand states \\u2014 apply to the inline SVG */\\n.gaze{animation:gaze 4.2s cubic-bezier(.6,0,.2,1) infinite}\\n@keyframes gaze{0%,10%{transform:translate(0,0)}18%,34%{transform:translate(-1.9px,-1px)}\\n 42%,58%{transform:translate(2.1px,.4px)}66%,84%{transform:translate(.8px,-1.4px)}92%,100%{transform:translate(0,0)}}\\n.pulse{transform-box:view-box;transform-origin:32px 32px;animation:pulse 2.6s ease-out infinite}\\n@keyframes pulse{0%{transform:scale(.86);opacity:.9}70%,100%{transform:scale(1.06);opacity:0}}\\n.scribble{transform-box:view-box;transform-origin:22px 32px;animation:scribble 1.5s ease-in-out infinite}\\n@keyframes scribble{0%,100%{transform:scaleX(.15);opacity:.55}50%{transform:scaleX(1);opacity:1}}\\n.talk{animation:talk 1.6s ease-in-out infinite}\\n.talk2{animation-delay:.22s;opacity:.5}\\n@keyframes talk{0%,100%{opacity:.28}50%{opacity:1}}\\n.zzz{animation:zzz 3.4s ease-in-out infinite}\\n.zzz2{animation-delay:.8s}\\n@keyframes zzz{0%{transform:translate(0,4px);opacity:0}35%{opacity:.95}100%{transform:translate(4px,-8px);opacity:0}}\\n.attn{transform-box:view-box;transform-origin:32px 32px;animation:attn 3.2s cubic-bezier(.3,1.3,.4,1) infinite}\\n@keyframes attn{0%,70%,100%{transform:rotate(0)}75%{transform:rotate(-5.5deg)}\\n 81%{transform:rotate(4.5deg)}87%{transform:rotate(-2deg)}93%{transform:rotate(0)}}\\n.flash{transform-box:view-box;transform-origin:32px 32px;animation:flash 3.2s ease-out infinite}\\n@keyframes flash{0%,66%{opacity:0;transform:scale(.9)}73%{opacity:1;transform:scale(1)}\\n 100%{opacity:0;transform:scale(1.14)}}\\n.slowring{transform-box:view-box;transform-origin:32px 32px;animation:slowring 2.8s ease-in-out infinite}\\n@keyframes slowring{0%,100%{opacity:.35}50%{opacity:1}}\\n@media (prefers-reduced-motion: reduce){\\n .gaze,.pulse,.scribble,.talk,.zzz,.attn,.flash,.slowring{animation:none}\\n .gaze{transform:translate(2.1px,-1px)}.pulse{opacity:.6}.flash{opacity:1}\\n .attn{transform:rotate(-4deg)}.talk,.scribble,.zzz{opacity:.9}}\\n</style><rect width=\"64\" height=\"64\" fill=\"var(--agent-mark-plate, #6C4BE8)\"/><g transform=\"translate(32 32) scale(1.15) translate(-32 -32)\"><g transform=\"translate(-8.043 -9.470) scale(1.16)\"><g stroke=\"#FFFFFF\" stroke-width=\"3.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M17 22.5h30a6.5 6.5 0 0 1 6.5 6.5v7a6.5 6.5 0 0 1 -6.5 6.5H29l-8.5 6.5 1.5-6.6A6.6 6.6 0 0 1 16 36v-7a6.5 6.5 0 0 1 1-6.5z\"/></g><g transform=\"rotate(-4 33 31)\"><rect x=\"19.5\" y=\"26.25\" width=\"10.8\" height=\"9.5\" rx=\"4.75\" fill=\"#E08A16\"/><rect x=\"33.7\" y=\"26.25\" width=\"10.8\" height=\"9.5\" rx=\"4.75\" fill=\"#E08A16\"/></g><g fill=\"#12212F\"><circle cx=\"26\" cy=\"31\" r=\"3.4\"/><circle cx=\"38\" cy=\"31\" r=\"3.4\"/></g></g><rect class=\"slowring\" x=\"6\" y=\"6\" width=\"52\" height=\"52\" rx=\"15\" fill=\"none\" stroke=\"#E08A16\" stroke-width=\"2.6\"/></g></svg>',\n // error-clean.svg\n error:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 64 64\" fill=\"none\"><defs><filter id=\"rough\" x=\"-25%\" y=\"-25%\" width=\"150%\" height=\"150%\"><feTurbulence type=\"fractalNoise\" baseFrequency=\"0.04\" numOctaves=\"2\" seed=\"4\" result=\"n\"/><feDisplacementMap in=\"SourceGraphic\" in2=\"n\" scale=\"2.2\" xChannelSelector=\"R\" yChannelSelector=\"G\"/></filter></defs><style>/* AG2Space stand states \\u2014 apply to the inline SVG */\\n.gaze{animation:gaze 4.2s cubic-bezier(.6,0,.2,1) infinite}\\n@keyframes gaze{0%,10%{transform:translate(0,0)}18%,34%{transform:translate(-1.9px,-1px)}\\n 42%,58%{transform:translate(2.1px,.4px)}66%,84%{transform:translate(.8px,-1.4px)}92%,100%{transform:translate(0,0)}}\\n.pulse{transform-box:view-box;transform-origin:32px 32px;animation:pulse 2.6s ease-out infinite}\\n@keyframes pulse{0%{transform:scale(.86);opacity:.9}70%,100%{transform:scale(1.06);opacity:0}}\\n.scribble{transform-box:view-box;transform-origin:22px 32px;animation:scribble 1.5s ease-in-out infinite}\\n@keyframes scribble{0%,100%{transform:scaleX(.15);opacity:.55}50%{transform:scaleX(1);opacity:1}}\\n.talk{animation:talk 1.6s ease-in-out infinite}\\n.talk2{animation-delay:.22s;opacity:.5}\\n@keyframes talk{0%,100%{opacity:.28}50%{opacity:1}}\\n.zzz{animation:zzz 3.4s ease-in-out infinite}\\n.zzz2{animation-delay:.8s}\\n@keyframes zzz{0%{transform:translate(0,4px);opacity:0}35%{opacity:.95}100%{transform:translate(4px,-8px);opacity:0}}\\n.attn{transform-box:view-box;transform-origin:32px 32px;animation:attn 3.2s cubic-bezier(.3,1.3,.4,1) infinite}\\n@keyframes attn{0%,70%,100%{transform:rotate(0)}75%{transform:rotate(-5.5deg)}\\n 81%{transform:rotate(4.5deg)}87%{transform:rotate(-2deg)}93%{transform:rotate(0)}}\\n.flash{transform-box:view-box;transform-origin:32px 32px;animation:flash 3.2s ease-out infinite}\\n@keyframes flash{0%,66%{opacity:0;transform:scale(.9)}73%{opacity:1;transform:scale(1)}\\n 100%{opacity:0;transform:scale(1.14)}}\\n.slowring{transform-box:view-box;transform-origin:32px 32px;animation:slowring 2.8s ease-in-out infinite}\\n@keyframes slowring{0%,100%{opacity:.35}50%{opacity:1}}\\n@media (prefers-reduced-motion: reduce){\\n .gaze,.pulse,.scribble,.talk,.zzz,.attn,.flash,.slowring{animation:none}\\n .gaze{transform:translate(2.1px,-1px)}.pulse{opacity:.6}.flash{opacity:1}\\n .attn{transform:rotate(-4deg)}.talk,.scribble,.zzz{opacity:.9}}\\n</style><rect width=\"64\" height=\"64\" fill=\"var(--agent-mark-plate, #6C4BE8)\"/><g transform=\"translate(32 32) scale(1.15) translate(-32 -32)\"><g transform=\"translate(-8.043 -9.470) scale(1.16)\"><g stroke=\"#FFFFFF\" stroke-width=\"3.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M17 22.5h30a6.5 6.5 0 0 1 6.5 6.5v7a6.5 6.5 0 0 1 -6.5 6.5H29l-8.5 6.5 1.5-6.6A6.6 6.6 0 0 1 16 36v-7a6.5 6.5 0 0 1 1-6.5z\"/></g><g transform=\"rotate(0 33 31)\"><rect x=\"19.5\" y=\"26.25\" width=\"9\" height=\"9.5\" rx=\"4.75\" fill=\"#E78899\"/><rect x=\"35.5\" y=\"28.65\" width=\"9\" height=\"9.5\" rx=\"4.75\" fill=\"#E78899\"/></g><g stroke=\"#12212F\" stroke-width=\"3\" stroke-linecap=\"round\"><path d=\"M22.6 31h6.8\"/><path d=\"M34.6 31h6.8\"/></g></g><rect x=\"4.5\" y=\"4.5\" width=\"55\" height=\"55\" rx=\"14\" fill=\"none\" stroke=\"#E78899\" stroke-width=\"3.4\"/></g></svg>',\n // thinking-clean.svg\n thinking:\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 64 64\" fill=\"none\"><defs><filter id=\"rough\" x=\"-25%\" y=\"-25%\" width=\"150%\" height=\"150%\"><feTurbulence type=\"fractalNoise\" baseFrequency=\"0.04\" numOctaves=\"2\" seed=\"4\" result=\"n\"/><feDisplacementMap in=\"SourceGraphic\" in2=\"n\" scale=\"2.2\" xChannelSelector=\"R\" yChannelSelector=\"G\"/></filter></defs><style>/* AG2Space stand states \\u2014 apply to the inline SVG */\\n.gaze{animation:gaze 4.2s cubic-bezier(.6,0,.2,1) infinite}\\n@keyframes gaze{0%,10%{transform:translate(0,0)}18%,34%{transform:translate(-1.9px,-1px)}\\n 42%,58%{transform:translate(2.1px,.4px)}66%,84%{transform:translate(.8px,-1.4px)}92%,100%{transform:translate(0,0)}}\\n.pulse{transform-box:view-box;transform-origin:32px 32px;animation:pulse 2.6s ease-out infinite}\\n@keyframes pulse{0%{transform:scale(.86);opacity:.9}70%,100%{transform:scale(1.06);opacity:0}}\\n.scribble{transform-box:view-box;transform-origin:22px 32px;animation:scribble 1.5s ease-in-out infinite}\\n@keyframes scribble{0%,100%{transform:scaleX(.15);opacity:.55}50%{transform:scaleX(1);opacity:1}}\\n.talk{animation:talk 1.6s ease-in-out infinite}\\n.talk2{animation-delay:.22s;opacity:.5}\\n@keyframes talk{0%,100%{opacity:.28}50%{opacity:1}}\\n.zzz{animation:zzz 3.4s ease-in-out infinite}\\n.zzz2{animation-delay:.8s}\\n@keyframes zzz{0%{transform:translate(0,4px);opacity:0}35%{opacity:.95}100%{transform:translate(4px,-8px);opacity:0}}\\n.attn{transform-box:view-box;transform-origin:32px 32px;animation:attn 3.2s cubic-bezier(.3,1.3,.4,1) infinite}\\n@keyframes attn{0%,70%,100%{transform:rotate(0)}75%{transform:rotate(-5.5deg)}\\n 81%{transform:rotate(4.5deg)}87%{transform:rotate(-2deg)}93%{transform:rotate(0)}}\\n.flash{transform-box:view-box;transform-origin:32px 32px;animation:flash 3.2s ease-out infinite}\\n@keyframes flash{0%,66%{opacity:0;transform:scale(.9)}73%{opacity:1;transform:scale(1)}\\n 100%{opacity:0;transform:scale(1.14)}}\\n.slowring{transform-box:view-box;transform-origin:32px 32px;animation:slowring 2.8s ease-in-out infinite}\\n@keyframes slowring{0%,100%{opacity:.35}50%{opacity:1}}\\n@media (prefers-reduced-motion: reduce){\\n .gaze,.pulse,.scribble,.talk,.zzz,.attn,.flash,.slowring{animation:none}\\n .gaze{transform:translate(2.1px,-1px)}.pulse{opacity:.6}.flash{opacity:1}\\n .attn{transform:rotate(-4deg)}.talk,.scribble,.zzz{opacity:.9}}\\n</style><rect width=\"64\" height=\"64\" fill=\"var(--agent-mark-plate, #6C4BE8)\"/><g transform=\"translate(32 32) scale(1.15) translate(-32 -32)\"><g transform=\"translate(-8.043 -9.470) scale(1.16)\"><g stroke=\"#FFFFFF\" stroke-width=\"3.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M17 22.5h30a6.5 6.5 0 0 1 6.5 6.5v7a6.5 6.5 0 0 1 -6.5 6.5H29l-8.5 6.5 1.5-6.6A6.6 6.6 0 0 1 16 36v-7a6.5 6.5 0 0 1 1-6.5z\"/></g><rect x=\"19.5\" y=\"26.25\" width=\"25\" height=\"9.5\" rx=\"4.75\" fill=\"#FFCE3A\" transform=\"rotate(-4 33 31)\"/><g class=\"gaze\" fill=\"#12212F\"><circle cx=\"26\" cy=\"31\" r=\"3.4\"/><circle cx=\"38\" cy=\"31\" r=\"3.4\"/></g></g></g></svg>',\n};\n","import React from \"react\";\nimport { Box } from \"../box/Box\";\nimport { as } from \"../as\";\nimport { toRem } from \"../../theme/util\";\nimport * as css from \"./TypingIndicator.css\";\n\nexport type TypingIndicatorProps = {\n size?: \"300\" | \"400\";\n disableAnimation?: boolean;\n};\n\nexport const TypingIndicator = as<\"div\", TypingIndicatorProps>(\n ({ size, disableAnimation, style, ...props }, ref) => (\n <Box\n as=\"span\"\n alignItems=\"Center\"\n shrink=\"No\"\n style={{ gap: toRem(size === \"300\" ? 1 : 2), ...style }}\n {...props}\n ref={ref}\n >\n <span className={css.TypingDot({ size, index: \"0\", animated: !disableAnimation })} />\n <span className={css.TypingDot({ size, index: \"1\", animated: !disableAnimation })} />\n <span className={css.TypingDot({ size, index: \"2\", animated: !disableAnimation })} />\n </Box>\n )\n);\n","import React from \"react\";\n\n// folds ships no robot/agent glyph, so this is the shared one. currentColor +\n// 1rem so it matches sibling folds icons at size=\"100\".\nexport const RobotIcon = ({ filled = false }: { filled?: boolean }) => (\n <svg\n width=\"1rem\"\n height=\"1rem\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={filled ? 2.2 : 1.8}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n style={{ display: \"block\" }}\n aria-hidden\n >\n <rect x=\"5\" y=\"8\" width=\"14\" height=\"11\" rx=\"3\" />\n <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"8\" />\n <circle cx=\"12\" cy=\"4\" r=\"1.1\" fill=\"currentColor\" stroke=\"none\" />\n <circle cx=\"9.5\" cy=\"13.5\" r=\"1.3\" fill=\"currentColor\" stroke=\"none\" />\n <circle cx=\"14.5\" cy=\"13.5\" r=\"1.3\" fill=\"currentColor\" stroke=\"none\" />\n <line x1=\"3\" y1=\"12\" x2=\"3\" y2=\"15\" />\n <line x1=\"21\" y1=\"12\" x2=\"21\" y2=\"15\" />\n </svg>\n);\n","// VENDORED: public/docs/alive-mark.html lines 220-556 from ag2-space/design-system.\n// Ported verbatim — do NOT edit or reformat here. The GEOMETRY block duplicates that\n// repo's worker/mark.js generator constants and must stay in sync with it.\n// See VENDORED.md in this folder.\n/* eslint-disable */\n// @ts-nocheck\nexport function mountAliveMark(container, opts) {\n \"use strict\";\n\n /* ------------------------------------------------------------------------------\n GEOMETRY — COPIED VERBATIM FROM worker/mark.js. KEEP IN SYNC.\n This is the one place in this repo that duplicates the generator's constants; it\n exists because the webclient cannot call /api/mark (Cloudflare Access) and cannot\n animate an <img>. If mark.js changes, change this block and the webclient's copy.\n ------------------------------------------------------------------------------ */\n var BRAND = \"#6C4BE8\";\n var INK = \"#16324F\";\n var WHITE = \"#FFFFFF\";\n\n var GCX = 34.52; // bbox centre in x\n var GCY = 33.2; // 1 — OPTICAL centre, not the bbox centre 35.75 (the box has the tail)\n var FIT = 1.36; // 2 — of the tile; the mark touches the edges at 1.56\n var FIT_SMALL = 1.42;\n var SMALL_AT = 24; // 3 — below this the identity moves to the tile\n var FACE_CX = 34.75; // the face centres on the BUBBLE BODY (x 16..53.5), not the tile\n\n var DEFAULT_C = { y: 31, gap: 12, r: 3.4, tilt: -4, hex: \"#FFCE3A\" };\n\n var FACE_PATH =\n \"M17 22.5h30a6.5 6.5 0 0 1 6.5 6.5v7a6.5 6.5 0 0 1 -6.5 6.5H29\" +\n \"l-8.5 6.5 1.5-6.6A6.6 6.6 0 0 1 16 36v-7a6.5 6.5 0 0 1 1-6.5z\";\n\n function fitFor(px) {\n return px < SMALL_AT ? FIT_SMALL : FIT;\n }\n\n function eyeBoost(c, px) {\n if (px >= SMALL_AT) return { r: c.r, gap: c.gap };\n var r = Math.min(c.r * 1.18, 4.4);\n return { r: r, gap: Math.min(c.gap * 1.06, 2 * (13.0 - r)) };\n }\n /* --- end of the copied block. The generator's feTurbulence wobble filters (#rlg /\n #rmd) are deliberately NOT copied: they are a static-render flourish, and running a\n displacement map under animation re-rasterises the whole tile every frame for an\n effect nobody can see at sidebar sizes. -------------------------------------- */\n\n var DEFAULTS = {\n size: 160,\n character: DEFAULT_C, // { y, gap, r, tilt, hex } — any generator character works\n label: \"AG2 Space\",\n blinkMin: 5, // seconds\n blinkMax: 10, // seconds\n blinkMs: 120, // one blink, close + open\n doubleBlinkChance: 0.2, // ~1 in 5 blinks is a double\n driftMin: 2, // seconds between look-around targets\n driftMax: 5,\n driftX: 4, // viewBox units, ± — the pill clip is the hard bound\n driftY: 1.2,\n winkMs: 350,\n squintMs: 420,\n squintTo: 0.4,\n lidClosed: 0.08,\n // The mark does NOT track the pointer continuously by default: a face that follows you\n // everywhere reads as needy, and in a sidebar it would never sit still. It glances.\n pointerMode: \"glance\", // 'off' | 'glance' | 'follow'\n followRadius: 60, // px from the mark's centre — the radius a glance triggers inside.\n // Tuned deliberately tight: at sidebar sizes the pointer has to be\n // basically on the mark before it looks up. No slider — the Pointer\n // select took that slot; change it here or via setOptions().\n glanceMs: 1000, // one glance, before it eases back to idle drift\n glanceCooldown: 8, // seconds; at most one glance per cooldown, however you wave at it\n clickLookMs: 1500, // after a click it looks at you for this long, then lets go\n sleepAfter: 60, // seconds of no pointer activity\n tiltNudge: 3, // degrees the swipe is knocked on a click\n doubleClickMs: 600,\n };\n\n var o = {},\n key;\n for (key in DEFAULTS) o[key] = DEFAULTS[key];\n if (opts) for (key in opts) if (opts[key] !== undefined) o[key] = opts[key];\n\n var c = o.character;\n var size = o.size;\n var uid = \"am\" + Math.random().toString(36).slice(2, 9); // ids must be unique per instance\n\n var k = fitFor(size);\n var eb = eyeBoost(c, size);\n var gap = eb.gap,\n y = c.y,\n r = eb.r;\n var lx = FACE_CX - gap / 2,\n rx = FACE_CX + gap / 2;\n var pillY = y - 5;\n var arcL = \"M\" + (FACE_CX - gap / 2 - r) + \" \" + y + \"q\" + r + \" \" + r * 1.1 + \" \" + r * 2 + \" 0\";\n var arcR = \"M\" + (FACE_CX + gap / 2 - r) + \" \" + y + \"q\" + r + \" \" + r * 1.1 + \" \" + r * 2 + \" 0\";\n var tx = (32 - GCX * k).toFixed(2),\n ty = (32 - GCY * k).toFixed(2);\n\n function pillT(tilt) {\n return \"rotate(\" + tilt + \" \" + FACE_CX + \" \" + y + \")\";\n }\n\n container.innerHTML =\n '<svg class=\"alive-mark\" xmlns=\"http://www.w3.org/2000/svg\" width=\"' +\n size +\n '\" height=\"' +\n size +\n '\" viewBox=\"0 0 64 64\" fill=\"none\" role=\"img\" aria-label=\"' +\n o.label +\n '\">' +\n '<defs><clipPath id=\"' +\n uid +\n '-pill\">' +\n '<rect class=\"am-clip\" x=\"20.75\" y=\"' +\n pillY +\n '\" width=\"28\" height=\"10\" rx=\"5\" ' +\n 'transform=\"' +\n pillT(c.tilt) +\n '\"/>' +\n \"</clipPath></defs>\" +\n '<rect x=\"2\" y=\"2\" width=\"60\" height=\"60\" rx=\"17\" fill=\"' +\n BRAND +\n '\"/>' +\n '<g transform=\"translate(' +\n tx +\n \" \" +\n ty +\n \") scale(\" +\n k +\n ')\">' +\n '<g stroke=\"' +\n WHITE +\n '\" stroke-width=\"3.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\">' +\n '<path d=\"' +\n FACE_PATH +\n '\"/></g>' +\n '<rect class=\"am-swipe\" x=\"20.75\" y=\"' +\n pillY +\n '\" width=\"28\" height=\"10\" rx=\"5\" ' +\n 'fill=\"' +\n c.hex +\n '\" transform=\"' +\n pillT(c.tilt) +\n '\"/>' +\n // The clip lives on a group with no transform of its own, so the eyes move INSIDE\n // the pill instead of dragging their own clip around with them.\n '<g clip-path=\"url(#' +\n uid +\n '-pill)\">' +\n '<g class=\"am-look\">' +\n '<g class=\"am-eye-l\"><circle cx=\"' +\n lx +\n '\" cy=\"' +\n y +\n '\" r=\"' +\n r +\n '\" fill=\"' +\n INK +\n '\"/></g>' +\n '<g class=\"am-eye-r\"><circle cx=\"' +\n rx +\n '\" cy=\"' +\n y +\n '\" r=\"' +\n r +\n '\" fill=\"' +\n INK +\n '\"/></g>' +\n \"</g>\" +\n \"</g>\" +\n '<g class=\"am-dream\" opacity=\"0\">' +\n '<g stroke=\"' +\n INK +\n '\" stroke-width=\"2.6\" stroke-linecap=\"round\" fill=\"none\">' +\n '<path d=\"' +\n arcL +\n '\"/><path d=\"' +\n arcR +\n '\"/></g>' +\n '<g fill=\"' +\n c.hex +\n '\"><circle cx=\"46\" cy=\"17\" r=\"2.6\"/><circle cx=\"52\" cy=\"12\" r=\"1.8\"/></g>' +\n \"</g>\" +\n \"</g>\" +\n \"</svg>\";\n\n var svg = container.querySelector(\"svg\");\n var look = container.querySelector(\".am-look\");\n var eyeL = container.querySelector(\".am-eye-l\");\n var eyeR = container.querySelector(\".am-eye-r\");\n var swipe = container.querySelector(\".am-swipe\");\n var clip = container.querySelector(\".am-clip\");\n var dream = container.querySelector(\".am-dream\");\n var eyes = look.parentNode;\n\n // ---- state -------------------------------------------------------------------\n var reduced = false;\n try {\n reduced = window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\n } catch (e) {}\n\n var running = true,\n raf = 0,\n last = 0;\n var curX = 0,\n curY = 0,\n tgtX = 0,\n tgtY = 0;\n var animL = null,\n animR = null; // lid envelopes\n var tiltCur = c.tilt;\n var dreamAmt = 0,\n sleeping = false;\n var lastActivity = now();\n var lastClick = -1e9;\n var pointer = null; // {x,y} in client coords, null when unknown\n var rect = null,\n rectAt = -1e9;\n var blinkT = 0,\n driftT = 0;\n var glanceUntil = 0,\n glanceReadyAt = 0,\n clickLookUntil = 0,\n gazing = false;\n\n function now() {\n return window.performance && performance.now ? performance.now() : Date.now();\n }\n function rnd(a, b) {\n return a + Math.random() * (b - a);\n }\n\n /** Write an attribute only when it actually changed — 5 instances x 60 fps otherwise. */\n function setA(el, name, val) {\n var m = el.__am || (el.__am = {});\n if (m[name] === val) return;\n m[name] = val;\n el.setAttribute(name, val);\n }\n\n /** Lid envelope: close over `edge` ms, hold, open over `edge` ms. 1 = open. */\n function lidAt(a, t) {\n if (!a) return 1;\n var e = t - a.t0;\n if (e >= a.dur) return 1;\n var edge = reduced ? 0 : Math.min(a.edge, a.dur / 2);\n var p = 1;\n if (edge > 0) {\n if (e < edge) p = e / edge;\n else if (e > a.dur - edge) p = (a.dur - e) / edge;\n p = p * p * (3 - 2 * p); // smoothstep\n }\n return 1 + (a.to - 1) * p;\n }\n\n function scheduleBlink() {\n clearTimeout(blinkT);\n var mult = reduced ? 2 : 1; // reduced motion: blink half as often\n blinkT = setTimeout(function () {\n if (!sleeping) doBlink(Math.random() < o.doubleBlinkChance);\n scheduleBlink();\n }, rnd(o.blinkMin, o.blinkMax) * 1000 * mult);\n }\n\n function doBlink(dbl) {\n var t = now();\n animL = animR = { t0: t, dur: o.blinkMs, edge: o.blinkMs / 2, to: o.lidClosed };\n if (dbl)\n setTimeout(function () {\n if (!running) return;\n var t2 = now();\n animL = animR = { t0: t2, dur: o.blinkMs, edge: o.blinkMs / 2, to: o.lidClosed };\n }, o.blinkMs + 90);\n }\n\n function doWink() {\n var t = now(),\n a = { t0: t, dur: o.winkMs, edge: Math.min(70, o.winkMs / 2), to: o.lidClosed };\n if (Math.random() < 0.5) animL = a;\n else animR = a;\n tiltCur = c.tilt + (Math.random() < 0.5 ? -o.tiltNudge : o.tiltNudge);\n }\n\n function doSquint() {\n var t = now();\n animL = animR = { t0: t, dur: o.squintMs, edge: Math.min(110, o.squintMs / 2), to: o.squintTo };\n tiltCur = c.tilt + o.tiltNudge;\n if (!reduced) {\n tgtX = 0;\n tgtY = -o.driftY;\n } // a small look up, pleased with itself\n }\n\n function scheduleDrift() {\n clearTimeout(driftT);\n driftT = setTimeout(function () {\n if (!reduced && !sleeping && !gazing) {\n // never yank the eyes mid-glance\n tgtX = rnd(-o.driftX, o.driftX);\n tgtY = rnd(-o.driftY, o.driftY);\n }\n scheduleDrift();\n }, rnd(o.driftMin, o.driftMax) * 1000);\n }\n\n // ---- the loop ----------------------------------------------------------------\n function frame(t) {\n if (!running) return;\n var dt = last ? Math.min(0.05, (t - last) / 1000) : 0.016;\n last = t;\n var ease = function (tau) {\n return reduced ? 1 : 1 - Math.exp(-dt / tau);\n };\n\n // One layout read, four times a second, before any write this frame.\n if (t - rectAt > 250) {\n rect = svg.getBoundingClientRect();\n rectAt = t;\n }\n\n // sleep / wake\n var want = (t - lastActivity) / 1000 >= o.sleepAfter;\n if (want !== sleeping) {\n sleeping = want;\n if (!sleeping) doBlink(false); // wake up with a blink\n else {\n tgtX = 0;\n tgtY = 0;\n }\n }\n dreamAmt += ((sleeping ? 1 : 0) - dreamAmt) * ease(0.12);\n if (dreamAmt < 0.001) dreamAmt = 0;\n if (dreamAmt > 0.999) dreamAmt = 1;\n\n // Where the eyes want to be. The pointer only ever BORROWS the gaze — for one glance, or\n // for a moment after a click — and hands it straight back to the idle drift.\n var gx = null,\n gy = null;\n if (!reduced && !sleeping && pointer && rect && o.pointerMode !== \"off\") {\n var cxp = rect.left + rect.width / 2,\n cyp = rect.top + rect.height / 2;\n var dx = pointer.x - cxp,\n dy = pointer.y - cyp;\n var d = Math.max(1e-3, Math.sqrt(dx * dx + dy * dy));\n var inside = d <= o.followRadius;\n var aim = function (soft) {\n // soft = px at which the look reaches full amplitude\n var m = Math.min(1, d / soft); // don't jitter when the pointer sits on the mark\n gx = (dx / d) * o.driftX * m;\n gy = (dy / d) * o.driftY * m;\n };\n\n if (o.pointerMode === \"follow\") {\n if (inside) aim(80); // the old behaviour, kept for comparison\n } else {\n // 'glance'\n if (!glanceUntil && inside && t >= glanceReadyAt) glanceUntil = t + o.glanceMs;\n if (glanceUntil) {\n if (t < glanceUntil) aim(80);\n else {\n glanceUntil = 0;\n glanceReadyAt = t + o.glanceCooldown * 1000;\n }\n }\n }\n if (t < clickLookUntil) aim(25); // a click always wins, wherever the pointer is\n }\n\n var wasGazing = gazing;\n gazing = gx !== null;\n if (gazing) {\n tgtX = gx;\n tgtY = gy;\n } else if (wasGazing || reduced || sleeping) {\n tgtX = 0;\n tgtY = 0;\n } // ease back to centre\n\n curX += (tgtX - curX) * ease(0.18);\n curY += (tgtY - curY) * ease(0.18);\n setA(look, \"transform\", \"translate(\" + curX.toFixed(3) + \" \" + curY.toFixed(3) + \")\");\n\n // lids\n var sl = lidAt(animL, t),\n sr = lidAt(animR, t);\n if (animL && t - animL.t0 >= animL.dur) animL = null;\n if (animR && t - animR.t0 >= animR.dur) animR = null;\n setA(\n eyeL,\n \"transform\",\n \"translate(\" +\n lx +\n \" \" +\n y +\n \") scale(1 \" +\n sl.toFixed(3) +\n \") translate(\" +\n -lx +\n \" \" +\n -y +\n \")\"\n );\n setA(\n eyeR,\n \"transform\",\n \"translate(\" +\n rx +\n \" \" +\n y +\n \") scale(1 \" +\n sr.toFixed(3) +\n \") translate(\" +\n -rx +\n \" \" +\n -y +\n \")\"\n );\n\n // the swipe eases back to its own tilt after a nudge\n tiltCur += (c.tilt - tiltCur) * ease(0.22);\n var tstr = pillT(tiltCur.toFixed(3));\n setA(swipe, \"transform\", tstr);\n setA(clip, \"transform\", tstr);\n setA(swipe, \"opacity\", (1 - 0.2 * dreamAmt).toFixed(3));\n\n // the dreaming cross-fade\n setA(dream, \"opacity\", dreamAmt.toFixed(3));\n setA(eyes, \"opacity\", (1 - dreamAmt).toFixed(3));\n\n raf = requestAnimationFrame(frame);\n }\n\n // ---- input -------------------------------------------------------------------\n function activity() {\n lastActivity = now();\n }\n\n function onMove(e) {\n pointer = { x: e.clientX, y: e.clientY };\n activity();\n }\n function onDown() {\n activity();\n }\n function onKey() {\n activity();\n } // keyboard counts too, so a typist never dozes off\n\n function onClick() {\n activity();\n var t = now();\n if (t - lastClick < o.doubleClickMs) doSquint();\n else doWink();\n lastClick = t;\n clickLookUntil = t + o.clickLookMs; // it looks at you for a beat, then lets go\n glanceReadyAt = clickLookUntil + o.glanceCooldown * 1000;\n }\n\n window.addEventListener(\"pointermove\", onMove, { passive: true });\n window.addEventListener(\"pointerdown\", onDown, { passive: true });\n window.addEventListener(\"keydown\", onKey, { passive: true });\n container.addEventListener(\"click\", onClick);\n\n scheduleBlink();\n scheduleDrift();\n raf = requestAnimationFrame(frame);\n\n // ---- handle ------------------------------------------------------------------\n return {\n blink: function () {\n doBlink(false);\n },\n wink: function () {\n doWink();\n },\n sleep: function () {\n lastActivity = now() - o.sleepAfter * 1000 - 1;\n },\n wake: function () {\n lastActivity = now();\n },\n setOptions: function (partial) {\n for (var p in partial) if (partial[p] !== undefined) o[p] = partial[p];\n if (o.blinkMax < o.blinkMin) o.blinkMax = o.blinkMin;\n scheduleBlink();\n scheduleDrift();\n },\n destroy: function () {\n running = false;\n cancelAnimationFrame(raf);\n clearTimeout(blinkT);\n clearTimeout(driftT);\n window.removeEventListener(\"pointermove\", onMove);\n window.removeEventListener(\"pointerdown\", onDown);\n window.removeEventListener(\"keydown\", onKey);\n container.removeEventListener(\"click\", onClick);\n container.innerHTML = \"\";\n },\n };\n}\n","import React, { useEffect, useRef } from \"react\";\nimport { mountAliveMark } from \"./mountAliveMark\";\n\ntype AliveMarkHandle = { destroy: () => void };\n\n/**\n * Constant, never the caller's `label`. The vendored mount concatenates its `label`\n * option straight into `container.innerHTML` (mountAliveMark.ts:96), so a caller string\n * containing a quote would break out of the aria-label attribute. SpaceSwitcher builds\n * its label from a room name, which is user-controlled. The vendored file cannot be\n * edited, so the wrapper is where this is contained.\n *\n * Nothing is lost: the accessible name comes from the button's aria-label below, and an\n * inner role=\"img\" repeating it is redundant for assistive tech anyway.\n */\nconst MARK_ALT = \"AG2 Space\";\n\ntype AliveMarkProps = {\n /** Rendered edge length in px. The SVG gets explicit width/height at this size. */\n size?: number;\n /** The button's accessible name. React escapes it; it never reaches innerHTML. */\n label?: string;\n /** Runs alongside the wink — the vendored click handler only animates. */\n onClick?: React.MouseEventHandler<HTMLButtonElement>;\n /** Per-agent stand dials { y, gap, r, tilt, hex }; omitted = the product mark. */\n character?: { y: number; gap: number; r: number; tilt: number; hex: string };\n};\n\n/**\n * The animated AG2 mark.\n *\n * The button IS the mount container, not a wrapper around one: the ported code binds\n * its click handler to the container it is given, and Enter/Space on a button dispatch\n * a click on the button itself — a click on a child span would never see them.\n *\n * Animation logic is vendored verbatim in mountAliveMark.ts; this only owns mount, size,\n * teardown and the caller's onClick. destroy() cancels the rAF loop, both timers and all\n * three window listeners. The vendored handler and this onClick both fire on a click, so\n * the mark winks AND does whatever it replaced.\n */\nexport const AliveMark = ({\n size = 40,\n label = \"AG2 Space\",\n onClick,\n character,\n}: AliveMarkProps) => {\n const ref = useRef<HTMLButtonElement>(null);\n\n useEffect(() => {\n const container = ref.current;\n if (!container) return undefined;\n const handle = mountAliveMark(container, {\n size,\n label: MARK_ALT,\n ...(character ? { character } : {}),\n }) as AliveMarkHandle;\n return () => handle.destroy();\n }, [size, character]);\n\n return (\n <button\n type=\"button\"\n ref={ref}\n aria-label={label}\n onClick={onClick}\n style={{\n // Fixed box so the header's flex rules cannot reflow the SVG off 40x40.\n width: size,\n height: size,\n flexShrink: 0,\n display: \"block\",\n padding: 0,\n border: \"none\",\n background: \"none\",\n lineHeight: 0,\n cursor: \"pointer\",\n }}\n />\n );\n};\n","import React from \"react\";\nimport { as } from \"../as\";\nimport { Badge } from \"../badge/Badge\";\nimport { Text } from \"../text/Text\";\n\nexport const ServerBadge = as<\n \"div\",\n {\n server: string;\n fill?: \"Solid\" | \"None\";\n }\n>(({ as: AsServerBadge = \"div\", fill, server, ...props }, ref) => (\n <Badge as={AsServerBadge} variant=\"Secondary\" fill={fill} {...props} ref={ref}>\n <Text as=\"span\" size=\"L400\" truncate>\n {server}\n </Text>\n </Badge>\n));\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Avatar } from \"../avatar/Avatar\";\nimport * as css from \"./styles.css\";\n\ntype StackedAvatarProps = {\n radii?: \"0\" | \"300\" | \"400\" | \"500\" | \"Pill\" | \"Inherit\" | undefined;\n};\nexport const StackedAvatar = as<\"span\", css.StackedAvatarVariants & StackedAvatarProps>(\n ({ size, variant, className, ...props }, ref) => (\n <Avatar\n size={size}\n className={classNames(css.StackedAvatar({ size, variant }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import React from \"react\";\nimport { IconSrc } from \"../icon/Icons\";\n\n// Owner 2026-08-28: folds ships no compose glyph, so this is the square-and-pencil\n// she referenced. Stroked, because <Icon> renders its src into an svg with fill=\"none\".\nexport const ComposeIcon: IconSrc = () => (\n <>\n <path\n d=\"M12 4H6a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-6\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M17.5 3.5a2.12 2.12 0 0 1 3 3L12 15l-4 1 1-4 8.5-8.5Z\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </>\n);\n","import React, { useEffect, useRef } from \"react\";\nimport classNames from \"classnames\";\nimport * as css from \"./Starfield.css\";\n\ntype Star = {\n x: number;\n y: number;\n r: number;\n phase: number;\n twinkle: number;\n drift: number;\n};\n\n// One star per ~9000 px² keeps the field airy on any viewport size.\nconst STAR_DENSITY = 1 / 9000;\n// Stars closer than this get a faint constellation link.\nconst LINK_DIST = 120;\nconst INK_RESAMPLE_FRAMES = 90;\n\ntype StarfieldProps = {\n className?: string;\n};\n\n/**\n * Space-themed ambient background: a slowly drifting, softly twinkling\n * starfield with faint constellation links between neighboring stars.\n * Ink color comes from the element's CSS `color`, so it follows the active\n * theme; honors prefers-reduced-motion by rendering a static field.\n */\nexport const Starfield = ({ className }: StarfieldProps) => {\n const canvasRef = useRef<HTMLCanvasElement>(null);\n\n useEffect(() => {\n const canvas = canvasRef.current;\n if (!canvas) return undefined;\n const ctx = canvas.getContext(\"2d\");\n if (!ctx) return undefined;\n\n const reduceMotion = window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\n let stars: Star[] = [];\n let raf = 0;\n let frame = 0;\n let width = 0;\n let height = 0;\n let ink = \"128, 128, 128\";\n\n const sampleInk = () => {\n const rgb = getComputedStyle(canvas).color.match(/\\d+/g);\n if (rgb && rgb.length >= 3) ink = `${rgb[0]}, ${rgb[1]}, ${rgb[2]}`;\n };\n\n const seed = () => {\n width = canvas.clientWidth;\n height = canvas.clientHeight;\n const dpr = Math.min(window.devicePixelRatio || 1, 2);\n canvas.width = Math.max(1, Math.round(width * dpr));\n canvas.height = Math.max(1, Math.round(height * dpr));\n ctx.setTransform(dpr, 0, 0, dpr, 0, 0);\n const count = Math.round(width * height * STAR_DENSITY);\n stars = Array.from({ length: count }, () => ({\n x: Math.random() * width,\n y: Math.random() * height,\n r: 0.6 + Math.random() * 1.1,\n phase: Math.random() * Math.PI * 2,\n twinkle: 0.01 + Math.random() * 0.02,\n drift: 0.02 + Math.random() * 0.05,\n }));\n sampleInk();\n };\n\n const draw = () => {\n ctx.clearRect(0, 0, width, height);\n\n ctx.lineWidth = 1;\n for (let i = 0; i < stars.length; i += 1) {\n for (let j = i + 1; j < stars.length; j += 1) {\n const dx = stars[i].x - stars[j].x;\n const dy = stars[i].y - stars[j].y;\n const dist = Math.sqrt(dx * dx + dy * dy);\n if (dist < LINK_DIST) {\n ctx.strokeStyle = `rgba(${ink}, ${(1 - dist / LINK_DIST) * 0.1})`;\n ctx.beginPath();\n ctx.moveTo(stars[i].x, stars[i].y);\n ctx.lineTo(stars[j].x, stars[j].y);\n ctx.stroke();\n }\n }\n }\n\n for (let i = 0; i < stars.length; i += 1) {\n const star = stars[i];\n const alpha = reduceMotion\n ? 0.5\n : 0.35 + 0.3 * (1 + Math.sin(star.phase + frame * star.twinkle)) * 0.5;\n ctx.fillStyle = `rgba(${ink}, ${alpha})`;\n ctx.beginPath();\n ctx.arc(star.x, star.y, star.r, 0, Math.PI * 2);\n ctx.fill();\n }\n };\n\n const tick = () => {\n frame += 1;\n for (let i = 0; i < stars.length; i += 1) {\n const star = stars[i];\n star.x += star.drift;\n star.y -= star.drift * 0.4;\n if (star.x > width + 2) star.x = -2;\n if (star.y < -2) star.y = height + 2;\n }\n if (frame % INK_RESAMPLE_FRAMES === 0) sampleInk();\n draw();\n raf = window.requestAnimationFrame(tick);\n };\n\n seed();\n if (reduceMotion) {\n draw();\n } else {\n raf = window.requestAnimationFrame(tick);\n }\n\n const resizeObserver = new ResizeObserver(() => {\n seed();\n draw();\n });\n resizeObserver.observe(canvas);\n\n return () => {\n window.cancelAnimationFrame(raf);\n resizeObserver.disconnect();\n };\n }, []);\n\n return <canvas ref={canvasRef} className={classNames(css.Starfield, className)} aria-hidden />;\n};\n","import React, { ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { Box } from \"../box/Box\";\nimport { Text } from \"../text/Text\";\nimport { Starfield } from \"../starfield\";\nimport * as starfieldCSS from \"../starfield/Starfield.css\";\nimport * as css from \"./SplashScreen.css\";\n\ntype SplashScreenProps = {\n children: ReactNode;\n};\nexport const SplashScreen = ({ children }: SplashScreenProps) => (\n <Box className={classNames(css.SplashScreen, starfieldCSS.StarfieldHost)} direction=\"Column\">\n <Starfield />\n {children}\n <Box className={css.SplashScreenFooter} shrink=\"No\" alignItems=\"Center\" justifyContent=\"Center\">\n <Text size=\"H2\" align=\"Center\">\n AG2 Space\n </Text>\n </Box>\n </Box>\n);\n","import { useEffect, useMemo } from \"react\";\n\nexport type OnResizeCallback = (entries: ResizeObserverEntry[]) => void;\n\nexport const getResizeObserverEntry = (\n target: Element,\n entries: ResizeObserverEntry[]\n): ResizeObserverEntry | undefined => entries.find((entry) => entry.target === target);\n\nexport const useResizeObserver = (\n onResizeCallback: OnResizeCallback,\n observeElement?: Element | null | (() => Element | null)\n): ResizeObserver => {\n const resizeObserver = useMemo(() => new ResizeObserver(onResizeCallback), [onResizeCallback]);\n\n useEffect(() => () => resizeObserver?.disconnect(), [resizeObserver]);\n\n useEffect(() => {\n const element = typeof observeElement === \"function\" ? observeElement() : observeElement;\n if (element) resizeObserver.observe(element);\n return () => {\n if (element) resizeObserver.unobserve(element);\n };\n }, [resizeObserver, observeElement]);\n\n return resizeObserver;\n};\n","import { useCallback } from \"react\";\nimport { getResizeObserverEntry, useResizeObserver } from \"./useResizeObserver\";\n\nexport const useElementSizeObserver = <T extends Element>(\n element: () => T | null,\n onResize: (width: number, height: number, target: T) => void\n) => {\n useResizeObserver(\n useCallback(\n (entries) => {\n const target = element();\n if (!target) return;\n const targetEntry = getResizeObserverEntry(target, entries);\n if (targetEntry) {\n const { clientWidth, clientHeight } = targetEntry.target;\n onResize(clientWidth, clientHeight, target);\n }\n },\n [element, onResize]\n ),\n element\n );\n};\n","import { createContext, useCallback, useContext, useState } from \"react\";\nimport { useElementSizeObserver } from \"./useElementSizeObserver\";\n\nexport const TABLET_BREAKPOINT = 1124;\nexport const MOBILE_BREAKPOINT = 750;\n\n// eslint-disable-next-line no-shadow -- core no-shadow misreads a TS enum as shadowing itself\nexport enum ScreenSize {\n Desktop = \"Desktop\",\n Tablet = \"Tablet\",\n Mobile = \"Mobile\",\n}\n\nexport const getScreenSize = (width: number): ScreenSize => {\n if (width > TABLET_BREAKPOINT) return ScreenSize.Desktop;\n if (width > MOBILE_BREAKPOINT) return ScreenSize.Tablet;\n return ScreenSize.Mobile;\n};\n\nexport const useScreenSize = (): ScreenSize => {\n const [size, setSize] = useState<ScreenSize>(getScreenSize(document.body.clientWidth));\n\n useElementSizeObserver(\n useCallback(() => document.body, []),\n useCallback((width) => setSize(getScreenSize(width)), [])\n );\n\n return size;\n};\n\nconst ScreenSizeContext = createContext<ScreenSize | null>(null);\nexport const ScreenSizeProvider = ScreenSizeContext.Provider;\n\nexport const useScreenSizeContext = (): ScreenSize => {\n const screenSize = useContext(ScreenSizeContext);\n if (screenSize === null) {\n throw new Error(\"Screen size not provided!\");\n }\n return screenSize;\n};\n","/**\n * A full-viewport transparent overlay held for the duration of a pointer drag.\n *\n * Two things only an overlay can do. A cursor set on `body` is ignored wherever\n * the pointer is over an element that declares its own — which is most of this\n * app — so the resize cursor has to come from something that covers everything.\n * And the overlay stops an embedded iframe from swallowing the move/up events,\n * which otherwise leaves a divider stuck in drag mode.\n *\n * Returns the release function; call it from the same handler that removes the\n * move/up listeners.\n */\nexport function beginDragOverlay(cursor: \"col-resize\" | \"row-resize\"): () => void {\n const overlay = document.createElement(\"div\");\n overlay.style.cssText = `position:fixed;inset:0;z-index:2147483647;cursor:${cursor};background:transparent`;\n document.body.appendChild(overlay);\n return () => overlay.remove();\n}\n","import React, {\n ComponentProps,\n MutableRefObject,\n ReactNode,\n useCallback,\n useEffect,\n useState,\n} from \"react\";\nimport classNames from \"classnames\";\nimport { Box } from \"../box/Box\";\nimport { Header } from \"../header/Header\";\nimport { Scroll } from \"../scroll/Scroll\";\nimport { Text } from \"../text/Text\";\nimport { as } from \"../as\";\nimport { toRem } from \"../../theme/util\";\nimport { ContainerColor } from \"../../styles/ContainerColor.css\";\nimport * as css from \"./style.css\";\nimport { ScreenSize, useScreenSizeContext } from \"../../hooks/useScreenSize\";\nimport { beginDragOverlay } from \"../../utils/dragOverlay\";\n\ntype PageRootProps = {\n nav: ReactNode;\n children: ReactNode;\n};\n\nexport const PageRoot = ({ nav, children }: PageRootProps) => (\n // No divider between nav and content — the seam reads by the panel/content\n // tone step alone, so the line doesn't clutter the boundary (owner, 2026-07-11).\n <Box grow=\"Yes\" className={ContainerColor({ variant: \"Background\" })}>\n {nav}\n {children}\n </Box>\n);\n\ntype ClientDrawerLayoutProps = {\n children: ReactNode;\n};\nconst ROOM_NAV_COLLAPSED_KEY = \"roomNavCollapsed\";\n\n// Shared so the toggle can live OUTSIDE PageNav — it now renders as its own row above\n// the user bar, where it cannot sit on top of the header's buttons (owner 2026-08-30).\nconst navCollapseListeners = new Set<() => void>();\nconst readNavCollapsed = (): boolean => {\n try {\n return localStorage.getItem(ROOM_NAV_COLLAPSED_KEY) === \"1\";\n } catch {\n return false;\n }\n};\nexport function useRoomNavCollapsed(): [boolean, () => void] {\n const [collapsed, set] = useState<boolean>(readNavCollapsed);\n useEffect(() => {\n const cb = () => set(readNavCollapsed());\n navCollapseListeners.add(cb);\n return () => {\n navCollapseListeners.delete(cb);\n };\n }, []);\n const toggle = useCallback(() => {\n try {\n localStorage.setItem(ROOM_NAV_COLLAPSED_KEY, readNavCollapsed() ? \"0\" : \"1\");\n } catch {\n /* ignore storage failure */\n }\n navCollapseListeners.forEach((cb) => cb());\n }, []);\n return [collapsed, toggle];\n}\nconst ROOM_NAV_WIDTH_KEY = \"roomNavWidth\";\nconst NAV_MIN_WIDTH = 180;\nconst NAV_MAX_WIDTH = 480;\nconst navBtnStyle: React.CSSProperties = {\n cursor: \"pointer\",\n background: \"transparent\",\n border: \"none\",\n color: \"inherit\",\n lineHeight: 1,\n display: \"inline-flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n};\nexport const PageNav = ({ size, children }: ClientDrawerLayoutProps & css.PageNavVariants) => {\n const screenSize = useScreenSizeContext();\n const isMobile = screenSize === ScreenSize.Mobile;\n // Collapse the room-list column to reclaim horizontal space (desktop only — mobile\n // keeps the full-screen nav). Persisted in localStorage so it sticks across pages.\n const [collapsed, toggle] = useRoomNavCollapsed();\n\n // User-adjustable width for the room-list column. Drag the right edge to resize;\n // persisted in localStorage so it sticks across pages and reloads. Desktop only.\n const defaultWidth = size === \"300\" ? 222 : 256;\n const [width, setWidth] = useState<number>(() => {\n try {\n const raw = localStorage.getItem(ROOM_NAV_WIDTH_KEY);\n const n = raw ? parseInt(raw, 10) : NaN;\n if (!Number.isNaN(n)) return Math.min(NAV_MAX_WIDTH, Math.max(NAV_MIN_WIDTH, n));\n } catch {\n /* ignore storage failure */\n }\n return defaultWidth;\n });\n const [resizing, setResizing] = useState(false);\n const startResize = (e: React.MouseEvent) => {\n e.preventDefault();\n const startX = e.clientX;\n const startWidth = width;\n setResizing(true);\n const releaseOverlay = beginDragOverlay(\"col-resize\");\n const onMove = (me: MouseEvent) => {\n const next = Math.min(\n NAV_MAX_WIDTH,\n Math.max(NAV_MIN_WIDTH, startWidth + (me.clientX - startX))\n );\n setWidth(next);\n };\n const onUp = () => {\n document.removeEventListener(\"mousemove\", onMove);\n document.removeEventListener(\"mouseup\", onUp);\n releaseOverlay();\n setResizing(false);\n setWidth((w) => {\n try {\n localStorage.setItem(ROOM_NAV_WIDTH_KEY, String(w));\n } catch {\n /* ignore storage failure */\n }\n return w;\n });\n };\n document.addEventListener(\"mousemove\", onMove);\n document.addEventListener(\"mouseup\", onUp);\n };\n\n // Collapsed: a thin rail with a single \"show\" button.\n if (collapsed && !isMobile) {\n return (\n <Box\n shrink=\"No\"\n direction=\"Column\"\n alignItems=\"Center\"\n className={ContainerColor({ variant: \"Background\" })}\n style={{ width: toRem(30), paddingTop: toRem(8) }}\n >\n <button\n type=\"button\"\n title=\"Show room list\"\n onClick={toggle}\n style={{ ...navBtnStyle, fontSize: 18, padding: toRem(4) }}\n >\n ›\n </button>\n </Box>\n );\n }\n\n return (\n <Box\n grow={isMobile ? \"Yes\" : undefined}\n className={css.PageNav({ size })}\n shrink={isMobile ? \"Yes\" : \"No\"}\n style={isMobile ? { position: \"relative\" } : { width: `${width}px`, position: \"relative\" }}\n >\n <Box grow=\"Yes\" direction=\"Column\">\n {children}\n </Box>\n {!isMobile && (\n // eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions -- drag-to-resize handle; mouse-only by design, ported as-is\n <div\n role=\"separator\"\n aria-orientation=\"vertical\"\n title=\"Drag to resize\"\n onMouseDown={startResize}\n data-resizing={resizing}\n className={css.PageNavResizeHandle}\n />\n )}\n </Box>\n );\n};\n\nexport const PageNavHeader = as<\"header\", css.PageNavHeaderVariants>(\n ({ className, outlined, ...props }, ref) => (\n <Header\n className={classNames(css.PageNavHeader({ outlined }), className)}\n variant=\"Background\"\n size=\"500\"\n {...props}\n ref={ref}\n />\n )\n);\n\nexport const PageNavContent = ({\n scrollRef,\n children,\n}: {\n children: ReactNode;\n scrollRef?: MutableRefObject<HTMLDivElement | null>;\n}) => (\n <Box grow=\"Yes\" direction=\"Column\">\n <Scroll\n ref={scrollRef}\n variant=\"Background\"\n direction=\"Vertical\"\n size=\"300\"\n hideTrack\n visibility=\"Hover\"\n >\n <div className={css.PageNavContent}>{children}</div>\n </Scroll>\n </Box>\n);\n\nexport const Page = as<\"div\">(({ className, ...props }, ref) => (\n <Box\n grow=\"Yes\"\n direction=\"Column\"\n className={classNames(ContainerColor({ variant: \"Surface\" }), className)}\n {...props}\n ref={ref}\n />\n));\n\nexport const PageHeader = as<\"div\", css.PageHeaderVariants>(\n ({ className, outlined, balance, ...props }, ref) => (\n <Header\n as=\"header\"\n size=\"500\"\n className={classNames(css.PageHeader({ balance, outlined }), className)}\n {...props}\n ref={ref}\n />\n )\n);\n\nexport const PageContent = as<\"div\">(({ className, ...props }, ref) => (\n <div className={classNames(css.PageContent, className)} {...props} ref={ref} />\n));\n\nexport const PageHeroEmpty = ({\n children,\n compact,\n}: {\n children: ReactNode;\n // Drop the 450px floor — for a docked panel, where that floor is most of the\n // available height and reads as dead space rather than breathing room.\n compact?: boolean;\n}) => (\n <Box\n className={classNames(\n ContainerColor({ variant: \"SurfaceVariant\" }),\n compact ? css.PageHeroEmptyCompact : css.PageHeroEmpty\n )}\n direction=\"Column\"\n alignItems=\"Center\"\n justifyContent=\"Center\"\n gap=\"200\"\n >\n {children}\n </Box>\n);\n\nexport const PageHeroSection = as<\"div\", ComponentProps<typeof Box>>(\n ({ className, ...props }, ref) => (\n <Box\n direction=\"Column\"\n className={classNames(css.PageHeroSection, className)}\n {...props}\n ref={ref}\n />\n )\n);\n\nexport const PageHero = ({\n icon,\n title,\n subTitle,\n children,\n}: {\n icon: ReactNode;\n title: ReactNode;\n subTitle: ReactNode;\n children?: ReactNode;\n}) => (\n <Box direction=\"Column\" gap=\"400\">\n <Box direction=\"Column\" alignItems=\"Center\" gap=\"200\">\n {icon}\n </Box>\n <Box as=\"h2\" direction=\"Column\" gap=\"200\" alignItems=\"Center\">\n <Text align=\"Center\" size=\"H2\">\n {title}\n </Text>\n <Text align=\"Center\" priority=\"400\">\n {subTitle}\n </Text>\n </Box>\n {children}\n </Box>\n);\n\nexport const PageContentCenter = as<\"div\">(({ className, ...props }, ref) => (\n <div className={classNames(css.PageContentCenter, className)} {...props} ref={ref} />\n));\n","import React from \"react\";\nimport { Box } from \"../box/Box\";\nimport { config } from \"../../theme/config.css\";\nimport { toRem } from \"../../theme/util\";\nimport { useRoomNavCollapsed } from \"./Page\";\n\n// Its own row, so the collapse control is in layout flow and cannot land on top of\n// anything (owner 2026-08-30 — floating it at the top clipped the compose button).\nexport const NavCollapseRow = () => {\n const [, toggle] = useRoomNavCollapsed();\n return (\n <Box\n shrink=\"No\"\n alignItems=\"Center\"\n justifyContent=\"End\"\n style={{ height: toRem(22), paddingRight: config.space.S200 }}\n >\n <button\n type=\"button\"\n title=\"Hide room list\"\n onClick={toggle}\n style={{\n background: \"none\",\n border: \"none\",\n cursor: \"pointer\",\n fontSize: 15,\n lineHeight: 1,\n padding: toRem(2),\n opacity: 0.65,\n color: \"inherit\",\n }}\n >\n ‹\n </button>\n </Box>\n );\n};\n","/** Accent palettes never own semantic status colours or neutral surfaces. */\nexport type Appearance = \"light\" | \"dark\";\nexport type AccentRoles = {\n solid: string;\n onSolid: string;\n hover: string;\n pressed: string;\n secondary: string;\n onSecondary: string;\n secondaryHover: string;\n secondaryPressed: string;\n focus: string;\n mention: string;\n onMention: string;\n};\nexport type AccentPalette = Record<Appearance, AccentRoles>;\n\nexport const blueAccent: AccentPalette = {\n dark: {\n solid: \"#2c72cf\",\n onSolid: \"#ffffff\",\n hover: \"#2364bc\",\n pressed: \"#194e96\",\n secondary: \"#294e7b\",\n onSecondary: \"#f1f6ff\",\n secondaryHover: \"#203f66\",\n secondaryPressed: \"#172f4e\",\n focus: \"#7cc4ff\",\n mention: \"#203447\",\n onMention: \"#b8dcff\",\n },\n light: {\n solid: \"#2469c2\",\n onSolid: \"#ffffff\",\n hover: \"#1c58a5\",\n pressed: \"#174886\",\n secondary: \"#294e7b\",\n onSecondary: \"#f1f6ff\",\n secondaryHover: \"#203f66\",\n secondaryPressed: \"#172f4e\",\n focus: \"#1f6fd0\",\n mention: \"#e1edfc\",\n onMention: \"#18579f\",\n },\n};\n\nconst fixed = {\n dark: {\n surface: \"#111318\",\n inset: \"#171a20\",\n line: \"#232830\",\n text: \"#e6e8ec\",\n body: \"#c9ced6\",\n secondary: \"#9aa3ad\",\n status: {\n success: { solid: \"#74c596\", onSolid: \"#0b2315\", soft: \"#233d32\" },\n warning: { solid: \"#f0ad67\", onSolid: \"#201408\", soft: \"#453322\" },\n info: { solid: \"#74b9f5\", onSolid: \"#0b2136\", soft: \"#243b55\" },\n critical: { solid: \"#e0806f\", onSolid: \"#281411\", soft: \"#302224\" },\n neutral: { solid: \"#9aa3ad\", onSolid: \"#111318\", soft: \"#242830\" },\n },\n },\n light: {\n surface: \"#ffffff\",\n inset: \"#f0f1f4\",\n line: \"#e1e4e9\",\n text: \"#14171c\",\n body: \"#3a414b\",\n secondary: \"#5f6873\",\n status: {\n success: { solid: \"#28764b\", onSolid: \"#ffffff\", soft: \"#e7f0eb\" },\n warning: { solid: \"#9b5417\", onSolid: \"#ffffff\", soft: \"#f6eee6\" },\n info: { solid: \"#246ab8\", onSolid: \"#ffffff\", soft: \"#e7eff7\" },\n critical: { solid: \"#a94332\", onSolid: \"#ffffff\", soft: \"#f8e8e4\" },\n neutral: { solid: \"#5f6873\", onSolid: \"#ffffff\", soft: \"#eceef1\" },\n },\n },\n};\n\nexport const resolveCurrentPalette = (mode: Appearance, accent: AccentPalette = blueAccent) => ({\n ...fixed[mode],\n accent: accent[mode],\n});\n\nexport const motion = {\n open: 240,\n close: 180,\n openEasing: \"cubic-bezier(.2,0,0,1)\",\n closeEasing: \"cubic-bezier(.4,0,1,1)\",\n};\n","/* eslint-disable react/function-component-definition */\nimport React, { createContext, useContext, useMemo } from \"react\";\nimport type { CSSProperties, ReactNode } from \"react\";\nimport { AccentPalette, Appearance, blueAccent } from \"./palette\";\nimport { current, darkClass, lightClass } from \"./theme.css\";\nimport * as css from \"./primitives.css\";\nimport \"./fonts.css\";\n\nconst Context = createContext<{ mode: Appearance; accent: AccentPalette }>({\n mode: \"light\",\n accent: blueAccent,\n});\n\n/** No DOM or global styles: only opted-in boundaries adopt the new appearance. */\nexport function CurrentProvider({\n mode,\n accent = blueAccent,\n children,\n}: {\n mode: Appearance;\n accent?: AccentPalette;\n children: ReactNode;\n}) {\n const value = useMemo(() => ({ mode, accent }), [mode, accent]);\n return <Context.Provider value={value}>{children}</Context.Provider>;\n}\n\n/** Future user palette selection supplies one complete light/dark AccentPalette here. */\nexport function CurrentBoundary({\n children,\n className,\n}: {\n children: ReactNode;\n className?: string;\n}) {\n const { mode, accent } = useContext(Context);\n const style = Object.fromEntries(\n Object.entries(current.accent).map(([key, variable]) => [\n variable.slice(4, -1),\n accent[mode][key as keyof typeof current.accent],\n ])\n ) as CSSProperties;\n return (\n <div\n className={`${mode === \"dark\" ? darkClass : lightClass} ${css.boundary}${\n className ? ` ${className}` : \"\"\n }`}\n style={style}\n data-ag2-design=\"current\"\n >\n {children}\n </div>\n );\n}\n","/* eslint-disable react/function-component-definition */\nimport React, { useLayoutEffect, useRef, useState } from \"react\";\nimport type { ReactNode } from \"react\";\nimport { motion } from \"./palette\";\n\n/** Animate from the visible height, including when a user reverses mid-transition. */\nexport function Disclosure({\n open,\n id,\n children,\n}: {\n open: boolean;\n id: string;\n children: ReactNode;\n}) {\n const ref = useRef<HTMLDivElement>(null);\n const animation = useRef<Animation>();\n const [mounted, setMounted] = useState(open);\n useLayoutEffect(() => {\n if (open && !mounted) {\n setMounted(true);\n return;\n }\n const element = ref.current;\n if (!element) return;\n const { height } = element.getBoundingClientRect();\n const { opacity } = getComputedStyle(element);\n animation.current?.cancel();\n const finish = () => {\n element.style.height = open ? \"auto\" : \"0px\";\n element.style.opacity = open ? \"1\" : \"0\";\n if (!open) setMounted(false);\n };\n if (!element.animate || matchMedia(\"(prefers-reduced-motion: reduce)\").matches) {\n finish();\n return;\n }\n element.style.height = open ? \"auto\" : \"0px\";\n const target = open ? element.scrollHeight : 0;\n element.style.height = `${height}px`;\n const run = element.animate(\n [\n { height: `${height}px`, opacity },\n { height: `${target}px`, opacity: open ? 1 : 0 },\n ],\n {\n duration: open ? motion.open : motion.close,\n easing: open ? motion.openEasing : motion.closeEasing,\n fill: \"forwards\",\n }\n );\n animation.current = run;\n run.onfinish = () => {\n finish();\n run.cancel();\n };\n }, [open, mounted]);\n useLayoutEffect(() => () => animation.current?.cancel(), []);\n return (\n <div\n ref={ref}\n id={id}\n aria-hidden={!open}\n {...(!open ? { inert: \"\" } : {})}\n style={{ overflow: \"hidden\", height: 0, opacity: 0 }}\n >\n {mounted && children}\n </div>\n );\n}\n","/* eslint-disable react/function-component-definition */\nimport React from \"react\";\nimport * as css from \"./primitives.css\";\n// Official Phosphor paths; see PHOSPHOR-LICENSE.txt. No runtime CDN or icon font.\nconst paths = {\n \"comment-bold\":\n \"M172,108a12,12,0,0,1-12,12H96a12,12,0,0,1,0-24h64A12,12,0,0,1,172,108Zm-12,28H96a12,12,0,0,0,0,24h64a12,12,0,0,0,0-24Zm76-8A108,108,0,0,1,78.77,224.15L46.34,235A20,20,0,0,1,21,209.66l10.81-32.43A108,108,0,1,1,236,128Zm-24,0A84,84,0,1,0,55.27,170.06a12,12,0,0,1,1,9.81l-9.93,29.79,29.79-9.93a12.1,12.1,0,0,1,3.8-.62,12,12,0,0,1,6,1.62A84,84,0,0,0,212,128Z\",\n chevron:\n \"M216.49,104.49l-80,80a12,12,0,0,1-17,0l-80-80a12,12,0,0,1,17-17L128,159l71.51-71.52a12,12,0,0,1,17,17Z\",\n check:\n \"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\",\n warning:\n \"M128,20A108,108,0,1,0,236,128,108.12,108.12,0,0,0,128,20Zm0,192a84,84,0,1,1,84-84A84.09,84.09,0,0,1,128,212Zm-12-80V80a12,12,0,0,1,24,0v52a12,12,0,0,1-24,0Zm28,40a16,16,0,1,1-16-16A16,16,0,0,1,144,172Z\",\n comment:\n \"M168,112a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h64A8,8,0,0,1,168,112Zm-8,24H96a8,8,0,0,0,0,16h64a8,8,0,0,0,0-16Zm72-8A104,104,0,0,1,79.12,219.82L45.07,231.17a16,16,0,0,1-20.24-20.24l11.35-34.05A104,104,0,1,1,232,128Zm-16,0A88,88,0,1,0,51.81,172.06a8,8,0,0,1,.66,6.54L40,216,77.4,203.53a7.85,7.85,0,0,1,2.53-.42,8,8,0,0,1,4,1.08A88,88,0,0,0,216,128Z\",\n agent:\n \"M200,48H136V16a8,8,0,0,0-16,0V48H56A32,32,0,0,0,24,80V192a32,32,0,0,0,32,32H200a32,32,0,0,0,32-32V80A32,32,0,0,0,200,48Zm16,144a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V80A16,16,0,0,1,56,64H200a16,16,0,0,1,16,16Zm-52-56H92a28,28,0,0,0,0,56h72a28,28,0,0,0,0-56Zm-24,16v24H116V152ZM80,164a12,12,0,0,1,12-12h8v24H92A12,12,0,0,1,80,164Zm84,12h-8V152h8a12,12,0,0,1,0,24ZM72,108a12,12,0,1,1,12,12A12,12,0,0,1,72,108Zm88,0a12,12,0,1,1,12,12A12,12,0,0,1,160,108Z\",\n people:\n \"M117.25,157.92a60,60,0,1,0-66.5,0A95.83,95.83,0,0,0,3.53,195.63a8,8,0,1,0,13.4,8.74,80,80,0,0,1,134.14,0,8,8,0,0,0,13.4-8.74A95.83,95.83,0,0,0,117.25,157.92ZM40,108a44,44,0,1,1,44,44A44.05,44.05,0,0,1,40,108Zm210.14,98.7a8,8,0,0,1-11.07-2.33A79.83,79.83,0,0,0,172,168a8,8,0,0,1,0-16,44,44,0,1,0-16.34-84.87,8,8,0,1,1-5.94-14.85,60,60,0,0,1,55.53,105.64,95.83,95.83,0,0,1,47.22,37.71A8,8,0,0,1,250.14,206.7Z\",\n \"pull-request\":\n \"M104,64A32,32,0,1,0,64,95v66a32,32,0,1,0,16,0V95A32.06,32.06,0,0,0,104,64ZM56,64A16,16,0,1,1,72,80,16,16,0,0,1,56,64ZM88,192a16,16,0,1,1-16-16A16,16,0,0,1,88,192Zm120-31V110.63a23.85,23.85,0,0,0-7-17L163.31,56H192a8,8,0,0,0,0-16H144a8,8,0,0,0-8,8V96a8,8,0,0,0,16,0V67.31L189.66,105a8,8,0,0,1,2.34,5.66V161a32,32,0,1,0,16,0Zm-8,47a16,16,0,1,1,16-16A16,16,0,0,1,200,208Z\",\n clock:\n \"M140,80v41.21l34.17,20.5a12,12,0,1,1-12.34,20.58l-40-24A12,12,0,0,1,116,128V80a12,12,0,0,1,24,0ZM128,28A99.38,99.38,0,0,0,57.24,57.34c-4.69,4.74-9,9.37-13.24,14V64a12,12,0,0,0-24,0v40a12,12,0,0,0,12,12H72a12,12,0,0,0,0-24H57.77C63,86,68.37,80.22,74.26,74.26a76,76,0,1,1,1.58,109,12,12,0,0,0-16.48,17.46A100,100,0,1,0,128,28Z\",\n} as const;\nexport type IconName = keyof typeof paths;\nexport function Icon({\n name,\n size = 16,\n verdict = false,\n}: {\n name: IconName;\n size?: number;\n verdict?: boolean;\n}) {\n return (\n <svg\n width={size}\n height={size}\n viewBox={verdict ? \"20 20 216 216\" : \"0 0 256 256\"}\n style={\n verdict && name === \"check\"\n ? { stroke: \"currentColor\", strokeWidth: 5, strokeLinejoin: \"round\" }\n : undefined\n }\n className={css.icon}\n aria-hidden=\"true\"\n focusable=\"false\"\n >\n <path d={paths[name]} />\n </svg>\n );\n}\n","/* eslint-disable react/function-component-definition */\nimport React, { useId, useState } from \"react\";\nimport type { ReactNode } from \"react\";\nimport { CurrentBoundary } from \"../../current/CurrentProvider\";\nimport { Disclosure } from \"../../current/Disclosure\";\nimport { Icon } from \"../../current/Icon\";\nimport * as css from \"../../current/primitives.css\";\nimport { ReviewCardData, ReviewFinding } from \"./types\";\n\nconst verdicts = {\n approve: { label: \"Approved\", tone: \"success\", icon: \"check\" },\n request_changes: { label: \"Changes requested\", tone: \"warning\", icon: \"warning\" },\n comment: { label: \"Comment\", tone: \"info\", icon: \"comment\" },\n} as const;\nconst freshness = {\n current: \"Current when reviewed\",\n outdated: \"Older commit\",\n unknown: \"Freshness unknown\",\n};\nconst severity = { high: \"critical\", medium: \"warning\", low: \"neutral\", info: \"info\" } as const;\nexport type ReviewMember = { id: string; name: string; isSelf?: boolean };\n\nfunction Chevron() {\n return (\n <span className={css.chevron}>\n <Icon name=\"chevron\" size={12} />\n </span>\n );\n}\nfunction Finding({ finding }: { finding: ReviewFinding }) {\n const [open, setOpen] = useState(false);\n const id = useId();\n return (\n <div className={`${css.finding} ${css.tones[severity[finding.severity]]}`}>\n <button\n type=\"button\"\n className={css.findingToggle}\n aria-expanded={open}\n aria-controls={id}\n onClick={() => setOpen(!open)}\n >\n <span className={css.severity}>{finding.severity}</span>\n <span className={css.findingTitle}>{finding.title}</span>\n <Chevron />\n </button>\n <Disclosure id={id} open={open}>\n <div className={css.findingBody}>\n {finding.location && (\n <code className={css.mono}>\n {finding.location.path}:{finding.location.line}\n </code>\n )}\n <p className={css.paragraph}>{finding.description}</p>\n {finding.requested_change && (\n <p className={css.paragraph}>\n <strong>Requested change: </strong>\n {finding.requested_change}\n </p>\n )}\n </div>\n </Disclosure>\n </div>\n );\n}\n\n/** Presentation only: actions and identity resolution stay with the room adapter. */\nexport function CurrentReviewCard({\n authorLogin,\n owned = false,\n review,\n actions,\n members = [],\n}: {\n authorLogin?: string;\n owned?: boolean;\n review: ReviewCardData;\n actions?: ReactNode;\n members?: ReviewMember[];\n}) {\n const [expanded, setExpanded] = useState(false);\n const detailsId = useId();\n const verdict = verdicts[review.verdict];\n const title = review.title?.trim();\n const ref = `${review.repo} #${review.number}`;\n return (\n <CurrentBoundary>\n <section\n className={`${css.card} ${css.tones[verdict.tone]} ${owned ? css.ownedCard : \"\"}`}\n aria-label={owned ? \"PR review of your pull request\" : \"PR review\"}\n data-owned={owned}\n >\n <div className={css.header}>\n <div className={css.identity}>\n <span className={css.typeIcon}>\n <Icon name=\"pull-request\" size={20} />\n </span>\n {review.url ? (\n <a\n className={css.prLink}\n data-expanded={expanded}\n title={expanded ? undefined : title || ref}\n href={review.url}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {title || ref}\n </a>\n ) : (\n <span\n className={css.prLink}\n data-expanded={expanded}\n title={expanded ? undefined : title}\n >\n {title || ref}\n </span>\n )}\n <span className={css.badge}>{verdict.label}</span>\n </div>\n <span className={css.verdictIcon}>\n <Icon\n name={review.verdict === \"comment\" ? \"comment-bold\" : verdict.icon}\n size={32}\n verdict\n />\n </span>\n <div className={css.author}>\n {title && <span className={css.prRef}>{ref}</span>}\n {authorLogin ? (\n <span className={css.authorName}>@{authorLogin.replace(/^@/, \"\")}</span>\n ) : (\n <span className={css.authorMissing}>PR author unavailable</span>\n )}\n </div>\n <div className={css.overview}>\n <p\n className={css.summary}\n data-expanded={expanded}\n title={expanded ? undefined : review.summary}\n >\n {review.summary}\n </p>\n <button\n type=\"button\"\n className={css.control}\n aria-expanded={expanded}\n aria-controls={detailsId}\n aria-label={`${expanded ? \"Collapse\" : \"Expand\"} review, ${\n review.findings.length\n } findings`}\n onClick={() => setExpanded(!expanded)}\n >\n {review.findings.length} finding{review.findings.length === 1 ? \"\" : \"s\"}\n <Chevron />\n </button>\n </div>\n </div>\n <Disclosure id={detailsId} open={expanded}>\n <div className={css.details}>\n {review.findings.length > 0 && (\n <div className={css.findings}>\n {review.findings.map((finding) => (\n <Finding key={finding.id} finding={finding} />\n ))}\n </div>\n )}\n <div className={css.meta}>\n <span>\n Reviewed <code className={css.mono}>{review.reviewed_commit.slice(0, 12)}</code>\n </span>\n <span>{freshness[review.freshness]}</span>\n <span>Room review only · not submitted to GitHub</span>\n </div>\n {actions}\n </div>\n </Disclosure>\n {members.length > 0 && (\n <div className={css.mentions}>\n <span className={css.mentionLabel}>Mentions</span>\n {members.map((member) => (\n <span\n key={member.id}\n title={member.id}\n className={`${css.member} ${member.isSelf ? css.ownMention : \"\"}`}\n >\n @{member.name}\n </span>\n ))}\n </div>\n )}\n </section>\n </CurrentBoundary>\n );\n}\n","import React, { ReactNode } from \"react\";\nimport FocusTrap from \"focus-trap-react\";\nimport { Box } from \"../box/Box\";\nimport { Dialog } from \"../dialog/Dialog\";\nimport { Header } from \"../header/Header\";\nimport { Icon } from \"../icon/Icon\";\nimport { Icons } from \"../icon/Icons\";\nimport { IconButton } from \"../icon-button/IconButton\";\nimport { Overlay, OverlayBackdrop, OverlayCenter } from \"../overlay/Overlay\";\nimport { Text } from \"../text/Text\";\nimport { toRem } from \"../../theme/util\";\nimport * as css from \"./DialogFrame.css\";\n\nexport type DialogFrameProps = {\n open: boolean;\n title: ReactNode;\n /** Runs on the close button, on Escape and on a click outside. */\n onClose: () => void;\n /** Max width in px; the dialog is fluid below it. */\n width?: number;\n className?: string;\n children: ReactNode;\n};\n\n/**\n * The frame every create / join / confirm dialog opens in: a backdropped\n * overlay, a focus trap, and a Dialog whose header carries the title and the\n * close button. `open` is controlled by the caller.\n */\nexport const DialogFrame = ({\n open,\n title,\n onClose,\n width,\n className,\n children,\n}: DialogFrameProps) => (\n <Overlay open={open} backdrop={<OverlayBackdrop />}>\n <OverlayCenter>\n <FocusTrap\n focusTrapOptions={{\n onDeactivate: onClose,\n clickOutsideDeactivates: true,\n escapeDeactivates: true,\n }}\n >\n <Dialog\n role=\"dialog\"\n aria-modal=\"true\"\n aria-label={typeof title === \"string\" ? title : undefined}\n variant=\"Surface\"\n className={className}\n style={width ? { maxWidth: toRem(width) } : undefined}\n >\n <Header size=\"500\" variant=\"Surface\" className={css.DialogFrameHeader}>\n <Box grow=\"Yes\" alignItems=\"Center\" style={{ minWidth: 0 }}>\n <Text size=\"H4\" truncate>\n {title}\n </Text>\n </Box>\n <IconButton size=\"300\" variant=\"Surface\" aria-label=\"Close\" onClick={onClose}>\n <Icon src={Icons.Cross} size=\"100\" />\n </IconButton>\n </Header>\n <Box direction=\"Column\" gap=\"400\" className={css.DialogFrameContent}>\n {children}\n </Box>\n </Dialog>\n </FocusTrap>\n </OverlayCenter>\n </Overlay>\n);\n","import React, { ComponentProps, useEffect, useRef, useState } from \"react\";\nimport FocusTrap from \"focus-trap-react\";\nimport { Icon } from \"../icon/Icon\";\nimport { Icons } from \"../icon/Icons\";\nimport { IconButton } from \"../icon-button/IconButton\";\nimport { Menu } from \"../menu/Menu\";\nimport { MenuItem } from \"../menu/MenuItem\";\nimport { PopOut } from \"../pop-out/PopOut\";\nimport { Text } from \"../text/Text\";\nimport { Align, Position, RectCords } from \"../util\";\nimport * as css from \"./MenuButton.css\";\n\nexport type MenuEntry = {\n label: string;\n icon?: ComponentProps<typeof Icon>[\"src\"];\n /** Renders in the Critical variant — destructive entries (leave, delete). */\n critical?: boolean;\n disabled?: boolean;\n onSelect?: () => void;\n};\n\nexport type MenuButtonProps = {\n /** Accessible name of the trigger, e.g. \"More Options\". */\n label: string;\n entries: MenuEntry[];\n icon?: ComponentProps<typeof Icon>[\"src\"];\n variant?: ComponentProps<typeof IconButton>[\"variant\"];\n /** Open on mount without a click, for a story or a screenshot of the menu. */\n defaultOpen?: boolean;\n position?: Position;\n align?: Align;\n className?: string;\n disabled?: boolean;\n};\n\n/**\n * An icon button that opens an anchored PopOut menu — the \"More Options\"\n * pattern the room header, the room-list row and the settings pages share.\n * Selecting an entry closes the menu; so does Escape or a click outside.\n */\nexport const MenuButton = ({\n label,\n entries,\n icon = Icons.VerticalDots,\n variant = \"Background\",\n defaultOpen,\n position = \"Bottom\",\n align = \"End\",\n className,\n disabled,\n}: MenuButtonProps) => {\n const [anchor, setAnchor] = useState<RectCords>();\n const ref = useRef<HTMLButtonElement>(null);\n const menuRef = useRef<HTMLDivElement>(null);\n useEffect(() => {\n if (defaultOpen && ref.current) setAnchor(ref.current.getBoundingClientRect());\n }, [defaultOpen]);\n return (\n <>\n <PopOut\n anchor={anchor}\n position={position}\n align={align}\n offset={4}\n content={\n <FocusTrap\n focusTrapOptions={{\n fallbackFocus: () => menuRef.current as HTMLDivElement,\n onDeactivate: () => setAnchor(undefined),\n clickOutsideDeactivates: true,\n }}\n >\n <Menu\n ref={menuRef}\n role=\"menu\"\n aria-label={label}\n tabIndex={-1}\n className={css.MenuButtonMenu}\n onKeyDown={(event: React.KeyboardEvent<HTMLDivElement>) => {\n const items = Array.from(\n event.currentTarget.querySelectorAll<HTMLButtonElement>(\n '[role=\"menuitem\"]:not(:disabled)'\n )\n );\n if (!items.length) return;\n const current = items.indexOf(\n event.currentTarget.ownerDocument.activeElement as HTMLButtonElement\n );\n let next: number;\n if (event.key === \"ArrowDown\") next = (current + 1) % items.length;\n else if (event.key === \"ArrowUp\")\n next = (current - 1 + items.length) % items.length;\n else if (event.key === \"Home\") next = 0;\n else if (event.key === \"End\") next = items.length - 1;\n else return;\n event.preventDefault();\n items[next].focus();\n }}\n >\n {entries.map((entry) => (\n <MenuItem\n key={entry.label}\n type=\"button\"\n role=\"menuitem\"\n disabled={entry.disabled}\n size=\"300\"\n variant={entry.critical ? \"Critical\" : \"Surface\"}\n fill=\"None\"\n before={entry.icon && <Icon size=\"100\" src={entry.icon} />}\n onClick={() => {\n setAnchor(undefined);\n entry.onSelect?.();\n }}\n >\n <Text size=\"T300\" truncate>\n {entry.label}\n </Text>\n </MenuItem>\n ))}\n </Menu>\n </FocusTrap>\n }\n />\n <IconButton\n ref={ref}\n type=\"button\"\n className={className}\n disabled={disabled}\n aria-haspopup=\"menu\"\n variant={variant}\n fill=\"None\"\n size=\"300\"\n aria-label={label}\n aria-expanded={anchor !== undefined}\n onKeyDown={(event: React.KeyboardEvent<HTMLButtonElement>) => {\n if (event.key === \"ArrowDown\" || event.key === \"ArrowUp\") {\n event.preventDefault();\n setAnchor(event.currentTarget.getBoundingClientRect());\n }\n }}\n onClick={(evt: React.MouseEvent<HTMLButtonElement>) =>\n setAnchor(anchor ? undefined : evt.currentTarget.getBoundingClientRect())\n }\n >\n <Icon src={icon} size=\"100\" />\n </IconButton>\n </>\n );\n};\n","import React from \"react\";\nimport { Box } from \"../box/Box\";\nimport { Chip } from \"../chip/Chip\";\nimport { Text } from \"../text/Text\";\n\nexport type TabBarProps = {\n tabs: string[];\n /** The selected tab; compared to each entry by value. */\n active: string;\n onSelect?: (tab: string) => void;\n};\n\n/**\n * A row of tab chips — the settings tab strip, the explore filters, the\n * console sections. A tablist, so the selected chip carries aria-selected;\n * for a pressed-state toggle that is not a tab, use Pill.\n */\nexport const TabBar = ({ tabs, active, onSelect }: TabBarProps) => (\n <Box gap=\"200\" wrap=\"Wrap\" role=\"tablist\">\n {tabs.map((tab) => (\n <Chip\n key={tab}\n as=\"button\"\n type=\"button\"\n role=\"tab\"\n aria-selected={tab === active}\n variant={tab === active ? \"Primary\" : \"SurfaceVariant\"}\n fill=\"Soft\"\n outlined={tab === active}\n size=\"400\"\n onClick={() => onSelect?.(tab)}\n >\n <Text as=\"span\" size=\"T200\">\n {tab}\n </Text>\n </Chip>\n ))}\n </Box>\n);\n","import React from \"react\";\nimport { Chip } from \"../chip/Chip\";\nimport { Text } from \"../text/Text\";\n\nexport type PillProps = {\n label: string;\n /** Renders pressed (Primary) and sets aria-pressed. */\n active?: boolean;\n onClick?: () => void;\n};\n\n/**\n * A pill-shaped toggle chip: join rules, filters, and tab-like choices that\n * are not routes. It is a toggle, so it reports its state with aria-pressed.\n */\nexport const Pill = ({ label, active, onClick }: PillProps) => (\n <Chip\n as=\"button\"\n type=\"button\"\n variant={active ? \"Primary\" : \"SurfaceVariant\"}\n fill=\"Soft\"\n size=\"400\"\n aria-pressed={active}\n onClick={onClick}\n >\n <Text as=\"span\" size=\"T200\">\n {label}\n </Text>\n </Chip>\n);\n","import React, { ReactNode } from \"react\";\nimport { PageHero, PageHeroEmpty } from \"../page/Page\";\n\nexport type EmptyStateProps = {\n icon: ReactNode;\n title: ReactNode;\n subTitle: ReactNode;\n /** Actions under the copy — a primary button, a pair of links. */\n children?: ReactNode;\n /** Drop the height floor, for a docked panel. */\n compact?: boolean;\n};\n\n/** The hero a page shows when it has nothing to list: icon, title, sub-title, actions. */\nexport const EmptyState = ({ icon, title, subTitle, children, compact }: EmptyStateProps) => (\n <PageHeroEmpty compact={compact}>\n <PageHero icon={icon} title={title} subTitle={subTitle}>\n {children}\n </PageHero>\n </PageHeroEmpty>\n);\n","import React from \"react\";\nimport { Box } from \"../box/Box\";\nimport { Spinner } from \"../spinner/Spinner\";\nimport { Text } from \"../text/Text\";\n\nexport type LoadingStateProps = {\n label?: string;\n};\n\n/** A centred spinner with a label, as every page shows while its data loads. */\nexport const LoadingState = ({ label = \"Loading…\" }: LoadingStateProps) => (\n <Box grow=\"Yes\" direction=\"Column\" alignItems=\"Center\" justifyContent=\"Center\" gap=\"300\">\n <Spinner size=\"600\" variant=\"Secondary\" />\n <Text size=\"T300\" priority=\"300\">\n {label}\n </Text>\n </Box>\n);\n","import React from \"react\";\nimport { Box } from \"../box/Box\";\nimport { Button } from \"../button/Button\";\nimport { Icon } from \"../icon/Icon\";\nimport { Icons } from \"../icon/Icons\";\nimport { Text } from \"../text/Text\";\nimport * as css from \"./PageState.css\";\n\nexport type ErrorStateProps = {\n title: string;\n description: string;\n /** Label of the retry button. */\n retry?: string;\n onRetry?: () => void;\n};\n\n/** A centred error with a retry, as pages show when a request fails. */\nexport const ErrorState = ({ title, description, retry = \"Retry\", onRetry }: ErrorStateProps) => (\n <Box grow=\"Yes\" direction=\"Column\" alignItems=\"Center\" justifyContent=\"Center\" gap=\"400\">\n <Box direction=\"Column\" alignItems=\"Center\" gap=\"200\" className={css.ErrorStateMark}>\n <Icon src={Icons.Warning} size=\"600\" />\n <Text size=\"H4\" style={{ color: \"inherit\" }}>\n {title}\n </Text>\n </Box>\n <Text size=\"T300\" priority=\"300\" align=\"Center\" className={css.ErrorStateDescription}>\n {description}\n </Text>\n <Button\n variant=\"Secondary\"\n fill=\"Soft\"\n size=\"400\"\n onClick={onRetry}\n before={<Icon src={Icons.Reload} size=\"100\" />}\n >\n <Text as=\"span\" size=\"B400\">\n {retry}\n </Text>\n </Button>\n </Box>\n);\n","import React, { ReactNode } from \"react\";\nimport { Box } from \"../box/Box\";\nimport { Icon } from \"../icon/Icon\";\nimport { Icons } from \"../icon/Icons\";\nimport { IconButton } from \"../icon-button/IconButton\";\nimport { PageHeader } from \"../page/Page\";\nimport { Text } from \"../text/Text\";\nimport * as css from \"./PageState.css\";\n\nexport type PageTitleHeaderProps = {\n title: string;\n /** Before the title — a room avatar, a section icon. */\n icon?: ReactNode;\n /** Trailing actions, right-aligned. */\n after?: ReactNode;\n /** Show the back arrow; narrow layouts push instead of splitting. */\n back?: boolean;\n onBack?: () => void;\n};\n\n/** A page-level header: back arrow, icon, title, trailing actions. */\nexport const PageTitleHeader = ({ title, icon, after, back, onBack }: PageTitleHeaderProps) => (\n <PageHeader outlined>\n <Box grow=\"Yes\" alignItems=\"Center\" gap=\"200\" className={css.PageTitleHeaderTitle}>\n {back && (\n <IconButton variant=\"Background\" fill=\"None\" size=\"300\" aria-label=\"Back\" onClick={onBack}>\n <Icon src={Icons.ArrowLeft} size=\"100\" />\n </IconButton>\n )}\n {icon}\n <Text size=\"H3\" truncate>\n {title}\n </Text>\n </Box>\n {after && (\n <Box shrink=\"No\" alignItems=\"Center\" gap=\"200\">\n {after}\n </Box>\n )}\n </PageHeader>\n);\n","import React, { ComponentProps, ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Box } from \"../box\";\nimport { SequenceCard } from \"../sequence-card\";\nimport { Text } from \"../text\";\nimport * as css from \"./Card.css\";\n\nexport const Card = as<\"div\", ComponentProps<typeof SequenceCard>>(\n ({ as: AsCard = \"div\", className, ...props }, ref) => (\n <SequenceCard\n as={AsCard}\n variant=\"SurfaceVariant\"\n direction=\"Column\"\n gap=\"400\"\n outlined\n firstChild\n lastChild\n {...props}\n className={classNames(css.Card, className)}\n ref={ref}\n />\n )\n);\nexport type RowEntry = { id: string; content: ReactNode };\nexport type RowsProps = {\n title?: ReactNode;\n /** Stable ids preserve state when rows are inserted, removed or reordered. */\n rows: RowEntry[];\n};\nexport const Rows = as<\"div\", RowsProps>(\n ({ as: AsRows = \"div\", title, rows, className, ...props }, ref) => (\n <Box\n as={AsRows}\n direction=\"Column\"\n gap=\"200\"\n className={classNames(css.Rows, className)}\n {...props}\n ref={ref}\n >\n {title && (\n <Text as=\"h3\" size=\"LabelMono\" priority=\"300\">\n {title}\n </Text>\n )}\n <Box direction=\"Column\">\n {rows.map((row, index) => (\n <Card\n key={row.id}\n firstChild={index === 0}\n lastChild={index === rows.length - 1}\n mergeBorder\n >\n {row.content}\n </Card>\n ))}\n </Box>\n </Box>\n )\n);\n","import React, { ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Box } from \"../box\";\nimport { Text } from \"../text\";\nimport * as css from \"./ListRow.css\";\n\nexport type ListRowProps = {\n before?: ReactNode;\n title: ReactNode;\n description?: ReactNode;\n badge?: ReactNode;\n /** Use a non-interactive root when this slot contains its own actions. */\n after?: ReactNode;\n};\n/** Content shared by member, room and settings lists; no app data or selection state. */\nexport const ListRow = as<\"div\", ListRowProps>(\n ({ as: AsRow = \"div\", className, before, title, description, badge, after, ...props }, ref) => (\n <Box\n as={AsRow}\n alignItems=\"Center\"\n gap=\"300\"\n className={classNames(css.Row, className)}\n {...props}\n ref={ref}\n >\n {before && (\n <Box as=\"span\" shrink=\"No\" alignItems=\"Center\">\n {before}\n </Box>\n )}\n <Box as=\"span\" grow=\"Yes\" direction=\"Column\" className={css.Content}>\n <Box as=\"span\" alignItems=\"Center\" gap=\"100\" className={css.Content}>\n <Text as=\"span\" size=\"T300\" truncate>\n {title}\n </Text>\n {badge}\n </Box>\n {description && (\n <Text as=\"span\" size=\"T200\" priority=\"300\" truncate>\n {description}\n </Text>\n )}\n </Box>\n {after && (\n <Box as=\"span\" shrink=\"No\" alignItems=\"Center\" gap=\"100\">\n {after}\n </Box>\n )}\n </Box>\n )\n);\n","import React, { ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Badge } from \"../badge\";\nimport { Box } from \"../box\";\nimport { ContainerColor, MainColor } from \"../types\";\nimport * as css from \"./Presence.css\";\n\nexport type Presence = \"online\" | \"unavailable\" | \"offline\";\nconst variants: Record<Presence, MainColor> = {\n online: \"Success\",\n unavailable: \"Warning\",\n offline: \"Secondary\",\n};\nconst labels: Record<Presence, string> = {\n online: \"Online\",\n unavailable: \"Unavailable\",\n offline: \"Offline\",\n};\nexport type PresenceBadgeProps = {\n presence: Presence;\n status?: string;\n /** Localised presence label. Status text is appended when supplied. */\n label?: string;\n size?: \"200\" | \"300\" | \"400\" | \"500\";\n variantOverride?: MainColor;\n glyph?: ReactNode;\n};\n/** A named image, with no tooltip id or network/state dependency. */\nexport const PresenceBadge = as<\"span\", PresenceBadgeProps>(\n (\n {\n as: AsBadge = \"span\",\n presence,\n status,\n label,\n size = \"300\",\n variantOverride,\n glyph,\n ...props\n },\n ref\n ) => {\n const description = [label ?? labels[presence], status].filter(Boolean).join(\" · \");\n return (\n <Badge\n as={AsBadge}\n ref={ref}\n role=\"img\"\n aria-label={description}\n title={description}\n size={size}\n variant={variantOverride ?? variants[presence]}\n fill={presence === \"offline\" ? \"Soft\" : \"Solid\"}\n {...props}\n >\n {glyph && <span aria-hidden=\"true\">{glyph}</span>}\n </Badge>\n );\n }\n);\nexport type AvatarPresenceProps = {\n badge?: ReactNode;\n variant?: ContainerColor;\n animate?: boolean;\n};\nexport const AvatarPresence = as<\"span\", AvatarPresenceProps>(\n (\n { as: AsPresence = \"span\", className, badge, variant = \"Surface\", animate, children, ...props },\n ref\n ) => (\n <Box as={AsPresence} className={classNames(css.AvatarPresence, className)} {...props} ref={ref}>\n {children}\n {badge && <span className={css.BadgeFrame({ variant, animate })}>{badge}</span>}\n </Box>\n )\n);\n","import React, { ComponentProps, ReactNode, useState } from \"react\";\nimport classNames from \"classnames\";\nimport { Avatar, AvatarFallback, AvatarImage } from \"../avatar\";\nimport { AgentGlyph, AgentNameTag, AgentMarkState } from \"../agent-tag\";\nimport { Badge } from \"../badge\";\nimport { Box } from \"../box\";\nimport { Card } from \"../card\";\nimport { ListRow } from \"../list-row\";\nimport { Text } from \"../text\";\nimport { Icon, Icons } from \"../icon\";\nimport { AvatarPresence, PresenceBadge } from \"../presence\";\nimport { MainColor } from \"../types\";\nimport * as css from \"./Identity.css\";\n\nexport type IdentityKind = \"person\" | \"agent\" | \"room\";\nexport type IdentityAvatarProps = {\n name: string;\n kind?: IdentityKind;\n src?: string;\n initial?: string;\n fallback?: ReactNode;\n size?: ComponentProps<typeof Avatar>[\"size\"];\n radii?: ComponentProps<typeof Avatar>[\"radii\"];\n busy?: boolean;\n};\nconst glyphSize = { \"200\": 14, \"300\": 18, \"400\": 22, \"500\": 30 };\nexport const IdentityAvatar = ({\n name,\n kind = \"person\",\n src,\n initial,\n fallback,\n size = \"300\",\n radii,\n busy,\n}: IdentityAvatarProps) => {\n const [failedSrc, setFailedSrc] = useState<string>();\n const shape = radii ?? (kind === \"person\" ? \"Pill\" : \"500\");\n let defaultFallback: ReactNode = (\n <Text as=\"span\" size={size === \"200\" ? \"L400\" : \"H6\"}>\n {initial ?? (name.trim().charAt(0) || \"?\")}\n </Text>\n );\n if (kind === \"agent\") defaultFallback = <AgentGlyph size={glyphSize[size]} />;\n if (kind === \"room\") defaultFallback = <Icon src={Icons.Hash} size=\"200\" />;\n return (\n <Avatar\n size={size}\n radii={shape}\n activity={busy ? \"Busy\" : \"Idle\"}\n title={name}\n role=\"img\"\n aria-label={name}\n className={css.Avatar}\n >\n {src && src !== failedSrc ? (\n <AvatarImage\n key={src}\n src={src}\n alt=\"\"\n draggable={false}\n onError={() => setFailedSrc(src)}\n />\n ) : (\n <AvatarFallback aria-hidden=\"true\">{fallback ?? defaultFallback}</AvatarFallback>\n )}\n </Avatar>\n );\n};\nexport type AgentVisualState = AgentMarkState;\nexport const agentStatePresentation: Record<\n AgentVisualState,\n { label: string; variant: MainColor; busy: boolean }\n> = {\n working: { label: \"Working\", variant: \"Primary\", busy: true },\n thinking: { label: \"Thinking\", variant: \"Primary\", busy: true },\n available: { label: \"Available\", variant: \"Success\", busy: false },\n needs_attention: { label: \"Needs attention\", variant: \"Warning\", busy: false },\n offline: { label: \"Offline\", variant: \"Secondary\", busy: false },\n warning: { label: \"Warning\", variant: \"Warning\", busy: false },\n error: { label: \"Error\", variant: \"Critical\", busy: false },\n};\nexport type AgentAvatarProps = Omit<IdentityAvatarProps, \"kind\" | \"busy\"> & {\n state?: AgentVisualState;\n statusLabel?: string;\n};\nexport const AgentAvatar = ({ state, statusLabel, ...props }: AgentAvatarProps) => {\n const presentation = state && agentStatePresentation[state];\n return (\n <AvatarPresence\n badge={\n presentation && (\n <PresenceBadge\n presence={state === \"offline\" ? \"offline\" : \"online\"}\n variantOverride={presentation.variant}\n label={statusLabel ?? presentation.label}\n />\n )\n }\n >\n <IdentityAvatar {...props} kind=\"agent\" busy={presentation?.busy} />\n </AvatarPresence>\n );\n};\nexport type WorkerCorner = \"tl\" | \"tr\" | \"bl\" | \"br\";\nexport type WorkerShape = \"corner\" | \"star\";\nexport type WorkerAvatarProps = {\n name: string;\n color: string;\n corner?: WorkerCorner;\n shape?: WorkerShape;\n children: ReactNode;\n};\n/** Colour, name and placement have already been resolved by the caller. */\nexport const WorkerAvatar = ({\n name,\n color,\n corner = \"tr\",\n shape = \"corner\",\n children,\n}: WorkerAvatarProps) => (\n <span className={css.Worker} role=\"img\" aria-label={name}>\n <span aria-hidden=\"true\">{children}</span>\n <span\n aria-hidden=\"true\"\n className={classNames(css.Decorator({ corner, shape }), css.WorkerSeam)}\n />\n <span\n aria-hidden=\"true\"\n className={css.Decorator({ corner, shape })}\n style={{ backgroundColor: color }}\n />\n </span>\n);\nexport type MemberTileProps = {\n name: string;\n description?: ReactNode;\n avatar?: ReactNode;\n agent?: boolean;\n after?: ReactNode;\n};\nexport const MemberTile = ({ name, description, avatar, agent, after }: MemberTileProps) => (\n <ListRow\n before={avatar ?? <IdentityAvatar name={name} kind={agent ? \"agent\" : \"person\"} />}\n title={name}\n description={description}\n badge={agent ? <AgentNameTag /> : undefined}\n after={after}\n />\n);\nexport type AgentCardProps = {\n name: string;\n src?: string;\n state?: AgentVisualState;\n statusLabel?: string;\n description?: ReactNode;\n identifier?: string;\n actions?: ReactNode;\n children?: ReactNode;\n};\nexport const AgentCard = ({\n name,\n src,\n state,\n statusLabel,\n description,\n identifier,\n actions,\n children,\n}: AgentCardProps) => {\n const presentation = state && agentStatePresentation[state];\n return (\n <Card>\n <MemberTile\n name={name}\n agent\n description={identifier}\n avatar={\n <AgentAvatar name={name} src={src} state={state} statusLabel={statusLabel} size=\"400\" />\n }\n after={\n presentation && (\n <Badge variant={presentation.variant}>\n <Text as=\"span\" size=\"L400\">\n {statusLabel ?? presentation.label}\n </Text>\n </Badge>\n )\n }\n />\n {description && (\n <Text size=\"T300\" priority=\"300\">\n {description}\n </Text>\n )}\n {children}\n {actions && (\n <Box gap=\"200\" wrap=\"Wrap\">\n {actions}\n </Box>\n )}\n </Card>\n );\n};\nexport const RoomAvatar = (props: Omit<IdentityAvatarProps, \"kind\">) => (\n <IdentityAvatar {...props} kind=\"room\" />\n);\n","import React from \"react\";\nimport { IdentityAvatar, IdentityAvatarProps } from \"../identity/Identity\";\n\nexport type PersonAvatarProps = Omit<IdentityAvatarProps, \"kind\" | \"fallback\" | \"busy\"> & {\n agent?: boolean;\n};\n/** Legacy agent avatars remain glyph-only; AgentAvatar also accepts uploaded photos. */\nexport const PersonAvatar = ({ agent, src, radii, ...props }: PersonAvatarProps) => (\n <IdentityAvatar\n {...props}\n kind={agent ? \"agent\" : \"person\"}\n src={agent ? undefined : src}\n radii={radii ?? (agent ? \"400\" : \"Pill\")}\n />\n);\n","import React, { forwardRef, SelectHTMLAttributes } from \"react\";\nimport classNames from \"classnames\";\nimport { Icon, Icons } from \"../icon\";\nimport * as inputCss from \"../input/Input.css\";\nimport * as css from \"./Select.css\";\n\nexport type SelectOption = { value: string; label: string; disabled?: boolean };\nexport type SelectProps = Omit<SelectHTMLAttributes<HTMLSelectElement>, \"size\" | \"children\"> &\n inputCss.InputVariants & {\n options: SelectOption[];\n onValueChange?: (value: string) => void;\n };\n\n/** A native choice field: keyboard navigation, touch picker and form submission stay native. */\nexport const Select = forwardRef<HTMLSelectElement, SelectProps>(\n (\n {\n options,\n onValueChange,\n onChange,\n className,\n style,\n variant,\n size,\n radii,\n outlined,\n ...props\n },\n ref\n ) => (\n <div\n className={classNames(\n inputCss.Input({ variant, size, radii, outlined }),\n css.Root,\n className\n )}\n style={style}\n data-disabled={props.disabled || undefined}\n >\n <select\n {...props}\n ref={ref}\n className={classNames(inputCss.InputInput, css.Select)}\n onChange={(event) => {\n onChange?.(event);\n onValueChange?.(event.target.value);\n }}\n >\n {options.map(({ value, label, disabled }) => (\n <option key={value} value={value} disabled={disabled}>\n {label}\n </option>\n ))}\n </select>\n <Icon src={Icons.ChevronBottom} size=\"100\" className={css.Arrow} />\n </div>\n )\n);\n","import { KeyboardEvent } from \"react\";\n\n/** Move among enabled buttons while leaving Tab to the browser. */\nexport const moveFocus = (event: KeyboardEvent<HTMLElement>): HTMLButtonElement | undefined => {\n const buttons = Array.from(\n event.currentTarget.querySelectorAll<HTMLButtonElement>(\"button:not(:disabled)\")\n );\n if (!buttons.length) return undefined;\n const current = buttons.indexOf(\n event.currentTarget.ownerDocument.activeElement as HTMLButtonElement\n );\n const rtl = getComputedStyle(event.currentTarget).direction === \"rtl\";\n let next: number;\n if (event.key === \"Home\") next = 0;\n else if (event.key === \"End\") next = buttons.length - 1;\n else if (event.key === \"ArrowRight\")\n next = (current + (rtl ? -1 : 1) + buttons.length) % buttons.length;\n else if (event.key === \"ArrowLeft\")\n next = (current + (rtl ? 1 : -1) + buttons.length) % buttons.length;\n else return undefined;\n event.preventDefault();\n buttons[next].focus();\n return buttons[next];\n};\n","import React, { ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { moveFocus } from \"../../utils/rovingFocus\";\nimport * as css from \"./ButtonGroup.css\";\n\nexport type ButtonGroupOption = { value: string; label: ReactNode; disabled?: boolean };\nexport type ButtonGroupProps = {\n label: string;\n options: ButtonGroupOption[];\n value: string;\n onValueChange: (value: string) => void;\n disabled?: boolean;\n className?: string;\n};\n\n/** Connected single-choice controls. Use TabBar for navigation between tab panels. */\nexport const ButtonGroup = ({\n label,\n options,\n value,\n onValueChange,\n disabled,\n className,\n}: ButtonGroupProps) => {\n const selected = options.find((option) => option.value === value && !option.disabled);\n const tabValue = (selected ?? options.find((option) => !option.disabled))?.value;\n return (\n <div\n role=\"radiogroup\"\n tabIndex={-1}\n aria-label={label}\n aria-disabled={disabled || undefined}\n className={classNames(css.Group, className)}\n onKeyDown={(event) => {\n const button = moveFocus(event);\n if (button?.dataset.value !== undefined) onValueChange(button.dataset.value);\n }}\n >\n {options.map((option) => (\n <button\n key={option.value}\n type=\"button\"\n role=\"radio\"\n aria-checked={option.value === value}\n disabled={disabled || option.disabled}\n tabIndex={option.value === tabValue ? 0 : -1}\n data-value={option.value}\n className={css.Option}\n onClick={() => onValueChange(option.value)}\n >\n {option.label}\n </button>\n ))}\n </div>\n );\n};\n","import React, { ComponentProps, ReactNode } from \"react\";\nimport { Button } from \"../button\";\nimport { Icon, Icons } from \"../icon\";\nimport { MenuButton, MenuEntry } from \"../menu-button\";\nimport { Spinner } from \"../spinner\";\nimport { Text } from \"../text\";\nimport * as css from \"./SplitButton.css\";\n\nexport type SplitButtonProps = {\n children: ReactNode;\n onClick: ComponentProps<typeof Button>[\"onClick\"];\n entries: MenuEntry[];\n menuLabel: string;\n disabled?: boolean;\n /** Controlled: the consumer owns async work, errors and completion lifetime. */\n busy?: boolean;\n complete?: boolean;\n busyLabel?: string;\n completeLabel?: string;\n};\nexport const SplitButton = ({\n children,\n onClick,\n entries,\n menuLabel,\n disabled,\n busy,\n complete,\n busyLabel = \"Working\",\n completeLabel = \"Done\",\n}: SplitButtonProps) => {\n let content = complete ? completeLabel : children;\n let indicator = complete ? <Icon src={Icons.Check} size=\"100\" /> : undefined;\n if (busy) {\n content = busyLabel;\n indicator = <Spinner size=\"100\" shape=\"Morph\" className={css.Spinner} aria-hidden=\"true\" />;\n }\n return (\n <div className={css.Group}>\n <Button\n type=\"button\"\n className={css.Primary}\n variant=\"Primary\"\n disabled={disabled || busy}\n aria-busy={busy || undefined}\n onClick={onClick}\n before={indicator}\n >\n <Text as=\"span\" size=\"B400\">\n {content}\n </Text>\n </Button>\n <MenuButton\n className={css.More}\n label={menuLabel}\n icon={Icons.ChevronBottom}\n variant=\"Primary\"\n disabled={disabled || busy || entries.length === 0}\n entries={entries}\n />\n </div>\n );\n};\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport * as css from \"./WavyProgress.css\";\n\nexport type WavyProgressProps = {\n /** Omit for indeterminate work. Values are clamped to the range. */\n value?: number;\n min?: number;\n max?: number;\n};\nexport const WavyProgress = as<\"div\", WavyProgressProps>(\n ({ as: Component = \"div\", value, min = 0, max = 100, className, ...props }, ref) => {\n const lower = Number.isFinite(min) ? min : 0;\n const upper = Number.isFinite(max) && max > lower ? max : lower + 100;\n const current =\n value !== undefined && Number.isFinite(value)\n ? Math.min(upper, Math.max(lower, value))\n : undefined;\n const progress = current === undefined ? 100 : ((current - lower) / (upper - lower)) * 100;\n return (\n <Component\n {...props}\n ref={ref}\n role=\"progressbar\"\n aria-valuemin={lower}\n aria-valuemax={upper}\n aria-valuenow={current}\n className={classNames(css.Track, className)}\n >\n <span className={css.Fill} style={{ width: `${progress}%` }}>\n <span className={css.Wave} />\n </span>\n </Component>\n );\n }\n);\n","import React, { ComponentProps, useState } from \"react\";\nimport { Icon } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { moveFocus } from \"../../utils/rovingFocus\";\nimport * as css from \"./FloatingToolbar.css\";\n\nexport type ToolbarAction = {\n id: string;\n label: string;\n icon: ComponentProps<typeof Icon>[\"src\"];\n onClick: () => void;\n disabled?: boolean;\n};\nexport type FloatingToolbarProps = { label: string; actions: ToolbarAction[] };\nexport const FloatingToolbar = ({ label, actions }: FloatingToolbarProps) => {\n const [focused, setFocused] = useState<string>();\n const tabId =\n actions.find((action) => action.id === focused && !action.disabled)?.id ??\n actions.find((action) => !action.disabled)?.id;\n return (\n <div\n role=\"toolbar\"\n aria-label={label}\n aria-orientation=\"horizontal\"\n className={css.Toolbar}\n onKeyDown={(event) => {\n moveFocus(event);\n }}\n >\n {actions.map((action) => (\n <IconButton\n key={action.id}\n type=\"button\"\n variant=\"Surface\"\n size=\"400\"\n aria-label={action.label}\n disabled={action.disabled}\n tabIndex={action.id === tabId ? 0 : -1}\n onFocus={() => setFocused(action.id)}\n onClick={action.onClick}\n >\n <Icon src={action.icon} size=\"200\" />\n </IconButton>\n ))}\n </div>\n );\n};\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport * as css from \"./Motion.css\";\n\n/** Runs once when mounted. Change the React key to replay; delay is in milliseconds. */\nexport const Enter = as<\"div\", { delay?: number }>(\n ({ as: Component = \"div\", delay = 0, className, style, ...props }, ref) => (\n <Component\n {...props}\n ref={ref}\n className={classNames(css.Enter, className)}\n style={{ animationDelay: `${Number.isFinite(delay) ? Math.max(0, delay) : 0}ms`, ...style }}\n />\n )\n);\n/** An awaiting-decision surface. Reduced motion keeps a steady inset ring. */\nexport const Attention = as<\"div\", { active?: boolean }>(\n ({ as: Component = \"div\", active = true, className, ...props }, ref) => (\n <Component\n {...props}\n ref={ref}\n className={classNames(css.AttentionFrame, active && css.Attention, className)}\n />\n )\n);\n","import React, { ReactNode, useEffect, useRef } from \"react\";\nimport { Box } from \"../box\";\nimport { Icon, Icons } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { MenuItem } from \"../menu\";\nimport { Page, PageContent, PageHeader, PageRoot } from \"../page\";\nimport { Header } from \"../header\";\nimport { Scroll } from \"../scroll\";\nimport { Text } from \"../text\";\nimport * as css from \"./SettingsShell.css\";\n\nexport type NavSection = { id: string; label: string; icon?: ReactNode; disabled?: boolean };\nexport type SectionNavProps = {\n header: ReactNode;\n sections: NavSection[];\n active: string;\n onSelect?: (id: string) => void;\n onClose?: () => void;\n label?: string;\n};\nexport const SectionNav = ({\n header,\n sections,\n active,\n onSelect,\n onClose,\n label = \"Settings sections\",\n}: SectionNavProps) => (\n <Box as=\"nav\" aria-label={label} direction=\"Column\" className={css.Navigation}>\n <Header size=\"500\" variant=\"Background\" className={css.NavHeader}>\n <Box grow=\"Yes\" alignItems=\"Center\" gap=\"200\">\n {header}\n </Box>\n {onClose && (\n <IconButton\n type=\"button\"\n variant=\"Background\"\n fill=\"None\"\n size=\"300\"\n aria-label=\"Close\"\n onClick={onClose}\n >\n <Icon src={Icons.Cross} size=\"100\" />\n </IconButton>\n )}\n </Header>\n <Scroll variant=\"Background\" size=\"300\" visibility=\"Hover\" hideTrack>\n <Box direction=\"Column\" gap=\"50\" className={css.NavItems}>\n {sections.map((item) => (\n <MenuItem\n key={item.id}\n type=\"button\"\n className={css.NavItem}\n size=\"400\"\n fill=\"None\"\n variant={item.id === active ? \"Primary\" : \"Background\"}\n aria-current={item.id === active ? \"page\" : undefined}\n disabled={item.disabled}\n before={item.icon}\n onClick={() => onSelect?.(item.id)}\n >\n <Text size=\"T300\" truncate>\n {item.label}\n </Text>\n </MenuItem>\n ))}\n </Box>\n </Scroll>\n </Box>\n);\n\nexport type SettingsPageProps = {\n title: string;\n children: ReactNode;\n after?: ReactNode;\n onBack?: () => void;\n};\nexport const SettingsPage = ({ title, children, after, onBack }: SettingsPageProps) => (\n <Page>\n <PageHeader outlined>\n <Box grow=\"Yes\" alignItems=\"Center\" gap=\"200\">\n {onBack && (\n <IconButton\n type=\"button\"\n variant=\"Background\"\n fill=\"None\"\n size=\"300\"\n aria-label=\"Back\"\n onClick={onBack}\n >\n <Icon src={Icons.ArrowLeft} size=\"100\" />\n </IconButton>\n )}\n <Text as=\"h1\" size=\"D400\" tabIndex={-1} data-settings-heading truncate>\n {title}\n </Text>\n </Box>\n {after}\n </PageHeader>\n <Scroll variant=\"Surface\" direction=\"Vertical\" size=\"300\" visibility=\"Hover\" hideTrack>\n <PageContent>\n <Box direction=\"Column\" gap=\"500\" className={css.Content}>\n {children}\n </Box>\n </PageContent>\n </Scroll>\n </Page>\n);\n\nexport type SettingsShellProps = SettingsPageProps & {\n nav: ReactNode;\n /** The consuming layout decides when the two columns no longer fit. */\n compact?: boolean;\n /** Controlled mobile navigation; routing and history stay with the consumer. */\n navigationVisible?: boolean;\n};\nexport const SettingsShell = ({\n nav,\n compact,\n navigationVisible,\n ...pageProps\n}: SettingsShellProps) => {\n const ref = useRef<HTMLDivElement>(null);\n const previousNavigation = useRef(navigationVisible);\n useEffect(() => {\n const changed = previousNavigation.current !== navigationVisible;\n previousNavigation.current = navigationVisible;\n if (!compact || !changed) return;\n const target = navigationVisible\n ? ref.current?.querySelector<HTMLElement>('[aria-current=\"page\"]:not(:disabled)') ??\n ref.current?.querySelector<HTMLElement>(\"button:not(:disabled)\")\n : ref.current?.querySelector<HTMLElement>(\"[data-settings-heading]\");\n target?.focus();\n }, [compact, navigationVisible]);\n let content = <SettingsPage {...pageProps} />;\n if (compact && navigationVisible) content = <Box className={css.NarrowNavigation}>{nav}</Box>;\n else if (!compact)\n content = (\n <PageRoot nav={nav}>\n <SettingsPage {...pageProps} onBack={undefined} />\n </PageRoot>\n );\n return (\n <Box grow=\"Yes\" ref={ref}>\n {content}\n </Box>\n );\n};\n","import React, { ComponentProps, ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Box } from \"../box\";\nimport { Text } from \"../text\";\nimport { ListRow, ListRowProps } from \"../list-row\";\nimport * as css from \"./Nav.css\";\n\nexport const NavItem = as<\"div\", css.NavItemVariants & { highlight?: boolean; active?: boolean }>(\n ({ as: AsItem = \"div\", className, variant, radii, highlight, active, ...props }, ref) => (\n <AsItem\n className={classNames(css.NavItem({ variant, radii }), className)}\n data-highlight={highlight || undefined}\n data-active={active || undefined}\n {...props}\n ref={ref}\n />\n )\n);\n/** Polymorphic so routers can supply their own link without a library dependency. */\nexport const NavLink = as<\"a\">(({ as: AsLink = \"a\", className, ...props }, ref) => (\n <AsLink className={classNames(css.NavLink, className)} {...props} ref={ref} />\n));\nexport const NavButton = as<\"button\">(({ as: AsButton = \"button\", ...props }, ref) => (\n <NavLink as={AsButton} type={AsButton === \"button\" ? \"button\" : undefined} {...props} ref={ref} />\n));\nexport const NavItemContent = as<\"span\", ComponentProps<typeof Text>>(\n ({ as: AsContent = \"span\", className, ...props }, ref) => (\n <Text\n as={AsContent}\n size=\"T300\"\n truncate\n className={classNames(css.ItemContent, className)}\n {...props}\n ref={ref}\n />\n )\n);\nexport const NavItemOptions = as<\"div\", ComponentProps<typeof Box>>(\n ({ as: AsOptions = \"div\", className, ...props }, ref) => (\n <Box\n as={AsOptions}\n alignItems=\"Center\"\n gap=\"100\"\n className={classNames(css.Options, className)}\n {...props}\n ref={ref}\n />\n )\n);\nexport const NavCategory = as<\"section\", { title?: string; after?: ReactNode }>(\n ({ as: AsCategory = \"section\", title, after, children, className, ...props }, ref) => (\n <Box\n as={AsCategory}\n direction=\"Column\"\n gap=\"100\"\n aria-label={title}\n className={classNames(css.Category, className)}\n {...props}\n ref={ref}\n >\n {title && (\n <Box alignItems=\"Center\" gap=\"100\" className={css.CategoryHeader}>\n <Text as=\"h2\" size=\"LabelMono\" priority=\"300\">\n {title}\n </Text>\n {after}\n </Box>\n )}\n {children}\n </Box>\n )\n);\nexport type NavHeaderProps = { title: ReactNode; before?: ReactNode; after?: ReactNode };\nexport const NavHeader = ({ title, before, after }: NavHeaderProps) => (\n <>\n <Box grow=\"Yes\" alignItems=\"Center\" gap=\"200\" className={css.HeaderTitle}>\n {before}\n <Text as=\"h1\" size=\"H4\" truncate>\n {title}\n </Text>\n </Box>\n {after && (\n <Box shrink=\"No\" alignItems=\"Center\" gap=\"100\">\n {after}\n </Box>\n )}\n </>\n);\nexport type RoomListItemProps = Omit<ListRowProps, \"after\"> & {\n active?: boolean;\n unread?: boolean;\n /** Non-interactive status displayed inside the main action. */\n status?: ReactNode;\n /** Independent actions are siblings of the link/button, never nested inside it. */\n after?: ReactNode;\n};\nexport const RoomListItem = as<\"button\", RoomListItemProps>(\n (\n {\n as: AsItem = \"button\",\n title,\n description,\n before,\n badge,\n status,\n after,\n active,\n unread,\n className,\n ...props\n },\n ref\n ) => (\n <NavItem active={active} highlight={unread} className={className}>\n <NavButton as={AsItem} aria-current={active ? \"page\" : undefined} {...props} ref={ref}>\n <ListRow\n as=\"span\"\n before={before}\n title={title}\n description={description}\n badge={badge}\n after={status}\n />\n </NavButton>\n {after && <NavItemOptions>{after}</NavItemOptions>}\n </NavItem>\n )\n);\n","import React, { ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Badge } from \"../badge\";\nimport { Box } from \"../box\";\nimport { Text } from \"../text\";\nimport * as css from \"./UnreadBadge.css\";\n\nexport type UnreadBadgeProps = {\n count: number;\n /** When supplied, show mentions as a number and plain unread as a dot. */\n mentionCount?: number;\n highlight?: boolean;\n /** Override for localised accessible text. */\n label?: string;\n /** Override visible formatting, without losing the exact accessible count. */\n formatCount?: (count: number) => ReactNode;\n};\nconst safeCount = (count: number) => (Number.isFinite(count) ? Math.max(0, Math.floor(count)) : 0);\nexport const UnreadBadge = as<\"span\", UnreadBadgeProps>(\n (\n {\n as: AsBadge = \"span\",\n count,\n mentionCount,\n highlight,\n label,\n formatCount,\n className,\n ...props\n },\n ref\n ) => {\n const unread = safeCount(count);\n const shown = safeCount(mentionCount ?? count);\n const needsYou = mentionCount === undefined ? highlight : shown > 0;\n const noun = mentionCount === undefined ? \"message\" : \"mention\";\n let accessible = \"Unread messages\";\n if (unread > 0) accessible = `${unread} unread ${unread === 1 ? \"message\" : \"messages\"}`;\n if (shown > 0) accessible = `${shown} unread ${noun}${shown === 1 ? \"\" : \"s\"}`;\n const formatted = shown > 99 ? \"99+\" : shown;\n return (\n <Badge\n as={AsBadge}\n {...(String(AsBadge) === \"button\" ? { type: \"button\" as const } : {})}\n role={AsBadge === \"span\" ? \"img\" : undefined}\n aria-label={label ?? accessible}\n variant={needsYou ? \"Critical\" : \"Success\"}\n size={shown > 0 ? \"400\" : \"200\"}\n fill=\"Solid\"\n outlined={false}\n className={classNames(css.UnreadBadge, className)}\n {...props}\n ref={ref}\n >\n {shown > 0 && (\n <Text as=\"span\" size=\"L400\" aria-hidden=\"true\">\n {formatCount ? formatCount(shown) : formatted}\n </Text>\n )}\n </Badge>\n );\n }\n);\nexport const UnreadBadgeCenter = as<\"span\">(\n ({ as: AsCenter = \"span\", className, ...props }, ref) => (\n <Box\n as={AsCenter}\n shrink=\"No\"\n alignItems=\"Center\"\n justifyContent=\"Center\"\n className={classNames(css.Center, className)}\n {...props}\n ref={ref}\n />\n )\n);\n","import React, { ComponentProps, forwardRef, useState } from \"react\";\nimport { Icon, Icons } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { Input } from \"../input\";\n\nexport type PasswordInputProps = Omit<ComponentProps<typeof Input>, \"type\"> & {\n revealLabel?: string;\n concealLabel?: string;\n};\nexport const PasswordInput = forwardRef<HTMLInputElement, PasswordInputProps>(\n (\n {\n variant = \"Background\",\n size = \"400\",\n disabled,\n after,\n revealLabel = \"Show password\",\n concealLabel = \"Hide password\",\n ...props\n },\n ref\n ) => {\n const [visible, setVisible] = useState(false);\n return (\n <Input\n {...props}\n ref={ref}\n variant={variant}\n size={size}\n disabled={disabled}\n type={visible ? \"text\" : \"password\"}\n after={\n <>\n {after}\n <IconButton\n type=\"button\"\n size=\"300\"\n variant={variant}\n fill=\"None\"\n disabled={disabled}\n aria-label={visible ? concealLabel : revealLabel}\n aria-pressed={visible}\n onClick={() => setVisible(!visible)}\n >\n <Icon src={visible ? Icons.Eye : Icons.EyeBlind} size=\"100\" />\n </IconButton>\n </>\n }\n />\n );\n }\n);\n","import React, { ComponentProps, ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Box } from \"../box\";\nimport { Chip } from \"../chip\";\nimport { Icon, Icons } from \"../icon\";\nimport { Scroll } from \"../scroll\";\nimport { Text } from \"../text\";\nimport * as css from \"./Timeline.css\";\n\nexport type MessageRowProps = {\n avatar?: ReactNode;\n author?: ReactNode;\n header?: ReactNode;\n reserveAvatarSpace?: boolean;\n inset?: boolean;\n time?: ReactNode;\n dateTime?: string;\n highlight?: boolean;\n after?: ReactNode;\n};\n/** Presentation only: event lookup, body rendering, grouping and virtualisation stay outside. */\nexport const MessageRow = as<\"article\", MessageRowProps>(\n (\n {\n as: AsMessage = \"article\",\n className,\n avatar,\n author,\n header,\n reserveAvatarSpace = false,\n inset = true,\n time,\n dateTime,\n highlight,\n after,\n children,\n ...props\n },\n ref\n ) => (\n <Box\n as={AsMessage}\n gap=\"300\"\n alignItems=\"Start\"\n className={classNames(css.Message({ highlight, inset }), className)}\n {...props}\n ref={ref}\n >\n {(avatar || reserveAvatarSpace) && (\n <Box shrink=\"No\" className={reserveAvatarSpace ? css.AvatarSlot : undefined}>\n {avatar}\n </Box>\n )}\n <Box grow=\"Yes\" direction=\"Column\" gap=\"100\" className={css.Content}>\n {header ??\n ((author || time || after) && (\n <Box gap=\"200\" alignItems=\"Baseline\" justifyContent=\"SpaceBetween\" wrap=\"Wrap\">\n <Box className={css.Author}>{author}</Box>\n {time && (\n <Text\n as=\"time\"\n size=\"Metadata\"\n priority=\"300\"\n dateTime={dateTime}\n className={css.Time}\n >\n {time}\n </Text>\n )}\n {after}\n </Box>\n ))}\n {children}\n </Box>\n </Box>\n )\n);\nexport const Quote = as<\"blockquote\", { author: ReactNode }>(\n ({ as: AsQuote = \"blockquote\", className, author, children, ...props }, ref) => (\n <Box\n as={AsQuote}\n alignItems=\"Center\"\n gap=\"200\"\n className={classNames(css.Quote, className)}\n {...(String(AsQuote) === \"button\" ? { type: \"button\" as const } : {})}\n {...props}\n ref={ref}\n >\n <Icon src={Icons.ReplyArrow} size=\"50\" />\n <Box as=\"span\" direction=\"Column\" className={css.Content}>\n <Text as=\"span\" size=\"B300\" truncate>\n {author}\n </Text>\n <Text as=\"span\" size=\"T200\" priority=\"300\" truncate>\n {children}\n </Text>\n </Box>\n </Box>\n )\n);\nexport const ReactionGroup = as<\"div\">(({ className, ...props }, ref) => (\n <Box\n role=\"group\"\n aria-label=\"Reactions\"\n gap=\"100\"\n wrap=\"Wrap\"\n className={classNames(css.Reactions, className)}\n {...props}\n ref={ref}\n />\n));\nexport const ReactionButton = as<\"button\", { count: number; selected?: boolean }>(\n ({ count, selected = false, children, ...props }, ref) => (\n <Chip\n as=\"button\"\n type=\"button\"\n size=\"400\"\n fill=\"Soft\"\n variant={selected ? \"Primary\" : \"Secondary\"}\n outlined={selected}\n aria-pressed={selected}\n {...props}\n ref={ref}\n >\n {children}\n <Text as=\"span\" size=\"Metadata\">\n {count}\n </Text>\n </Chip>\n )\n);\nexport type ReactionItem = {\n key: string;\n label?: string;\n count: number;\n selected?: boolean;\n disabled?: boolean;\n};\nexport type ReactionRowProps = {\n reactions: ReactionItem[];\n onToggle?: (key: string) => void;\n onAdd?: () => void;\n addLabel?: string;\n label?: string;\n};\nexport const ReactionRow = ({\n reactions,\n onToggle,\n onAdd,\n addLabel = \"Add reaction\",\n label = \"Reactions\",\n}: ReactionRowProps) => (\n <ReactionGroup aria-label={label}>\n {reactions.map((reaction) => (\n <ReactionButton\n key={reaction.key}\n count={reaction.count}\n selected={reaction.selected}\n aria-label={`${reaction.label ?? reaction.key} ${reaction.count}`}\n disabled={reaction.disabled || !onToggle}\n onClick={() => onToggle?.(reaction.key)}\n >\n <Text as=\"span\" size=\"T200\">\n {reaction.key}\n </Text>\n </ReactionButton>\n ))}\n {onAdd && (\n <Chip\n as=\"button\"\n type=\"button\"\n variant=\"Secondary\"\n fill=\"None\"\n size=\"400\"\n aria-label={addLabel}\n onClick={onAdd}\n >\n <Icon src={Icons.SmilePlus} size=\"50\" />\n </Chip>\n )}\n </ReactionGroup>\n);\nexport const DayDivider = as<\"div\", { label: string }>(\n ({ as: AsDivider = \"div\", className, label, ...props }, ref) => (\n <Box\n as={AsDivider}\n role=\"separator\"\n aria-label={label}\n alignItems=\"Center\"\n gap=\"300\"\n className={classNames(css.Divider, className)}\n {...props}\n ref={ref}\n >\n <span className={css.Rule} aria-hidden=\"true\" />\n <Text as=\"span\" size=\"LabelMono\" priority=\"300\">\n {label}\n </Text>\n <span className={css.Rule} aria-hidden=\"true\" />\n </Box>\n )\n);\nexport const UnreadMarker = as<\"div\", { label?: string }>(\n ({ as: AsMarker = \"div\", className, label = \"New messages\", ...props }, ref) => (\n <Box\n as={AsMarker}\n role=\"separator\"\n aria-label={label}\n alignItems=\"Center\"\n gap=\"300\"\n className={classNames(css.Unread, className)}\n {...props}\n ref={ref}\n >\n <span className={css.UnreadRule} aria-hidden=\"true\" />\n <Text as=\"span\" size=\"LabelMono\">\n {label}\n </Text>\n </Box>\n )\n);\n/** A scrolling frame; consumers choose live-region semantics and scroll/virtualisation policy. */\nexport const Timeline = as<\"div\", ComponentProps<typeof Scroll>>(\n ({ as: AsTimeline = \"div\", children, ...props }, ref) => (\n <Scroll\n as={AsTimeline}\n variant=\"Background\"\n direction=\"Vertical\"\n visibility=\"Hover\"\n hideTrack\n {...props}\n ref={ref}\n >\n <Box direction=\"Column\" gap=\"100\" className={css.Timeline}>\n {children}\n </Box>\n </Scroll>\n )\n);\n","import React, { ReactNode } from \"react\";\nimport { Card } from \"../card\";\nimport { Icon, Icons } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { ListRow } from \"../list-row\";\nimport * as css from \"./FileAttachment.css\";\n\nexport type FileAttachmentProps = {\n name: string;\n description?: ReactNode;\n /** Download/authentication logic is owned by the caller. No URL is inferred or fetched. */\n onDownload?: () => void;\n downloadLabel?: string;\n busy?: boolean;\n};\nexport const FileAttachment = ({\n name,\n description,\n onDownload,\n downloadLabel = `Download ${name}`,\n busy,\n}: FileAttachmentProps) => (\n <Card className={css.FileAttachment}>\n <ListRow\n title={name}\n description={description}\n before={<Icon src={Icons.File} size=\"200\" />}\n after={\n onDownload && (\n <IconButton\n type=\"button\"\n variant=\"SurfaceVariant\"\n size=\"300\"\n aria-label={downloadLabel}\n disabled={busy}\n aria-busy={busy || undefined}\n onClick={onDownload}\n >\n <Icon src={Icons.Download} size=\"100\" />\n </IconButton>\n )\n }\n />\n </Card>\n);\n","import React, { ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Badge } from \"../badge\";\nimport { Box } from \"../box\";\nimport { Header } from \"../header\";\nimport { Icon, Icons } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { Scroll } from \"../scroll\";\nimport { Text } from \"../text\";\nimport * as css from \"./Dock.css\";\n\nexport type DockProps = {\n title: string;\n /** Embedded apps own scrolling and fill the space below the header. */\n contentMode?: \"scroll\" | \"fill\";\n /** Fill a caller-sized pane instead of using the default 320px width. */\n stretch?: boolean;\n count?: number;\n after?: ReactNode;\n onClose?: () => void;\n closeLabel?: string;\n};\n/** A non-modal side panel. The caller owns opening it and returning focus on close. */\nexport const Dock = as<\"aside\", DockProps>(\n (\n {\n as: AsDock = \"aside\",\n className,\n title,\n contentMode = \"scroll\",\n stretch = false,\n count,\n after,\n onClose,\n closeLabel = \"Close\",\n children,\n ...props\n },\n ref\n ) => (\n <Box\n as={AsDock}\n aria-label={title}\n shrink=\"No\"\n direction=\"Column\"\n className={classNames(css.Dock, stretch && css.Stretch, className)}\n {...props}\n ref={ref}\n >\n <Header size=\"500\" variant=\"Surface\" className={css.Header}>\n <Box grow=\"Yes\" alignItems=\"Center\" gap=\"200\" className={css.Title}>\n <Text as=\"h2\" size=\"H5\" truncate>\n {title}\n </Text>\n {count !== undefined && (\n <Badge variant=\"Secondary\" fill=\"Soft\">\n <Text as=\"span\" size=\"L400\">\n {count}\n </Text>\n </Badge>\n )}\n </Box>\n {after}\n {onClose && (\n <IconButton\n type=\"button\"\n variant=\"Surface\"\n fill=\"None\"\n size=\"300\"\n aria-label={closeLabel}\n onClick={onClose}\n >\n <Icon src={Icons.Cross} size=\"100\" />\n </IconButton>\n )}\n </Header>\n {contentMode === \"fill\" ? (\n <Box direction=\"Column\" className={css.Fill}>\n {children}\n </Box>\n ) : (\n <Scroll variant=\"Surface\" direction=\"Vertical\">\n {children}\n </Scroll>\n )}\n </Box>\n )\n);\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Box } from \"../box\";\nimport * as css from \"./Skeleton.css\";\n\nexport const Skeleton = as<\"span\", css.SkeletonVariants>(\n ({ as: AsSkeleton = \"span\", className, shape, short, animate, ...props }, ref) => (\n <AsSkeleton\n aria-hidden=\"true\"\n className={classNames(css.Skeleton({ shape, short, animate }), className)}\n {...props}\n ref={ref}\n />\n )\n);\nexport const SkeletonRow = ({\n avatar = true,\n animate = true,\n}: {\n avatar?: boolean;\n animate?: boolean;\n}) => (\n <Box aria-hidden=\"true\" gap=\"300\" alignItems=\"Start\" className={css.Row}>\n {avatar && <Skeleton shape=\"avatar\" animate={animate} />}\n <Box grow=\"Yes\" direction=\"Column\" gap=\"200\">\n <Skeleton short animate={animate} />\n <Skeleton animate={animate} />\n </Box>\n </Box>\n);\n","import React, { ReactNode } from \"react\";\nimport { Attention } from \"../motion\";\nimport { Card } from \"../card\";\nimport { Box } from \"../box\";\nimport { Button } from \"../button\";\nimport { Spinner } from \"../spinner\";\nimport { Text } from \"../text\";\nimport { ContainerColor, MainColor } from \"../types\";\n\nexport type DecisionOption = { id: string; label: string; variant?: MainColor; disabled?: boolean };\nexport type HitlCardProps = {\n title: string;\n description?: ReactNode;\n options: DecisionOption[];\n onChoose: (id: string) => void;\n /** Parent owns the operation and supplies its result, including errors. */\n busy?: boolean;\n answer?: ReactNode;\n};\nexport const HitlCard = ({\n title,\n description,\n options,\n onChoose,\n busy,\n answer,\n}: HitlCardProps) => (\n <Attention active={!answer}>\n <Card variant={answer ? \"Success\" : \"Primary\"} aria-busy={busy || undefined}>\n <Text as=\"h3\" size=\"H4\">\n {title}\n </Text>\n {description && <Text size=\"T300\">{description}</Text>}\n {answer ? (\n <Text role=\"status\" size=\"T300\">\n {answer}\n </Text>\n ) : (\n <Box gap=\"200\" wrap=\"Wrap\" alignItems=\"Center\">\n {options.map((option, index) => (\n <Button\n key={option.id}\n type=\"button\"\n size=\"300\"\n variant={option.variant ?? \"Primary\"}\n fill={index === 0 ? \"Solid\" : \"Soft\"}\n disabled={busy || option.disabled}\n onClick={() => onChoose(option.id)}\n >\n {option.label}\n </Button>\n ))}\n {busy && <Spinner shape=\"Morph\" size=\"100\" />}\n </Box>\n )}\n </Card>\n </Attention>\n);\nexport type StatusCardProps = {\n title: string;\n description?: ReactNode;\n before?: ReactNode;\n variant?: ContainerColor;\n children?: ReactNode;\n};\nexport const StatusCard = ({\n title,\n description,\n before,\n variant = \"SurfaceVariant\",\n children,\n}: StatusCardProps) => (\n <Card variant={variant}>\n <Box alignItems=\"Center\" gap=\"200\">\n {before}\n <Text as=\"h3\" size=\"H5\">\n {title}\n </Text>\n </Box>\n {description && <Text size=\"T300\">{description}</Text>}\n {children}\n </Card>\n);\n","import React, { ReactNode } from \"react\";\nimport { Box } from \"../box\";\nimport { Icon, Icons, IconSrc } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { Spinner } from \"../spinner\";\nimport { Text } from \"../text\";\nimport * as css from \"./Composer.css\";\n\nexport type ComposerAction = {\n id: string;\n label: string;\n icon: IconSrc;\n onClick: () => void;\n pressed?: boolean;\n disabled?: boolean;\n};\nexport type ComposerState = { disabled: boolean; busy: boolean };\nexport type ComposerSlot = ReactNode | ((state: ComposerState) => ReactNode);\nexport type ComposerShellProps = {\n editor: (state: ComposerState) => ReactNode;\n /** Inline keeps leading controls, the editor and Send on one row. */\n layout?: \"stacked\" | \"inline\";\n /** Disable when the client already supplies the outer page spacing. */\n inset?: boolean;\n before?: ComposerSlot;\n after?: ComposerSlot;\n /** Extra content inside the surface, below the editing row. */\n bottom?: ComposerSlot;\n actions?: ComposerAction[];\n attachments?: ReactNode;\n context?: ReactNode;\n footer?: ReactNode;\n disabled?: boolean;\n busy?: boolean;\n canSend?: boolean;\n onSend: () => void;\n label?: string;\n sendLabel?: string;\n};\n/** The client owns the editor, drafts, key bindings, uploads and sending. */\nexport const ComposerShell = ({\n editor,\n layout = \"stacked\",\n inset = true,\n before,\n after,\n bottom,\n actions = [],\n attachments,\n context,\n footer,\n disabled = false,\n busy = false,\n canSend = true,\n onSend,\n label = \"Message composer\",\n sendLabel = \"Send\",\n}: ComposerShellProps) => {\n const state = { disabled: disabled || busy, busy };\n const slot = (content: ComposerSlot) =>\n typeof content === \"function\" ? content(state) : content;\n const leading =\n before || actions.length > 0 ? (\n <Box role=\"group\" aria-label={`${label} actions`} gap=\"100\" className={css.Controls}>\n {slot(before)}\n {actions.map((action) => (\n <IconButton\n key={action.id}\n type=\"button\"\n size=\"300\"\n variant=\"SurfaceVariant\"\n fill=\"None\"\n aria-label={action.label}\n title={action.label}\n aria-pressed={action.pressed}\n disabled={state.disabled || action.disabled}\n onClick={action.onClick}\n >\n <Icon src={action.icon} size=\"100\" />\n </IconButton>\n ))}\n </Box>\n ) : null;\n const trailing = (\n <Box gap=\"100\" className={css.Controls}>\n {slot(after)}\n <IconButton\n type=\"submit\"\n size=\"300\"\n aria-label={sendLabel}\n disabled={state.disabled || !canSend}\n >\n {busy ? (\n <Spinner size=\"100\" shape=\"Morph\" className={css.Sending} />\n ) : (\n <Icon src={Icons.Send} size=\"100\" />\n )}\n </IconButton>\n </Box>\n );\n return (\n <form\n aria-label={label}\n aria-busy={busy || undefined}\n className={css.Root({ inset })}\n onSubmit={(event) => {\n event.preventDefault();\n if (!state.disabled && canSend) onSend();\n }}\n >\n <fieldset disabled={state.disabled} className={css.Fieldset}>\n {context}\n {attachments && (\n <Box gap=\"200\" wrap=\"Wrap\">\n {attachments}\n </Box>\n )}\n <Box className={css.Row({ layout })}>\n {layout === \"inline\" && leading}\n <Box className={css.Editor}>{editor(state)}</Box>\n {layout === \"inline\" ? (\n trailing\n ) : (\n <Box alignItems=\"Center\" gap=\"200\" wrap=\"Wrap\" justifyContent=\"SpaceBetween\">\n {leading ?? <span />}\n {trailing}\n </Box>\n )}\n </Box>\n {slot(bottom)}\n </fieldset>\n {footer}\n </form>\n );\n};\nexport const ComposerPlaceholder = ({ children }: { children: ReactNode }) => (\n <Box className={css.Placeholder}>\n <Text size=\"T300\" priority=\"300\">\n {children}\n </Text>\n </Box>\n);\n","import React, { ComponentProps, forwardRef } from \"react\";\nimport { Icon, Icons } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { Text } from \"../text\";\nimport { Tooltip, TooltipProvider } from \"../tooltip\";\n\nexport type CallMicrophoneButtonProps = {\n microphone: boolean;\n onMicrophoneChange?: (enabled: boolean) => void;\n /** Resolved by the client's mute authority; a nonempty reason blocks activation. */\n heldLabel?: string | null;\n disabled?: boolean;\n size?: ComponentProps<typeof IconButton>[\"size\"];\n iconSize?: ComponentProps<typeof Icon>[\"size\"];\n muteLabel?: string;\n unmuteLabel?: string;\n};\n\nexport const CallMicrophoneButton = forwardRef<HTMLButtonElement, CallMicrophoneButtonProps>(\n (\n {\n microphone,\n onMicrophoneChange,\n heldLabel,\n disabled,\n size = \"300\",\n iconSize = \"100\",\n muteLabel = \"Mute microphone\",\n unmuteLabel = \"Unmute microphone\",\n },\n ref\n ) => {\n const held = Boolean(heldLabel);\n const label = heldLabel || (microphone ? muteLabel : unmuteLabel);\n const unavailable = Boolean(disabled || !onMicrophoneChange);\n const nativeDisabled = Boolean(disabled || (!onMicrophoneChange && !held));\n const selfVariant = microphone ? \"Surface\" : \"Warning\";\n return (\n <TooltipProvider\n position=\"Top\"\n tooltip={\n <Tooltip>\n <Text size=\"T200\">{label}</Text>\n </Tooltip>\n }\n >\n {(anchorRef) => (\n <IconButton\n ref={(element: HTMLButtonElement | null) => {\n anchorRef(element);\n if (typeof ref === \"function\") ref(element);\n // eslint-disable-next-line no-param-reassign\n else if (ref) ref.current = element;\n }}\n type=\"button\"\n size={size}\n variant={held ? \"Critical\" : selfVariant}\n fill={held || !microphone ? \"Soft\" : \"None\"}\n aria-label={label}\n aria-pressed={microphone}\n aria-disabled={held || unavailable || undefined}\n disabled={nativeDisabled}\n onClick={() => {\n if (!held && !unavailable) onMicrophoneChange?.(!microphone);\n }}\n >\n <Icon\n src={microphone ? Icons.Mic : Icons.MicMute}\n size={iconSize}\n filled={!microphone}\n />\n </IconButton>\n )}\n </TooltipProvider>\n );\n }\n);\n","import React, { ReactNode } from \"react\";\nimport { Box } from \"../box\";\nimport { Button } from \"../button\";\nimport { Card } from \"../card\";\nimport { Icon, Icons } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { Text } from \"../text\";\nimport * as css from \"./Call.css\";\nimport { CallMicrophoneButton } from \"./CallMicrophoneButton\";\n\nexport type CallControlLabels = {\n microphoneOn: string;\n microphoneOff: string;\n cameraOn: string;\n cameraOff: string;\n shareOn: string;\n shareOff: string;\n chat: string;\n leave: string;\n};\nconst defaults: CallControlLabels = {\n microphoneOn: \"Mute microphone\",\n microphoneOff: \"Unmute microphone\",\n cameraOn: \"Stop camera\",\n cameraOff: \"Start camera\",\n shareOn: \"Stop sharing\",\n shareOff: \"Share screen\",\n chat: \"Open chat\",\n leave: \"Leave call\",\n};\nexport type CallControlsProps = {\n microphone: boolean;\n microphoneHeldLabel?: string | null;\n camera?: boolean;\n sharing?: boolean;\n disabled?: boolean;\n compact?: boolean;\n onMicrophoneChange?: (enabled: boolean) => void;\n onCameraChange?: (enabled: boolean) => void;\n onSharingChange?: (enabled: boolean) => void;\n onChat?: () => void;\n onLeave: () => void;\n before?: ReactNode;\n menu?: ReactNode;\n labels?: Partial<CallControlLabels>;\n};\nexport const CallControls = ({\n microphone,\n microphoneHeldLabel,\n camera = false,\n sharing = false,\n disabled,\n compact,\n onMicrophoneChange,\n onCameraChange,\n onSharingChange,\n onChat,\n onLeave,\n before,\n menu,\n labels,\n}: CallControlsProps) => {\n const names = { ...defaults, ...labels };\n return (\n <Box\n role=\"group\"\n aria-label=\"Call controls\"\n alignItems=\"Center\"\n gap=\"100\"\n wrap=\"Wrap\"\n className={css.Controls({ compact })}\n >\n {before}\n <CallMicrophoneButton\n microphone={microphone}\n heldLabel={microphoneHeldLabel}\n disabled={disabled}\n onMicrophoneChange={onMicrophoneChange}\n muteLabel={names.microphoneOn}\n unmuteLabel={names.microphoneOff}\n />\n <IconButton\n type=\"button\"\n size=\"300\"\n variant={camera ? \"Primary\" : \"Surface\"}\n fill={camera ? \"Soft\" : \"None\"}\n aria-label={camera ? names.cameraOn : names.cameraOff}\n aria-pressed={camera}\n disabled={disabled || !onCameraChange}\n onClick={() => onCameraChange?.(!camera)}\n >\n <Icon src={camera ? Icons.VideoCamera : Icons.VideoCameraMute} size=\"100\" />\n </IconButton>\n <IconButton\n type=\"button\"\n size=\"300\"\n variant={sharing ? \"Primary\" : \"Surface\"}\n fill={sharing ? \"Soft\" : \"None\"}\n aria-label={sharing ? names.shareOn : names.shareOff}\n aria-pressed={sharing}\n disabled={disabled || !onSharingChange}\n onClick={() => onSharingChange?.(!sharing)}\n >\n <Icon src={Icons.ScreenShare} size=\"100\" />\n </IconButton>\n {onChat && (\n <IconButton\n type=\"button\"\n size=\"300\"\n variant=\"Surface\"\n fill=\"None\"\n aria-label={names.chat}\n onClick={onChat}\n disabled={disabled}\n >\n <Icon src={Icons.Message} size=\"100\" />\n </IconButton>\n )}\n {menu}\n <Button\n type=\"button\"\n variant=\"Critical\"\n size=\"300\"\n onClick={onLeave}\n before={<Icon src={Icons.PhoneDown} size=\"100\" />}\n >\n {names.leave}\n </Button>\n </Box>\n );\n};\nexport type CallStatusStripProps = {\n status: ReactNode;\n room: ReactNode;\n detail?: ReactNode;\n members?: ReactNode;\n actions?: ReactNode;\n compact?: boolean;\n};\nexport const CallStatusStrip = ({\n status,\n room,\n detail,\n members,\n actions,\n compact,\n}: CallStatusStripProps) => (\n <Box\n direction={compact ? \"Column\" : \"Row\"}\n alignItems={compact ? \"Start\" : \"Center\"}\n gap=\"200\"\n wrap=\"Wrap\"\n className={css.Strip}\n >\n <Box alignItems=\"Center\" gap=\"200\" wrap=\"Wrap\">\n <Box role=\"status\">{status}</Box>\n {room}\n </Box>\n {detail && (\n <Text size=\"T200\" priority=\"300\">\n {detail}\n </Text>\n )}\n {members}\n {actions && <Box className={css.StripActions}>{actions}</Box>}\n </Box>\n);\nexport type CallMemberCardProps = {\n name: string;\n avatar: ReactNode;\n media?: ReactNode;\n speaking?: boolean;\n muted?: boolean;\n status?: ReactNode;\n};\nexport const CallMemberCard = ({\n name,\n avatar,\n media,\n speaking,\n muted,\n status,\n}: CallMemberCardProps) => (\n <Card className={css.Member({ speaking })}>\n {media && <Box className={css.Media}>{media}</Box>}\n <Box\n direction=\"Column\"\n alignItems=\"Center\"\n justifyContent=\"Center\"\n gap=\"200\"\n className={css.MemberContent}\n >\n {!media && avatar}\n <Box alignItems=\"Center\" gap=\"100\">\n <Text size=\"T300\">{name}</Text>\n {muted && <Icon src={Icons.MicMute} size=\"50\" aria-label=\"Microphone muted\" />}\n {speaking && <Icon src={Icons.VolumeHigh} size=\"50\" aria-label=\"Speaking\" />}\n </Box>\n {status}\n </Box>\n </Card>\n);\n","import React, { ReactNode } from \"react\";\nimport { Box } from \"../box\";\nimport { Rows } from \"../card\";\nimport { Checkbox } from \"../checkbox\";\nimport { RoomListItem } from \"../nav\";\nimport { Text } from \"../text\";\nimport { IdentityAvatar, MemberTile } from \"./Identity\";\n\nexport type IdentityListEntry = {\n id: string;\n name: string;\n description?: ReactNode;\n avatar?: ReactNode;\n agent?: boolean;\n disabled?: boolean;\n};\nexport const PeopleList = ({\n people,\n onPick,\n label = \"People\",\n emptyLabel = \"No people found\",\n}: {\n people: IdentityListEntry[];\n onPick: (id: string) => void;\n label?: string;\n emptyLabel?: string;\n}) => (\n <Box role=\"group\" aria-label={label} direction=\"Column\" gap=\"100\">\n {people.length === 0 && <Text size=\"T300\">{emptyLabel}</Text>}\n {people.map((person) => (\n <RoomListItem\n key={person.id}\n title={person.name}\n description={person.description}\n before={\n person.avatar ?? (\n <IdentityAvatar name={person.name} kind={person.agent ? \"agent\" : \"person\"} />\n )\n }\n disabled={person.disabled}\n onClick={() => onPick(person.id)}\n />\n ))}\n </Box>\n);\nexport const WorkerRoster = ({\n workers,\n selected = [],\n onSelectionChange,\n actions,\n title = \"Workers\",\n}: {\n workers: IdentityListEntry[];\n selected?: string[];\n onSelectionChange?: (ids: string[]) => void;\n actions?: ReactNode;\n title?: string;\n}) => (\n <Box direction=\"Column\" gap=\"200\">\n <Rows\n title={title}\n rows={workers.map((worker) => ({\n id: worker.id,\n content: (\n <MemberTile\n name={worker.name}\n description={worker.description}\n avatar={worker.avatar}\n agent\n after={\n onSelectionChange && (\n <Checkbox\n aria-label={`Include ${worker.name}`}\n checked={selected.includes(worker.id)}\n disabled={worker.disabled}\n onChange={(event) =>\n onSelectionChange(\n event.target.checked\n ? [...selected, worker.id]\n : selected.filter((id) => id !== worker.id)\n )\n }\n />\n )\n }\n />\n ),\n }))}\n />\n {workers.length === 0 && (\n <Text size=\"T300\" priority=\"300\">\n No workers\n </Text>\n )}\n {actions}\n </Box>\n);\n","import React, { ComponentProps, ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { as } from \"../as\";\nimport { Box } from \"../box\";\nimport { Card } from \"../card\";\nimport { MemberTile, RoomAvatar } from \"../identity\";\nimport { Text } from \"../text\";\nimport * as css from \"./ContentCard.css\";\n\nexport const CardGrid = as<\"div\">(({ as: AsGrid = \"div\", className, ...props }, ref) => (\n <AsGrid className={classNames(css.Grid, className)} {...props} ref={ref} />\n));\nexport type RoomCardProps = {\n name: string;\n description?: ReactNode;\n detail?: ReactNode;\n avatar?: ReactNode;\n actions?: ReactNode;\n children?: ReactNode;\n};\nexport const RoomCard = ({\n name,\n description,\n detail,\n avatar,\n actions,\n children,\n}: RoomCardProps) => (\n <Card>\n <MemberTile\n name={name}\n avatar={avatar ?? <RoomAvatar name={name} size=\"400\" />}\n description={detail}\n />\n {description && (\n <Text size=\"T300\" priority=\"300\">\n {description}\n </Text>\n )}\n {children}\n {actions && (\n <Box gap=\"200\" wrap=\"Wrap\">\n {actions}\n </Box>\n )}\n </Card>\n);\nexport type LinkPreviewProps = {\n title: string;\n href: string;\n description?: string;\n site?: string;\n media?: ReactNode;\n};\nconst safeHref = (href: string) => {\n try {\n const url = new URL(href);\n return [\"http:\", \"https:\"].includes(url.protocol) ? url.href : undefined;\n } catch {\n return undefined;\n }\n};\n/** Receives fetched metadata; no network work, HTML injection or media authentication. */\nexport const LinkPreview = ({ title, href, description, site, media }: LinkPreviewProps) => {\n const target = safeHref(href);\n return (\n <Card>\n {media}\n <Text size=\"H5\">{title}</Text>\n {description && <Text size=\"T300\">{description}</Text>}\n {target ? (\n <Text\n as=\"a\"\n href={target}\n rel=\"noreferrer\"\n target=\"_blank\"\n size=\"T200\"\n className={css.Link}\n >\n {site ?? href}\n </Text>\n ) : (\n <Text size=\"T200\">{site ?? href}</Text>\n )}\n </Card>\n );\n};\nexport const ScrollTopContainer = as<\"div\", ComponentProps<typeof Box> & { visible: boolean }>(\n ({ as: AsContainer = \"div\", visible, className, ...props }, ref) =>\n visible ? (\n <Box as={AsContainer} className={classNames(css.ScrollTop, className)} {...props} ref={ref} />\n ) : null\n);\n","import React, { ComponentProps } from \"react\";\nimport { Badge } from \"../badge\";\nimport { Box } from \"../box\";\nimport { Select } from \"../select\";\nimport { Text } from \"../text\";\nimport { MainColor } from \"../types\";\nimport * as css from \"./Power.css\";\n\nexport type PowerOption = { value: number; label: string; disabled?: boolean };\nexport type PowerSelectorProps = Omit<\n ComponentProps<typeof Select>,\n \"options\" | \"value\" | \"onValueChange\" | \"onChange\"\n> & {\n options: PowerOption[];\n value: number;\n onValueChange: (value: number) => void;\n};\nexport const PowerSelector = ({ options, value, onValueChange, ...props }: PowerSelectorProps) => (\n <Select\n {...props}\n value={String(value)}\n options={options.map((option) => ({ ...option, value: String(option.value) }))}\n onValueChange={(next) => {\n const option = options.find((item) => String(item.value) === next);\n if (option && !option.disabled) onValueChange(option.value);\n }}\n />\n);\nexport const PowerBadge = ({\n label,\n level,\n variant = \"Secondary\",\n}: {\n label: string;\n level?: number;\n variant?: MainColor;\n}) => (\n <Badge variant={variant} title={level === undefined ? label : `${label} (${level})`}>\n <Text as=\"span\" size=\"L400\">\n {label}\n </Text>\n </Badge>\n);\nexport const PowerIcon = ({\n name,\n imageSrc,\n children,\n}: {\n name: string;\n imageSrc?: string;\n children?: string;\n}) =>\n imageSrc ? (\n <img className={css.Icon} src={imageSrc} alt={name} />\n ) : (\n <Box as=\"span\" role=\"img\" aria-label={name} className={css.Icon}>\n {children}\n </Box>\n );\n","import React, { ComponentProps, forwardRef } from \"react\";\nimport { Input } from \"../input\";\nimport { Text } from \"../text\";\n\nexport type DateTimeInputProps = Omit<\n ComponentProps<typeof Input>,\n \"type\" | \"value\" | \"defaultValue\"\n> & { value?: string; defaultValue?: string };\n/** ISO local date/time strings; timezone and epoch conversions belong to the caller. */\nexport const DatePicker = forwardRef<HTMLInputElement, DateTimeInputProps>((props, ref) => (\n <Input {...props} type=\"date\" ref={ref} />\n));\nexport const TimePicker = forwardRef<HTMLInputElement, DateTimeInputProps>((props, ref) => (\n <Input {...props} type=\"time\" ref={ref} />\n));\nexport type TimestampProps = {\n value: number | string | Date;\n locale?: string;\n timeZone?: string;\n options?: Intl.DateTimeFormatOptions;\n fallback?: string;\n};\nexport const Timestamp = ({\n value,\n locale = \"en\",\n timeZone = \"UTC\",\n options,\n fallback = \"Unknown time\",\n}: TimestampProps) => {\n const date = new Date(value instanceof Date ? value.getTime() : value);\n if (!Number.isFinite(date.getTime()))\n return (\n <Text as=\"span\" size=\"LabelMono\">\n {fallback}\n </Text>\n );\n const formatted = new Intl.DateTimeFormat(locale, {\n ...(options ?? {\n year: \"numeric\",\n month: \"short\",\n day: \"numeric\",\n hour: \"2-digit\",\n minute: \"2-digit\",\n }),\n timeZone,\n } as Intl.DateTimeFormatOptions).format(date);\n return (\n <Text as=\"time\" size=\"LabelMono\" dateTime={date.toISOString()} title={formatted}>\n {formatted}\n </Text>\n );\n};\n","import React, { ReactNode } from \"react\";\nimport { Box } from \"../box\";\nimport { Card } from \"../card\";\nimport { Icon, Icons } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { Text } from \"../text\";\nimport { ContainerColor } from \"../types\";\n\nexport type BannerProps = {\n title: string;\n children?: ReactNode;\n variant?: ContainerColor;\n urgent?: boolean;\n actions?: ReactNode;\n onDismiss?: () => void;\n dismissLabel?: string;\n};\nexport const Banner = ({\n title,\n children,\n variant = \"Primary\",\n urgent,\n actions,\n onDismiss,\n dismissLabel = \"Dismiss\",\n}: BannerProps) => (\n <Card variant={variant}>\n <Box alignItems=\"Start\" gap=\"200\">\n <Box grow=\"Yes\" direction=\"Column\" gap=\"100\" role={urgent ? \"alert\" : \"status\"}>\n <Text size=\"B400\">{title}</Text>\n {children && <Text size=\"T300\">{children}</Text>}\n </Box>\n {onDismiss && (\n <IconButton\n type=\"button\"\n size=\"300\"\n variant={variant}\n fill=\"None\"\n aria-label={dismissLabel}\n onClick={onDismiss}\n >\n <Icon src={Icons.Cross} size=\"100\" />\n </IconButton>\n )}\n </Box>\n {actions && (\n <Box gap=\"200\" wrap=\"Wrap\">\n {actions}\n </Box>\n )}\n </Card>\n);\n/** The parent owns placement and lifetime; actions never disappear on a library timer. */\nexport const Toast = Banner;\n","import React from \"react\";\nimport { Box } from \"../box\";\nimport { Button } from \"../button\";\nimport { Input } from \"../input\";\nimport { Icon, Icons } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { Text } from \"../text\";\n\nexport type FolderFieldProps = {\n value: string;\n onChange: (path: string) => void;\n onBrowse?: () => void;\n disabled?: boolean;\n busy?: boolean;\n label?: string;\n browseLabel?: string;\n clearLabel?: string;\n};\n/** The caller opens the native picker; typed paths remain usable on the web. */\nexport const FolderField = ({\n value,\n onChange,\n onBrowse,\n disabled,\n busy,\n label = \"Folder\",\n browseLabel = \"Choose folder\",\n clearLabel = \"Clear folder\",\n}: FolderFieldProps) => (\n <Box direction=\"Column\" gap=\"100\">\n <Text size=\"L400\">{label}</Text>\n <Box gap=\"200\" alignItems=\"Center\">\n <Input\n aria-label={label}\n value={value}\n onChange={(event) => onChange(event.currentTarget.value)}\n disabled={disabled || busy}\n after={\n value && (\n <IconButton\n type=\"button\"\n size=\"300\"\n variant=\"Background\"\n fill=\"None\"\n aria-label={clearLabel}\n disabled={disabled || busy}\n onClick={() => onChange(\"\")}\n >\n <Icon src={Icons.Cross} size=\"100\" />\n </IconButton>\n )\n }\n />\n {onBrowse && (\n <Button\n type=\"button\"\n size=\"300\"\n variant=\"Secondary\"\n fill=\"Soft\"\n disabled={disabled || busy}\n aria-busy={busy || undefined}\n onClick={onBrowse}\n >\n {browseLabel}\n </Button>\n )}\n </Box>\n </Box>\n);\n","/* eslint-disable react/function-component-definition */\nimport React from \"react\";\nimport { Icon, IconName } from \"./Icon\";\nimport * as css from \"./primitives.css\";\n\nexport type CurrentAction = {\n id: string;\n label: string;\n title?: string;\n icon: IconName;\n primary?: boolean;\n onClick: () => void;\n};\nexport function ActionGroup({ actions, hint }: { actions: CurrentAction[]; hint: string }) {\n return (\n <div className={css.actionSection}>\n <div className={css.actionGroup} role=\"group\" aria-label=\"Draft a PR request\">\n {actions.map((action) => (\n <button\n key={action.id}\n type=\"button\"\n className={`${css.action} ${action.primary ? css.primaryAction : \"\"}`}\n title={action.title}\n onClick={action.onClick}\n >\n <Icon name={action.icon} />\n {action.label}\n </button>\n ))}\n </div>\n <p className={css.hint} role=\"status\">\n {hint}\n </p>\n </div>\n );\n}\n"],"names":["symbols","config","Avatar","css.Avatar","css.AvatarImage","css.AvatarFallback","css.Badge","css.Box","css.Button","Icon","css.Icon","badge","css.Checkbox","css.CheckboxInput","css.CheckboxIcon","css.Chip","css.Dialog","Header","css.Header","css.IconButton","css.Input","css.InputInput","css.Line","css.MenuItem","css.Menu","css.Modal","css.Overlay","css.OverlayBackdrop","css.OverlayCenter","css.PopOut","css.PopOutContainer","css.PopOutContent","css.ProgressBar","css.ProgressBarFill","css.RadioButton","css.Scroll","css.SpinnerSvg","css.SpinnerOuter","css.SpinnerInner","Spinner","css.Spinner","css.SpinnerMorph","css.Switch","css.SwitchThumb","css.Text","css.TextArea","css.Tooltip","css.TooltipProvider","css.SequenceCard","css.CutoutCard","css.InfoCard","ContainerClr","css.Sidebar","css.SidebarItem","css.SidebarItemBadge","css.SidebarAvatar","css.SidebarFolder","css.SidebarFolderDropTarget","css.SidebarStack","css.TypingDot","c","r","css.StackedAvatar","css.Starfield","css.SplashScreen","starfieldCSS.StarfieldHost","css.SplashScreenFooter","ScreenSize","css.PageNav","css.PageNavResizeHandle","css.PageNavHeader","css.PageNavContent","css.PageHeader","css.PageContent","css.PageHeroEmptyCompact","css.PageHeroEmpty","css.PageHeroSection","icon","css.PageContentCenter","css.boundary","css.icon","css.chevron","finding","css.finding","css.tones","css.findingToggle","css.severity","css.findingTitle","css.findingBody","css.mono","css.paragraph","review","css.card","css.ownedCard","css.header","css.identity","css.typeIcon","css.prLink","css.badge","css.verdictIcon","css.author","css.prRef","css.authorName","css.authorMissing","css.overview","css.summary","css.control","css.details","css.findings","css.meta","css.mentions","css.mentionLabel","member","css.member","css.ownMention","css.DialogFrameHeader","css.DialogFrameContent","css.MenuButtonMenu","current","css.ErrorStateMark","css.ErrorStateDescription","css.PageTitleHeaderTitle","css.Card","css.Rows","css.Row","css.Content","css.AvatarPresence","css.BadgeFrame","color","css.Worker","css.Decorator","css.WorkerSeam","inputCss.Input","css.Root","inputCss.InputInput","css.Select","css.Arrow","css.Group","css.Option","css.Primary","css.More","css.Track","css.Fill","css.Wave","action","css.Toolbar","css.Enter","css.AttentionFrame","css.Attention","header","css.Navigation","css.NavHeader","css.NavItems","css.NavItem","css.NarrowNavigation","css.NavLink","css.ItemContent","css.Options","css.Category","css.CategoryHeader","css.HeaderTitle","css.UnreadBadge","css.Center","author","css.Message","css.AvatarSlot","css.Author","css.Time","css.Quote","css.Reactions","css.Divider","css.Rule","css.Unread","css.UnreadRule","css.Timeline","css.FileAttachment","css.Dock","css.Stretch","css.Title","css.Skeleton","css.Controls","css.Sending","css.Fieldset","css.Editor","css.Placeholder","labels","css.Strip","css.StripActions","css.Member","css.Media","css.MemberContent","css.Grid","css.Link","css.ScrollTop","hint","css.actionSection","css.actionGroup","css.action","css.primaryAction","css.hint"],"mappings":"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","x_google_ignoreList":[3]}
|