@xyo-network/react-error 2.81.9 → 2.82.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (205) hide show
  1. package/dist/browser/components/ErrorBoundary/ThrownErrorBoundary.d.cts +3 -2
  2. package/dist/browser/components/ErrorBoundary/ThrownErrorBoundary.d.cts.map +1 -1
  3. package/dist/browser/components/ErrorBoundary/ThrownErrorBoundary.d.mts +3 -2
  4. package/dist/browser/components/ErrorBoundary/ThrownErrorBoundary.d.mts.map +1 -1
  5. package/dist/browser/components/ErrorBoundary/ThrownErrorBoundary.d.ts +3 -2
  6. package/dist/browser/components/ErrorBoundary/ThrownErrorBoundary.d.ts.map +1 -1
  7. package/dist/browser/components/ErrorBoundary/index.d.cts +1 -1
  8. package/dist/browser/components/ErrorBoundary/index.d.cts.map +1 -1
  9. package/dist/browser/components/ErrorBoundary/index.d.mts +1 -1
  10. package/dist/browser/components/ErrorBoundary/index.d.mts.map +1 -1
  11. package/dist/browser/components/ErrorBoundary/index.d.ts +1 -1
  12. package/dist/browser/components/ErrorBoundary/index.d.ts.map +1 -1
  13. package/dist/browser/components/ErrorRender/ErrorAlert.d.cts +2 -1
  14. package/dist/browser/components/ErrorRender/ErrorAlert.d.cts.map +1 -1
  15. package/dist/browser/components/ErrorRender/ErrorAlert.d.mts +2 -1
  16. package/dist/browser/components/ErrorRender/ErrorAlert.d.mts.map +1 -1
  17. package/dist/browser/components/ErrorRender/ErrorAlert.d.ts +2 -1
  18. package/dist/browser/components/ErrorRender/ErrorAlert.d.ts.map +1 -1
  19. package/dist/browser/components/ErrorRender/Render.d.cts +2 -1
  20. package/dist/browser/components/ErrorRender/Render.d.cts.map +1 -1
  21. package/dist/browser/components/ErrorRender/Render.d.mts +2 -1
  22. package/dist/browser/components/ErrorRender/Render.d.mts.map +1 -1
  23. package/dist/browser/components/ErrorRender/Render.d.ts +2 -1
  24. package/dist/browser/components/ErrorRender/Render.d.ts.map +1 -1
  25. package/dist/browser/components/ErrorRender/index.d.cts +3 -3
  26. package/dist/browser/components/ErrorRender/index.d.cts.map +1 -1
  27. package/dist/browser/components/ErrorRender/index.d.mts +3 -3
  28. package/dist/browser/components/ErrorRender/index.d.mts.map +1 -1
  29. package/dist/browser/components/ErrorRender/index.d.ts +3 -3
  30. package/dist/browser/components/ErrorRender/index.d.ts.map +1 -1
  31. package/dist/browser/components/index.d.cts +2 -2
  32. package/dist/browser/components/index.d.mts +2 -2
  33. package/dist/browser/components/index.d.ts +2 -2
  34. package/dist/browser/contexts/ErrorReporter/Context.d.cts +1 -1
  35. package/dist/browser/contexts/ErrorReporter/Context.d.mts +1 -1
  36. package/dist/browser/contexts/ErrorReporter/Context.d.ts +1 -1
  37. package/dist/browser/contexts/ErrorReporter/Provider.d.cts +1 -0
  38. package/dist/browser/contexts/ErrorReporter/Provider.d.cts.map +1 -1
  39. package/dist/browser/contexts/ErrorReporter/Provider.d.mts +1 -0
  40. package/dist/browser/contexts/ErrorReporter/Provider.d.mts.map +1 -1
  41. package/dist/browser/contexts/ErrorReporter/Provider.d.ts +1 -0
  42. package/dist/browser/contexts/ErrorReporter/Provider.d.ts.map +1 -1
  43. package/dist/browser/contexts/ErrorReporter/index.d.cts +3 -3
  44. package/dist/browser/contexts/ErrorReporter/index.d.cts.map +1 -1
  45. package/dist/browser/contexts/ErrorReporter/index.d.mts +3 -3
  46. package/dist/browser/contexts/ErrorReporter/index.d.mts.map +1 -1
  47. package/dist/browser/contexts/ErrorReporter/index.d.ts +3 -3
  48. package/dist/browser/contexts/ErrorReporter/index.d.ts.map +1 -1
  49. package/dist/browser/contexts/ErrorReporter/useRollbar.d.cts +1 -1
  50. package/dist/browser/contexts/ErrorReporter/useRollbar.d.mts +1 -1
  51. package/dist/browser/contexts/ErrorReporter/useRollbar.d.ts +1 -1
  52. package/dist/browser/contexts/index.d.cts +1 -1
  53. package/dist/browser/contexts/index.d.mts +1 -1
  54. package/dist/browser/contexts/index.d.ts +1 -1
  55. package/dist/browser/index.cjs +102 -52
  56. package/dist/browser/index.cjs.map +1 -1
  57. package/dist/browser/index.d.cts +2 -2
  58. package/dist/browser/index.d.mts +2 -2
  59. package/dist/browser/index.d.ts +2 -2
  60. package/dist/browser/index.mjs +163 -0
  61. package/dist/browser/index.mjs.map +1 -0
  62. package/dist/neutral/components/ErrorBoundary/ThrownErrorBoundary.d.cts +3 -2
  63. package/dist/neutral/components/ErrorBoundary/ThrownErrorBoundary.d.cts.map +1 -1
  64. package/dist/neutral/components/ErrorBoundary/ThrownErrorBoundary.d.mts +3 -2
  65. package/dist/neutral/components/ErrorBoundary/ThrownErrorBoundary.d.mts.map +1 -1
  66. package/dist/neutral/components/ErrorBoundary/ThrownErrorBoundary.d.ts +3 -2
  67. package/dist/neutral/components/ErrorBoundary/ThrownErrorBoundary.d.ts.map +1 -1
  68. package/dist/neutral/components/ErrorBoundary/index.d.cts +1 -1
  69. package/dist/neutral/components/ErrorBoundary/index.d.cts.map +1 -1
  70. package/dist/neutral/components/ErrorBoundary/index.d.mts +1 -1
  71. package/dist/neutral/components/ErrorBoundary/index.d.mts.map +1 -1
  72. package/dist/neutral/components/ErrorBoundary/index.d.ts +1 -1
  73. package/dist/neutral/components/ErrorBoundary/index.d.ts.map +1 -1
  74. package/dist/neutral/components/ErrorRender/ErrorAlert.d.cts +2 -1
  75. package/dist/neutral/components/ErrorRender/ErrorAlert.d.cts.map +1 -1
  76. package/dist/neutral/components/ErrorRender/ErrorAlert.d.mts +2 -1
  77. package/dist/neutral/components/ErrorRender/ErrorAlert.d.mts.map +1 -1
  78. package/dist/neutral/components/ErrorRender/ErrorAlert.d.ts +2 -1
  79. package/dist/neutral/components/ErrorRender/ErrorAlert.d.ts.map +1 -1
  80. package/dist/neutral/components/ErrorRender/Render.d.cts +2 -1
  81. package/dist/neutral/components/ErrorRender/Render.d.cts.map +1 -1
  82. package/dist/neutral/components/ErrorRender/Render.d.mts +2 -1
  83. package/dist/neutral/components/ErrorRender/Render.d.mts.map +1 -1
  84. package/dist/neutral/components/ErrorRender/Render.d.ts +2 -1
  85. package/dist/neutral/components/ErrorRender/Render.d.ts.map +1 -1
  86. package/dist/neutral/components/ErrorRender/index.d.cts +3 -3
  87. package/dist/neutral/components/ErrorRender/index.d.cts.map +1 -1
  88. package/dist/neutral/components/ErrorRender/index.d.mts +3 -3
  89. package/dist/neutral/components/ErrorRender/index.d.mts.map +1 -1
  90. package/dist/neutral/components/ErrorRender/index.d.ts +3 -3
  91. package/dist/neutral/components/ErrorRender/index.d.ts.map +1 -1
  92. package/dist/neutral/components/index.d.cts +2 -2
  93. package/dist/neutral/components/index.d.mts +2 -2
  94. package/dist/neutral/components/index.d.ts +2 -2
  95. package/dist/neutral/contexts/ErrorReporter/Context.d.cts +1 -1
  96. package/dist/neutral/contexts/ErrorReporter/Context.d.mts +1 -1
  97. package/dist/neutral/contexts/ErrorReporter/Context.d.ts +1 -1
  98. package/dist/neutral/contexts/ErrorReporter/Provider.d.cts +1 -0
  99. package/dist/neutral/contexts/ErrorReporter/Provider.d.cts.map +1 -1
  100. package/dist/neutral/contexts/ErrorReporter/Provider.d.mts +1 -0
  101. package/dist/neutral/contexts/ErrorReporter/Provider.d.mts.map +1 -1
  102. package/dist/neutral/contexts/ErrorReporter/Provider.d.ts +1 -0
  103. package/dist/neutral/contexts/ErrorReporter/Provider.d.ts.map +1 -1
  104. package/dist/neutral/contexts/ErrorReporter/index.d.cts +3 -3
  105. package/dist/neutral/contexts/ErrorReporter/index.d.cts.map +1 -1
  106. package/dist/neutral/contexts/ErrorReporter/index.d.mts +3 -3
  107. package/dist/neutral/contexts/ErrorReporter/index.d.mts.map +1 -1
  108. package/dist/neutral/contexts/ErrorReporter/index.d.ts +3 -3
  109. package/dist/neutral/contexts/ErrorReporter/index.d.ts.map +1 -1
  110. package/dist/neutral/contexts/ErrorReporter/useRollbar.d.cts +1 -1
  111. package/dist/neutral/contexts/ErrorReporter/useRollbar.d.mts +1 -1
  112. package/dist/neutral/contexts/ErrorReporter/useRollbar.d.ts +1 -1
  113. package/dist/neutral/contexts/index.d.cts +1 -1
  114. package/dist/neutral/contexts/index.d.mts +1 -1
  115. package/dist/neutral/contexts/index.d.ts +1 -1
  116. package/dist/neutral/index.cjs +102 -52
  117. package/dist/neutral/index.cjs.map +1 -1
  118. package/dist/neutral/index.d.cts +2 -2
  119. package/dist/neutral/index.d.mts +2 -2
  120. package/dist/neutral/index.d.ts +2 -2
  121. package/dist/neutral/index.mjs +163 -0
  122. package/dist/neutral/index.mjs.map +1 -0
  123. package/dist/node/components/ErrorBoundary/ThrownErrorBoundary.d.cts +3 -2
  124. package/dist/node/components/ErrorBoundary/ThrownErrorBoundary.d.cts.map +1 -1
  125. package/dist/node/components/ErrorBoundary/ThrownErrorBoundary.d.mts +3 -2
  126. package/dist/node/components/ErrorBoundary/ThrownErrorBoundary.d.mts.map +1 -1
  127. package/dist/node/components/ErrorBoundary/ThrownErrorBoundary.d.ts +3 -2
  128. package/dist/node/components/ErrorBoundary/ThrownErrorBoundary.d.ts.map +1 -1
  129. package/dist/node/components/ErrorBoundary/index.d.cts +1 -1
  130. package/dist/node/components/ErrorBoundary/index.d.cts.map +1 -1
  131. package/dist/node/components/ErrorBoundary/index.d.mts +1 -1
  132. package/dist/node/components/ErrorBoundary/index.d.mts.map +1 -1
  133. package/dist/node/components/ErrorBoundary/index.d.ts +1 -1
  134. package/dist/node/components/ErrorBoundary/index.d.ts.map +1 -1
  135. package/dist/node/components/ErrorRender/ErrorAlert.d.cts +2 -1
  136. package/dist/node/components/ErrorRender/ErrorAlert.d.cts.map +1 -1
  137. package/dist/node/components/ErrorRender/ErrorAlert.d.mts +2 -1
  138. package/dist/node/components/ErrorRender/ErrorAlert.d.mts.map +1 -1
  139. package/dist/node/components/ErrorRender/ErrorAlert.d.ts +2 -1
  140. package/dist/node/components/ErrorRender/ErrorAlert.d.ts.map +1 -1
  141. package/dist/node/components/ErrorRender/Render.d.cts +2 -1
  142. package/dist/node/components/ErrorRender/Render.d.cts.map +1 -1
  143. package/dist/node/components/ErrorRender/Render.d.mts +2 -1
  144. package/dist/node/components/ErrorRender/Render.d.mts.map +1 -1
  145. package/dist/node/components/ErrorRender/Render.d.ts +2 -1
  146. package/dist/node/components/ErrorRender/Render.d.ts.map +1 -1
  147. package/dist/node/components/ErrorRender/index.d.cts +3 -3
  148. package/dist/node/components/ErrorRender/index.d.cts.map +1 -1
  149. package/dist/node/components/ErrorRender/index.d.mts +3 -3
  150. package/dist/node/components/ErrorRender/index.d.mts.map +1 -1
  151. package/dist/node/components/ErrorRender/index.d.ts +3 -3
  152. package/dist/node/components/ErrorRender/index.d.ts.map +1 -1
  153. package/dist/node/components/index.d.cts +2 -2
  154. package/dist/node/components/index.d.mts +2 -2
  155. package/dist/node/components/index.d.ts +2 -2
  156. package/dist/node/contexts/ErrorReporter/Context.d.cts +1 -1
  157. package/dist/node/contexts/ErrorReporter/Context.d.mts +1 -1
  158. package/dist/node/contexts/ErrorReporter/Context.d.ts +1 -1
  159. package/dist/node/contexts/ErrorReporter/Provider.d.cts +1 -0
  160. package/dist/node/contexts/ErrorReporter/Provider.d.cts.map +1 -1
  161. package/dist/node/contexts/ErrorReporter/Provider.d.mts +1 -0
  162. package/dist/node/contexts/ErrorReporter/Provider.d.mts.map +1 -1
  163. package/dist/node/contexts/ErrorReporter/Provider.d.ts +1 -0
  164. package/dist/node/contexts/ErrorReporter/Provider.d.ts.map +1 -1
  165. package/dist/node/contexts/ErrorReporter/index.d.cts +3 -3
  166. package/dist/node/contexts/ErrorReporter/index.d.cts.map +1 -1
  167. package/dist/node/contexts/ErrorReporter/index.d.mts +3 -3
  168. package/dist/node/contexts/ErrorReporter/index.d.mts.map +1 -1
  169. package/dist/node/contexts/ErrorReporter/index.d.ts +3 -3
  170. package/dist/node/contexts/ErrorReporter/index.d.ts.map +1 -1
  171. package/dist/node/contexts/ErrorReporter/useRollbar.d.cts +1 -1
  172. package/dist/node/contexts/ErrorReporter/useRollbar.d.mts +1 -1
  173. package/dist/node/contexts/ErrorReporter/useRollbar.d.ts +1 -1
  174. package/dist/node/contexts/index.d.cts +1 -1
  175. package/dist/node/contexts/index.d.mts +1 -1
  176. package/dist/node/contexts/index.d.ts +1 -1
  177. package/dist/node/index.cjs +101 -52
  178. package/dist/node/index.cjs.map +1 -1
  179. package/dist/node/index.d.cts +2 -2
  180. package/dist/node/index.d.mts +2 -2
  181. package/dist/node/index.d.ts +2 -2
  182. package/dist/node/index.mjs +162 -0
  183. package/dist/node/index.mjs.map +1 -0
  184. package/package.json +13 -13
  185. package/src/components/ErrorBoundary/ThrownErrorBoundary.stories.tsx +8 -4
  186. package/src/components/ErrorBoundary/ThrownErrorBoundary.tsx +8 -7
  187. package/src/components/ErrorBoundary/index.ts +1 -1
  188. package/src/components/ErrorRender/ErrorAlert.stories.tsx +41 -0
  189. package/src/components/ErrorRender/ErrorAlert.tsx +35 -24
  190. package/src/components/ErrorRender/Render.tsx +15 -12
  191. package/src/components/ErrorRender/index.ts +3 -3
  192. package/src/components/index.ts +2 -2
  193. package/src/contexts/ErrorReporter/Context.ts +1 -1
  194. package/src/contexts/ErrorReporter/Provider.stories.tsx +11 -4
  195. package/src/contexts/ErrorReporter/Provider.tsx +3 -2
  196. package/src/contexts/ErrorReporter/index.ts +3 -3
  197. package/src/contexts/ErrorReporter/useRollbar.tsx +1 -1
  198. package/src/contexts/index.ts +1 -1
  199. package/src/index.ts +2 -2
  200. package/dist/browser/index.js +0 -121
  201. package/dist/browser/index.js.map +0 -1
  202. package/dist/neutral/index.js +0 -121
  203. package/dist/neutral/index.js.map +0 -1
  204. package/dist/node/index.js +0 -121
  205. package/dist/node/index.js.map +0 -1
