{
  "version": 3,
  "sources": ["../../src/components/ErrorBoundary.tsx", "../../src/components/ErrorBoundary/ThrownErrorBoundary.tsx", "../../src/contexts/ErrorReporter/Provider.tsx", "../../src/contexts/ErrorReporter/Context.ts", "../../src/contexts/ErrorReporter/useErrorReporter.tsx", "../../src/components/ErrorRender/ErrorAlert.tsx", "../../src/components/ErrorRender/ErrorRenderWithSupport.tsx", "../../src/components/ErrorRender/Render.tsx", "../../src/components/ErrorRender/Popover.tsx", "../../src/components/ErrorQuickTipButton.tsx", "../../src/components/Errors/ErrorsViewer.tsx", "../../src/components/Errors/ErrorViewer.tsx"],
  "sourcesContent": ["import { Typography } from '@mui/material'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport type { ErrorInfo, ReactNode } from 'react'\nimport React, { Component } from 'react'\n\nexport interface ErrorBoundaryProps {\n  children: ReactNode\n  // fallback as a static ReactNode value\n  fallback?: ReactNode\n  // fallback element that can receive the error as a prop\n  fallbackWithError?: (error: Error) => ReactNode\n  scope?: string\n}\n\nexport interface ErrorBoundaryState {\n  error?: Error\n}\n\nexport class ErrorBoundary extends Component<ErrorBoundaryProps, ErrorBoundaryState> {\n  constructor(props: ErrorBoundaryProps) {\n    super(props)\n    this.state = { error: undefined }\n  }\n\n  static getDerivedStateFromError(error: Error) {\n    return { error }\n  }\n\n  override componentDidCatch(error: Error, errorInfo: ErrorInfo) {\n    console.error(`${error}: ${errorInfo}`)\n  }\n\n  override render() {\n    if (this.state.error) {\n      if (this.props.fallbackWithError) {\n        return this.props.fallbackWithError(this.state.error)\n      }\n      return (\n        this.props.fallback ?? (\n          <FlexCol>\n            <Typography variant=\"h1\">Something went wrong.</Typography>\n            {this.props.scope && (\n              <Typography variant=\"h2\">\n                [\n                {this.props.scope}\n                ]\n              </Typography>\n            )}\n            <Typography variant=\"body1\">\n              [\n              {this.state.error?.message}\n              ]\n            </Typography>\n          </FlexCol>\n        )\n      )\n    }\n\n    return this.props.children\n  }\n}\n", "import type { ErrorInfo, ReactNode } from 'react'\nimport React, { Component } from 'react'\nimport type Rollbar from 'rollbar'\n\nimport { useErrorReporter } from '../../contexts/index.ts'\nimport type { ErrorEx } from '../ErrorEx.ts'\nimport { ErrorRender } from '../ErrorRender/index.ts'\n\nexport interface ThrownErrorBoundaryProps<T = void> {\n  boundaryName?: string\n  children: ReactNode\n  errorComponent?: (e: ErrorEx<T>, boundaryName?: string) => ReactNode\n  rethrow?: boolean\n  rollbar?: Rollbar\n  scope?: string\n  title?: string\n}\n\nexport interface ThrownErrorBoundaryState<T = void> {\n  errorEx: ErrorEx<T> | undefined\n  hasError?: boolean\n  xyoError?: T\n}\n\nclass ThrownErrorBoundaryInner<T> extends Component<ThrownErrorBoundaryProps<T>, ThrownErrorBoundaryState<T>> {\n  override state: ThrownErrorBoundaryState<T> = { errorEx: undefined }\n\n  static getDerivedStateFromError<T = void>(error: ErrorEx<T>) {\n    const thrownErrorBoundaryState: ThrownErrorBoundaryState<T> = {\n      hasError: true, errorEx: error, xyoError: ThrownErrorBoundaryInner.normalizeError<T>(error),\n    }\n    return thrownErrorBoundaryState\n  }\n\n  static normalizeError<T>(error: ErrorEx<T>): T {\n    return error as T\n  }\n\n  override componentDidCatch(error: Error, errorInfo: ErrorInfo) {\n    const { rethrow, rollbar } = this.props\n    const { errorEx } = this.state\n\n    rollbar?.error(error)\n\n    console.error('Error:', errorEx, errorInfo)\n    if (rethrow) {\n      throw error\n    }\n  }\n\n  override render() {\n    const { errorEx } = this.state\n    const {\n      children, boundaryName, errorComponent, scope, title,\n    } = this.props\n\n    // TODO - support custom error renderer for xyoErrors\n    if (errorEx) {\n      if (errorComponent) {\n        return errorComponent(errorEx, boundaryName)\n      }\n      return <ErrorRender<T> error={errorEx} errorContext={`${boundaryName} Boundary`} scope={scope} title={title} />\n    }\n\n    return children\n  }\n}\n\n// calling the hook outside of the component since only can be called in functional component\nexport function ThrownErrorBoundary<T = void>({ rollbar, ...props }: ThrownErrorBoundaryProps<T>): React.JSX.Element {\n  const { rollbar: rollbarErrorReporter } = useErrorReporter()\n  return <ThrownErrorBoundaryInner<T> rollbar={rollbar ?? rollbarErrorReporter ?? globalThis.rollbar} {...props} />\n}\n", "import type { PropsWithChildren } from 'react'\nimport React, { useMemo } from 'react'\nimport type Rollbar from 'rollbar'\n\nimport { ErrorReporterContext } from './Context.ts'\n\nexport interface ErrorReporterProviderProps {\n  rollbar: Rollbar\n}\n\nconst ErrorReporterProvider: React.FC<PropsWithChildren<ErrorReporterProviderProps>> = ({ children, rollbar: rollbarProp }) => {\n  const rollbar = rollbarProp ?? globalThis.rollbar\n\n  if (!rollbar) {\n    throw new Error('ErrorReporterProvider unable to find a Rollbar instance either passed as prop or from Provider')\n  }\n\n  const value = useMemo(() => ({ rollbar }), [rollbar])\n\n  return <ErrorReporterContext value={value}>{children}</ErrorReporterContext>\n}\n\nexport { ErrorReporterProvider }\n", "import { createContext } from 'react'\n\nimport type { ErrorReporterContextState } from './State.ts'\n\nexport const ErrorReporterContext = createContext<ErrorReporterContextState>({})\n", "import { use } from 'react'\n\nimport { ErrorReporterContext } from './Context.ts'\n\nexport const useErrorReporter = () => {\n  const context = use(ErrorReporterContext)\n  if (context === undefined) {\n    console.warn('useErrorReporter must be used within a ErrorReporterContext')\n  }\n\n  return context ?? {}\n}\n", "import { ChevronRight, ExitToApp as ExitIcon } from '@mui/icons-material'\nimport type { AlertProps } from '@mui/material'\nimport {\n  Alert, AlertTitle, Grow,\n  Stack, Typography,\n  useTheme,\n} from '@mui/material'\nimport { ButtonEx } from '@xylabs/react-button'\nimport { FlexCol, FlexRow } from '@xylabs/react-flexbox'\nimport React, { useState } from 'react'\n\nexport interface ErrorAlertProps<T = void> extends AlertProps {\n  additionalMessaging?: React.ReactNode\n  error?: T | Error | string\n  onCancel?: () => void\n  scope?: string\n}\n\nexport function ErrorAlert<T = void>({\n  action,\n  additionalMessaging,\n  title = 'Whoops! Something went wrong',\n  onCancel,\n  error = 'An unknown error occurred',\n  scope,\n  sx,\n  ...props\n}: ErrorAlertProps<T>): React.JSX.Element {\n  const theme = useTheme()\n  const [openDetails, setOpenDetails] = useState(false)\n  return (\n    <Alert\n      action={(\n        <FlexRow sx={{ gap: 0.5 }}>\n          {action}\n          {onCancel\n            ? (\n                <ButtonEx\n                  color=\"error\"\n\n                  variant=\"outlined\"\n                  size=\"small\"\n                  onClick={onCancel}\n                >\n                  <ExitIcon fontSize=\"small\" />\n                </ButtonEx>\n              )\n            : null}\n        </FlexRow>\n      )}\n      severity=\"error\"\n      sx={{ maxWidth: theme.breakpoints.values.sm, ...sx }}\n      {...props}\n    >\n      <AlertTitle>{title}</AlertTitle>\n      <FlexCol\n        sx={{\n          width: '100%',\n          alignItems: 'start',\n          justifyContent: 'center',\n          gap: 1,\n        }}\n      >\n        {additionalMessaging}\n        <FlexRow\n          sx={{\n            gap: 0.5,\n            cursor: 'pointer',\n          }}\n          onClick={() => setOpenDetails(!openDetails)}\n        >\n          <Typography variant=\"caption\" sx={{ fontWeight: 'bold' }}>\n            Details:\n          </Typography>\n          {openDetails ? <ChevronRight sx={{ fontSize: '1.1rem', transform: 'rotate(90deg)' }} /> : <ChevronRight sx={{ fontSize: '1.1rem' }} />}\n        </FlexRow>\n        <Grow in={openDetails} unmountOnExit>\n          <Stack sx={{ hyphens: 'auto', maxWidth: '100%' }}>\n            {scope\n              ? (\n                  <Stack\n                    direction=\"row\"\n                    sx={{\n                      gap: 0.25,\n                      maxWidth: '100%',\n                    }}\n                  >\n                    <Typography variant=\"caption\" sx={{ mr: 0.5, fontWeight: 'bold' }}>\n                      Scope:\n                    </Typography>\n                    <Typography variant=\"caption\">{scope}</Typography>\n                  </Stack>\n                )\n              : null}\n            <div>\n              <Typography variant=\"caption\" sx={{ mr: 0.5, fontWeight: 'bold' }}>\n                Error:\n              </Typography>\n              <Typography variant=\"caption\">{typeof error === 'string' ? error : (error as Error)?.message}</Typography>\n            </div>\n          </Stack>\n        </Grow>\n      </FlexCol>\n    </Alert>\n  )\n}\n", "import { BugReport } from '@mui/icons-material'\nimport {\n  type AlertProps, IconButton, Link,\n  Tooltip,\n} from '@mui/material'\nimport type { ButtonExProps } from '@xylabs/react-button'\nimport React, { useMemo } from 'react'\n\nimport type { ErrorRenderProps } from './Props.ts'\nimport { ErrorRender } from './Render.tsx'\n\nexport interface ErrorRenderWithSupportProps extends ErrorRenderProps {\n  /** @deprecated - use slotProps.alert.action */\n  action?: AlertProps['action']\n  supportHref?: ButtonExProps['href']\n  supportIcon?: React.ReactNode\n  /** @deprecated - use supportLinkTitle instead */\n  supportLinkText?: string\n  supportLinkTitle?: string\n}\n\nexport const ErrorRenderWithSupport: React.FC<ErrorRenderWithSupportProps> = ({\n  supportHref,\n  supportIcon,\n  supportLinkTitle = 'Support',\n  slotProps,\n  ...props\n}) => {\n  const combinedSlotProps = useMemo(() => ({\n    ...slotProps,\n    alert: {\n      ...slotProps?.alert,\n      action: supportHref && (\n        <Link href={supportHref} target=\"_blank\">\n          <Tooltip title={supportLinkTitle}>\n            <IconButton color=\"error\" size=\"small\">\n              {supportIcon ?? <BugReport />}\n            </IconButton>\n          </Tooltip>\n        </Link>\n      ),\n    },\n  }), [slotProps, supportHref, supportIcon, supportLinkTitle])\n\n  return (\n    <ErrorRender\n      slotProps={combinedSlotProps}\n      {...props}\n    />\n  )\n}\n", "import { FlexCol } from '@xylabs/react-flexbox'\nimport React, { useEffect } from 'react'\n\nimport { ErrorAlert } from './ErrorAlert.tsx'\nimport type { ErrorRenderProps } from './Props.ts'\n\nexport function ErrorRender<T = void>({\n  onCancel,\n  error,\n  noErrorDisplay = false,\n  customError = null,\n  children,\n  scope,\n  useLocation,\n  slotProps,\n  sx,\n  ...props\n}: ErrorRenderProps<T>): React.JSX.Element {\n  const location = useLocation?.()\n  useEffect(() => {\n    if (location) {\n      // ensure we end up at the same place we are now after logging in\n      Object.assign(location, { state: { from: { pathname: globalThis.location.pathname } } })\n    }\n  }, [location])\n\n  useEffect(() => {\n    if (error) {\n      globalThis.rollbar?.error(error)\n    }\n  }, [error])\n\n  return error\n    ? (\n        <FlexCol\n          {...props}\n          sx={{ alignItems: 'stretch' }}\n        >\n          {noErrorDisplay\n            ? customError\n            : (\n                <FlexCol\n                  {...props}\n                  sx={{ alignItems: 'center' }}\n                >\n                  <ErrorAlert error={error} onCancel={onCancel} scope={scope} sx={{ position: 'relative', ...sx }} {...slotProps?.alert} />\n                </FlexCol>\n              )}\n        </FlexCol>\n      )\n    : <>{children}</>\n}\n", "import { InfoOutlined } from '@mui/icons-material'\nimport type { PopoverProps } from '@mui/material'\nimport { Icon, Popover } from '@mui/material'\nimport React, { useState } from 'react'\n\nimport { ErrorRender } from './Render.tsx'\n\nexport interface PopoverErrorProps extends Omit<PopoverProps, 'open' | 'anchorEl' | 'onClose'> {\n  error?: Error\n  scope?: string\n}\n\nexport const PopoverErrorRender: React.FC<PopoverErrorProps> = ({\n  error, scope, ...props\n}) => {\n  const [open, setOpen] = useState(false)\n  const [anchor, setAnchor] = useState<HTMLSpanElement | null>(null)\n\n  return error && (\n    <Icon\n      onMouseEnter={() => setOpen(true)}\n      onMouseLeave={() => setOpen(false)}\n      ref={setAnchor}\n      sx={{\n        alignItems: 'center', cursor: 'pointer', display: 'inline-flex',\n      }}\n    >\n      <InfoOutlined color=\"error\" fontSize=\"small\" />\n      <Popover\n        anchorOrigin={{ vertical: 'top', horizontal: 'right' }}\n        anchorEl={anchor}\n        onClose={() => setOpen(false)}\n        open={open}\n        {...props}\n      >\n        <ErrorRender error={error} scope={scope} />\n      </Popover>\n    </Icon>\n  )\n}\n", "import { CancelRounded as CancelRoundedIcon, CheckCircleOutlineRounded as CheckCircleOutlineRoundedIcon } from '@mui/icons-material'\nimport { type SvgIconProps, Typography } from '@mui/material'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport type { QuickTipButtonProps } from '@xylabs/react-quick-tip-button'\nimport { QuickTipButton } from '@xylabs/react-quick-tip-button'\nimport { isDefined } from '@xylabs/sdk-js'\nimport React from 'react'\n\nimport { ErrorRender } from './ErrorRender/index.ts'\n\nconst InvalidIcon = ({ ref, ...props }: SvgIconProps\n  & { ref?: React.Ref<SVGSVGElement | null> }) => <CancelRoundedIcon color=\"error\" ref={ref} {...props} />\nInvalidIcon.displayName = 'InvalidIcon'\n\nexport interface ErrorQuickTipButtonProps extends QuickTipButtonProps {\n  boundWitnessType?: string\n  errors?: Error[]\n  iconColors?: boolean\n  validateError?: Error\n}\n\nexport const ErrorQuickTipButton: React.FC<ErrorQuickTipButtonProps> = ({\n  boundWitnessType = 'Bound Witness', errors, iconColors, validateError, ...props\n}) => {\n  const hasErrors = isDefined(errors) && errors.length > 0\n  return (\n    <QuickTipButton\n      Icon={hasErrors\n        ? ({ ref, ...props }) => {\n            return <InvalidIcon color={iconColors ? 'error' : undefined} ref={ref} {...props} />\n          }\n        : ({ ref, ...props }) => {\n            return <CheckCircleOutlineRoundedIcon color={iconColors ? 'success' : undefined} ref={ref} {...props} />\n          }}\n      hoverText={hasErrors ? `Invalid ${boundWitnessType}` : 'Valid'}\n      {...props}\n    >\n      {hasErrors\n        ? (\n            <FlexCol\n              sx={{\n                flexWrap: 'wrap',\n                alignItems: 'start',\n              }}\n            >\n              <ErrorRender error={validateError} scope=\"VerificationError\" />\n              {errors.map((error) => {\n                return <Typography key={error.name}>{error.toString()}</Typography>\n              })}\n            </FlexCol>\n          )\n        : <Typography>No Errors</Typography>}\n    </QuickTipButton>\n  )\n}\n", "import { Replay as ReplayIcon } from '@mui/icons-material'\nimport { IconButton } from '@mui/material'\nimport { FlexGrowCol } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport type { ErrorsViewerProps } from './ErrorsViewerProps.ts'\nimport { ErrorViewer } from './ErrorViewer.tsx'\n\nconst ErrorsViewer: React.FC<ErrorsViewerProps> = (props) => {\n  const {\n    onRetry, errors, ...boxProps\n  } = props\n  return (\n    <FlexGrowCol\n      {...boxProps}\n      sx={{ padding: 1 }}\n    >\n      {errors?.map((error) => {\n        return <ErrorViewer error={error} key={error.message} />\n      })}\n      {onRetry\n        ? (\n            <IconButton onClick={onRetry}>\n              <ReplayIcon />\n            </IconButton>\n          )\n        : null}\n    </FlexGrowCol>\n  )\n}\n\nexport { ErrorsViewer }\n", "import { Typography, useTheme } from '@mui/material'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport type { ErrorViewerProps } from './ErrorViewerProps.ts'\n\nconst ErrorViewer: React.FC<ErrorViewerProps> = (props) => {\n  const { error, ...boxProps } = props\n  const theme = useTheme()\n  return (\n    <FlexCol\n      {...boxProps}\n      sx={{ color: theme.vars.palette.error.main }}\n    >\n      <Typography align=\"center\" variant=\"subtitle1\">\n        {error?.name}\n      </Typography>\n      <Typography align=\"center\" variant=\"body2\">\n        {error?.message}\n      </Typography>\n    </FlexCol>\n  )\n}\n\nexport { ErrorViewer }\n"],
  "mappings": "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",
  "names": ["Component", "jsx", "Typography", "FlexCol", "jsx", "jsxs", "useMemo", "FlexCol", "jsx", "FlexCol", "jsx", "useMemo", "useState", "jsx", "jsxs", "useState", "jsx", "Component", "Typography", "FlexCol", "jsx", "jsxs", "props", "FlexCol", "Typography", "IconButton", "Typography", "useTheme", "FlexCol", "jsx", "jsxs", "jsx", "jsxs", "IconButton"]
}
