@xyo-network/react-error 2.64.0-rc.7 → 2.64.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.
Files changed (180) hide show
  1. package/dist/browser/components/ErrorBoundary/ThrownErrorBoundary.cjs +106 -0
  2. package/dist/browser/components/ErrorBoundary/ThrownErrorBoundary.cjs.map +1 -0
  3. package/dist/browser/components/ErrorBoundary/ThrownErrorBoundary.d.cts +21 -0
  4. package/dist/browser/components/ErrorBoundary/ThrownErrorBoundary.d.cts.map +1 -0
  5. package/dist/browser/components/ErrorBoundary/index.cjs +108 -0
  6. package/dist/browser/components/ErrorBoundary/index.cjs.map +1 -0
  7. package/dist/browser/components/ErrorBoundary/index.d.cts +2 -0
  8. package/dist/browser/components/ErrorBoundary/index.d.cts.map +1 -0
  9. package/dist/browser/components/ErrorRender/ErrorAlert.cjs +39 -0
  10. package/dist/{node/components/ErrorRender/ErrorAlert.mjs.map → browser/components/ErrorRender/ErrorAlert.cjs.map} +1 -1
  11. package/dist/browser/components/ErrorRender/ErrorAlert.d.cts +10 -0
  12. package/dist/browser/components/ErrorRender/ErrorAlert.d.cts.map +1 -0
  13. package/dist/browser/components/ErrorRender/Props.cjs +19 -0
  14. package/dist/browser/components/ErrorRender/Props.cjs.map +1 -0
  15. package/dist/browser/components/ErrorRender/Props.d.cts +12 -0
  16. package/dist/browser/components/ErrorRender/Props.d.cts.map +1 -0
  17. package/dist/browser/components/ErrorRender/Render.cjs +70 -0
  18. package/dist/browser/components/ErrorRender/Render.cjs.map +1 -0
  19. package/dist/browser/components/ErrorRender/Render.d.cts +4 -0
  20. package/dist/browser/components/ErrorRender/Render.d.cts.map +1 -0
  21. package/dist/browser/components/ErrorRender/index.cjs +71 -0
  22. package/dist/browser/components/ErrorRender/index.cjs.map +1 -0
  23. package/dist/browser/components/ErrorRender/index.d.cts +4 -0
  24. package/dist/browser/components/ErrorRender/index.d.cts.map +1 -0
  25. package/dist/browser/components/index.cjs +110 -0
  26. package/dist/browser/components/index.cjs.map +1 -0
  27. package/dist/browser/components/index.d.cts +3 -0
  28. package/dist/browser/components/index.d.cts.map +1 -0
  29. package/dist/browser/contexts/ErrorReporter/Context.cjs +28 -0
  30. package/dist/{node/contexts/ErrorReporter/Context.mjs.map → browser/contexts/ErrorReporter/Context.cjs.map} +1 -1
  31. package/dist/browser/contexts/ErrorReporter/Context.d.cts +4 -0
  32. package/dist/browser/contexts/ErrorReporter/Context.d.cts.map +1 -0
  33. package/dist/browser/contexts/ErrorReporter/Provider.cjs +43 -0
  34. package/dist/browser/contexts/ErrorReporter/Provider.cjs.map +1 -0
  35. package/dist/browser/contexts/ErrorReporter/Provider.d.cts +9 -0
  36. package/dist/browser/contexts/ErrorReporter/Provider.d.cts.map +1 -0
  37. package/dist/browser/contexts/ErrorReporter/State.cjs +19 -0
  38. package/dist/browser/contexts/ErrorReporter/State.cjs.map +1 -0
  39. package/dist/browser/contexts/ErrorReporter/State.d.cts +5 -0
  40. package/dist/browser/contexts/ErrorReporter/State.d.cts.map +1 -0
  41. package/dist/browser/contexts/ErrorReporter/index.cjs +56 -0
  42. package/dist/browser/contexts/ErrorReporter/index.cjs.map +1 -0
  43. package/dist/browser/contexts/ErrorReporter/index.d.cts +4 -0
  44. package/dist/browser/contexts/ErrorReporter/index.d.cts.map +1 -0
  45. package/dist/browser/contexts/ErrorReporter/useRollbar.cjs +40 -0
  46. package/dist/browser/contexts/ErrorReporter/useRollbar.cjs.map +1 -0
  47. package/dist/browser/contexts/ErrorReporter/useRollbar.d.cts +3 -0
  48. package/dist/browser/contexts/ErrorReporter/useRollbar.d.cts.map +1 -0
  49. package/dist/browser/contexts/index.cjs +56 -0
  50. package/dist/browser/contexts/index.cjs.map +1 -0
  51. package/dist/browser/contexts/index.d.cts +2 -0
  52. package/dist/browser/contexts/index.d.cts.map +1 -0
  53. package/dist/browser/index.cjs +141 -0
  54. package/dist/browser/index.cjs.map +1 -0
  55. package/dist/browser/index.d.cts +3 -0
  56. package/dist/browser/index.d.cts.map +1 -0
  57. package/dist/docs.json +25215 -0
  58. package/dist/node/components/ErrorBoundary/ThrownErrorBoundary.cjs +110 -0
  59. package/dist/node/components/ErrorBoundary/ThrownErrorBoundary.cjs.map +1 -0
  60. package/dist/node/components/ErrorBoundary/ThrownErrorBoundary.d.cts +21 -0
  61. package/dist/node/components/ErrorBoundary/ThrownErrorBoundary.d.cts.map +1 -0
  62. package/dist/node/components/ErrorBoundary/ThrownErrorBoundary.js +55 -33
  63. package/dist/node/components/ErrorBoundary/ThrownErrorBoundary.js.map +1 -1
  64. package/dist/node/components/ErrorBoundary/index.cjs +112 -0
  65. package/dist/node/components/ErrorBoundary/index.cjs.map +1 -0
  66. package/dist/node/components/ErrorBoundary/index.d.cts +2 -0
  67. package/dist/node/components/ErrorBoundary/index.d.cts.map +1 -0
  68. package/dist/node/components/ErrorBoundary/index.js +82 -20
  69. package/dist/node/components/ErrorBoundary/index.js.map +1 -1
  70. package/dist/node/components/ErrorRender/ErrorAlert.cjs +43 -0
  71. package/dist/node/components/ErrorRender/ErrorAlert.cjs.map +1 -0
  72. package/dist/node/components/ErrorRender/ErrorAlert.d.cts +10 -0
  73. package/dist/node/components/ErrorRender/ErrorAlert.d.cts.map +1 -0
  74. package/dist/node/components/ErrorRender/ErrorAlert.js +14 -37
  75. package/dist/node/components/ErrorRender/ErrorAlert.js.map +1 -1
  76. package/dist/node/components/ErrorRender/Props.cjs +19 -0
  77. package/dist/node/components/ErrorRender/Props.cjs.map +1 -0
  78. package/dist/node/components/ErrorRender/Props.d.cts +12 -0
  79. package/dist/node/components/ErrorRender/Props.d.cts.map +1 -0
  80. package/dist/node/components/ErrorRender/Props.js +0 -16
  81. package/dist/node/components/ErrorRender/Props.js.map +1 -1
  82. package/dist/node/components/ErrorRender/Render.cjs +74 -0
  83. package/dist/node/components/ErrorRender/Render.cjs.map +1 -0
  84. package/dist/node/components/ErrorRender/Render.d.cts +4 -0
  85. package/dist/node/components/ErrorRender/Render.d.cts.map +1 -0
  86. package/dist/node/components/ErrorRender/Render.js +28 -35
  87. package/dist/node/components/ErrorRender/Render.js.map +1 -1
  88. package/dist/node/components/ErrorRender/index.cjs +76 -0
  89. package/dist/node/components/ErrorRender/index.cjs.map +1 -0
  90. package/dist/node/components/ErrorRender/index.d.cts +4 -0
  91. package/dist/node/components/ErrorRender/index.d.cts.map +1 -0
  92. package/dist/node/components/ErrorRender/index.js +45 -24
  93. package/dist/node/components/ErrorRender/index.js.map +1 -1
  94. package/dist/node/components/index.cjs +116 -0
  95. package/dist/node/components/index.cjs.map +1 -0
  96. package/dist/node/components/index.d.cts +3 -0
  97. package/dist/node/components/index.d.cts.map +1 -0
  98. package/dist/node/components/index.js +84 -22
  99. package/dist/node/components/index.js.map +1 -1
  100. package/dist/node/contexts/ErrorReporter/Context.cjs +32 -0
  101. package/dist/node/contexts/ErrorReporter/Context.cjs.map +1 -0
  102. package/dist/node/contexts/ErrorReporter/Context.d.cts +4 -0
  103. package/dist/node/contexts/ErrorReporter/Context.d.cts.map +1 -0
  104. package/dist/node/contexts/ErrorReporter/Context.js +5 -28
  105. package/dist/node/contexts/ErrorReporter/Context.js.map +1 -1
  106. package/dist/node/contexts/ErrorReporter/Provider.cjs +47 -0
  107. package/dist/node/contexts/ErrorReporter/Provider.cjs.map +1 -0
  108. package/dist/node/contexts/ErrorReporter/Provider.d.cts +9 -0
  109. package/dist/node/contexts/ErrorReporter/Provider.d.cts.map +1 -0
  110. package/dist/node/contexts/ErrorReporter/Provider.js +15 -33
  111. package/dist/node/contexts/ErrorReporter/Provider.js.map +1 -1
  112. package/dist/node/contexts/ErrorReporter/State.cjs +19 -0
  113. package/dist/node/contexts/ErrorReporter/State.cjs.map +1 -0
  114. package/dist/node/contexts/ErrorReporter/State.d.cts +5 -0
  115. package/dist/node/contexts/ErrorReporter/State.d.cts.map +1 -0
  116. package/dist/node/contexts/ErrorReporter/State.js +0 -16
  117. package/dist/node/contexts/ErrorReporter/State.js.map +1 -1
  118. package/dist/node/contexts/ErrorReporter/index.cjs +61 -0
  119. package/dist/node/contexts/ErrorReporter/index.cjs.map +1 -0
  120. package/dist/node/contexts/ErrorReporter/index.d.cts +4 -0
  121. package/dist/node/contexts/ErrorReporter/index.d.cts.map +1 -0
  122. package/dist/node/contexts/ErrorReporter/index.js +30 -24
  123. package/dist/node/contexts/ErrorReporter/index.js.map +1 -1
  124. package/dist/node/contexts/ErrorReporter/useRollbar.cjs +44 -0
  125. package/dist/node/contexts/ErrorReporter/useRollbar.cjs.map +1 -0
  126. package/dist/node/contexts/ErrorReporter/useRollbar.d.cts +3 -0
  127. package/dist/node/contexts/ErrorReporter/useRollbar.d.cts.map +1 -0
  128. package/dist/node/contexts/ErrorReporter/useRollbar.js +12 -30
  129. package/dist/node/contexts/ErrorReporter/useRollbar.js.map +1 -1
  130. package/dist/node/contexts/index.cjs +61 -0
  131. package/dist/node/contexts/index.cjs.map +1 -0
  132. package/dist/node/contexts/index.d.cts +2 -0
  133. package/dist/node/contexts/index.d.cts.map +1 -0
  134. package/dist/node/contexts/index.js +30 -20
  135. package/dist/node/contexts/index.js.map +1 -1
  136. package/dist/node/index.cjs +149 -0
  137. package/dist/node/index.cjs.map +1 -0
  138. package/dist/node/index.d.cts +3 -0
  139. package/dist/node/index.d.cts.map +1 -0
  140. package/dist/node/index.js +115 -22
  141. package/dist/node/index.js.map +1 -1
  142. package/package.json +17 -17
  143. package/dist/browser/components/ErrorBoundary/ThrownErrorBoundary.stories.js +0 -26
  144. package/dist/browser/components/ErrorBoundary/ThrownErrorBoundary.stories.js.map +0 -1
  145. package/dist/browser/contexts/ErrorReporter/Provider.stories.js +0 -35
  146. package/dist/browser/contexts/ErrorReporter/Provider.stories.js.map +0 -1
  147. package/dist/node/components/ErrorBoundary/ThrownErrorBoundary.mjs +0 -39
  148. package/dist/node/components/ErrorBoundary/ThrownErrorBoundary.mjs.map +0 -1
  149. package/dist/node/components/ErrorBoundary/ThrownErrorBoundary.stories.js +0 -51
  150. package/dist/node/components/ErrorBoundary/ThrownErrorBoundary.stories.js.map +0 -1
  151. package/dist/node/components/ErrorBoundary/ThrownErrorBoundary.stories.mjs +0 -26
  152. package/dist/node/components/ErrorBoundary/ThrownErrorBoundary.stories.mjs.map +0 -1
  153. package/dist/node/components/ErrorBoundary/index.mjs +0 -2
  154. package/dist/node/components/ErrorBoundary/index.mjs.map +0 -1
  155. package/dist/node/components/ErrorRender/ErrorAlert.mjs +0 -17
  156. package/dist/node/components/ErrorRender/Props.mjs +0 -1
  157. package/dist/node/components/ErrorRender/Props.mjs.map +0 -1
  158. package/dist/node/components/ErrorRender/Render.mjs +0 -32
  159. package/dist/node/components/ErrorRender/Render.mjs.map +0 -1
  160. package/dist/node/components/ErrorRender/index.mjs +0 -4
  161. package/dist/node/components/ErrorRender/index.mjs.map +0 -1
  162. package/dist/node/components/index.mjs +0 -3
  163. package/dist/node/components/index.mjs.map +0 -1
  164. package/dist/node/contexts/ErrorReporter/Context.mjs +0 -6
  165. package/dist/node/contexts/ErrorReporter/Provider.mjs +0 -16
  166. package/dist/node/contexts/ErrorReporter/Provider.mjs.map +0 -1
  167. package/dist/node/contexts/ErrorReporter/Provider.stories.js +0 -69
  168. package/dist/node/contexts/ErrorReporter/Provider.stories.js.map +0 -1
  169. package/dist/node/contexts/ErrorReporter/Provider.stories.mjs +0 -35
  170. package/dist/node/contexts/ErrorReporter/Provider.stories.mjs.map +0 -1
  171. package/dist/node/contexts/ErrorReporter/State.mjs +0 -1
  172. package/dist/node/contexts/ErrorReporter/State.mjs.map +0 -1
  173. package/dist/node/contexts/ErrorReporter/index.mjs +0 -4
  174. package/dist/node/contexts/ErrorReporter/index.mjs.map +0 -1
  175. package/dist/node/contexts/ErrorReporter/useRollbar.mjs +0 -13
  176. package/dist/node/contexts/ErrorReporter/useRollbar.mjs.map +0 -1
  177. package/dist/node/contexts/index.mjs +0 -2
  178. package/dist/node/contexts/index.mjs.map +0 -1
  179. package/dist/node/index.mjs +0 -3
  180. package/dist/node/index.mjs.map +0 -1
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/components/index.ts
21
+ var components_exports = {};
22
+ __export(components_exports, {
23
+ ErrorAlert: () => ErrorAlert,
24
+ ErrorRender: () => ErrorRender,
25
+ ThrownErrorBoundary: () => ThrownErrorBoundary
26
+ });
27
+ module.exports = __toCommonJS(components_exports);
28
+
29
+ // src/components/ErrorBoundary/ThrownErrorBoundary.tsx
30
+ var import_payload_model = require("@xyo-network/payload-model");
31
+ var import_react2 = require("react");
32
+
33
+ // src/components/ErrorRender/ErrorAlert.tsx
34
+ var import_icons_material = require("@mui/icons-material");
35
+ var import_material = require("@mui/material");
36
+ var import_react_button = require("@xylabs/react-button");
37
+ var import_jsx_runtime = require("react/jsx-runtime");
38
+ var ErrorAlert = ({ onCancel, error, errorContext, ...props }) => {
39
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_material.Alert, { severity: "error", ...props, children: [
40
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.AlertTitle, { children: "Whoops! Something went wrong" }),
41
+ errorContext ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.Typography, { variant: "caption", my: 0.5, lineHeight: "1", display: "block", children: errorContext }) : null,
42
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.Typography, { variant: "caption", mr: 0.5, fontWeight: "bold", children: "Error:" }),
43
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.Typography, { variant: "caption", children: error?.message }),
44
+ onCancel ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_button.ButtonEx, { variant: "outlined", size: "small", onClick: onCancel, position: "absolute", style: { right: 8, top: 8 }, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.ExitToApp, { fontSize: "small" }) }) : null
45
+ ] });
46
+ };
47
+
48
+ // src/components/ErrorRender/Render.tsx
49
+ var import_react_flexbox = require("@xylabs/react-flexbox");
50
+ var import_react = require("react");
51
+ var import_react_router_dom = require("react-router-dom");
52
+ var import_jsx_runtime2 = require("react/jsx-runtime");
53
+ var ErrorRender = ({
54
+ onCancel,
55
+ error,
56
+ noErrorDisplay = false,
57
+ customError = null,
58
+ children,
59
+ errorContext,
60
+ ...props
61
+ }) => {
62
+ const location = (0, import_react_router_dom.useLocation)();
63
+ (0, import_react.useEffect)(() => {
64
+ location.state = {
65
+ from: {
66
+ pathname: window.location.pathname
67
+ }
68
+ };
69
+ }, [location]);
70
+ if (error) {
71
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react_flexbox.FlexCol, { alignItems: "stretch", ...props, children: noErrorDisplay ? customError : /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react_flexbox.FlexCol, { alignItems: "center", ...props, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(ErrorAlert, { error, errorContext, onCancel }) }) });
72
+ } else {
73
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_jsx_runtime2.Fragment, { children }) ?? null;
74
+ }
75
+ };
76
+
77
+ // src/components/ErrorBoundary/ThrownErrorBoundary.tsx
78
+ var import_jsx_runtime3 = require("react/jsx-runtime");
79
+ var ThrownErrorBoundary = class _ThrownErrorBoundary extends import_react2.Component {
80
+ state = {
81
+ xyoError: void 0
82
+ };
83
+ static getDerivedStateFromError(error) {
84
+ return { hasError: true, xyoError: _ThrownErrorBoundary.normalizeError(error) };
85
+ }
86
+ static normalizeError(error) {
87
+ return error.schema === import_payload_model.ModuleErrorSchema ? error : { message: error.message, schema: import_payload_model.ModuleErrorSchema, sources: [] };
88
+ }
89
+ componentDidCatch(error, errorInfo) {
90
+ const { rethrow, rollbar } = this.props;
91
+ const { xyoError } = this.state;
92
+ rollbar?.error(error);
93
+ console.error("Error:", xyoError, errorInfo);
94
+ if (rethrow) {
95
+ throw error;
96
+ }
97
+ }
98
+ render() {
99
+ const { xyoError } = this.state;
100
+ const { children, boundaryName, errorComponent } = this.props;
101
+ if (xyoError) {
102
+ if (errorComponent) {
103
+ return errorComponent(xyoError);
104
+ }
105
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(ErrorRender, { error: xyoError, errorContext: `${boundaryName} Boundary` });
106
+ }
107
+ return children;
108
+ }
109
+ };
110
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/index.ts","../../../src/components/ErrorBoundary/ThrownErrorBoundary.tsx","../../../src/components/ErrorRender/ErrorAlert.tsx","../../../src/components/ErrorRender/Render.tsx"],"sourcesContent":["export * from './ErrorBoundary'\nexport * from './ErrorRender'\n","import { ModuleError, ModuleErrorSchema } from '@xyo-network/payload-model'\nimport { Component, ErrorInfo, ReactNode } from 'react'\nimport Rollbar from 'rollbar'\n\nimport { ErrorRender } from '../ErrorRender'\n\nexport interface ThrownErrorBoundaryProps {\n boundaryName?: string\n children: ReactNode\n errorComponent?: (e: ModuleError, boundaryName?: string) => ReactNode\n rethrow?: boolean\n rollbar?: Rollbar\n}\n\nexport interface ThrownErrorBoundaryState {\n xyoError?: ModuleError\n}\n\nexport class ThrownErrorBoundary extends Component<ThrownErrorBoundaryProps, ThrownErrorBoundaryState> {\n public 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 public static normalizeError(error: Error | ModuleError): ModuleError {\n return (\n (error as ModuleError).schema === ModuleErrorSchema ? error : { message: error.message, schema: ModuleErrorSchema, sources: [] }\n ) as ModuleError\n }\n\n public 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 public override render() {\n const { xyoError } = this.state\n const { children, boundaryName, errorComponent } = this.props\n if (xyoError) {\n if (errorComponent) {\n return errorComponent(xyoError)\n }\n return <ErrorRender error={xyoError} errorContext={`${boundaryName} Boundary`} />\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}\n\nexport const ErrorAlert: React.FC<ErrorAlertProps> = ({ onCancel, error, errorContext, ...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 <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'\nimport { useLocation } from 'react-router-dom'\n\nimport { ErrorAlert } from './ErrorAlert'\nimport { ErrorRenderProps } from './Props'\n\nexport const ErrorRender: React.FC<ErrorRenderProps> = ({\n onCancel,\n error,\n noErrorDisplay = false,\n customError = null,\n children,\n errorContext,\n ...props\n}) => {\n const location = useLocation()\n useEffect(() => {\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 }, [location])\n\n if (error) {\n return (\n <FlexCol alignItems=\"stretch\" {...props}>\n {noErrorDisplay ? (\n customError\n ) : (\n <FlexCol alignItems=\"center\" {...props}>\n <ErrorAlert error={error} errorContext={errorContext} onCancel={onCancel} />\n </FlexCol>\n )}\n </FlexCol>\n )\n } else {\n return <>{children}</> ?? null\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,2BAA+C;AAC/C,IAAAA,gBAAgD;;;ACDhD,4BAAsC;AACtC,sBAA0D;AAC1D,0BAAyB;AAWrB;AAFG,IAAM,aAAwC,CAAC,EAAE,UAAU,OAAO,cAAc,GAAG,MAAM,MAAM;AACpG,SACE,6CAAC,yBAAM,UAAS,SAAS,GAAG,OAC1B;AAAA,gDAAC,8BAAW,0CAA4B;AAAA,IACvC,eACC,4CAAC,8BAAW,SAAQ,WAAU,IAAI,KAAK,YAAW,KAAI,SAAQ,SAC3D,wBACH,IACE;AAAA,IACJ,4CAAC,8BAAW,SAAQ,WAAU,IAAI,KAAK,YAAW,QAAO,oBAEzD;AAAA,IACA,4CAAC,8BAAW,SAAQ,WAAW,iBAAO,SAAQ;AAAA,IAC7C,WACC,4CAAC,gCAAS,SAAQ,YAAW,MAAK,SAAQ,SAAS,UAAU,UAAS,YAAW,OAAO,EAAE,OAAO,GAAG,KAAK,EAAE,GACzG,sDAAC,sBAAAC,WAAA,EAAS,UAAS,SAAQ,GAC7B,IACE;AAAA,KACN;AAEJ;;;AC/BA,2BAAwB;AACxB,mBAA0B;AAC1B,8BAA4B;AA+BhB,IAAAC,sBAAA;AA1BL,IAAM,cAA0C,CAAC;AAAA,EACtD;AAAA,EACA;AAAA,EACA,iBAAiB;AAAA,EACjB,cAAc;AAAA,EACd;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,eAAW,qCAAY;AAC7B,8BAAU,MAAM;AAEd,aAAS,QAAQ;AAAA,MACf,MAAM;AAAA,QACJ,UAAU,OAAO,SAAS;AAAA,MAC5B;AAAA,IACF;AAAA,EACF,GAAG,CAAC,QAAQ,CAAC;AAEb,MAAI,OAAO;AACT,WACE,6CAAC,gCAAQ,YAAW,WAAW,GAAG,OAC/B,2BACC,cAEA,6CAAC,gCAAQ,YAAW,UAAU,GAAG,OAC/B,uDAAC,cAAW,OAAc,cAA4B,UAAoB,GAC5E,GAEJ;AAAA,EAEJ,OAAO;AACL,WAAO,6EAAG,UAAS,KAAO;AAAA,EAC5B;AACF;;;AFWa,IAAAC,sBAAA;AAlCN,IAAM,sBAAN,MAAM,6BAA4B,wBAA8D;AAAA,EACrF,QAAkC;AAAA,IAChD,UAAU;AAAA,EACZ;AAAA,EAEA,OAAO,yBAAyB,OAAc;AAC5C,WAAO,EAAE,UAAU,MAAM,UAAU,qBAAoB,eAAe,KAAK,EAAE;AAAA,EAC/E;AAAA,EAEA,OAAc,eAAe,OAAyC;AACpE,WACG,MAAsB,WAAW,yCAAoB,QAAQ,EAAE,SAAS,MAAM,SAAS,QAAQ,wCAAmB,SAAS,CAAC,EAAE;AAAA,EAEnI;AAAA,EAEgB,kBAAkB,OAAc,WAAsB;AACpE,UAAM,EAAE,SAAS,QAAQ,IAAI,KAAK;AAClC,UAAM,EAAE,SAAS,IAAI,KAAK;AAE1B,aAAS,MAAM,KAAK;AAEpB,YAAQ,MAAM,UAAU,UAAU,SAAS;AAC3C,QAAI,SAAS;AACX,YAAM;AAAA,IACR;AAAA,EACF;AAAA,EAEgB,SAAS;AACvB,UAAM,EAAE,SAAS,IAAI,KAAK;AAC1B,UAAM,EAAE,UAAU,cAAc,eAAe,IAAI,KAAK;AACxD,QAAI,UAAU;AACZ,UAAI,gBAAgB;AAClB,eAAO,eAAe,QAAQ;AAAA,MAChC;AACA,aAAO,6CAAC,eAAY,OAAO,UAAU,cAAc,GAAG,YAAY,aAAa;AAAA,IACjF;AAEA,WAAO;AAAA,EACT;AACF;","names":["import_react","ExitIcon","import_jsx_runtime","import_jsx_runtime"]}
@@ -0,0 +1,3 @@
1
+ export * from './ErrorBoundary';
2
+ export * from './ErrorRender';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,eAAe,CAAA"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/contexts/ErrorReporter/Context.ts
21
+ var Context_exports = {};
22
+ __export(Context_exports, {
23
+ ErrorReporterContext: () => ErrorReporterContext
24
+ });
25
+ module.exports = __toCommonJS(Context_exports);
26
+ var import_react = require("react");
27
+ var ErrorReporterContext = (0, import_react.createContext)({});
28
+ //# sourceMappingURL=Context.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/contexts/ErrorReporter/Context.ts"],"sourcesContent":["import { createContext } from 'react'\n\nimport { ErrorReporterContextState } from './State'\n\nexport const ErrorReporterContext = createContext<ErrorReporterContextState>({})\n"],"mappings":"AAAA,SAAS,qBAAqB;AAIvB,MAAM,uBAAuB,cAAyC,CAAC,CAAC;","names":[]}
1
+ {"version":3,"sources":["../../../../src/contexts/ErrorReporter/Context.ts"],"sourcesContent":["import { createContext } from 'react'\n\nimport { ErrorReporterContextState } from './State'\n\nexport const ErrorReporterContext = createContext<ErrorReporterContextState>({})\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA8B;AAIvB,IAAM,2BAAuB,4BAAyC,CAAC,CAAC;","names":[]}
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { ErrorReporterContextState } from './State';
3
+ export declare const ErrorReporterContext: import("react").Context<ErrorReporterContextState>;
4
+ //# sourceMappingURL=Context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../../../src/contexts/ErrorReporter/Context.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAEnD,eAAO,MAAM,oBAAoB,oDAA+C,CAAA"}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/contexts/ErrorReporter/Provider.tsx
21
+ var Provider_exports = {};
22
+ __export(Provider_exports, {
23
+ ErrorReporterProvider: () => ErrorReporterProvider
24
+ });
25
+ module.exports = __toCommonJS(Provider_exports);
26
+ var import_react2 = require("react");
27
+
28
+ // src/contexts/ErrorReporter/Context.ts
29
+ var import_react = require("react");
30
+ var ErrorReporterContext = (0, import_react.createContext)({});
31
+
32
+ // src/contexts/ErrorReporter/Provider.tsx
33
+ var import_jsx_runtime = require("react/jsx-runtime");
34
+ var ErrorReporterProvider = ({ children, rollbar }) => {
35
+ const [rollbarInstance, setRollBarInstance] = (0, import_react2.useState)();
36
+ (0, import_react2.useEffect)(() => {
37
+ if (rollbarInstance) {
38
+ setRollBarInstance(rollbarInstance);
39
+ }
40
+ }, [rollbar, rollbarInstance]);
41
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ErrorReporterContext.Provider, { value: { rollbar }, children });
42
+ };
43
+ //# sourceMappingURL=Provider.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/contexts/ErrorReporter/Provider.tsx","../../../../src/contexts/ErrorReporter/Context.ts"],"sourcesContent":["import { WithChildren } from '@xylabs/react-shared'\nimport { useEffect, useState } from 'react'\nimport Rollbar from 'rollbar'\n\nimport { ErrorReporterContext } from './Context'\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'\n\nexport const ErrorReporterContext = createContext<ErrorReporterContextState>({})\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,IAAAA,gBAAoC;;;ACDpC,mBAA8B;AAIvB,IAAM,2BAAuB,4BAAyC,CAAC,CAAC;;;ADetE;AATT,IAAM,wBAA4E,CAAC,EAAE,UAAU,QAAQ,MAAM;AAC3G,QAAM,CAAC,iBAAiB,kBAAkB,QAAI,wBAAkB;AAEhE,+BAAU,MAAM;AACd,QAAI,iBAAiB;AACnB,yBAAmB,eAAe;AAAA,IACpC;AAAA,EACF,GAAG,CAAC,SAAS,eAAe,CAAC;AAE7B,SAAO,4CAAC,qBAAqB,UAArB,EAA8B,OAAO,EAAE,QAAQ,GAAI,UAAS;AACtE;","names":["import_react"]}
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ import { WithChildren } from '@xylabs/react-shared';
3
+ import Rollbar from 'rollbar';
4
+ export interface ErrorReporterProviderProps {
5
+ rollbar: Rollbar;
6
+ }
7
+ declare const ErrorReporterProvider: React.FC<WithChildren<ErrorReporterProviderProps>>;
8
+ export { ErrorReporterProvider };
9
+ //# sourceMappingURL=Provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Provider.d.ts","sourceRoot":"","sources":["../../../../src/contexts/ErrorReporter/Provider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAEnD,OAAO,OAAO,MAAM,SAAS,CAAA;AAI7B,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,OAAO,CAAA;CACjB;AAED,QAAA,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,0BAA0B,CAAC,CAU7E,CAAA;AAED,OAAO,EAAE,qBAAqB,EAAE,CAAA"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+
16
+ // src/contexts/ErrorReporter/State.ts
17
+ var State_exports = {};
18
+ module.exports = __toCommonJS(State_exports);
19
+ //# sourceMappingURL=State.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/contexts/ErrorReporter/State.ts"],"sourcesContent":["import Rollbar from 'rollbar'\n\nexport interface ErrorReporterContextState {\n rollbar?: Rollbar\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
@@ -0,0 +1,5 @@
1
+ import Rollbar from 'rollbar';
2
+ export interface ErrorReporterContextState {
3
+ rollbar?: Rollbar;
4
+ }
5
+ //# sourceMappingURL=State.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"State.d.ts","sourceRoot":"","sources":["../../../../src/contexts/ErrorReporter/State.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAA;AAE7B,MAAM,WAAW,yBAAyB;IACxC,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB"}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/contexts/ErrorReporter/index.ts
21
+ var ErrorReporter_exports = {};
22
+ __export(ErrorReporter_exports, {
23
+ ErrorReporterProvider: () => ErrorReporterProvider,
24
+ useRollbar: () => useRollbar
25
+ });
26
+ module.exports = __toCommonJS(ErrorReporter_exports);
27
+
28
+ // src/contexts/ErrorReporter/Provider.tsx
29
+ var import_react2 = require("react");
30
+
31
+ // src/contexts/ErrorReporter/Context.ts
32
+ var import_react = require("react");
33
+ var ErrorReporterContext = (0, import_react.createContext)({});
34
+
35
+ // src/contexts/ErrorReporter/Provider.tsx
36
+ var import_jsx_runtime = require("react/jsx-runtime");
37
+ var ErrorReporterProvider = ({ children, rollbar }) => {
38
+ const [rollbarInstance, setRollBarInstance] = (0, import_react2.useState)();
39
+ (0, import_react2.useEffect)(() => {
40
+ if (rollbarInstance) {
41
+ setRollBarInstance(rollbarInstance);
42
+ }
43
+ }, [rollbar, rollbarInstance]);
44
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ErrorReporterContext.Provider, { value: { rollbar }, children });
45
+ };
46
+
47
+ // src/contexts/ErrorReporter/useRollbar.tsx
48
+ var import_react3 = require("react");
49
+ var useRollbar = () => {
50
+ const context = (0, import_react3.useContext)(ErrorReporterContext);
51
+ if (context === void 0) {
52
+ console.warn("useRollbar must be used within a ErrorReporterContext");
53
+ }
54
+ return context ?? {};
55
+ };
56
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/contexts/ErrorReporter/index.ts","../../../../src/contexts/ErrorReporter/Provider.tsx","../../../../src/contexts/ErrorReporter/Context.ts","../../../../src/contexts/ErrorReporter/useRollbar.tsx"],"sourcesContent":["export * from './Provider'\nexport * from './State'\nexport * from './useRollbar'\n","import { WithChildren } from '@xylabs/react-shared'\nimport { useEffect, useState } from 'react'\nimport Rollbar from 'rollbar'\n\nimport { ErrorReporterContext } from './Context'\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'\n\nexport const ErrorReporterContext = createContext<ErrorReporterContextState>({})\n","import { useContext } from 'react'\n\nimport { ErrorReporterContext } from './Context'\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;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,IAAAA,gBAAoC;;;ACDpC,mBAA8B;AAIvB,IAAM,2BAAuB,4BAAyC,CAAC,CAAC;;;ADetE;AATT,IAAM,wBAA4E,CAAC,EAAE,UAAU,QAAQ,MAAM;AAC3G,QAAM,CAAC,iBAAiB,kBAAkB,QAAI,wBAAkB;AAEhE,+BAAU,MAAM;AACd,QAAI,iBAAiB;AACnB,yBAAmB,eAAe;AAAA,IACpC;AAAA,EACF,GAAG,CAAC,SAAS,eAAe,CAAC;AAE7B,SAAO,4CAAC,qBAAqB,UAArB,EAA8B,OAAO,EAAE,QAAQ,GAAI,UAAS;AACtE;;;AEpBA,IAAAC,gBAA2B;AAI3B,IAAM,aAAa,MAAM;AACvB,QAAM,cAAU,0BAAW,oBAAoB;AAC/C,MAAI,YAAY,QAAW;AACzB,YAAQ,KAAK,uDAAuD;AAAA,EACtE;AAEA,SAAO,WAAW,CAAC;AACrB;","names":["import_react","import_react"]}
@@ -0,0 +1,4 @@
1
+ export * from './Provider';
2
+ export * from './State';
3
+ export * from './useRollbar';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/contexts/ErrorReporter/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,cAAc,CAAA"}
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/contexts/ErrorReporter/useRollbar.tsx
21
+ var useRollbar_exports = {};
22
+ __export(useRollbar_exports, {
23
+ useRollbar: () => useRollbar
24
+ });
25
+ module.exports = __toCommonJS(useRollbar_exports);
26
+ var import_react2 = require("react");
27
+
28
+ // src/contexts/ErrorReporter/Context.ts
29
+ var import_react = require("react");
30
+ var ErrorReporterContext = (0, import_react.createContext)({});
31
+
32
+ // src/contexts/ErrorReporter/useRollbar.tsx
33
+ var useRollbar = () => {
34
+ const context = (0, import_react2.useContext)(ErrorReporterContext);
35
+ if (context === void 0) {
36
+ console.warn("useRollbar must be used within a ErrorReporterContext");
37
+ }
38
+ return context ?? {};
39
+ };
40
+ //# sourceMappingURL=useRollbar.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/contexts/ErrorReporter/useRollbar.tsx","../../../../src/contexts/ErrorReporter/Context.ts"],"sourcesContent":["import { useContext } from 'react'\n\nimport { ErrorReporterContext } from './Context'\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","import { createContext } from 'react'\n\nimport { ErrorReporterContextState } from './State'\n\nexport const ErrorReporterContext = createContext<ErrorReporterContextState>({})\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAAA,gBAA2B;;;ACA3B,mBAA8B;AAIvB,IAAM,2BAAuB,4BAAyC,CAAC,CAAC;;;ADA/E,IAAM,aAAa,MAAM;AACvB,QAAM,cAAU,0BAAW,oBAAoB;AAC/C,MAAI,YAAY,QAAW;AACzB,YAAQ,KAAK,uDAAuD;AAAA,EACtE;AAEA,SAAO,WAAW,CAAC;AACrB;","names":["import_react"]}
@@ -0,0 +1,3 @@
1
+ declare const useRollbar: () => import("./State").ErrorReporterContextState;
2
+ export { useRollbar };
3
+ //# sourceMappingURL=useRollbar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useRollbar.d.ts","sourceRoot":"","sources":["../../../../src/contexts/ErrorReporter/useRollbar.tsx"],"names":[],"mappings":"AAIA,QAAA,MAAM,UAAU,mDAOf,CAAA;AAED,OAAO,EAAE,UAAU,EAAE,CAAA"}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/contexts/index.ts
21
+ var contexts_exports = {};
22
+ __export(contexts_exports, {
23
+ ErrorReporterProvider: () => ErrorReporterProvider,
24
+ useRollbar: () => useRollbar
25
+ });
26
+ module.exports = __toCommonJS(contexts_exports);
27
+
28
+ // src/contexts/ErrorReporter/Provider.tsx
29
+ var import_react2 = require("react");
30
+
31
+ // src/contexts/ErrorReporter/Context.ts
32
+ var import_react = require("react");
33
+ var ErrorReporterContext = (0, import_react.createContext)({});
34
+
35
+ // src/contexts/ErrorReporter/Provider.tsx
36
+ var import_jsx_runtime = require("react/jsx-runtime");
37
+ var ErrorReporterProvider = ({ children, rollbar }) => {
38
+ const [rollbarInstance, setRollBarInstance] = (0, import_react2.useState)();
39
+ (0, import_react2.useEffect)(() => {
40
+ if (rollbarInstance) {
41
+ setRollBarInstance(rollbarInstance);
42
+ }
43
+ }, [rollbar, rollbarInstance]);
44
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ErrorReporterContext.Provider, { value: { rollbar }, children });
45
+ };
46
+
47
+ // src/contexts/ErrorReporter/useRollbar.tsx
48
+ var import_react3 = require("react");
49
+ var useRollbar = () => {
50
+ const context = (0, import_react3.useContext)(ErrorReporterContext);
51
+ if (context === void 0) {
52
+ console.warn("useRollbar must be used within a ErrorReporterContext");
53
+ }
54
+ return context ?? {};
55
+ };
56
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/contexts/index.ts","../../../src/contexts/ErrorReporter/Provider.tsx","../../../src/contexts/ErrorReporter/Context.ts","../../../src/contexts/ErrorReporter/useRollbar.tsx"],"sourcesContent":["export * from './ErrorReporter'\n","import { WithChildren } from '@xylabs/react-shared'\nimport { useEffect, useState } from 'react'\nimport Rollbar from 'rollbar'\n\nimport { ErrorReporterContext } from './Context'\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'\n\nexport const ErrorReporterContext = createContext<ErrorReporterContextState>({})\n","import { useContext } from 'react'\n\nimport { ErrorReporterContext } from './Context'\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;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,IAAAA,gBAAoC;;;ACDpC,mBAA8B;AAIvB,IAAM,2BAAuB,4BAAyC,CAAC,CAAC;;;ADetE;AATT,IAAM,wBAA4E,CAAC,EAAE,UAAU,QAAQ,MAAM;AAC3G,QAAM,CAAC,iBAAiB,kBAAkB,QAAI,wBAAkB;AAEhE,+BAAU,MAAM;AACd,QAAI,iBAAiB;AACnB,yBAAmB,eAAe;AAAA,IACpC;AAAA,EACF,GAAG,CAAC,SAAS,eAAe,CAAC;AAE7B,SAAO,4CAAC,qBAAqB,UAArB,EAA8B,OAAO,EAAE,QAAQ,GAAI,UAAS;AACtE;;;AEpBA,IAAAC,gBAA2B;AAI3B,IAAM,aAAa,MAAM;AACvB,QAAM,cAAU,0BAAW,oBAAoB;AAC/C,MAAI,YAAY,QAAW;AACzB,YAAQ,KAAK,uDAAuD;AAAA,EACtE;AAEA,SAAO,WAAW,CAAC;AACrB;","names":["import_react","import_react"]}
@@ -0,0 +1,2 @@
1
+ export * from './ErrorReporter';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/contexts/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA"}
@@ -0,0 +1,141 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/index.ts
21
+ var src_exports = {};
22
+ __export(src_exports, {
23
+ ErrorAlert: () => ErrorAlert,
24
+ ErrorRender: () => ErrorRender,
25
+ ErrorReporterProvider: () => ErrorReporterProvider,
26
+ ThrownErrorBoundary: () => ThrownErrorBoundary,
27
+ useRollbar: () => useRollbar
28
+ });
29
+ module.exports = __toCommonJS(src_exports);
30
+
31
+ // src/components/ErrorBoundary/ThrownErrorBoundary.tsx
32
+ var import_payload_model = require("@xyo-network/payload-model");
33
+ var import_react2 = require("react");
34
+
35
+ // src/components/ErrorRender/ErrorAlert.tsx
36
+ var import_icons_material = require("@mui/icons-material");
37
+ var import_material = require("@mui/material");
38
+ var import_react_button = require("@xylabs/react-button");
39
+ var import_jsx_runtime = require("react/jsx-runtime");
40
+ var ErrorAlert = ({ onCancel, error, errorContext, ...props }) => {
41
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_material.Alert, { severity: "error", ...props, children: [
42
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.AlertTitle, { children: "Whoops! Something went wrong" }),
43
+ errorContext ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.Typography, { variant: "caption", my: 0.5, lineHeight: "1", display: "block", children: errorContext }) : null,
44
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.Typography, { variant: "caption", mr: 0.5, fontWeight: "bold", children: "Error:" }),
45
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.Typography, { variant: "caption", children: error?.message }),
46
+ onCancel ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_button.ButtonEx, { variant: "outlined", size: "small", onClick: onCancel, position: "absolute", style: { right: 8, top: 8 }, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.ExitToApp, { fontSize: "small" }) }) : null
47
+ ] });
48
+ };
49
+
50
+ // src/components/ErrorRender/Render.tsx
51
+ var import_react_flexbox = require("@xylabs/react-flexbox");
52
+ var import_react = require("react");
53
+ var import_react_router_dom = require("react-router-dom");
54
+ var import_jsx_runtime2 = require("react/jsx-runtime");
55
+ var ErrorRender = ({
56
+ onCancel,
57
+ error,
58
+ noErrorDisplay = false,
59
+ customError = null,
60
+ children,
61
+ errorContext,
62
+ ...props
63
+ }) => {
64
+ const location = (0, import_react_router_dom.useLocation)();
65
+ (0, import_react.useEffect)(() => {
66
+ location.state = {
67
+ from: {
68
+ pathname: window.location.pathname
69
+ }
70
+ };
71
+ }, [location]);
72
+ if (error) {
73
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react_flexbox.FlexCol, { alignItems: "stretch", ...props, children: noErrorDisplay ? customError : /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react_flexbox.FlexCol, { alignItems: "center", ...props, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(ErrorAlert, { error, errorContext, onCancel }) }) });
74
+ } else {
75
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_jsx_runtime2.Fragment, { children }) ?? null;
76
+ }
77
+ };
78
+
79
+ // src/components/ErrorBoundary/ThrownErrorBoundary.tsx
80
+ var import_jsx_runtime3 = require("react/jsx-runtime");
81
+ var ThrownErrorBoundary = class _ThrownErrorBoundary extends import_react2.Component {
82
+ state = {
83
+ xyoError: void 0
84
+ };
85
+ static getDerivedStateFromError(error) {
86
+ return { hasError: true, xyoError: _ThrownErrorBoundary.normalizeError(error) };
87
+ }
88
+ static normalizeError(error) {
89
+ return error.schema === import_payload_model.ModuleErrorSchema ? error : { message: error.message, schema: import_payload_model.ModuleErrorSchema, sources: [] };
90
+ }
91
+ componentDidCatch(error, errorInfo) {
92
+ const { rethrow, rollbar } = this.props;
93
+ const { xyoError } = this.state;
94
+ rollbar?.error(error);
95
+ console.error("Error:", xyoError, errorInfo);
96
+ if (rethrow) {
97
+ throw error;
98
+ }
99
+ }
100
+ render() {
101
+ const { xyoError } = this.state;
102
+ const { children, boundaryName, errorComponent } = this.props;
103
+ if (xyoError) {
104
+ if (errorComponent) {
105
+ return errorComponent(xyoError);
106
+ }
107
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(ErrorRender, { error: xyoError, errorContext: `${boundaryName} Boundary` });
108
+ }
109
+ return children;
110
+ }
111
+ };
112
+
113
+ // src/contexts/ErrorReporter/Provider.tsx
114
+ var import_react4 = require("react");
115
+
116
+ // src/contexts/ErrorReporter/Context.ts
117
+ var import_react3 = require("react");
118
+ var ErrorReporterContext = (0, import_react3.createContext)({});
119
+
120
+ // src/contexts/ErrorReporter/Provider.tsx
121
+ var import_jsx_runtime4 = require("react/jsx-runtime");
122
+ var ErrorReporterProvider = ({ children, rollbar }) => {
123
+ const [rollbarInstance, setRollBarInstance] = (0, import_react4.useState)();
124
+ (0, import_react4.useEffect)(() => {
125
+ if (rollbarInstance) {
126
+ setRollBarInstance(rollbarInstance);
127
+ }
128
+ }, [rollbar, rollbarInstance]);
129
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(ErrorReporterContext.Provider, { value: { rollbar }, children });
130
+ };
131
+
132
+ // src/contexts/ErrorReporter/useRollbar.tsx
133
+ var import_react5 = require("react");
134
+ var useRollbar = () => {
135
+ const context = (0, import_react5.useContext)(ErrorReporterContext);
136
+ if (context === void 0) {
137
+ console.warn("useRollbar must be used within a ErrorReporterContext");
138
+ }
139
+ return context ?? {};
140
+ };
141
+ //# sourceMappingURL=index.cjs.map