@pstdio/ui 0.0.4 → 0.1.0
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/dist/chat-ui.js +1212 -193
- package/dist/chat-ui.js.map +1 -1
- package/dist/components/chat-ui/index.d.ts +8 -5
- package/dist/components/chat-ui/tool-rendering/build-timeline.d.ts +2 -2
- package/dist/components/documentation/docs-changelog.d.ts +20 -0
- package/dist/components/documentation/docs-changelog.stories.d.ts +15 -0
- package/dist/components/documentation/docs-outline.d.ts +13 -0
- package/dist/components/documentation/docs-outline.stories.d.ts +16 -0
- package/dist/components/documentation/docs-pagination.d.ts +10 -0
- package/dist/components/documentation/docs-pagination.stories.d.ts +14 -0
- package/dist/components/documentation/docs-sidebar.d.ts +14 -0
- package/dist/components/documentation/docs-sidebar.stories.d.ts +7 -0
- package/dist/components/folder-picker-dialog.d.ts +25 -0
- package/dist/components/folder-picker-dialog.stories.d.ts +11 -0
- package/dist/components/panel-menu.d.ts +2 -0
- package/dist/components/panel-menu.stories.d.ts +1 -0
- package/dist/components/rich-text/markdown-editor/markdown-editor.d.ts +1 -0
- package/dist/components/rich-text/markdown-editor/markdown-editor.stories.d.ts +1 -0
- package/dist/components/rich-text/utils/inferResourceType.d.ts +1 -1
- package/dist/components/session-indicator.d.ts +1 -1
- package/dist/components/switch.d.ts +15 -0
- package/dist/components/switch.stories.d.ts +16 -0
- package/dist/components/{ticket-card.d.ts → tickets/ticket-card.d.ts} +2 -1
- package/dist/components/tickets/ticket-list.d.ts +23 -0
- package/dist/components/tickets/ticket-list.stories.d.ts +10 -0
- package/dist/empty-state-Bu1ocnPz.js +70 -0
- package/dist/empty-state-Bu1ocnPz.js.map +1 -0
- package/dist/index.d.ts +27 -0
- package/dist/index.js +1148 -305
- package/dist/index.js.map +1 -1
- package/dist/{rich-message-CiA3ripk.js → rich-message-CNDoACE7.js} +8 -7
- package/dist/{rich-message-CiA3ripk.js.map → rich-message-CNDoACE7.js.map} +1 -1
- package/dist/rich-text.js +267 -262
- package/dist/rich-text.js.map +1 -1
- package/dist/style.css +1 -1
- package/dist/theme/primitives/colors.d.ts +12 -28
- package/dist/theme/recipes/menu.d.ts +1 -1
- package/dist/theme/tokens/borders.d.ts +6 -6
- package/dist/theme/tokens/colors.d.ts +180 -0
- package/dist/{theme-9E0MRtZk.js → theme-C7CIuIPZ.js} +197 -115
- package/dist/theme-C7CIuIPZ.js.map +1 -0
- package/dist/theme.js +1 -1
- package/package.json +6 -8
- package/dist/theme-9E0MRtZk.js.map +0 -1
- /package/dist/components/{ticket-board.d.ts → tickets/ticket-board.d.ts} +0 -0
- /package/dist/components/{ticket-board.stories.d.ts → tickets/ticket-board.stories.d.ts} +0 -0
- /package/dist/components/{ticket-card.stories.d.ts → tickets/ticket-card.stories.d.ts} +0 -0
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/components/alert.tsx","../src/components/content-placeholder.tsx","../src/components/delete-confirmation-modal.tsx","../src/components/empty-state.tsx","../src/components/error-boundary.tsx","../src/components/menu-item.tsx","../src/components/open-source-notices-screen.tsx","../src/components/toaster.tsx","../src/utils/apply-theme-preference.ts","../src/utils/theme-preference.tsx"],"sourcesContent":["import { Alert as ChakraAlert } from \"@chakra-ui/react\";\nimport * as React from \"react\";\n\nexport interface AlertProps extends Omit<ChakraAlert.RootProps, \"title\"> {\n startElement?: React.ReactNode;\n endElement?: React.ReactNode;\n title?: React.ReactNode;\n icon?: React.ReactElement;\n}\n\nexport const AlertMessage = React.forwardRef<HTMLDivElement, AlertProps>(function Alert(props, ref) {\n const { title, children, icon, startElement, endElement, ...rest } = props;\n return (\n <ChakraAlert.Root ref={ref} {...rest}>\n {startElement || <ChakraAlert.Indicator>{icon}</ChakraAlert.Indicator>}\n {children ? (\n <ChakraAlert.Content>\n <ChakraAlert.Title>{title}</ChakraAlert.Title>\n <ChakraAlert.Description>{children}</ChakraAlert.Description>\n </ChakraAlert.Content>\n ) : (\n <ChakraAlert.Title flex=\"1\">{title}</ChakraAlert.Title>\n )}\n {endElement}\n </ChakraAlert.Root>\n );\n});\n","import { Box, type BoxProps, Text, type TextProps } from \"@chakra-ui/react\";\n\nexport interface ContentPlaceholderProps extends BoxProps {}\n\nexport const ContentPlaceholder = (props: ContentPlaceholderProps) => (\n <Box\n {...props}\n css={{\n backgroundClip: \"padding-box\",\n backgroundImage: `url(\"data:image/svg+xml,%3Csvg width='6' height='6' viewBox='0 0 6 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%239C92AC' fill-opacity='0.2' fillRule='evenodd'%3E%3Cpath d='M5 0h1L0 6V5zM6 5v1H5z'/%3E%3C/g%3E%3C/svg%3E\")`,\n display: \"flex\",\n width: \"100%\",\n }}\n />\n);\n\nexport const Label = (props: TextProps) => (\n <Box p=\"2\">\n <Text color=\"fg.muted\" fontWeight=\"medium\" textStyle=\"sm\" whiteSpace=\"nowrap\" {...props} />\n </Box>\n);\n","import { Button, CloseButton, Dialog, Stack, Text } from \"@chakra-ui/react\";\nimport { useState } from \"react\";\n\ninterface DeleteConfirmationModalProps {\n open: boolean;\n onClose: () => void;\n onDelete: () => void | Promise<void>;\n headline?: string;\n notificationText?: string;\n buttonText?: string;\n}\n\nexport type { DeleteConfirmationModalProps };\n\nexport const DeleteConfirmationModal = (props: DeleteConfirmationModalProps) => {\n const [isDeleting, setIsDeleting] = useState(false);\n const { headline, buttonText, notificationText, onDelete, open, onClose } = props;\n\n const handleDelete = async () => {\n setIsDeleting(true);\n\n try {\n await onDelete();\n onClose();\n } catch {\n // Errors surface through parent state.\n } finally {\n setIsDeleting(false);\n }\n };\n\n return (\n <Dialog.Root open={open} onOpenChange={onClose}>\n <Dialog.Backdrop />\n <Dialog.Positioner>\n <Dialog.Content>\n <Dialog.Header>\n <Text textStyle=\"heading/M\">{headline}</Text>\n <Dialog.CloseTrigger asChild>\n <CloseButton size=\"sm\" />\n </Dialog.CloseTrigger>\n </Dialog.Header>\n <Dialog.Body>{notificationText}</Dialog.Body>\n <Dialog.Footer>\n <Stack direction=\"row\" gap=\"1\">\n <Button onClick={onClose}>Close</Button>\n <Button loading={isDeleting} variant=\"solid\" colorPalette=\"red\" onClick={handleDelete}>\n {buttonText}\n </Button>\n </Stack>\n </Dialog.Footer>\n </Dialog.Content>\n </Dialog.Positioner>\n </Dialog.Root>\n );\n};\n","import { EmptyState as ChakraEmptyState, VStack } from \"@chakra-ui/react\";\nimport * as React from \"react\";\n\nexport interface EmptyStateProps extends ChakraEmptyState.RootProps {\n title: string;\n description?: string;\n icon?: React.ReactNode;\n}\n\nexport const EmptyState = React.forwardRef<HTMLDivElement, EmptyStateProps>(function EmptyState(props, ref) {\n const { title, description, icon, children, ...rest } = props;\n return (\n <ChakraEmptyState.Root ref={ref} {...rest}>\n <ChakraEmptyState.Content>\n {icon && <ChakraEmptyState.Indicator>{icon}</ChakraEmptyState.Indicator>}\n {description ? (\n <VStack textAlign=\"center\">\n <ChakraEmptyState.Title fontWeight=\"normal\">{title}</ChakraEmptyState.Title>\n <ChakraEmptyState.Description>{description}</ChakraEmptyState.Description>\n </VStack>\n ) : (\n <ChakraEmptyState.Title fontWeight=\"normal\">{title}</ChakraEmptyState.Title>\n )}\n {children}\n </ChakraEmptyState.Content>\n </ChakraEmptyState.Root>\n );\n});\n","import { AbsoluteCenter, Button, Stack, Text } from \"@chakra-ui/react\";\nimport { Component, type ErrorInfo, type ReactNode } from \"react\";\n\nimport { AlertMessage } from \"./alert\";\nimport { ContentPlaceholder } from \"./content-placeholder\";\n\ninterface ErrorBoundaryProps {\n children: ReactNode;\n fallback?: ReactNode;\n label?: string;\n onReset?: () => void;\n}\n\ninterface ErrorBoundaryState {\n error: Error | null;\n}\n\nexport class ErrorBoundary extends Component<ErrorBoundaryProps, ErrorBoundaryState> {\n state: ErrorBoundaryState = { error: null };\n\n static getDerivedStateFromError(error: Error) {\n return { error };\n }\n\n componentDidCatch(error: Error, info: ErrorInfo) {\n console.error(\"Dashboard error boundary caught an error\", error, info);\n }\n\n handleReset = () => {\n this.setState({ error: null });\n this.props.onReset?.();\n };\n\n render() {\n const { children, fallback, label } = this.props;\n const { error } = this.state;\n\n if (error) {\n if (fallback) {\n return fallback;\n }\n\n return <ErrorFallback error={error} label={label} onReset={this.handleReset} />;\n }\n\n return children;\n }\n}\n\ninterface ErrorFallbackProps {\n error: Error;\n label?: string;\n onReset?: () => void;\n}\n\nexport const ErrorFallback = (props: ErrorFallbackProps) => {\n const { error, label, onReset } = props;\n\n return (\n <ContentPlaceholder height=\"100%\" width=\"100%\">\n <AbsoluteCenter>\n <AlertMessage\n status=\"error\"\n title={<Text textStyle=\"paragraph/M/medium\">{label ?? \"Something went wrong\"}</Text>}\n >\n <Stack gap=\"sm\">\n <Text textStyle=\"paragraph/S/regular\">\n {error.message || \"An unexpected error occurred while rendering this section.\"}\n </Text>\n {onReset ? (\n <Button size=\"sm\" variant=\"solid\" colorScheme={\"black\"} onClick={onReset}>\n Try again\n </Button>\n ) : null}\n </Stack>\n </AlertMessage>\n </AbsoluteCenter>\n </ContentPlaceholder>\n );\n};\n","import type { IconProps } from \"@chakra-ui/react\";\nimport { Badge, MenuItem as ChakraMenuItem, Flex, Icon, Stack, Text } from \"@chakra-ui/react\";\nimport type { ComponentProps, MouseEvent as ReactMouseEvent, ReactNode } from \"react\";\nimport { Tooltip } from \"./tooltip\";\n\ntype ChakraMenuItemProps = ComponentProps<typeof ChakraMenuItem>;\ntype MenuItemIcon = ComponentProps<typeof Icon>[\"as\"];\ntype MenuItemIconColor = IconProps[\"color\"];\ntype MenuItemTagColor = ComponentProps<typeof Badge>[\"colorPalette\"];\ntype MenuItemTagVariant = ComponentProps<typeof Badge>[\"variant\"];\ntype MenuItemVariant = \"default\" | \"compact\";\n\nconst menuItemVariantStyles = {\n default: {\n paddingX: \"sm\",\n paddingY: \"xs\",\n minHeight: \"2rem\",\n iconSize: \"19px\",\n primaryTextStyle: \"label/M/regular\",\n secondaryMarginLeft: \"2px\",\n secondaryTextStyle: \"label/XS/regular\",\n },\n compact: {\n paddingX: \"xs\",\n paddingY: \"2xs\",\n minHeight: \"1.75rem\",\n iconSize: \"16px\",\n primaryTextStyle: \"label/S/regular\",\n secondaryMarginLeft: \"0\",\n secondaryTextStyle: \"label/XS/regular\",\n },\n} as const;\n\nexport interface MenuItemProps {\n id?: string;\n children?: ReactNode;\n isDisabled?: boolean;\n isSelected?: boolean;\n primaryLabel: string;\n secondaryLabel?: string;\n tooltipLabel?: ReactNode;\n leftIcon?: MenuItemIcon | null;\n leftSlot?: ReactNode;\n rightIcon?: MenuItemIcon | null;\n leftIconColor?: MenuItemIconColor;\n rightIconColor?: MenuItemIconColor;\n leftIconSize?: string;\n rightIconSize?: string;\n rightIconAriaLabel?: string;\n rightTooltipLabel?: ReactNode;\n onRightIconClick?: () => void;\n tagLabel?: ReactNode;\n tagColorPalette?: MenuItemTagColor;\n tagVariant?: MenuItemTagVariant;\n variant?: MenuItemVariant;\n tabIndex?: number;\n width?: ChakraMenuItemProps[\"width\"];\n maxWidth?: ChakraMenuItemProps[\"maxWidth\"];\n setRefElement?: ChakraMenuItemProps[\"ref\"];\n onClick?: ChakraMenuItemProps[\"onClick\"];\n onMouseDown?: ChakraMenuItemProps[\"onMouseDown\"];\n onMouseEnter?: ChakraMenuItemProps[\"onMouseEnter\"];\n}\n\nexport const MenuItem = (props: MenuItemProps) => {\n const {\n id,\n primaryLabel,\n tooltipLabel,\n secondaryLabel,\n leftIcon = null,\n leftSlot,\n rightIcon,\n leftIconColor = \"fg\",\n rightIconColor = \"fg\",\n leftIconSize,\n rightIconSize,\n rightIconAriaLabel,\n rightTooltipLabel,\n onRightIconClick,\n isDisabled,\n isSelected,\n tagLabel,\n tagColorPalette = \"yellow\",\n tagVariant = \"subtle\",\n variant = \"default\",\n tabIndex,\n width,\n maxWidth,\n setRefElement,\n } = props;\n const { onClick, onMouseDown, onMouseEnter } = props;\n const variantStyles = menuItemVariantStyles[variant];\n const backgroundColor = isSelected ? \"bg.emphasized\" : undefined;\n const resolvedLeftIconSize = leftIconSize ?? variantStyles.iconSize;\n const resolvedRightIconSize = rightIconSize ?? variantStyles.iconSize;\n const isRightIconInteractive = Boolean(onRightIconClick && rightIcon);\n\n const handleRightIconMouseDown = (event: ReactMouseEvent<HTMLElement>) => {\n if (!isRightIconInteractive) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n };\n\n const handleRightIconClick = (event: ReactMouseEvent<HTMLElement>) => {\n if (!isRightIconInteractive || !onRightIconClick) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n onRightIconClick();\n };\n\n return (\n <ChakraMenuItem\n id={id}\n ref={setRefElement}\n tabIndex={tabIndex}\n disabled={isDisabled}\n aria-selected={isSelected}\n paddingX={variantStyles.paddingX}\n paddingY={variantStyles.paddingY}\n onClick={onClick}\n onMouseDown={onMouseDown}\n onMouseEnter={onMouseEnter}\n height=\"auto\"\n minHeight={variantStyles.minHeight}\n role=\"option\"\n width={width}\n maxWidth={maxWidth ?? \"20rem\"}\n overflow={\"hidden\"}\n position=\"relative\"\n cursor={isDisabled ? \"default\" : \"pointer\"}\n value={id ?? primaryLabel}\n bg={backgroundColor}\n _hover={{ bg: \"bg.muted\" }}\n _focus={{ bg: \"bg.muted\" }}\n >\n <Flex justifyContent=\"space-between\" alignItems=\"center\" gap=\"xs\" flex=\"1\">\n <Tooltip positioning={{ placement: \"right\" }} content={tooltipLabel} disabled={!tooltipLabel}>\n <Stack gap=\"2xs\">\n <Flex alignItems=\"flex-start\" gap=\"xs\" flex=\"1\">\n {leftSlot ? (\n leftSlot\n ) : leftIcon ? (\n <Icon as={leftIcon} boxSize={resolvedLeftIconSize} color={leftIconColor} />\n ) : null}\n <Text lineClamp={1} textOverflow=\"ellipsis\" textStyle={variantStyles.primaryTextStyle}>\n {primaryLabel}\n </Text>\n </Flex>\n {secondaryLabel && (\n <Text\n ml={variantStyles.secondaryMarginLeft}\n lineClamp={1}\n textOverflow=\"ellipsis\"\n textStyle={variantStyles.secondaryTextStyle}\n color=\"fg.muted\"\n >\n {secondaryLabel}\n </Text>\n )}\n </Stack>\n </Tooltip>\n <Flex justifyContent=\"flex-end\" color=\"fg\">\n {rightIcon ? (\n <Tooltip positioning={{ placement: \"right\" }} content={rightTooltipLabel} disabled={!rightTooltipLabel}>\n <Flex\n as={isRightIconInteractive ? \"button\" : \"div\"}\n alignItems=\"center\"\n aria-label={rightIconAriaLabel}\n cursor={isRightIconInteractive ? \"pointer\" : \"default\"}\n bg=\"transparent\"\n borderWidth=\"0\"\n padding=\"0\"\n onMouseDown={handleRightIconMouseDown}\n onClick={handleRightIconClick}\n >\n <Icon as={rightIcon} boxSize={resolvedRightIconSize} color={rightIconColor} />\n </Flex>\n </Tooltip>\n ) : null}\n </Flex>\n </Flex>\n {tagLabel ? (\n <Badge\n position=\"absolute\"\n top=\"xs\"\n right=\"sm\"\n textStyle=\"label/XS/medium\"\n px=\"xs\"\n py=\"2px\"\n borderRadius=\"md\"\n colorPalette={tagColorPalette}\n variant={tagVariant}\n pointerEvents=\"none\"\n >\n {tagLabel}\n </Badge>\n ) : null}\n </ChakraMenuItem>\n );\n};\n","import { Box, HStack, Link, Separator, Stack, Text } from \"@chakra-ui/react\";\n\nexport interface OpenSourceNotice {\n name: string;\n version?: string;\n license?: string;\n copyright?: string;\n homepageUrl?: string;\n sourceUrl?: string;\n attribution?: string;\n}\n\nexport interface OpenSourceNoticesScreenProps {\n notices: OpenSourceNotice[];\n title?: string;\n description?: string;\n productName?: string;\n productVersion?: string;\n generatedAt?: string;\n emptyTitle?: string;\n emptyDescription?: string;\n}\n\nconst getNoticeKey = (notice: OpenSourceNotice, index: number) => {\n return `${notice.name}-${notice.version ?? \"unknown\"}-${index}`;\n};\n\nconst getNoticeTitle = (notice: OpenSourceNotice) => {\n if (!notice.version) return notice.name;\n\n return `${notice.name} v${notice.version}`;\n};\n\nexport const OpenSourceNoticesScreen = (props: OpenSourceNoticesScreenProps) => {\n const {\n notices,\n title = \"Open Source and Third-Party Notices\",\n description = \"This product includes software developed by the open source community.\",\n productName,\n productVersion,\n generatedAt,\n emptyTitle = \"No third-party notices available\",\n emptyDescription = \"No third-party packages were included in this build.\",\n } = props;\n\n return (\n <Stack width=\"full\" minHeight=\"100%\" background=\"bg\" color=\"fg\" padding={{ base: \"md\", md: \"xl\" }} gap=\"lg\">\n <Stack gap=\"xs\">\n <Text textStyle=\"heading/L\">{title}</Text>\n <Text textStyle=\"paragraph/S/regular\" color=\"fg.muted\">\n {description}\n </Text>\n\n <HStack gap=\"md\" flexWrap=\"wrap\">\n {productName ? (\n <Text textStyle=\"label/XS\" color=\"fg.muted\">\n Product: {productName}\n </Text>\n ) : null}\n\n {productVersion ? (\n <Text textStyle=\"label/XS\" color=\"fg.muted\">\n Version: {productVersion}\n </Text>\n ) : null}\n\n <Text textStyle=\"label/XS\" color=\"fg.muted\">\n Packages: {notices.length}\n </Text>\n\n {generatedAt ? (\n <Text textStyle=\"label/XS\" color=\"fg.muted\">\n Generated: {generatedAt}\n </Text>\n ) : null}\n </HStack>\n </Stack>\n\n <Separator borderColor=\"border.secondary\" />\n\n {notices.length === 0 ? (\n <Stack borderWidth=\"1px\" borderColor=\"border.muted\" borderRadius=\"md\" padding=\"lg\" gap=\"xs\">\n <Text textStyle=\"label/L/medium\">{emptyTitle}</Text>\n <Text textStyle=\"paragraph/S/regular\" color=\"fg.muted\">\n {emptyDescription}\n </Text>\n </Stack>\n ) : (\n <Stack gap=\"md\">\n {notices.map((notice, index) => (\n <Box\n key={getNoticeKey(notice, index)}\n borderWidth=\"1px\"\n borderColor=\"border.muted\"\n borderRadius=\"md\"\n padding=\"md\"\n >\n <Stack gap=\"sm\">\n <Stack gap=\"2xs\">\n <Text textStyle=\"label/L/medium\">{getNoticeTitle(notice)}</Text>\n <Text textStyle=\"label/S/regular\" color=\"fg.muted\">\n License: {notice.license ?? \"Unknown\"}\n </Text>\n </Stack>\n\n {notice.copyright ? (\n <Text textStyle=\"label/S/regular\" color=\"fg.muted\">\n {notice.copyright}\n </Text>\n ) : null}\n\n {(notice.homepageUrl || notice.sourceUrl) && (\n <Stack gap=\"2xs\">\n {notice.homepageUrl ? (\n <Link\n href={notice.homepageUrl}\n target=\"_blank\"\n rel=\"noreferrer\"\n textStyle=\"label/S/medium\"\n width=\"fit-content\"\n >\n Homepage\n </Link>\n ) : null}\n\n {notice.sourceUrl ? (\n <Link\n href={notice.sourceUrl}\n target=\"_blank\"\n rel=\"noreferrer\"\n textStyle=\"label/S/medium\"\n width=\"fit-content\"\n >\n Source code\n </Link>\n ) : null}\n </Stack>\n )}\n\n {notice.attribution ? (\n <Box background=\"bg.muted\" borderRadius=\"sm\" padding=\"sm\">\n <Text textStyle=\"label/S/regular\" whiteSpace=\"pre-wrap\">\n {notice.attribution}\n </Text>\n </Box>\n ) : null}\n </Stack>\n </Box>\n ))}\n </Stack>\n )}\n </Stack>\n );\n};\n","import { Toaster as ChakraToaster, createToaster, Portal, Spinner, Stack, Toast } from \"@chakra-ui/react\";\n\nexport const toaster: ReturnType<typeof createToaster> = createToaster({\n placement: \"bottom-end\",\n pauseOnPageIdle: true,\n});\n\nexport const Toaster = () => {\n return (\n <Portal>\n <ChakraToaster toaster={toaster} insetInline={{ mdDown: \"4\" }}>\n {(toast) => (\n <Toast.Root width={{ md: \"sm\" }}>\n {toast.type === \"loading\" ? <Spinner size=\"sm\" color=\"blue.solid\" /> : <Toast.Indicator />}\n <Stack gap=\"1\" flex=\"1\" maxWidth=\"100%\">\n {toast.title && <Toast.Title>{toast.title}</Toast.Title>}\n {toast.description && <Toast.Description>{toast.description}</Toast.Description>}\n </Stack>\n {toast.action && <Toast.ActionTrigger>{toast.action.label}</Toast.ActionTrigger>}\n {toast.closable && <Toast.CloseTrigger />}\n </Toast.Root>\n )}\n </ChakraToaster>\n </Portal>\n );\n};\n","export type ThemePreference = \"light\" | \"dark\";\n\nexport const applyThemePreference = (theme: ThemePreference) => {\n if (typeof document === \"undefined\") return;\n\n const root = document.documentElement;\n const body = document.body;\n const opposite = theme === \"dark\" ? \"light\" : \"dark\";\n\n for (const el of [root, body]) {\n if (!el) continue;\n el.classList.remove(opposite);\n el.classList.add(theme);\n el.setAttribute(\"data-theme\", theme);\n el.style.colorScheme = theme;\n }\n};\n","import { createContext, type ReactNode, useContext, useEffect, useState } from \"react\";\n\nimport { applyThemePreference, type ThemePreference } from \"./apply-theme-preference\";\n\nconst STORAGE_KEY = \"theme-preference\";\n\nconst ThemePreferenceContext = createContext<ThemePreferenceContextValue | null>(null);\n\ninterface ThemePreferenceContextValue {\n themePreference: ThemePreference;\n setThemePreference: (preference: ThemePreference) => void;\n toggleThemePreference: () => void;\n}\n\ninterface ThemePreferenceProviderProps {\n children: ReactNode;\n initialPreference?: ThemePreference;\n}\n\nexport const getInitialThemePreference = () => {\n if (typeof window === \"undefined\") return \"light\";\n\n const stored = window.localStorage.getItem(STORAGE_KEY);\n if (stored === \"dark\" || stored === \"light\") return stored;\n\n const prefersDark =\n typeof window.matchMedia === \"function\" && window.matchMedia(\"(prefers-color-scheme: dark)\").matches;\n\n return prefersDark ? \"dark\" : \"light\";\n};\n\nexport const ThemePreferenceProvider = (props: ThemePreferenceProviderProps) => {\n const { children, initialPreference = getInitialThemePreference() } = props;\n const [themePreference, setThemePreference] = useState<ThemePreference>(initialPreference);\n\n useEffect(() => {\n applyThemePreference(themePreference);\n if (typeof window !== \"undefined\") {\n window.localStorage.setItem(STORAGE_KEY, themePreference);\n }\n }, [themePreference]);\n\n const toggleThemePreference = () => setThemePreference((prev) => (prev === \"dark\" ? \"light\" : \"dark\"));\n\n return (\n <ThemePreferenceContext value={{ themePreference, setThemePreference, toggleThemePreference }}>\n {children}\n </ThemePreferenceContext>\n );\n};\n\nexport const useThemePreference = () => {\n const context = useContext(ThemePreferenceContext);\n\n if (!context) {\n throw new Error(\"useThemePreference must be used within a ThemePreferenceProvider\");\n }\n\n return context;\n};\n"],"names":["AlertMessage","React","forwardRef","props","ref","$","_c","children","endElement","icon","rest","startElement","title","t0","jsx","ChakraAlert","t1","jsxs","t2","ContentPlaceholder","Symbol","for","backgroundClip","backgroundImage","display","width","Box","Label","Text","DeleteConfirmationModal","isDeleting","setIsDeleting","useState","headline","buttonText","notificationText","onDelete","open","onClose","handleDelete","Dialog","CloseButton","Stack","Button","EmptyState","description","ChakraEmptyState","VStack","t3","ErrorBoundary","Component","state","error","getDerivedStateFromError","componentDidCatch","info","console","handleReset","setState","onReset","render","fallback","label","ErrorFallback","message","t4","t5","t6","AbsoluteCenter","menuItemVariantStyles","default","paddingX","paddingY","minHeight","iconSize","primaryTextStyle","secondaryMarginLeft","secondaryTextStyle","compact","MenuItem","id","primaryLabel","tooltipLabel","secondaryLabel","leftIcon","leftSlot","rightIcon","leftIconColor","rightIconColor","leftIconSize","rightIconSize","rightIconAriaLabel","rightTooltipLabel","onRightIconClick","isDisabled","isSelected","tagLabel","tagColorPalette","tagVariant","variant","tabIndex","maxWidth","setRefElement","undefined","onClick","onMouseDown","onMouseEnter","variantStyles","backgroundColor","resolvedLeftIconSize","resolvedRightIconSize","isRightIconInteractive","Boolean","event","preventDefault","stopPropagation","handleRightIconMouseDown","t7","event_0","handleRightIconClick","t8","t9","t10","t11","t12","bg","t13","placement","t14","t15","Icon","t16","t17","Flex","t18","t19","t20","Tooltip","t21","t22","t23","t24","Badge","t25","ChakraMenuItem","getNoticeKey","notice","index","name","version","getNoticeTitle","OpenSourceNoticesScreen","notices","productName","productVersion","generatedAt","emptyTitle","emptyDescription","base","md","length","HStack","Separator","map","_temp","license","copyright","homepageUrl","sourceUrl","Link","attribution","toaster","createToaster","pauseOnPageIdle","Toaster","Portal","ChakraToaster","mdDown","toast","Toast","type","Spinner","action","closable","applyThemePreference","theme","document","root","documentElement","body","opposite","el","classList","remove","add","setAttribute","style","colorScheme","STORAGE_KEY","ThemePreferenceContext","createContext","getInitialThemePreference","window","stored","localStorage","getItem","matchMedia","matches","ThemePreferenceProvider","initialPreference","themePreference","setThemePreference","setItem","useEffect","toggleThemePreference","useThemePreference","context","useContext","Error","prev"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/components/alert.tsx","../src/components/breadcrumb.tsx","../src/components/content-placeholder.tsx","../src/components/delete-confirmation-modal.tsx","../src/components/documentation/docs-changelog.tsx","../src/components/documentation/docs-outline.tsx","../src/components/documentation/docs-pagination.tsx","../src/components/item-section.tsx","../src/components/menu-item.tsx","../src/components/panel-menu.tsx","../src/components/documentation/docs-sidebar.tsx","../src/components/error-boundary.tsx","../src/components/folder-picker-dialog.tsx","../src/components/horizontal-menu-stack.tsx","../src/components/open-source-notices-screen.tsx","../src/components/properties.tsx","../src/components/session-indicator.tsx","../src/components/switch.tsx","../src/components/tickets/ticket-card.tsx","../src/components/tickets/ticket-board.tsx","../src/components/tickets/ticket-list.tsx","../src/components/toaster.tsx","../src/utils/apply-theme-preference.ts","../src/utils/theme-preference.tsx"],"sourcesContent":["import { Alert as ChakraAlert } from \"@chakra-ui/react\";\nimport * as React from \"react\";\n\nexport interface AlertProps extends Omit<ChakraAlert.RootProps, \"title\"> {\n startElement?: React.ReactNode;\n endElement?: React.ReactNode;\n title?: React.ReactNode;\n icon?: React.ReactElement;\n}\n\nexport const AlertMessage = React.forwardRef<HTMLDivElement, AlertProps>(function Alert(props, ref) {\n const { title, children, icon, startElement, endElement, ...rest } = props;\n return (\n <ChakraAlert.Root ref={ref} {...rest}>\n {startElement || <ChakraAlert.Indicator>{icon}</ChakraAlert.Indicator>}\n {children ? (\n <ChakraAlert.Content>\n <ChakraAlert.Title>{title}</ChakraAlert.Title>\n <ChakraAlert.Description>{children}</ChakraAlert.Description>\n </ChakraAlert.Content>\n ) : (\n <ChakraAlert.Title flex=\"1\">{title}</ChakraAlert.Title>\n )}\n {endElement}\n </ChakraAlert.Root>\n );\n});\n","import { Breadcrumb as ChakraBreadcrumb, type SystemStyleObject } from \"@chakra-ui/react\";\nimport * as React from \"react\";\n\nexport interface BreadcrumbItem {\n title: React.ReactNode;\n url?: string;\n onClick?: () => void;\n}\n\nexport interface BreadcrumbLinkProps {\n to: string;\n children: React.ReactNode;\n}\n\nexport interface BreadcrumbProps extends ChakraBreadcrumb.RootProps {\n separator?: React.ReactNode;\n separatorGap?: SystemStyleObject[\"gap\"];\n items: BreadcrumbItem[];\n linkComponent?: React.ComponentType<BreadcrumbLinkProps>;\n}\n\nexport const Breadcrumb = React.forwardRef<HTMLDivElement, BreadcrumbProps>(function BreadcrumbRoot(props, ref) {\n const { separator, separatorGap, items, linkComponent: LinkComponent, ...rest } = props;\n\n return (\n <ChakraBreadcrumb.Root ref={ref} {...rest}>\n <ChakraBreadcrumb.List gap={separatorGap}>\n {items.map((item, index) => {\n const last = index === items.length - 1;\n const isInteractive = Boolean(item.url || item.onClick);\n let itemContent: React.ReactNode;\n\n if (last && !isInteractive) {\n itemContent = <ChakraBreadcrumb.CurrentLink>{item.title}</ChakraBreadcrumb.CurrentLink>;\n } else if (item.url) {\n itemContent = LinkComponent ? (\n <ChakraBreadcrumb.Link asChild>\n <LinkComponent to={item.url}>{item.title}</LinkComponent>\n </ChakraBreadcrumb.Link>\n ) : (\n <ChakraBreadcrumb.Link href={item.url}>{item.title}</ChakraBreadcrumb.Link>\n );\n } else if (item.onClick) {\n itemContent = (\n <ChakraBreadcrumb.Link as=\"button\" type=\"button\" onClick={item.onClick}>\n {item.title}\n </ChakraBreadcrumb.Link>\n );\n } else {\n itemContent = <ChakraBreadcrumb.Link>{item.title}</ChakraBreadcrumb.Link>;\n }\n\n return (\n <ChakraBreadcrumb.Item key={index}>\n {itemContent}\n {last ? null : (\n <ChakraBreadcrumb.Separator as=\"span\" aria-hidden ml=\"xs\">\n {separator}\n </ChakraBreadcrumb.Separator>\n )}\n </ChakraBreadcrumb.Item>\n );\n })}\n </ChakraBreadcrumb.List>\n </ChakraBreadcrumb.Root>\n );\n});\n","import { Box, type BoxProps, Text, type TextProps } from \"@chakra-ui/react\";\n\nexport interface ContentPlaceholderProps extends BoxProps {}\n\nexport const ContentPlaceholder = (props: ContentPlaceholderProps) => (\n <Box\n {...props}\n css={{\n backgroundClip: \"padding-box\",\n backgroundImage: `url(\"data:image/svg+xml,%3Csvg width='6' height='6' viewBox='0 0 6 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%239C92AC' fill-opacity='0.2' fillRule='evenodd'%3E%3Cpath d='M5 0h1L0 6V5zM6 5v1H5z'/%3E%3C/g%3E%3C/svg%3E\")`,\n display: \"flex\",\n width: \"100%\",\n }}\n />\n);\n\nexport const Label = (props: TextProps) => (\n <Box p=\"2\">\n <Text color=\"fg.muted\" fontWeight=\"medium\" textStyle=\"sm\" whiteSpace=\"nowrap\" {...props} />\n </Box>\n);\n","import { Button, CloseButton, Dialog, Stack, Text } from \"@chakra-ui/react\";\nimport { useState } from \"react\";\n\ninterface DeleteConfirmationModalProps {\n open: boolean;\n onClose: () => void;\n onDelete: () => void | Promise<void>;\n headline?: string;\n notificationText?: string;\n buttonText?: string;\n}\n\nexport type { DeleteConfirmationModalProps };\n\nexport const DeleteConfirmationModal = (props: DeleteConfirmationModalProps) => {\n const [isDeleting, setIsDeleting] = useState(false);\n const { headline, buttonText, notificationText, onDelete, open, onClose } = props;\n\n const handleDelete = async () => {\n setIsDeleting(true);\n\n try {\n await onDelete();\n onClose();\n } catch {\n // Errors surface through parent state.\n } finally {\n setIsDeleting(false);\n }\n };\n\n return (\n <Dialog.Root open={open} onOpenChange={onClose}>\n <Dialog.Backdrop />\n <Dialog.Positioner>\n <Dialog.Content>\n <Dialog.Header>\n <Text textStyle=\"heading/M\">{headline}</Text>\n <Dialog.CloseTrigger asChild>\n <CloseButton size=\"sm\" />\n </Dialog.CloseTrigger>\n </Dialog.Header>\n <Dialog.Body>{notificationText}</Dialog.Body>\n <Dialog.Footer>\n <Stack direction=\"row\" gap=\"1\">\n <Button onClick={onClose}>Close</Button>\n <Button loading={isDeleting} variant=\"solid\" colorPalette=\"red\" onClick={handleDelete}>\n {buttonText}\n </Button>\n </Stack>\n </Dialog.Footer>\n </Dialog.Content>\n </Dialog.Positioner>\n </Dialog.Root>\n );\n};\n","import {\n Badge,\n Box,\n Flex,\n Heading,\n HStack,\n Image,\n Link,\n List,\n Stack,\n type StackProps,\n Text,\n Timeline,\n} from \"@chakra-ui/react\";\n\nexport interface DocsChangelogChange {\n title: string;\n description?: string;\n link?: string;\n}\n\nexport interface DocsChangelogEntry {\n version: string;\n date: string;\n tags?: string[];\n title: string;\n image?: string;\n description?: string;\n changes?: DocsChangelogChange[];\n}\n\nexport interface DocsChangelogProps {\n entries: DocsChangelogEntry[];\n title: string;\n description?: string;\n}\n\ninterface ChangelogDateProps extends StackProps {\n date: string;\n version: string;\n}\n\nconst getEntryKey = (entry: DocsChangelogEntry, index: number) => {\n return `${entry.version}-${entry.date}-${index}`;\n};\n\nconst getChangeKey = (change: DocsChangelogChange, index: number) => {\n return `${change.title}-${index}`;\n};\n\nconst ChangelogDate = (props: ChangelogDateProps) => {\n const { date, version, ...rest } = props;\n\n return (\n <Stack {...rest}>\n <Timeline.Title textStyle=\"sm\" color=\"fg.muted\">\n {date}\n </Timeline.Title>\n <Flex\n px=\"3\"\n py=\"2\"\n rounded=\"l3\"\n align=\"center\"\n justify=\"center\"\n borderWidth=\"1px\"\n textAlign=\"center\"\n alignSelf=\"flex-start\"\n >\n <Timeline.Title textStyle=\"md\" fontWeight=\"semibold\">\n {version}\n </Timeline.Title>\n </Flex>\n </Stack>\n );\n};\n\nexport const DocsChangelog = (props: DocsChangelogProps) => {\n const { entries, title, description } = props;\n\n return (\n <Stack gap=\"20\">\n <Stack textAlign=\"center\">\n <Heading size=\"4xl\">{title}</Heading>\n {description ? (\n <Text color=\"fg.muted\" textStyle=\"lg\">\n {description}\n </Text>\n ) : null}\n </Stack>\n\n <Box position=\"relative\">\n <Timeline.Root size=\"sm\" variant=\"solid\">\n {entries.map((entry, entryIndex) => (\n <Timeline.Item key={getEntryKey(entry, entryIndex)}>\n <Timeline.Content\n top=\"6\"\n width=\"48\"\n flexShrink=\"0\"\n hideBelow=\"md\"\n position={{ base: \"static\", md: \"sticky\" }}\n >\n <ChangelogDate hideBelow=\"md\" date={entry.date} version={entry.version} />\n </Timeline.Content>\n\n <Timeline.Connector>\n <Timeline.Separator />\n <Timeline.Indicator />\n </Timeline.Connector>\n\n <Timeline.Content>\n <Stack gap=\"4\">\n <ChangelogDate hideFrom=\"md\" date={entry.date} version={entry.version} />\n\n <Stack gap=\"2\">\n <Timeline.Title fontSize=\"lg\" fontWeight=\"medium\">\n {entry.title}\n </Timeline.Title>\n {entry.description ? (\n <Text color=\"fg.muted\" textStyle=\"sm\">\n {entry.description}\n </Text>\n ) : null}\n </Stack>\n\n {entry.tags && entry.tags.length > 0 ? (\n <HStack>\n {entry.tags.map((tag) => (\n <Badge\n key={tag}\n size=\"md\"\n rounded=\"l2\"\n variant=\"subtle\"\n colorPalette=\"gray\"\n textTransform=\"capitalize\"\n >\n {tag}\n </Badge>\n ))}\n </HStack>\n ) : null}\n\n {entry.image ? <Image rounded=\"l2\" src={entry.image} alt={entry.title} /> : null}\n\n {entry.changes && entry.changes.length > 0 ? (\n <List.Root pl=\"4\" gap=\"4\">\n {entry.changes.map((change, changeIndex) => (\n <List.Item key={getChangeKey(change, changeIndex)}>\n <Stack gap=\"1\">\n <Text color=\"fg.muted\" fontWeight=\"normal\" textStyle=\"sm\">\n {change.title}\n </Text>\n {change.description ? (\n <Text color=\"fg.subtle\" textStyle=\"xs\">\n {change.description}\n </Text>\n ) : null}\n {change.link ? (\n <Link href={change.link} textStyle=\"xs\" width=\"fit-content\">\n Learn more\n </Link>\n ) : null}\n </Stack>\n </List.Item>\n ))}\n </List.Root>\n ) : null}\n </Stack>\n </Timeline.Content>\n </Timeline.Item>\n ))}\n </Timeline.Root>\n </Box>\n </Stack>\n );\n};\n","import { Box, Collapsible, HStack, Icon, Stack, Text, useEnvironmentContext } from \"@chakra-ui/react\";\nimport { ChevronDown, ChevronRight, FileText } from \"lucide-react\";\nimport { useEffect, useRef, useState } from \"react\";\n\ninterface DocHeading {\n id: string;\n level: number;\n text: string;\n}\n\ninterface HeadingElementsMatch {\n elementsByHeadingId: Map<string, HTMLElement>;\n headingIdByElement: Map<HTMLElement, string>;\n}\n\nexport interface DocsOutlineProps {\n markdown: string;\n title?: string;\n rootMargin?: string;\n}\n\ninterface DocsOutlineItemProps {\n heading: DocHeading;\n isActive: boolean;\n emphasized: boolean;\n variant: \"line\" | \"minimal\";\n onSelect: (headingId: string) => void;\n}\n\nconst HEADING_REGEX = /^(#{1,3})\\s+(.+)$/gm;\nconst HEADING_SELECTOR = \".rich-text__h1, .rich-text__h2, .rich-text__h3\";\n\nconst isHeadingLevelMatch = (element: Element, level: number) => {\n return element.classList.contains(`rich-text__h${level}`);\n};\n\nconst slugifyHeading = (value: string) => {\n return value\n .toLowerCase()\n .replace(/[^a-z0-9]+/g, \"-\")\n .replace(/^-+|-+$/g, \"\");\n};\n\nexport const extractHeadings = (markdown: string) => {\n const headings: DocHeading[] = [];\n let headingIndex = 0;\n\n for (const match of markdown.matchAll(HEADING_REGEX)) {\n const level = match[1]!.length;\n const text = match[2]!.trim();\n const slug = slugifyHeading(text);\n const id = `${slug || \"heading\"}-${headingIndex}`;\n\n headings.push({ id, level, text });\n headingIndex += 1;\n }\n\n return headings;\n};\n\nconst matchHeadingElements = (headings: DocHeading[], doc: Document) => {\n const elements = Array.from(doc.querySelectorAll(HEADING_SELECTOR));\n const elementsByHeadingId = new Map<string, HTMLElement>();\n const headingIdByElement = new Map<HTMLElement, string>();\n let nextElementIndex = 0;\n\n for (const heading of headings) {\n for (let elementIndex = nextElementIndex; elementIndex < elements.length; elementIndex += 1) {\n const element = elements[elementIndex] as HTMLElement;\n const elementText = element.textContent?.trim();\n\n if (!elementText || elementText !== heading.text) {\n continue;\n }\n\n if (!isHeadingLevelMatch(element, heading.level)) {\n continue;\n }\n\n elementsByHeadingId.set(heading.id, element);\n headingIdByElement.set(element, heading.id);\n nextElementIndex = elementIndex + 1;\n break;\n }\n }\n\n return { elementsByHeadingId, headingIdByElement };\n};\n\nconst DocsOutlineItem = (props: DocsOutlineItemProps) => {\n const { heading, isActive, emphasized, variant, onSelect } = props;\n const isLine = variant === \"line\";\n\n return (\n <Box\n as=\"button\"\n py=\"1.5\"\n px=\"0\"\n width=\"full\"\n display=\"flex\"\n textAlign=\"left\"\n textStyle=\"sm\"\n cursor=\"pointer\"\n textDecoration=\"none\"\n transition=\"all 0.15s ease\"\n paddingInlineStart={`calc(${heading.level} * 0.75rem)`}\n color={isActive ? \"fg\" : \"fg.muted\"}\n fontWeight={isActive || emphasized ? \"medium\" : \"normal\"}\n borderStartWidth={isLine ? \"1px\" : \"0px\"}\n borderStartColor={isLine ? (isActive ? \"fg\" : \"bg.muted\") : \"transparent\"}\n _hover={isLine ? { borderStartColor: \"bg.emphasized\" } : { color: \"fg\" }}\n onClick={() => onSelect(heading.id)}\n >\n {heading.text}\n </Box>\n );\n};\n\nexport const DocsOutline = (props: DocsOutlineProps) => {\n const { markdown, title = \"On this page\", rootMargin = \"-20% 0% -35% 0%\" } = props;\n const headings = extractHeadings(markdown);\n const env = useEnvironmentContext();\n const [activeHeadingId, setActiveHeadingId] = useState(headings[0]?.id ?? \"\");\n const [isMobileOpen, setIsMobileOpen] = useState(false);\n const headingElementsMatchRef = useRef<HeadingElementsMatch>({\n elementsByHeadingId: new Map(),\n headingIdByElement: new Map(),\n });\n\n useEffect(() => {\n const extractedHeadings = extractHeadings(markdown);\n setActiveHeadingId(extractedHeadings[0]?.id ?? \"\");\n }, [markdown]);\n\n useEffect(() => {\n const headingsForObserver = extractHeadings(markdown);\n const doc = env.getDocument();\n const win = env.getWindow();\n const nextMatch = matchHeadingElements(headingsForObserver, doc);\n\n headingElementsMatchRef.current = nextMatch;\n\n if (nextMatch.headingIdByElement.size === 0) {\n return;\n }\n\n const observer = new win.IntersectionObserver(\n (entries) => {\n const visibleEntries = entries\n .filter((entry) => entry.isIntersecting)\n .sort((first, second) => first.boundingClientRect.top - second.boundingClientRect.top);\n\n if (visibleEntries.length === 0) {\n return;\n }\n\n const target = visibleEntries[0]!.target as HTMLElement;\n const nextActiveHeadingId = nextMatch.headingIdByElement.get(target);\n\n if (nextActiveHeadingId) {\n setActiveHeadingId(nextActiveHeadingId);\n }\n },\n { rootMargin },\n );\n\n for (const element of nextMatch.headingIdByElement.keys()) {\n observer.observe(element);\n }\n\n return () => {\n observer.disconnect();\n };\n }, [env, markdown, rootMargin]);\n\n if (headings.length === 0) {\n return null;\n }\n\n const activeHeading = headings.find((heading) => heading.id === activeHeadingId);\n\n const handleHeadingSelect = (headingId: string) => {\n const headingElement = headingElementsMatchRef.current.elementsByHeadingId.get(headingId);\n setActiveHeadingId(headingId);\n setIsMobileOpen(false);\n headingElement?.scrollIntoView({ behavior: \"smooth\", block: \"start\" });\n };\n\n return (\n <Stack gap=\"0\" width=\"full\">\n <Box hideFrom=\"md\" px=\"4\" py=\"2\" w=\"full\" bg=\"bg.subtle\" borderWidth=\"1px\">\n <Collapsible.Root open={isMobileOpen} onOpenChange={(details) => setIsMobileOpen(details.open)}>\n <Collapsible.Trigger width=\"full\" display=\"flex\" alignItems=\"center\" justifyContent=\"space-between\">\n <HStack>\n <Icon as={FileText} color=\"fg.subtle\" />\n <Text textStyle=\"sm\" fontWeight=\"medium\" color=\"fg\">\n {title}\n </Text>\n {!isMobileOpen ? (\n <>\n <Icon as={ChevronRight} color=\"fg.subtle\" />\n <Text textStyle=\"sm\" color=\"fg.muted\">\n {activeHeading?.text}\n </Text>\n </>\n ) : null}\n </HStack>\n <Box transition=\"transform 0.2s\" transform={isMobileOpen ? \"rotate(180deg)\" : \"rotate(0deg)\"}>\n <Icon as={ChevronDown} color=\"fg.subtle\" />\n </Box>\n </Collapsible.Trigger>\n\n <Collapsible.Content>\n <Box mt=\"3\" maxH=\"30vh\" overflowY=\"auto\">\n <Stack gap=\"0\">\n {headings.map((heading) => (\n <DocsOutlineItem\n key={heading.id}\n heading={heading}\n variant=\"minimal\"\n emphasized={false}\n isActive={activeHeadingId === heading.id}\n onSelect={handleHeadingSelect}\n />\n ))}\n </Stack>\n </Box>\n </Collapsible.Content>\n </Collapsible.Root>\n </Box>\n\n <Box hideBelow=\"md\" top=\"6\" width=\"xs\" overflowY=\"auto\" position=\"sticky\" maxH=\"calc(100vh - 3rem)\">\n <HStack mb=\"4\">\n <Icon as={FileText} color=\"fg.subtle\" />\n <Text fontWeight=\"medium\" textStyle=\"sm\">\n {title}\n </Text>\n </HStack>\n\n <Stack gap=\"0\">\n {headings.map((heading) => (\n <DocsOutlineItem\n key={heading.id}\n heading={heading}\n variant=\"line\"\n emphasized={heading.level === 1}\n isActive={activeHeadingId === heading.id}\n onSelect={handleHeadingSelect}\n />\n ))}\n </Stack>\n </Box>\n </Stack>\n );\n};\n","import { Box, Button, HStack, Stack, Text } from \"@chakra-ui/react\";\nimport { ChevronLeft, ChevronRight } from \"lucide-react\";\n\nexport interface DocsPaginationItem {\n href: string;\n title: string;\n description?: string;\n}\n\nexport interface DocsPaginationProps {\n previous?: DocsPaginationItem;\n next?: DocsPaginationItem;\n}\n\ninterface DocsPaginationLinkProps {\n item: DocsPaginationItem;\n direction: \"prev\" | \"next\";\n}\n\nconst DocsPaginationLink = (props: DocsPaginationLinkProps) => {\n const { item, direction } = props;\n const isPrevious = direction === \"prev\";\n const directionText = isPrevious ? \"Previous\" : \"Next\";\n\n return (\n <Button\n asChild\n variant=\"ghost\"\n colorPalette=\"gray\"\n gap=\"3\"\n size=\"sm\"\n h=\"auto\"\n py=\"2\"\n textAlign={isPrevious ? \"start\" : \"end\"}\n justifyContent={isPrevious ? \"flex-start\" : \"flex-end\"}\n flex=\"1\"\n >\n <a href={item.href}>\n {isPrevious ? <ChevronLeft size={16} /> : null}\n <Stack gap=\"0\" alignItems={isPrevious ? \"flex-start\" : \"flex-end\"}>\n <Text textStyle=\"sm\" color=\"fg.muted\" fontWeight=\"normal\">\n {directionText}\n </Text>\n <Text textStyle=\"sm\" fontWeight=\"medium\">\n {item.title}\n </Text>\n {item.description ? (\n <Text textStyle=\"xs\" color=\"fg.subtle\" fontWeight=\"normal\">\n {item.description}\n </Text>\n ) : null}\n </Stack>\n {isPrevious ? null : <ChevronRight size={16} />}\n </a>\n </Button>\n );\n};\n\nexport const DocsPagination = (props: DocsPaginationProps) => {\n const { previous, next } = props;\n\n if (!previous && !next) {\n return null;\n }\n\n return (\n <HStack justify=\"space-between\" gap=\"4\">\n <Box flex=\"1\">{previous ? <DocsPaginationLink item={previous} direction=\"prev\" /> : null}</Box>\n <Box flex=\"1\">{next ? <DocsPaginationLink item={next} direction=\"next\" /> : null}</Box>\n </HStack>\n );\n};\n","import { Box, Collapsible, Flex, Menu, Stack, Text } from \"@chakra-ui/react\";\nimport { ChevronRight } from \"lucide-react\";\nimport type { ReactNode } from \"react\";\n\nexport interface ItemSectionProps {\n children: ReactNode;\n title?: string;\n defaultOpen?: boolean;\n action?: ReactNode;\n}\n\n/**\n * A collapsible component that displays a section of items (typically MenuItems).\n */\nexport const ItemSection = (props: ItemSectionProps) => {\n const { children, title, defaultOpen = true, action } = props;\n\n return (\n <Collapsible.Root defaultOpen={defaultOpen} width=\"full\">\n <Flex>\n <Collapsible.Trigger\n _hover={{\n background: \"bg.muted\",\n }}\n borderRadius={\"xs\"}\n padding=\"sm\"\n height=\"2rem\"\n display=\"flex\"\n width=\"full\"\n gap=\"2\"\n alignItems=\"center\"\n cursor=\"pointer\"\n justifyContent=\"space-between\"\n >\n {title && (\n <Text fontWeight=\"600\" textStyle=\"label/S/medium\">\n {title}\n </Text>\n )}\n <Collapsible.Indicator transition=\"transform 0.2s\" _open={{ transform: \"rotate(90deg)\" }}>\n <ChevronRight size={16} />\n </Collapsible.Indicator>\n </Collapsible.Trigger>\n {action && (\n <Box marginLeft=\"auto\" onClick={(e) => e.stopPropagation()}>\n {action}\n </Box>\n )}\n </Flex>\n <Collapsible.Content>\n <Menu.Root>\n <Stack gap=\"0\" paddingLeft=\"xs\" paddingY=\"xs\">\n {children}\n </Stack>\n </Menu.Root>\n </Collapsible.Content>\n </Collapsible.Root>\n );\n};\n","import type { IconProps } from \"@chakra-ui/react\";\nimport { Badge, MenuItem as ChakraMenuItem, Flex, Icon, Stack, Text } from \"@chakra-ui/react\";\nimport type { ComponentProps, MouseEvent as ReactMouseEvent, ReactNode } from \"react\";\nimport { Tooltip } from \"./tooltip\";\n\ntype ChakraMenuItemProps = ComponentProps<typeof ChakraMenuItem>;\ntype MenuItemIcon = ComponentProps<typeof Icon>[\"as\"];\ntype MenuItemIconColor = IconProps[\"color\"];\ntype MenuItemTagColor = ComponentProps<typeof Badge>[\"colorPalette\"];\ntype MenuItemTagVariant = ComponentProps<typeof Badge>[\"variant\"];\ntype MenuItemVariant = \"default\" | \"compact\";\n\nconst menuItemVariantStyles = {\n default: {\n paddingX: \"sm\",\n paddingY: \"xs\",\n minHeight: \"2rem\",\n iconSize: \"19px\",\n primaryTextStyle: \"label/M/regular\",\n secondaryMarginLeft: \"2px\",\n secondaryTextStyle: \"label/XS/regular\",\n },\n compact: {\n paddingX: \"xs\",\n paddingY: \"2xs\",\n minHeight: \"1.75rem\",\n iconSize: \"16px\",\n primaryTextStyle: \"label/S/regular\",\n secondaryMarginLeft: \"0\",\n secondaryTextStyle: \"label/XS/regular\",\n },\n} as const;\n\nexport interface MenuItemProps {\n id?: string;\n children?: ReactNode;\n isDisabled?: boolean;\n isSelected?: boolean;\n primaryLabel: string;\n secondaryLabel?: string;\n tooltipLabel?: ReactNode;\n leftIcon?: MenuItemIcon | null;\n leftSlot?: ReactNode;\n rightIcon?: MenuItemIcon | null;\n leftIconColor?: MenuItemIconColor;\n rightIconColor?: MenuItemIconColor;\n leftIconSize?: string;\n rightIconSize?: string;\n rightIconAriaLabel?: string;\n rightTooltipLabel?: ReactNode;\n onRightIconClick?: () => void;\n tagLabel?: ReactNode;\n tagColorPalette?: MenuItemTagColor;\n tagVariant?: MenuItemTagVariant;\n variant?: MenuItemVariant;\n tabIndex?: number;\n width?: ChakraMenuItemProps[\"width\"];\n maxWidth?: ChakraMenuItemProps[\"maxWidth\"];\n setRefElement?: ChakraMenuItemProps[\"ref\"];\n onClick?: ChakraMenuItemProps[\"onClick\"];\n onMouseDown?: ChakraMenuItemProps[\"onMouseDown\"];\n onMouseEnter?: ChakraMenuItemProps[\"onMouseEnter\"];\n}\n\nexport const MenuItem = (props: MenuItemProps) => {\n const {\n id,\n primaryLabel,\n tooltipLabel,\n secondaryLabel,\n leftIcon = null,\n leftSlot,\n rightIcon,\n leftIconColor = \"fg.menu-item.default\",\n rightIconColor = \"fg.menu-item.default\",\n leftIconSize,\n rightIconSize,\n rightIconAriaLabel,\n rightTooltipLabel,\n onRightIconClick,\n isDisabled,\n isSelected,\n tagLabel,\n tagColorPalette = \"yellow\",\n tagVariant = \"subtle\",\n variant = \"default\",\n tabIndex,\n width,\n maxWidth,\n setRefElement,\n } = props;\n const { onClick, onMouseDown, onMouseEnter } = props;\n const variantStyles = menuItemVariantStyles[variant];\n const backgroundColor = isSelected ? \"bg.menu-item.selected\" : \"bg.menu-item.default\";\n const resolvedLeftIconSize = leftIconSize ?? variantStyles.iconSize;\n const resolvedRightIconSize = rightIconSize ?? variantStyles.iconSize;\n const isRightIconInteractive = Boolean(onRightIconClick && rightIcon);\n\n const handleRightIconMouseDown = (event: ReactMouseEvent<HTMLElement>) => {\n if (!isRightIconInteractive) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n };\n\n const handleRightIconClick = (event: ReactMouseEvent<HTMLElement>) => {\n if (!isRightIconInteractive || !onRightIconClick) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n onRightIconClick();\n };\n\n return (\n <ChakraMenuItem\n id={id}\n ref={setRefElement}\n tabIndex={tabIndex}\n disabled={isDisabled}\n aria-selected={isSelected}\n paddingX={variantStyles.paddingX}\n paddingY={variantStyles.paddingY}\n onClick={onClick}\n onMouseDown={onMouseDown}\n onMouseEnter={onMouseEnter}\n height=\"auto\"\n minHeight={variantStyles.minHeight}\n role=\"option\"\n width={width}\n maxWidth={maxWidth ?? \"20rem\"}\n overflow={\"hidden\"}\n position=\"relative\"\n cursor={isDisabled ? \"default\" : \"pointer\"}\n value={id ?? primaryLabel}\n bg={backgroundColor}\n _hover={{ bg: \"bg.menu-item.hover\" }}\n _focus={{ bg: \"bg.menu-item.focus\" }}\n >\n <Flex justifyContent=\"space-between\" alignItems=\"center\" gap=\"xs\" flex=\"1\">\n <Tooltip positioning={{ placement: \"right\" }} content={tooltipLabel} disabled={!tooltipLabel}>\n <Stack gap=\"2xs\">\n <Flex alignItems=\"flex-start\" gap=\"xs\" flex=\"1\">\n {leftSlot ? (\n leftSlot\n ) : leftIcon ? (\n <Icon as={leftIcon} boxSize={resolvedLeftIconSize} color={leftIconColor} />\n ) : null}\n <Text lineClamp={1} textOverflow=\"ellipsis\" textStyle={variantStyles.primaryTextStyle}>\n {primaryLabel}\n </Text>\n </Flex>\n {secondaryLabel && (\n <Text\n ml={variantStyles.secondaryMarginLeft}\n lineClamp={1}\n textOverflow=\"ellipsis\"\n textStyle={variantStyles.secondaryTextStyle}\n color=\"fg.menu-item.secondary\"\n >\n {secondaryLabel}\n </Text>\n )}\n </Stack>\n </Tooltip>\n <Flex justifyContent=\"flex-end\" color=\"fg.menu-item.default\">\n {rightIcon ? (\n <Tooltip positioning={{ placement: \"right\" }} content={rightTooltipLabel} disabled={!rightTooltipLabel}>\n <Flex\n as={isRightIconInteractive ? \"button\" : \"div\"}\n alignItems=\"center\"\n aria-label={rightIconAriaLabel}\n cursor={isRightIconInteractive ? \"pointer\" : \"default\"}\n bg=\"transparent\"\n borderWidth=\"0\"\n padding=\"0\"\n onMouseDown={handleRightIconMouseDown}\n onClick={handleRightIconClick}\n >\n <Icon as={rightIcon} boxSize={resolvedRightIconSize} color={rightIconColor} />\n </Flex>\n </Tooltip>\n ) : null}\n </Flex>\n </Flex>\n {tagLabel ? (\n <Badge\n position=\"absolute\"\n top=\"xs\"\n right=\"sm\"\n textStyle=\"label/XS/medium\"\n px=\"xs\"\n py=\"2px\"\n borderRadius=\"md\"\n colorPalette={tagColorPalette}\n variant={tagVariant}\n pointerEvents=\"none\"\n >\n {tagLabel}\n </Badge>\n ) : null}\n </ChakraMenuItem>\n );\n};\n","import { Flex, Stack, Text } from \"@chakra-ui/react\";\nimport type { ReactNode } from \"react\";\n\ntype PanelMenuVariant = \"default\" | \"compact\";\n\nconst panelMenuVariantStyles = {\n default: {\n width: \"64\" as const,\n headerHeight: \"49px\",\n headerPadding: \"xs\" as const,\n headerTextStyle: \"label/L/medium\",\n contentPadding: \"xs\" as const,\n contentGap: \"xs\" as const,\n },\n compact: {\n width: \"64\" as const,\n headerHeight: \"49px\",\n headerPadding: \"xs\" as const,\n headerTextStyle: \"label/L/medium\",\n contentPadding: \"2xs\" as const,\n contentGap: \"2xs\" as const,\n },\n} as const;\n\ninterface PanelMenuProps {\n title: string;\n children?: ReactNode;\n variant?: PanelMenuVariant;\n}\n\nexport function PanelMenu(props: PanelMenuProps) {\n const { title, children, variant = \"default\" } = props;\n const styles = panelMenuVariantStyles[variant];\n\n return (\n <Stack borderRightWidth=\"1px\" width={styles.width} gap=\"0\" minH=\"0\">\n {title && (\n <Flex height={styles.headerHeight} p={styles.headerPadding} borderBottomWidth=\"1px\" alignItems=\"center\">\n <Text pb=\"0\" textStyle={styles.headerTextStyle} color=\"fg.muted\">\n {title}\n </Text>\n </Flex>\n )}\n\n {children && (\n <Stack p={styles.contentPadding} gap={styles.contentGap} flex=\"1\" minH=\"0\" overflowY=\"auto\">\n {children}\n </Stack>\n )}\n </Stack>\n );\n}\n","import { Menu, Text } from \"@chakra-ui/react\";\nimport { ItemSection } from \"../item-section\";\nimport { MenuItem } from \"../menu-item\";\nimport { PanelMenu } from \"../panel-menu\";\n\nexport interface DocsSidebarItem {\n text: string;\n link?: string;\n items?: DocsSidebarItem[];\n}\n\ninterface DocsSidebarEntryProps {\n item: DocsSidebarItem;\n activeLink: string | null;\n onSelectLink: (link: string) => void;\n shouldStartOpen?: (item: DocsSidebarItem) => boolean;\n}\n\nexport interface DocsSidebarProps {\n title: string;\n emptyMessage?: string;\n menuItems: DocsSidebarItem[];\n activeLink: string | null;\n onSelectLink: (link: string) => void;\n shouldStartOpen?: (item: DocsSidebarItem) => boolean;\n}\n\nconst DocsSidebarEntry = (props: DocsSidebarEntryProps) => {\n const { item, activeLink, onSelectLink, shouldStartOpen } = props;\n const children = item.items ?? [];\n const hasChildren = children.length > 0;\n\n if (!hasChildren && item.link) {\n const link = item.link;\n const isActive = item.link === activeLink;\n return (\n <Menu.Root>\n <MenuItem primaryLabel={item.text} isSelected={isActive} variant=\"compact\" onClick={() => onSelectLink(link)} />\n </Menu.Root>\n );\n }\n\n if (!hasChildren) {\n return (\n <Menu.Root>\n <MenuItem primaryLabel={item.text} isDisabled variant=\"compact\" />\n </Menu.Root>\n );\n }\n\n const defaultOpen = shouldStartOpen?.(item) ?? false;\n\n return (\n <ItemSection title={item.text} defaultOpen={defaultOpen}>\n {children.map((child, index) => (\n <DocsSidebarEntry\n key={`${child.text}-${child.link ?? index}`}\n item={child}\n activeLink={activeLink}\n onSelectLink={onSelectLink}\n shouldStartOpen={shouldStartOpen}\n />\n ))}\n </ItemSection>\n );\n};\n\nexport const DocsSidebar = (props: DocsSidebarProps) => {\n const { title, emptyMessage, menuItems, activeLink, onSelectLink, shouldStartOpen } = props;\n\n return (\n <PanelMenu title={title} variant=\"compact\">\n {menuItems.length === 0 ? (\n <Text textStyle=\"paragraph/S/regular\" color=\"fg.muted\" p=\"xs\">\n {emptyMessage ?? \"No files found\"}\n </Text>\n ) : (\n menuItems.map((item, index) => (\n <DocsSidebarEntry\n key={`${item.text}-${item.link ?? index}`}\n item={item}\n activeLink={activeLink}\n onSelectLink={onSelectLink}\n shouldStartOpen={shouldStartOpen}\n />\n ))\n )}\n </PanelMenu>\n );\n};\n","import { AbsoluteCenter, Button, Stack, Text } from \"@chakra-ui/react\";\nimport { Component, type ErrorInfo, type ReactNode } from \"react\";\n\nimport { AlertMessage } from \"./alert\";\nimport { ContentPlaceholder } from \"./content-placeholder\";\n\ninterface ErrorBoundaryProps {\n children: ReactNode;\n fallback?: ReactNode;\n label?: string;\n onReset?: () => void;\n}\n\ninterface ErrorBoundaryState {\n error: Error | null;\n}\n\nexport class ErrorBoundary extends Component<ErrorBoundaryProps, ErrorBoundaryState> {\n state: ErrorBoundaryState = { error: null };\n\n static getDerivedStateFromError(error: Error) {\n return { error };\n }\n\n componentDidCatch(error: Error, info: ErrorInfo) {\n console.error(\"Dashboard error boundary caught an error\", error, info);\n }\n\n handleReset = () => {\n this.setState({ error: null });\n this.props.onReset?.();\n };\n\n render() {\n const { children, fallback, label } = this.props;\n const { error } = this.state;\n\n if (error) {\n if (fallback) {\n return fallback;\n }\n\n return <ErrorFallback error={error} label={label} onReset={this.handleReset} />;\n }\n\n return children;\n }\n}\n\ninterface ErrorFallbackProps {\n error: Error;\n label?: string;\n onReset?: () => void;\n}\n\nexport const ErrorFallback = (props: ErrorFallbackProps) => {\n const { error, label, onReset } = props;\n\n return (\n <ContentPlaceholder height=\"100%\" width=\"100%\">\n <AbsoluteCenter>\n <AlertMessage\n status=\"error\"\n title={<Text textStyle=\"paragraph/M/medium\">{label ?? \"Something went wrong\"}</Text>}\n >\n <Stack gap=\"sm\">\n <Text textStyle=\"paragraph/S/regular\">\n {error.message || \"An unexpected error occurred while rendering this section.\"}\n </Text>\n {onReset ? (\n <Button size=\"sm\" variant=\"solid\" colorScheme={\"black\"} onClick={onReset}>\n Try again\n </Button>\n ) : null}\n </Stack>\n </AlertMessage>\n </AbsoluteCenter>\n </ContentPlaceholder>\n );\n};\n","import { Button, Dialog, Menu, Stack, Text } from \"@chakra-ui/react\";\nimport { ChevronUp, FileText, Folder, FolderOpen, Home } from \"lucide-react\";\nimport { MenuItem } from \"./menu-item\";\n\nexport interface FolderPickerDialogEntry {\n name: string;\n path: string;\n isDirectory: boolean;\n isGitRepo: boolean;\n}\n\ninterface FolderPickerDialogProps {\n open: boolean;\n title?: string;\n description?: string;\n currentPath?: string;\n entries: FolderPickerDialogEntry[];\n selectedPath?: string | null;\n selectedPaths?: string[];\n isLoading?: boolean;\n error?: string;\n isSelectDisabled?: boolean;\n onClose: () => void;\n onSelect: () => void;\n onSelectHomeDirectory: () => void;\n onSelectParentDirectory: () => void;\n onEntryClick: (entry: FolderPickerDialogEntry) => void;\n}\n\nexport type { FolderPickerDialogProps };\n\nexport const FolderPickerDialog = (props: FolderPickerDialogProps) => {\n const {\n open,\n title = \"Select folder\",\n description,\n currentPath = \"\",\n entries,\n selectedPath = null,\n selectedPaths = [],\n isLoading = false,\n error = \"\",\n isSelectDisabled = false,\n onClose,\n onSelect,\n onSelectHomeDirectory,\n onSelectParentDirectory,\n onEntryClick,\n } = props;\n\n const selectedPathSet = new Set(selectedPaths);\n\n return (\n <Dialog.Root closeOnInteractOutside={false} open={open} onOpenChange={(details) => !details.open && onClose()}>\n <Dialog.Backdrop />\n <Dialog.Positioner>\n <Dialog.Content>\n <Dialog.Header>\n <Stack gap=\"xs\">\n <Text textStyle=\"heading/M\">{title}</Text>\n {description ? (\n <Text textStyle=\"paragraph/S/regular\" color=\"fg.muted\">\n {description}\n </Text>\n ) : null}\n </Stack>\n </Dialog.Header>\n <Dialog.Body>\n <Stack gap=\"md\">\n <Stack direction=\"row\" gap=\"sm\" align=\"center\">\n <Button aria-label=\"Go to home directory\" variant=\"outline\" size=\"sm\" onClick={onSelectHomeDirectory}>\n <Home size={16} />\n </Button>\n <Button\n aria-label=\"Go to parent directory\"\n variant=\"outline\"\n size=\"sm\"\n onClick={onSelectParentDirectory}\n disabled={!currentPath || currentPath === \"/\"}\n >\n <ChevronUp size={16} />\n </Button>\n <Text textStyle=\"paragraph/S/regular\" color=\"fg.muted\" flex=\"1\" lineClamp={1}>\n {currentPath || \"Home\"}\n </Text>\n </Stack>\n\n <Stack\n gap=\"xs\"\n borderWidth=\"1px\"\n borderRadius=\"md\"\n borderColor=\"border.muted\"\n padding=\"sm\"\n maxHeight=\"320px\"\n overflowY=\"auto\"\n >\n {isLoading ? (\n <Text textStyle=\"paragraph/S/regular\" color=\"fg.muted\">\n Loading...\n </Text>\n ) : error ? (\n <Text textStyle=\"paragraph/S/regular\" color=\"red.500\">\n {error}\n </Text>\n ) : entries.length === 0 ? (\n <Text textStyle=\"paragraph/S/regular\" color=\"fg.muted\">\n No entries found.\n </Text>\n ) : (\n <Stack gap=\"xs\">\n {entries.map((entry) => {\n const leftIcon = entry.isDirectory ? (entry.isGitRepo ? FolderOpen : Folder) : FileText;\n const isAlreadySelected = entry.isGitRepo && selectedPathSet.has(entry.path);\n\n return (\n <Menu.Root key={entry.path}>\n <MenuItem\n primaryLabel={entry.name}\n leftIcon={leftIcon}\n tagLabel={entry.isGitRepo ? \"Git repo\" : undefined}\n tagColorPalette={entry.isGitRepo ? \"green\" : undefined}\n isDisabled={!entry.isDirectory || isAlreadySelected}\n isSelected={selectedPath === entry.path}\n width=\"100%\"\n maxWidth=\"100%\"\n onClick={() => {\n if (isAlreadySelected) {\n return;\n }\n\n onEntryClick(entry);\n }}\n />\n </Menu.Root>\n );\n })}\n </Stack>\n )}\n </Stack>\n </Stack>\n </Dialog.Body>\n <Dialog.Footer>\n <Stack direction=\"row\" gap=\"sm\">\n <Button variant=\"outline\" onClick={onClose}>\n Cancel\n </Button>\n <Button onClick={onSelect} disabled={isSelectDisabled}>\n Select repository\n </Button>\n </Stack>\n </Dialog.Footer>\n </Dialog.Content>\n </Dialog.Positioner>\n </Dialog.Root>\n );\n};\n","import { HStack, type StackProps } from \"@chakra-ui/react\";\n\ninterface HorizontalMenuStackProps extends StackProps {\n children?: StackProps[\"children\"];\n}\n\nexport function HorizontalMenuStack(props: HorizontalMenuStackProps) {\n const { children, ...rest } = props;\n\n return (\n <HStack {...rest} minH=\"49px\" justify=\"space-between\" align=\"center\" borderBottomWidth=\"1px\" p=\"xs\">\n {children}\n </HStack>\n );\n}\n","import { Box, HStack, Link, Separator, Stack, Text } from \"@chakra-ui/react\";\n\nexport interface OpenSourceNotice {\n name: string;\n version?: string;\n license?: string;\n copyright?: string;\n homepageUrl?: string;\n sourceUrl?: string;\n attribution?: string;\n}\n\nexport interface OpenSourceNoticesScreenProps {\n notices: OpenSourceNotice[];\n title?: string;\n description?: string;\n productName?: string;\n productVersion?: string;\n generatedAt?: string;\n emptyTitle?: string;\n emptyDescription?: string;\n}\n\nconst getNoticeKey = (notice: OpenSourceNotice, index: number) => {\n return `${notice.name}-${notice.version ?? \"unknown\"}-${index}`;\n};\n\nconst getNoticeTitle = (notice: OpenSourceNotice) => {\n if (!notice.version) return notice.name;\n\n return `${notice.name} v${notice.version}`;\n};\n\nexport const OpenSourceNoticesScreen = (props: OpenSourceNoticesScreenProps) => {\n const {\n notices,\n title = \"Open Source and Third-Party Notices\",\n description = \"This product includes software developed by the open source community.\",\n productName,\n productVersion,\n generatedAt,\n emptyTitle = \"No third-party notices available\",\n emptyDescription = \"No third-party packages were included in this build.\",\n } = props;\n\n return (\n <Stack width=\"full\" minHeight=\"100%\" background=\"bg\" color=\"fg\" padding={{ base: \"md\", md: \"xl\" }} gap=\"lg\">\n <Stack gap=\"xs\">\n <Text textStyle=\"heading/L\">{title}</Text>\n <Text textStyle=\"paragraph/S/regular\" color=\"fg.muted\">\n {description}\n </Text>\n\n <HStack gap=\"md\" flexWrap=\"wrap\">\n {productName ? (\n <Text textStyle=\"label/XS\" color=\"fg.muted\">\n Product: {productName}\n </Text>\n ) : null}\n\n {productVersion ? (\n <Text textStyle=\"label/XS\" color=\"fg.muted\">\n Version: {productVersion}\n </Text>\n ) : null}\n\n <Text textStyle=\"label/XS\" color=\"fg.muted\">\n Packages: {notices.length}\n </Text>\n\n {generatedAt ? (\n <Text textStyle=\"label/XS\" color=\"fg.muted\">\n Generated: {generatedAt}\n </Text>\n ) : null}\n </HStack>\n </Stack>\n\n <Separator borderColor=\"border.muted\" />\n\n {notices.length === 0 ? (\n <Stack borderWidth=\"1px\" borderColor=\"border.muted\" borderRadius=\"md\" padding=\"lg\" gap=\"xs\">\n <Text textStyle=\"label/L/medium\">{emptyTitle}</Text>\n <Text textStyle=\"paragraph/S/regular\" color=\"fg.muted\">\n {emptyDescription}\n </Text>\n </Stack>\n ) : (\n <Stack gap=\"md\">\n {notices.map((notice, index) => (\n <Box\n key={getNoticeKey(notice, index)}\n borderWidth=\"1px\"\n borderColor=\"border.muted\"\n borderRadius=\"md\"\n padding=\"md\"\n >\n <Stack gap=\"sm\">\n <Stack gap=\"2xs\">\n <Text textStyle=\"label/L/medium\">{getNoticeTitle(notice)}</Text>\n <Text textStyle=\"label/S/regular\" color=\"fg.muted\">\n License: {notice.license ?? \"Unknown\"}\n </Text>\n </Stack>\n\n {notice.copyright ? (\n <Text textStyle=\"label/S/regular\" color=\"fg.muted\">\n {notice.copyright}\n </Text>\n ) : null}\n\n {(notice.homepageUrl || notice.sourceUrl) && (\n <Stack gap=\"2xs\">\n {notice.homepageUrl ? (\n <Link\n href={notice.homepageUrl}\n target=\"_blank\"\n rel=\"noreferrer\"\n textStyle=\"label/S/medium\"\n width=\"fit-content\"\n >\n Homepage\n </Link>\n ) : null}\n\n {notice.sourceUrl ? (\n <Link\n href={notice.sourceUrl}\n target=\"_blank\"\n rel=\"noreferrer\"\n textStyle=\"label/S/medium\"\n width=\"fit-content\"\n >\n Source code\n </Link>\n ) : null}\n </Stack>\n )}\n\n {notice.attribution ? (\n <Box background=\"bg.muted\" borderRadius=\"sm\" padding=\"sm\">\n <Text textStyle=\"label/S/regular\" whiteSpace=\"pre-wrap\">\n {notice.attribution}\n </Text>\n </Box>\n ) : null}\n </Stack>\n </Box>\n ))}\n </Stack>\n )}\n </Stack>\n );\n};\n","import { Box, Collapsible, HStack, Icon, Stack, Text } from \"@chakra-ui/react\";\nimport { ChevronRight, Info } from \"lucide-react\";\nimport type { ReactNode } from \"react\";\nimport { Tooltip } from \"./tooltip\";\n\nexport interface PropertyItem {\n label: string;\n description?: string;\n value: ReactNode;\n}\n\nexport interface PropertiesProps {\n items: PropertyItem[];\n title?: string;\n defaultOpen?: boolean;\n}\n\n/**\n * A collapsible component that displays a list of properties.\n *\n * Each property has a label, an optional description (shown as a tooltip), and a value (ReactNode).\n * All labels have the same fixed width for alignment.\n */\nexport const Properties = (props: PropertiesProps) => {\n const { items, title, defaultOpen = true } = props;\n\n return (\n <Collapsible.Root defaultOpen={defaultOpen} width=\"full\">\n <Collapsible.Trigger\n _hover={{\n background: \"bg.muted\",\n }}\n borderRadius={\"xs\"}\n padding=\"sm\"\n height=\"2rem\"\n display=\"flex\"\n gap=\"2\"\n alignItems=\"center\"\n cursor=\"pointer\"\n >\n {title && (\n <Text fontWeight=\"600\" textStyle=\"label/S/medium\">\n {title}\n </Text>\n )}\n <Collapsible.Indicator transition=\"transform 0.2s\" _open={{ transform: \"rotate(90deg)\" }}>\n <ChevronRight size={16} />\n </Collapsible.Indicator>\n </Collapsible.Trigger>\n <Collapsible.Content>\n <Stack gap=\"sm\" paddingLeft=\"sm\" paddingY=\"xs\">\n {items.map((item, index) => (\n <HStack key={`${item.label}-${index}`} gap=\"md\" alignItems=\"center\">\n <Box width=\"140px\" flexShrink={0}>\n <HStack gap=\"1\" alignItems=\"center\">\n <Text textStyle=\"label/S/medium\" color=\"fg.muted\">\n {item.label}\n </Text>\n {item.description && (\n <Tooltip content={item.description} showArrow>\n <Icon as={Info} boxSize=\"12px\" color=\"fg.muted\" opacity={0.6} cursor=\"help\" />\n </Tooltip>\n )}\n </HStack>\n </Box>\n <Box flex=\"1\">{item.value}</Box>\n </HStack>\n ))}\n </Stack>\n </Collapsible.Content>\n </Collapsible.Root>\n );\n};\n","import { Icon } from \"@chakra-ui/react\";\nimport { CircleAlert, CircleCheck, CircleDashed } from \"lucide-react\";\nimport type { ComponentProps } from \"react\";\n\nexport type SessionCompletionStatus = \"in_progress\" | \"awaiting_input\" | \"completed\" | \"failed\";\n\nexport const resolveSessionIndicatorIcon = (status: SessionCompletionStatus | undefined) => {\n if (status === \"completed\") return CircleCheck;\n if (status === \"failed\") return CircleAlert;\n return CircleDashed;\n};\n\nexport const resolveSessionIndicatorColor = (status: SessionCompletionStatus | undefined) => {\n if (status === \"completed\") return \"fg.success\";\n if (status === \"failed\") return \"fg.error\";\n return \"fg.muted\";\n};\n\ninterface SessionIndicatorProps {\n status?: SessionCompletionStatus;\n boxSize?: ComponentProps<typeof Icon>[\"boxSize\"];\n ariaLabel?: string;\n cursor?: ComponentProps<typeof Icon>[\"cursor\"];\n onClick?: ComponentProps<typeof Icon>[\"onClick\"];\n}\n\nexport const SessionIndicator = (props: SessionIndicatorProps) => {\n const { status, boxSize = \"14px\", ariaLabel = \"Session status\", cursor, onClick } = props;\n\n return (\n <Icon\n as={resolveSessionIndicatorIcon(status)}\n boxSize={boxSize}\n color={resolveSessionIndicatorColor(status)}\n aria-label={ariaLabel}\n cursor={cursor}\n onClick={onClick}\n />\n );\n};\n","import { Switch as ChakraSwitch } from \"@chakra-ui/react\";\nimport * as React from \"react\";\n\nexport interface SwitchProps extends ChakraSwitch.RootProps {\n inputProps?: React.InputHTMLAttributes<HTMLInputElement>;\n rootRef?: React.RefObject<HTMLLabelElement | null>;\n trackLabel?: { on: React.ReactNode; off: React.ReactNode };\n thumbLabel?: { on: React.ReactNode; off: React.ReactNode };\n}\n\nexport const Switch = React.forwardRef<HTMLInputElement, SwitchProps>(function Switch(props, ref) {\n const { inputProps, children, rootRef, trackLabel, thumbLabel, ...rest } = props;\n\n return (\n <ChakraSwitch.Root ref={rootRef} {...rest}>\n <ChakraSwitch.HiddenInput ref={ref} {...inputProps} />\n <ChakraSwitch.Control borderRadius=\"sm\">\n <ChakraSwitch.Thumb borderRadius=\"sm\">\n {thumbLabel && (\n <ChakraSwitch.ThumbIndicator fallback={thumbLabel?.off}>{thumbLabel?.on}</ChakraSwitch.ThumbIndicator>\n )}\n </ChakraSwitch.Thumb>\n {trackLabel && <ChakraSwitch.Indicator fallback={trackLabel.off}>{trackLabel.on}</ChakraSwitch.Indicator>}\n </ChakraSwitch.Control>\n {children != null && <ChakraSwitch.Label>{children}</ChakraSwitch.Label>}\n </ChakraSwitch.Root>\n );\n});\n","import { Badge, HStack, Stack, Text, Wrap } from \"@chakra-ui/react\";\nimport { GitBranchIcon } from \"lucide-react\";\nimport type { DragEventHandler, MouseEvent } from \"react\";\nimport { DiffBubble } from \"@/components/diff-bubble\";\nimport { Tooltip } from \"@/components/tooltip\";\nimport { type SessionCompletionStatus, SessionIndicator } from \"../session-indicator\";\n\nexport interface TicketCardBadge {\n label: string;\n color?: string;\n}\n\ninterface TicketCardProps {\n ticketId: string;\n parentPath?: string[];\n sessionIndicatorLabel?: string;\n sessionIndicatorStatus?: SessionCompletionStatus;\n title: string;\n badges?: TicketCardBadge[];\n diffAdditions?: number;\n diffDeletions?: number;\n isSelected?: boolean;\n draggable?: boolean;\n onDragStart?: DragEventHandler<HTMLDivElement>;\n onDragEnd?: DragEventHandler<HTMLDivElement>;\n onClick?: () => void;\n onDiffBadgeClick?: () => void;\n onSessionIndicatorClick?: () => void;\n}\n\nexport const TicketCard = (props: TicketCardProps) => {\n const {\n ticketId,\n parentPath = [],\n sessionIndicatorLabel,\n sessionIndicatorStatus,\n title,\n badges = [],\n diffAdditions,\n diffDeletions,\n isSelected = false,\n draggable,\n onDragStart,\n onDragEnd,\n onClick,\n onDiffBadgeClick,\n onSessionIndicatorClick,\n } = props;\n\n const handleDiffBadgeClick = (event: MouseEvent<HTMLSpanElement>) => {\n event.stopPropagation();\n onDiffBadgeClick?.();\n };\n\n const handleSessionIndicatorClick = (event: MouseEvent<SVGSVGElement>) => {\n event.stopPropagation();\n onSessionIndicatorClick?.();\n };\n\n return (\n <Stack\n gap=\"xs\"\n padding=\"sm\"\n borderRadius=\"sm\"\n borderWidth=\"1px\"\n width=\"calc(100% - 8px)\"\n alignSelf=\"center\"\n background=\"bg\"\n transition=\"box-shadow 0.2s ease-in-out, border-color 0.2s ease-in-out\"\n _hover={{\n borderColor: \"border.blue\",\n boxShadow: \"mid\",\n }}\n cursor={draggable ? \"grab\" : onClick ? \"pointer\" : \"default\"}\n draggable={draggable}\n onDragStart={onDragStart}\n onDragEnd={onDragEnd}\n onClick={onClick}\n data-selected={isSelected ? \"true\" : undefined}\n >\n <HStack justifyContent={\"space-between\"} gap=\"2xs\" flexWrap=\"wrap\">\n <HStack gap=\"2xs\" flexShrink={0}>\n <Text textStyle=\"label/S/regular\" flexShrink={0}>\n {parentPath.length > 0 && (\n <Text as=\"span\" color=\"subtle\">\n {parentPath.join(\" / \")} /{\" \"}\n </Text>\n )}\n {ticketId}\n </Text>\n {sessionIndicatorLabel ? (\n <Tooltip content={`Session ${sessionIndicatorLabel}`}>\n <SessionIndicator\n status={sessionIndicatorStatus}\n boxSize=\"12px\"\n aria-label={`Session ${sessionIndicatorLabel}`}\n cursor={onSessionIndicatorClick ? \"pointer\" : \"default\"}\n onClick={onSessionIndicatorClick ? handleSessionIndicatorClick : undefined}\n />\n </Tooltip>\n ) : null}\n </HStack>\n {typeof diffAdditions === \"number\" && typeof diffDeletions === \"number\" ? (\n <DiffBubble\n additions={diffAdditions}\n deletions={diffDeletions}\n variant=\"ghost\"\n size=\"small\"\n label={<GitBranchIcon size=\"12\" />}\n onClick={handleDiffBadgeClick}\n data-testid=\"ticket-diff-badge\"\n />\n ) : null}\n </HStack>\n\n <HStack align=\"start\" gap=\"2xs\" flexWrap=\"wrap\">\n <Text textStyle=\"label/S/regular\" flex=\"1\" minW=\"0\">\n {title}\n </Text>\n </HStack>\n\n {badges.length > 0 && (\n <Wrap gap=\"2xs\">\n {badges.map((badge) => (\n <Badge key={badge.label} variant=\"subtle\" colorPalette={badge.color ?? \"gray\"} textStyle=\"label/XS/medium\">\n {badge.label}\n </Badge>\n ))}\n </Wrap>\n )}\n </Stack>\n );\n};\n","import { Badge, HStack, Icon, IconButton, Menu, Spacer, Stack, Text } from \"@chakra-ui/react\";\nimport { MoreHorizontal, Plus } from \"lucide-react\";\nimport { type ComponentProps, type ComponentType, type DragEvent, useState } from \"react\";\n\nimport { MenuItem } from \"@/components/menu-item\";\nimport { Tooltip } from \"@/components/tooltip\";\n\nimport { TicketCard } from \"./ticket-card\";\n\ntype TicketCardProps = ComponentProps<typeof TicketCard>;\n\nexport interface TicketBoardItem {\n id: string;\n cardProps: Omit<TicketCardProps, \"draggable\" | \"onDragStart\" | \"onDragEnd\" | \"isSelected\">;\n}\n\nexport interface TicketBoardColumnAction {\n id: string;\n label: string;\n icon: ComponentType<{ size?: number | string }>;\n}\n\nexport interface TicketBoardColumn {\n id: string;\n label: string;\n color?: string;\n items: TicketBoardItem[];\n canDragIn: boolean;\n canDragOut: boolean;\n canCreate: boolean;\n actions: TicketBoardColumnAction[];\n}\n\ninterface TicketBoardProps {\n columns: TicketBoardColumn[];\n selectedItemId?: string | null;\n onMoveItem?: (itemId: string, targetColumnId: string) => void;\n onCreateStart?: (columnId: string) => void;\n onColumnAction?: (columnId: string, actionId: string) => Promise<void> | void;\n}\n\nexport const TicketBoard = (props: TicketBoardProps) => {\n const { columns, selectedItemId = null, onMoveItem, onCreateStart, onColumnAction } = props;\n\n const [activeColumn, setActiveColumn] = useState<string | null>(null);\n\n const handleDragStart = (itemId: string) => (event: DragEvent<HTMLDivElement>) => {\n event.dataTransfer.setData(\"text/plain\", itemId);\n event.dataTransfer.effectAllowed = \"move\";\n };\n\n const handleDragEnd = () => {\n setActiveColumn(null);\n };\n\n const handleDragOver = (columnId: string) => (event: DragEvent<HTMLDivElement>) => {\n event.preventDefault();\n event.dataTransfer.dropEffect = \"move\";\n setActiveColumn(columnId);\n };\n\n const handleDragLeave = (event: DragEvent<HTMLDivElement>) => {\n if (event.currentTarget.contains(event.relatedTarget as Node)) return;\n setActiveColumn(null);\n };\n\n const handleDrop = (columnId: string) => (event: DragEvent<HTMLDivElement>) => {\n event.preventDefault();\n setActiveColumn(null);\n\n const itemId = event.dataTransfer.getData(\"text/plain\");\n if (!itemId) return;\n\n onMoveItem?.(itemId, columnId);\n };\n\n return (\n <Stack\n height=\"100%\"\n direction=\"row\"\n gap=\"0\"\n align=\"stretch\"\n overflowX=\"auto\"\n overflowY=\"hidden\"\n paddingBottom=\"2xs\"\n >\n {columns.map((column) => (\n <Stack\n key={column.id}\n gap=\"xs\"\n _notFirst={{ borderLeft: \"1px solid\", borderColor: \"border\" }}\n background={activeColumn === column.id ? \"bg.subtle\" : \"bg\"}\n transition=\"background 150ms ease\"\n height=\"100%\"\n minH=\"240px\"\n overflow=\"hidden\"\n minW=\"260px\"\n flex=\"1 0 260px\"\n onDragOver={column.canDragIn ? handleDragOver(column.id) : undefined}\n onDragLeave={column.canDragIn ? handleDragLeave : undefined}\n onDrop={column.canDragIn ? handleDrop(column.id) : undefined}\n >\n <ColumnHeader column={column} onCreateStart={onCreateStart} onColumnAction={onColumnAction} />\n\n <Stack gap=\"sm\" flex=\"1\" minH=\"0\" overflowY=\"auto\">\n {column.items.map((item) => (\n <TicketCard\n key={item.id}\n {...item.cardProps}\n isSelected={item.id === selectedItemId}\n draggable={column.canDragOut}\n onDragStart={column.canDragOut ? handleDragStart(item.id) : undefined}\n onDragEnd={column.canDragOut ? handleDragEnd : undefined}\n />\n ))}\n </Stack>\n </Stack>\n ))}\n </Stack>\n );\n};\n\ninterface ColumnHeaderProps {\n column: TicketBoardColumn;\n onCreateStart?: (columnId: string) => void;\n onColumnAction?: (columnId: string, actionId: string) => Promise<void> | void;\n}\n\nconst ColumnHeader = (props: ColumnHeaderProps) => {\n const { column, onCreateStart, onColumnAction } = props;\n\n return (\n <HStack padding=\"xs\" gap=\"xs\" alignItems=\"center\">\n <Text textStyle=\"label/L/medium\">{column.label}</Text>\n\n <Badge variant=\"subtle\" colorPalette={column.color ?? \"gray\"}>\n {column.items.length}\n </Badge>\n\n <Spacer />\n\n {column.canCreate && onCreateStart && (\n <Tooltip content=\"Create new ticket\">\n <IconButton size=\"2xs\" variant=\"outline\" onClick={() => onCreateStart(column.id)} aria-label=\"Create ticket\">\n <Icon as={Plus} boxSize=\"12px\" />\n </IconButton>\n </Tooltip>\n )}\n\n {column.actions.length > 0 && (\n <Menu.Root>\n <Menu.Trigger asChild>\n <IconButton size=\"2xs\" variant=\"ghost\" aria-label={`Column actions for ${column.label}`}>\n <Icon as={MoreHorizontal} boxSize=\"12px\" />\n </IconButton>\n </Menu.Trigger>\n <Menu.Positioner>\n <Menu.Content minW=\"180px\" bg=\"bg\">\n {column.actions.map((action) => (\n <MenuItem\n key={action.id}\n primaryLabel={action.label}\n leftIcon={action.icon}\n onClick={() => onColumnAction?.(column.id, action.id)}\n />\n ))}\n </Menu.Content>\n </Menu.Positioner>\n </Menu.Root>\n )}\n </HStack>\n );\n};\n","import { Badge, Box, HStack, Icon, Text, Wrap } from \"@chakra-ui/react\";\nimport {\n type ColumnDef,\n type ExpandedState,\n flexRender,\n getCoreRowModel,\n getExpandedRowModel,\n type Row,\n useReactTable,\n} from \"@tanstack/react-table\";\nimport { ChevronRight } from \"lucide-react\";\nimport type { ComponentType, ReactNode } from \"react\";\n\nimport type { TicketCardBadge } from \"./ticket-card\";\n\nexport interface TicketListItem {\n id: string;\n ticketId: string;\n title: string;\n statusIcon?: ComponentType<{ size?: number | string }>;\n statusColor?: string;\n badges?: TicketCardBadge[];\n date?: string;\n assigneeIcon?: ReactNode;\n children?: TicketListItem[];\n onClick?: () => void;\n}\n\ninterface TicketListProps {\n items: TicketListItem[];\n selectedItemId?: string | null;\n onItemClick?: (item: TicketListItem) => void;\n}\n\nconst columns: ColumnDef<TicketListItem, unknown>[] = [\n {\n id: \"ticket\",\n header: \"\",\n cell: ({ row }) => <TicketCell row={row} />,\n },\n];\n\nexport const TicketList = (props: TicketListProps) => {\n const { items, selectedItemId = null, onItemClick } = props;\n\n const table = useReactTable({\n data: items,\n columns,\n state: { expanded: true as unknown as ExpandedState },\n getSubRows: (row) => row.children,\n getCoreRowModel: getCoreRowModel(),\n getExpandedRowModel: getExpandedRowModel(),\n getRowId: (row) => row.id,\n });\n\n return (\n <Box>\n {table.getRowModel().rows.map((row) => {\n const item = row.original;\n const isSelected = item.id === selectedItemId;\n\n return (\n <HStack\n key={row.id}\n paddingX=\"sm\"\n paddingY=\"xs\"\n gap=\"sm\"\n cursor=\"pointer\"\n borderBottomWidth=\"1px\"\n borderColor=\"border.muted\"\n background={isSelected ? \"bg.muted\" : \"transparent\"}\n _hover={{ background: \"bg.muted\" }}\n onClick={() => {\n item.onClick?.();\n onItemClick?.(item);\n }}\n data-selected={isSelected ? \"true\" : undefined}\n >\n {flexRender(row.getVisibleCells()[0].column.columnDef.cell, row.getVisibleCells()[0].getContext())}\n </HStack>\n );\n })}\n </Box>\n );\n};\n\ninterface TicketCellProps {\n row: Row<TicketListItem>;\n}\n\nconst TicketCell = (props: TicketCellProps) => {\n const { row } = props;\n const item = row.original;\n const depth = row.depth;\n\n return (\n <HStack gap=\"sm\" flex=\"1\" paddingLeft={depth > 0 ? `${depth * 24}px` : undefined}>\n {row.getCanExpand() ? <ExpandToggle row={row} /> : depth > 0 ? <TreeConnector /> : null}\n\n {item.statusIcon && (\n <Icon as={item.statusIcon} boxSize=\"16px\" color={item.statusColor ?? \"fg.muted\"} flexShrink={0} />\n )}\n\n <Text textStyle=\"label/S/regular\" color=\"fg.muted\" flexShrink={0} minW=\"70px\">\n {item.ticketId}\n </Text>\n\n <Text textStyle=\"label/S/regular\" flex=\"1\" truncate>\n {item.title}\n </Text>\n\n {item.badges && item.badges.length > 0 && (\n <Wrap gap=\"2xs\" flexShrink={0}>\n {item.badges.map((badge) => (\n <Badge key={badge.label} variant=\"subtle\" colorPalette={badge.color ?? \"gray\"} textStyle=\"label/XS/medium\">\n {badge.label}\n </Badge>\n ))}\n </Wrap>\n )}\n\n {item.assigneeIcon && <Box flexShrink={0}>{item.assigneeIcon}</Box>}\n\n {item.date && (\n <Text textStyle=\"label/XS/regular\" color=\"fg.muted\" flexShrink={0}>\n {item.date}\n </Text>\n )}\n </HStack>\n );\n};\n\ninterface ExpandToggleProps {\n row: Row<TicketListItem>;\n}\n\nconst ExpandToggle = (props: ExpandToggleProps) => {\n const { row } = props;\n\n return (\n <Box\n as=\"button\"\n onClick={(e) => {\n e.stopPropagation();\n row.toggleExpanded();\n }}\n cursor=\"pointer\"\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"center\"\n flexShrink={0}\n width=\"16px\"\n height=\"16px\"\n >\n <Icon\n as={ChevronRight}\n boxSize=\"14px\"\n color=\"fg.muted\"\n transform={row.getIsExpanded() ? \"rotate(90deg)\" : \"rotate(0deg)\"}\n transition=\"transform 0.15s ease\"\n />\n </Box>\n );\n};\n\nconst TreeConnector = () => (\n <Box width=\"16px\" height=\"16px\" position=\"relative\" flexShrink={0}>\n <Box position=\"absolute\" left=\"7px\" top=\"0\" bottom=\"50%\" borderLeftWidth=\"1px\" borderColor=\"border.muted\" />\n <Box position=\"absolute\" left=\"7px\" top=\"50%\" width=\"8px\" borderBottomWidth=\"1px\" borderColor=\"border.muted\" />\n </Box>\n);\n","import { Toaster as ChakraToaster, createToaster, Portal, Spinner, Stack, Toast } from \"@chakra-ui/react\";\n\nexport const toaster: ReturnType<typeof createToaster> = createToaster({\n placement: \"bottom-end\",\n pauseOnPageIdle: true,\n});\n\nexport const Toaster = () => {\n return (\n <Portal>\n <ChakraToaster toaster={toaster} insetInline={{ mdDown: \"4\" }}>\n {(toast) => (\n <Toast.Root width={{ md: \"sm\" }}>\n {toast.type === \"loading\" ? <Spinner size=\"sm\" color=\"blue.solid\" /> : <Toast.Indicator />}\n <Stack gap=\"1\" flex=\"1\" maxWidth=\"100%\">\n {toast.title && <Toast.Title>{toast.title}</Toast.Title>}\n {toast.description && <Toast.Description>{toast.description}</Toast.Description>}\n </Stack>\n {toast.action && <Toast.ActionTrigger>{toast.action.label}</Toast.ActionTrigger>}\n {toast.closable && <Toast.CloseTrigger />}\n </Toast.Root>\n )}\n </ChakraToaster>\n </Portal>\n );\n};\n","export type ThemePreference = \"light\" | \"dark\";\n\nexport const applyThemePreference = (theme: ThemePreference) => {\n if (typeof document === \"undefined\") return;\n\n const root = document.documentElement;\n const body = document.body;\n const opposite = theme === \"dark\" ? \"light\" : \"dark\";\n\n for (const el of [root, body]) {\n if (!el) continue;\n el.classList.remove(opposite);\n el.classList.add(theme);\n el.setAttribute(\"data-theme\", theme);\n el.style.colorScheme = theme;\n }\n};\n","import { createContext, type ReactNode, useContext, useEffect, useState } from \"react\";\n\nimport { applyThemePreference, type ThemePreference } from \"./apply-theme-preference\";\n\nconst STORAGE_KEY = \"theme-preference\";\n\nconst ThemePreferenceContext = createContext<ThemePreferenceContextValue | null>(null);\n\ninterface ThemePreferenceContextValue {\n themePreference: ThemePreference;\n setThemePreference: (preference: ThemePreference) => void;\n toggleThemePreference: () => void;\n}\n\ninterface ThemePreferenceProviderProps {\n children: ReactNode;\n initialPreference?: ThemePreference;\n}\n\nexport const getInitialThemePreference = () => {\n if (typeof window === \"undefined\") return \"light\";\n\n const stored = window.localStorage.getItem(STORAGE_KEY);\n if (stored === \"dark\" || stored === \"light\") return stored;\n\n const prefersDark =\n typeof window.matchMedia === \"function\" && window.matchMedia(\"(prefers-color-scheme: dark)\").matches;\n\n return prefersDark ? \"dark\" : \"light\";\n};\n\nexport const ThemePreferenceProvider = (props: ThemePreferenceProviderProps) => {\n const { children, initialPreference = getInitialThemePreference() } = props;\n const [themePreference, setThemePreference] = useState<ThemePreference>(initialPreference);\n\n useEffect(() => {\n applyThemePreference(themePreference);\n if (typeof window !== \"undefined\") {\n window.localStorage.setItem(STORAGE_KEY, themePreference);\n }\n }, [themePreference]);\n\n const toggleThemePreference = () => setThemePreference((prev) => (prev === \"dark\" ? \"light\" : \"dark\"));\n\n return (\n <ThemePreferenceContext value={{ themePreference, setThemePreference, toggleThemePreference }}>\n {children}\n </ThemePreferenceContext>\n );\n};\n\nexport const useThemePreference = () => {\n const context = useContext(ThemePreferenceContext);\n\n if (!context) {\n throw new Error(\"useThemePreference must be used within a ThemePreferenceProvider\");\n }\n\n return context;\n};\n"],"names":["AlertMessage","React","forwardRef","props","ref","$","_c","children","endElement","icon","rest","startElement","title","t0","jsx","ChakraAlert","t1","jsxs","t2","Breadcrumb","LinkComponent","items","separator","separatorGap","linkComponent","length","item","index","last","isInteractive","Boolean","url","onClick","itemContent","ChakraBreadcrumb","map","ContentPlaceholder","Symbol","for","backgroundClip","backgroundImage","display","width","Box","Label","Text","DeleteConfirmationModal","isDeleting","setIsDeleting","useState","headline","buttonText","notificationText","onDelete","open","onClose","handleDelete","Dialog","CloseButton","Stack","Button","getEntryKey","entry","version","date","getChangeKey","change","ChangelogDate","Timeline","Flex","DocsChangelog","entries","description","Heading","t3","_temp3","t4","t5","_temp","tag","Badge","_temp2","changeIndex","List","link","Link","entryIndex","base","md","tags","HStack","image","Image","changes","HEADING_REGEX","HEADING_SELECTOR","isHeadingLevelMatch","element","level","classList","contains","slugifyHeading","value","toLowerCase","replace","extractHeadings","markdown","headings","headingIndex","match","matchAll","text","trim","id","push","matchHeadingElements","doc","elements","Array","from","querySelectorAll","elementsByHeadingId","Map","headingIdByElement","nextElementIndex","heading","elementIndex","elementText","textContent","set","DocsOutlineItem","isActive","emphasized","variant","onSelect","isLine","borderStartColor","color","t6","t7","DocsOutline","rootMargin","undefined","env","useEnvironmentContext","activeHeadingId","setActiveHeadingId","isMobileOpen","setIsMobileOpen","headingElementsMatchRef","useRef","extractedHeadings","useEffect","headingsForObserver","getDocument","win","getWindow","nextMatch","current","size","observer","IntersectionObserver","visibleEntries","filter","sort","target","nextActiveHeadingId","get","keys","observe","disconnect","activeHeading","find","t8","headingId","headingElement","scrollIntoView","behavior","block","handleHeadingSelect","t9","details","t10","Icon","FileText","t11","t12","Fragment","ChevronRight","t13","t14","t15","ChevronDown","t16","t17","Collapsible","t18","heading_0","T0","t19","t20","t21","t22","t23","t24","t25","t26","T1","t27","t28","heading_1","t29","t30","t31","isIntersecting","first","second","boundingClientRect","top","DocsPaginationLink","direction","isPrevious","directionText","ChevronLeft","href","DocsPagination","previous","next","ItemSection","defaultOpen","action","background","transform","e","stopPropagation","menuItemVariantStyles","default","paddingX","paddingY","minHeight","iconSize","primaryTextStyle","secondaryMarginLeft","secondaryTextStyle","compact","MenuItem","primaryLabel","tooltipLabel","secondaryLabel","leftIcon","leftSlot","rightIcon","leftIconColor","rightIconColor","leftIconSize","rightIconSize","rightIconAriaLabel","rightTooltipLabel","onRightIconClick","isDisabled","isSelected","tagLabel","tagColorPalette","tagVariant","tabIndex","maxWidth","setRefElement","onMouseDown","onMouseEnter","variantStyles","backgroundColor","resolvedLeftIconSize","resolvedRightIconSize","isRightIconInteractive","event","preventDefault","handleRightIconMouseDown","event_0","handleRightIconClick","bg","placement","Tooltip","ChakraMenuItem","panelMenuVariantStyles","headerHeight","headerPadding","headerTextStyle","contentPadding","contentGap","PanelMenu","styles","DocsSidebarEntry","activeLink","onSelectLink","shouldStartOpen","hasChildren","Menu","child","DocsSidebar","emptyMessage","menuItems","ErrorBoundary","Component","state","error","getDerivedStateFromError","componentDidCatch","info","console","handleReset","setState","onReset","render","fallback","label","ErrorFallback","message","AbsoluteCenter","FolderPickerDialog","currentPath","selectedPath","selectedPaths","isLoading","isSelectDisabled","onSelectHomeDirectory","onSelectParentDirectory","onEntryClick","Set","selectedPathSet","Home","ChevronUp","isDirectory","isGitRepo","FolderOpen","Folder","isAlreadySelected","has","path","name","HorizontalMenuStack","getNoticeKey","notice","getNoticeTitle","OpenSourceNoticesScreen","notices","productName","productVersion","generatedAt","emptyTitle","emptyDescription","Separator","license","copyright","homepageUrl","sourceUrl","attribution","Properties","Info","resolveSessionIndicatorIcon","status","CircleCheck","CircleAlert","CircleDashed","resolveSessionIndicatorColor","SessionIndicator","boxSize","ariaLabel","cursor","Switch","inputProps","rootRef","thumbLabel","trackLabel","ChakraSwitch","off","on","TicketCard","ticketId","parentPath","sessionIndicatorLabel","sessionIndicatorStatus","badges","diffAdditions","diffDeletions","draggable","onDragStart","onDragEnd","onDiffBadgeClick","onSessionIndicatorClick","handleDiffBadgeClick","handleSessionIndicatorClick","borderColor","boxShadow","join","DiffBubble","GitBranchIcon","Wrap","badge","TicketBoard","columns","selectedItemId","onMoveItem","onCreateStart","onColumnAction","activeColumn","setActiveColumn","handleDragStart","handleDragEnd","columnId","dataTransfer","dropEffect","handleDragOver","event_1","currentTarget","relatedTarget","handleDragLeave","columnId_0","event_2","itemId_0","getData","itemId","handleDrop","column","borderLeft","canDragIn","ColumnHeader","cardProps","canDragOut","Spacer","canCreate","IconButton","Plus","actions","MoreHorizontal","setData","effectAllowed","header","cell","row","TicketCell","TicketList","onItemClick","table","useReactTable","data","expanded","getSubRows","getCoreRowModel","getExpandedRowModel","getRowId","getRowModel","rows","original","flexRender","getVisibleCells","columnDef","getContext","depth","getCanExpand","ExpandToggle","TreeConnector","statusColor","statusIcon","assigneeIcon","toggleExpanded","getIsExpanded","toaster","createToaster","pauseOnPageIdle","Toaster","Portal","ChakraToaster","mdDown","toast","Toast","type","Spinner","closable","applyThemePreference","theme","document","root","documentElement","body","opposite","el","remove","add","setAttribute","style","colorScheme","STORAGE_KEY","ThemePreferenceContext","createContext","getInitialThemePreference","window","stored","localStorage","getItem","matchMedia","matches","ThemePreferenceProvider","initialPreference","themePreference","setThemePreference","setItem","toggleThemePreference","useThemePreference","context","useContext","Error","prev"],"mappings":"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"}
|
|
@@ -1389,13 +1389,14 @@ export {
|
|
|
1389
1389
|
Gr as P,
|
|
1390
1390
|
Yr as R,
|
|
1391
1391
|
Ke as T,
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
|
|
1395
|
-
|
|
1392
|
+
Kr as a,
|
|
1393
|
+
Vr as b,
|
|
1394
|
+
Ve as c,
|
|
1395
|
+
Zt as d,
|
|
1396
1396
|
Xr as e,
|
|
1397
|
-
|
|
1398
|
-
|
|
1397
|
+
Ye as f,
|
|
1398
|
+
Un as g,
|
|
1399
|
+
He as h,
|
|
1399
1400
|
fn as s
|
|
1400
1401
|
};
|
|
1401
|
-
//# sourceMappingURL=rich-message-
|
|
1402
|
+
//# sourceMappingURL=rich-message-CNDoACE7.js.map
|