1
0
Fork 0
freesewing/sites/org/pages/_app.mjs

45 lines
1.3 KiB
JavaScript
Raw Normal View History

import 'shared/styles/globals.css'
2022-05-21 19:26:43 +02:00
import { appWithTranslation } from 'next-i18next'
2022-12-28 21:04:30 +01:00
import React from 'react'
import Bugsnag from '@bugsnag/js'
import BugsnagPluginReact from '@bugsnag/plugin-react'
import { freeSewingConfig } from 'site/freesewing.config.mjs'
2023-03-23 10:48:01 +01:00
import { Toaster as DefaultToaster } from 'react-hot-toast'
import { ContextWrapper } from 'shared/components/wrappers/context.mjs'
2022-12-28 21:04:30 +01:00
Bugsnag.start({
2023-01-09 21:37:05 +01:00
apiKey: freeSewingConfig.bugsnag.key,
2022-12-28 21:04:30 +01:00
collectUserIp: false,
plugins: [new BugsnagPluginReact()],
})
const ErrorBoundary = Bugsnag.getPlugin('react').createErrorBoundary(React)
const FreeSewingOrg = ({ Component, pageProps }) => (
<ErrorBoundary>
<ContextWrapper>
<Component {...pageProps} />
<DefaultToaster
position="bottom-right"
toastOptions={{
className: 'bg-base-100 text-base-content',
success: {
className: 'bg-success text-success-content',
},
error: {
className: 'bg-error text-error-content',
},
loading: {
className: 'bg-warning text-warning-content',
},
custom: {
className: 'bg-accent text-accent-content',
},
}}
/>
</ContextWrapper>
2022-12-28 21:04:30 +01:00
</ErrorBoundary>
)
2022-05-21 19:26:43 +02:00
export default appWithTranslation(FreeSewingOrg)