UNPKG

@dynamic-labs/sdk-react-core

Version:

A React SDK for implementing wallet web3 authentication and authorization to your website.

36 lines (33 loc) 1.28 kB
'use client' import { Component, createElement } from 'react'; import '@dynamic-labs/sdk-api-core'; import { logger } from '../../shared/logger.js'; import '@dynamic-labs/iconic'; import '@dynamic-labs/wallet-connector-core'; import 'react/jsx-runtime'; import '../ViewContext/ViewContext.js'; import '@dynamic-labs/wallet-book'; import '@dynamic-labs/utils'; import '../../utils/constants/colors.js'; import '../../utils/constants/values.js'; import '../../shared/consts/index.js'; import { ErrorContainer } from '../../components/ErrorContainer/ErrorContainer.js'; import { ErrorBoundaryContext, assertErrorBoundaryContext } from './ErrorBoundaryContext.js'; class ErrorBoundaryBase extends Component { static getDerivedStateFromError(error) { return { error, hasError: true }; } renderOrError(children, { isDynamicSdkError }) { try { assertErrorBoundaryContext(this.context); this.context.isDynamicSdkError = isDynamicSdkError; } catch (e) { logger.error(e); return createElement(ErrorContainer, null, 'ErrorBoundary must be used within ErrorBoundaryContext'); } return children; } } ErrorBoundaryBase.contextType = ErrorBoundaryContext; export { ErrorBoundaryBase };