@@ -1,121 +0,0 @@
1
- // src/components/ErrorBoundary/ThrownErrorBoundary.tsx
2
- import { ModuleErrorSchema } from "@xyo-network/payload-model";
3
- import { Component } from "react";
4
-
5
- // src/components/ErrorRender/ErrorAlert.tsx
6
- import { ExitToApp as ExitIcon } from "@mui/icons-material";
7
- import { Alert, AlertTitle, Typography } from "@mui/material";
8
- import { ButtonEx } from "@xylabs/react-button";
9
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
10
- var ErrorAlert = ({ onCancel, error, errorContext, scope, ...props }) => {
11
- return /* @__PURE__ */ jsxs(Alert, { severity: "error", ...props, children: [
12
- /* @__PURE__ */ jsx(AlertTitle, { children: "Whoops! Something went wrong" }),
13
- errorContext ? /* @__PURE__ */ jsx(Typography, { variant: "caption", my: 0.5, lineHeight: "1", display: "block", children: errorContext }) : null,
14
- scope ? /* @__PURE__ */ jsxs(Fragment, { children: [
15
- /* @__PURE__ */ jsx(Typography, { variant: "caption", mr: 0.5, fontWeight: "bold", children: "Scope:" }),
16
- /* @__PURE__ */ jsx(Typography, { variant: "caption", children: scope })
17
- ] }) : null,
18
- /* @__PURE__ */ jsx(Typography, { variant: "caption", mr: 0.5, fontWeight: "bold", children: "Error:" }),
19
- /* @__PURE__ */ jsx(Typography, { variant: "caption", children: error == null ? void 0 : error.message }),
20
- onCancel ? /* @__PURE__ */ jsx(ButtonEx, { variant: "outlined", size: "small", onClick: onCancel, position: "absolute", style: { right: 8, top: 8 }, children: /* @__PURE__ */ jsx(ExitIcon, { fontSize: "small" }) }) : null
21
- ] });
22
- };
23
-
24
- // src/components/ErrorRender/Render.tsx
25
- import { FlexCol } from "@xylabs/react-flexbox";
26
- import { useEffect } from "react";
27
- import { Fragment as Fragment2, jsx as jsx2 } from "react/jsx-runtime";
28
- var ErrorRender = ({
29
- onCancel,
30
- error,
31
- noErrorDisplay = false,
32
- customError = null,
33
- children,
34
- errorContext,
35
- scope,
36
- useLocation,
37
- ...props
38
- }) => {
39
- const location = useLocation == null ? void 0 : useLocation();
40
- useEffect(() => {
41
- if (location) {
42
- location.state = {
43
- from: {
44
- pathname: window.location.pathname
45
- }
46
- };
47
- }
48
- }, [location]);
49
- return error ? /* @__PURE__ */ jsx2(FlexCol, { alignItems: "stretch", ...props, children: noErrorDisplay ? customError : /* @__PURE__ */ jsx2(FlexCol, { alignItems: "center", ...props, children: /* @__PURE__ */ jsx2(ErrorAlert, { error, errorContext, onCancel, scope }) }) }) : /* @__PURE__ */ jsx2(Fragment2, { children }) ?? null;
50
- };
51
-
52
- // src/components/ErrorBoundary/ThrownErrorBoundary.tsx
53
- import { jsx as jsx3 } from "react/jsx-runtime";
54
- var ThrownErrorBoundary = class _ThrownErrorBoundary extends Component {
55
- state = {
56
- xyoError: void 0
57
- };
58
- static getDerivedStateFromError(error) {
59
- return { hasError: true, xyoError: _ThrownErrorBoundary.normalizeError(error) };
60
- }
61
- static normalizeError(error) {
62
- return error.schema === ModuleErrorSchema ? error : { message: error.message, schema: ModuleErrorSchema, sources: [] };
63
- }
64
- componentDidCatch(error, errorInfo) {
65
- const { rethrow, rollbar } = this.props;
66
- const { xyoError } = this.state;
67
- rollbar == null ? void 0 : rollbar.error(error);
68
- console.error("Error:", xyoError, errorInfo);
69
- if (rethrow) {
70
- throw error;
71
- }
72
- }
73
- render() {
74
- const { xyoError } = this.state;
75
- const { children, boundaryName, errorComponent, scope } = this.props;
76
- if (xyoError) {
77
- if (errorComponent) {
78
- return errorComponent(xyoError);
79
- }
80
- return /* @__PURE__ */ jsx3(ErrorRender, { error: xyoError, errorContext: `${boundaryName} Boundary`, scope });
81
- }
82
- return children;
83
- }
84
- };
85
-
86
- // src/contexts/ErrorReporter/Provider.tsx
87
- import { useEffect as useEffect2, useState } from "react";
88
-
89
- // src/contexts/ErrorReporter/Context.ts
90
- import { createContext } from "react";
91
- var ErrorReporterContext = createContext({});
92
-
93
- // src/contexts/ErrorReporter/Provider.tsx
94
- import { jsx as jsx4 } from "react/jsx-runtime";
95
- var ErrorReporterProvider = ({ children, rollbar }) => {
96
- const [rollbarInstance, setRollBarInstance] = useState();
97
- useEffect2(() => {
98
- if (rollbarInstance) {
99
- setRollBarInstance(rollbarInstance);
100
- }
101
- }, [rollbar, rollbarInstance]);
102
- return /* @__PURE__ */ jsx4(ErrorReporterContext.Provider, { value: { rollbar }, children });
103
- };
104
-
105
- // src/contexts/ErrorReporter/useRollbar.tsx
106
- import { useContext } from "react";
107
- var useRollbar = () => {
108
- const context = useContext(ErrorReporterContext);
109
- if (context === void 0) {
110
- console.warn("useRollbar must be used within a ErrorReporterContext");
111
- }
112
- return context ?? {};
113
- };
114
- export {
115
- ErrorAlert,
116
- ErrorRender,
117
- ErrorReporterProvider,
118
- ThrownErrorBoundary,
119
- useRollbar
120
- };
121
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/ErrorBoundary/ThrownErrorBoundary.tsx","../../src/components/ErrorRender/ErrorAlert.tsx","../../src/components/ErrorRender/Render.tsx","../../src/contexts/ErrorReporter/Provider.tsx","../../src/contexts/ErrorReporter/Context.ts","../../src/contexts/ErrorReporter/useRollbar.tsx"],"sourcesContent":["import { ModuleError, ModuleErrorSchema } from '@xyo-network/payload-model'\nimport { Component, ErrorInfo, ReactNode } from 'react'\nimport Rollbar from 'rollbar'\n\nimport { ErrorRender } from '../ErrorRender/index.js'\n\nexport interface ThrownErrorBoundaryProps {\n boundaryName?: string\n children: ReactNode\n errorComponent?: (e: ModuleError, boundaryName?: string) => ReactNode\n rethrow?: boolean\n rollbar?: Rollbar\n scope?: string\n}\n\nexport interface ThrownErrorBoundaryState {\n xyoError?: ModuleError\n}\n\nexport class ThrownErrorBoundary extends Component<ThrownErrorBoundaryProps, ThrownErrorBoundaryState> {\n override state: ThrownErrorBoundaryState = {\n xyoError: undefined,\n }\n\n static getDerivedStateFromError(error: Error) {\n return { hasError: true, xyoError: ThrownErrorBoundary.normalizeError(error) } as ThrownErrorBoundaryState\n }\n\n static normalizeError(error: Error | ModuleError): ModuleError {\n return (\n (error as ModuleError).schema === ModuleErrorSchema ?\n error\n : { message: error.message, schema: ModuleErrorSchema, sources: [] }) as ModuleError\n }\n\n override componentDidCatch(error: Error, errorInfo: ErrorInfo) {\n const { rethrow, rollbar } = this.props\n const { xyoError } = this.state\n\n rollbar?.error(error)\n\n console.error('Error:', xyoError, errorInfo)\n if (rethrow) {\n throw error\n }\n }\n\n override render() {\n const { xyoError } = this.state\n const { children, boundaryName, errorComponent, scope } = this.props\n if (xyoError) {\n if (errorComponent) {\n return errorComponent(xyoError)\n }\n return <ErrorRender error={xyoError} errorContext={`${boundaryName} Boundary`} scope={scope} />\n }\n\n return children\n }\n}\n","import { ExitToApp as ExitIcon } from '@mui/icons-material'\nimport { Alert, AlertProps, AlertTitle, Typography } from '@mui/material'\nimport { ButtonEx } from '@xylabs/react-button'\nimport { ModuleError } from '@xyo-network/payload-model'\n\nexport interface ErrorAlertProps extends AlertProps {\n error?: ModuleError | Error\n errorContext?: string\n onCancel?: () => void\n scope?: string\n}\n\nexport const ErrorAlert: React.FC<ErrorAlertProps> = ({ onCancel, error, errorContext, scope, ...props }) => {\n return (\n <Alert severity=\"error\" {...props}>\n <AlertTitle>Whoops! Something went wrong</AlertTitle>\n {errorContext ?\n <Typography variant=\"caption\" my={0.5} lineHeight=\"1\" display=\"block\">\n {errorContext}\n </Typography>\n : null}\n {scope ?\n <>\n <Typography variant=\"caption\" mr={0.5} fontWeight=\"bold\">\n Scope:\n </Typography>\n <Typography variant=\"caption\">{scope}</Typography>\n </>\n : null}\n <Typography variant=\"caption\" mr={0.5} fontWeight=\"bold\">\n Error:\n </Typography>\n <Typography variant=\"caption\">{error?.message}</Typography>\n {onCancel ?\n <ButtonEx variant=\"outlined\" size=\"small\" onClick={onCancel} position=\"absolute\" style={{ right: 8, top: 8 }}>\n <ExitIcon fontSize=\"small\" />\n </ButtonEx>\n : null}\n </Alert>\n )\n}\n","import { FlexCol } from '@xylabs/react-flexbox'\nimport { useEffect } from 'react'\n\nimport { ErrorAlert } from './ErrorAlert.js'\nimport { ErrorRenderProps } from './Props.js'\n\nexport const ErrorRender: React.FC<ErrorRenderProps> = ({\n onCancel,\n error,\n noErrorDisplay = false,\n customError = null,\n children,\n errorContext,\n scope,\n useLocation,\n ...props\n}) => {\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 location.state = {\n from: {\n pathname: window.location.pathname,\n },\n }\n }\n }, [location])\n\n return error ?\n <FlexCol alignItems=\"stretch\" {...props}>\n {noErrorDisplay ?\n customError\n : <FlexCol alignItems=\"center\" {...props}>\n <ErrorAlert error={error} errorContext={errorContext} onCancel={onCancel} scope={scope} />\n </FlexCol>\n }\n </FlexCol>\n : (<>{children}</> ?? null)\n}\n","import { WithChildren } from '@xylabs/react-shared'\nimport { useEffect, useState } from 'react'\nimport Rollbar from 'rollbar'\n\nimport { ErrorReporterContext } from './Context.js'\n\nexport interface ErrorReporterProviderProps {\n rollbar: Rollbar\n}\n\nconst ErrorReporterProvider: React.FC<WithChildren<ErrorReporterProviderProps>> = ({ children, rollbar }) => {\n const [rollbarInstance, setRollBarInstance] = useState<Rollbar>()\n\n useEffect(() => {\n if (rollbarInstance) {\n setRollBarInstance(rollbarInstance)\n }\n }, [rollbar, rollbarInstance])\n\n return <ErrorReporterContext.Provider value={{ rollbar }}>{children}</ErrorReporterContext.Provider>\n}\n\nexport { ErrorReporterProvider }\n","import { createContext } from 'react'\n\nimport { ErrorReporterContextState } from './State.js'\n\nexport const ErrorReporterContext = createContext<ErrorReporterContextState>({})\n","import { useContext } from 'react'\n\nimport { ErrorReporterContext } from './Context.js'\n\nconst useRollbar = () => {\n const context = useContext(ErrorReporterContext)\n if (context === undefined) {\n console.warn('useRollbar must be used within a ErrorReporterContext')\n }\n\n return context ?? {}\n}\n\nexport { useRollbar }\n"],"mappings":";AAAA,SAAsB,yBAAyB;AAC/C,SAAS,iBAAuC;;;ACDhD,SAAS,aAAa,gBAAgB;AACtC,SAAS,OAAmB,YAAY,kBAAkB;AAC1D,SAAS,gBAAgB;AAanB,SAOE,UAPF,KAOE,YAPF;AAHC,IAAM,aAAwC,CAAC,EAAE,UAAU,OAAO,cAAc,OAAO,GAAG,MAAM,MAAM;AAC3G,SACE,qBAAC,SAAM,UAAS,SAAS,GAAG,OAC1B;AAAA,wBAAC,cAAW,0CAA4B;AAAA,IACvC,eACC,oBAAC,cAAW,SAAQ,WAAU,IAAI,KAAK,YAAW,KAAI,SAAQ,SAC3D,wBACH,IACA;AAAA,IACD,QACC,iCACE;AAAA,0BAAC,cAAW,SAAQ,WAAU,IAAI,KAAK,YAAW,QAAO,oBAEzD;AAAA,MACA,oBAAC,cAAW,SAAQ,WAAW,iBAAM;AAAA,OACvC,IACA;AAAA,IACF,oBAAC,cAAW,SAAQ,WAAU,IAAI,KAAK,YAAW,QAAO,oBAEzD;AAAA,IACA,oBAAC,cAAW,SAAQ,WAAW,yCAAO,SAAQ;AAAA,IAC7C,WACC,oBAAC,YAAS,SAAQ,YAAW,MAAK,SAAQ,SAAS,UAAU,UAAS,YAAW,OAAO,EAAE,OAAO,GAAG,KAAK,EAAE,GACzG,8BAAC,YAAS,UAAS,SAAQ,GAC7B,IACA;AAAA,KACJ;AAEJ;;;ACxCA,SAAS,eAAe;AACxB,SAAS,iBAAiB;AAiCd,SAIL,YAAAA,WAJK,OAAAC,YAAA;AA5BL,IAAM,cAA0C,CAAC;AAAA,EACtD;AAAA,EACA;AAAA,EACA,iBAAiB;AAAA,EACjB,cAAc;AAAA,EACd;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,WAAW;AACjB,YAAU,MAAM;AACd,QAAI,UAAU;AAEZ,eAAS,QAAQ;AAAA,QACf,MAAM;AAAA,UACJ,UAAU,OAAO,SAAS;AAAA,QAC5B;AAAA,MACF;AAAA,IACF;AAAA,EACF,GAAG,CAAC,QAAQ,CAAC;AAEb,SAAO,QACH,gBAAAA,KAAC,WAAQ,YAAW,WAAW,GAAG,OAC/B,2BACC,cACA,gBAAAA,KAAC,WAAQ,YAAW,UAAU,GAAG,OAC/B,0BAAAA,KAAC,cAAW,OAAc,cAA4B,UAAoB,OAAc,GAC1F,GAEJ,IACC,gBAAAA,KAAAD,WAAA,EAAG,UAAS,KAAO;AAC1B;;;AFea,gBAAAE,YAAA;AAnCN,IAAM,sBAAN,MAAM,6BAA4B,UAA8D;AAAA,EAC5F,QAAkC;AAAA,IACzC,UAAU;AAAA,EACZ;AAAA,EAEA,OAAO,yBAAyB,OAAc;AAC5C,WAAO,EAAE,UAAU,MAAM,UAAU,qBAAoB,eAAe,KAAK,EAAE;AAAA,EAC/E;AAAA,EAEA,OAAO,eAAe,OAAyC;AAC7D,WACG,MAAsB,WAAW,oBAChC,QACA,EAAE,SAAS,MAAM,SAAS,QAAQ,mBAAmB,SAAS,CAAC,EAAE;AAAA,EACvE;AAAA,EAES,kBAAkB,OAAc,WAAsB;AAC7D,UAAM,EAAE,SAAS,QAAQ,IAAI,KAAK;AAClC,UAAM,EAAE,SAAS,IAAI,KAAK;AAE1B,uCAAS,MAAM;AAEf,YAAQ,MAAM,UAAU,UAAU,SAAS;AAC3C,QAAI,SAAS;AACX,YAAM;AAAA,IACR;AAAA,EACF;AAAA,EAES,SAAS;AAChB,UAAM,EAAE,SAAS,IAAI,KAAK;AAC1B,UAAM,EAAE,UAAU,cAAc,gBAAgB,MAAM,IAAI,KAAK;AAC/D,QAAI,UAAU;AACZ,UAAI,gBAAgB;AAClB,eAAO,eAAe,QAAQ;AAAA,MAChC;AACA,aAAO,gBAAAA,KAAC,eAAY,OAAO,UAAU,cAAc,GAAG,YAAY,aAAa,OAAc;AAAA,IAC/F;AAEA,WAAO;AAAA,EACT;AACF;;;AG1DA,SAAS,aAAAC,YAAW,gBAAgB;;;ACDpC,SAAS,qBAAqB;AAIvB,IAAM,uBAAuB,cAAyC,CAAC,CAAC;;;ADetE,gBAAAC,YAAA;AATT,IAAM,wBAA4E,CAAC,EAAE,UAAU,QAAQ,MAAM;AAC3G,QAAM,CAAC,iBAAiB,kBAAkB,IAAI,SAAkB;AAEhE,EAAAC,WAAU,MAAM;AACd,QAAI,iBAAiB;AACnB,yBAAmB,eAAe;AAAA,IACpC;AAAA,EACF,GAAG,CAAC,SAAS,eAAe,CAAC;AAE7B,SAAO,gBAAAD,KAAC,qBAAqB,UAArB,EAA8B,OAAO,EAAE,QAAQ,GAAI,UAAS;AACtE;;;AEpBA,SAAS,kBAAkB;AAI3B,IAAM,aAAa,MAAM;AACvB,QAAM,UAAU,WAAW,oBAAoB;AAC/C,MAAI,YAAY,QAAW;AACzB,YAAQ,KAAK,uDAAuD;AAAA,EACtE;AAEA,SAAO,WAAW,CAAC;AACrB;","names":["Fragment","jsx","jsx","useEffect","jsx","useEffect"]}