@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
@@ -1,25 +1,118 @@
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 });
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 { jsx, jsxs } from "react/jsx-runtime";
10
+ var ErrorAlert = ({ onCancel, error, errorContext, ...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
+ /* @__PURE__ */ jsx(Typography, { variant: "caption", mr: 0.5, fontWeight: "bold", children: "Error:" }),
15
+ /* @__PURE__ */ jsx(Typography, { variant: "caption", children: error == null ? void 0 : error.message }),
16
+ onCancel ? /* @__PURE__ */ jsx(ButtonEx, { variant: "outlined", size: "small", onClick: onCancel, position: "absolute", style: { right: 8, top: 8 }, children: /* @__PURE__ */ jsx(ExitIcon, { fontSize: "small" }) }) : null
17
+ ] });
18
+ };
19
+
20
+ // src/components/ErrorRender/Render.tsx
21
+ import { FlexCol } from "@xylabs/react-flexbox";
22
+ import { useEffect } from "react";
23
+ import { useLocation } from "react-router-dom";
24
+ import { Fragment, jsx as jsx2 } from "react/jsx-runtime";
25
+ var ErrorRender = ({
26
+ onCancel,
27
+ error,
28
+ noErrorDisplay = false,
29
+ customError = null,
30
+ children,
31
+ errorContext,
32
+ ...props
33
+ }) => {
34
+ const location = useLocation();
35
+ useEffect(() => {
36
+ location.state = {
37
+ from: {
38
+ pathname: window.location.pathname
39
+ }
40
+ };
41
+ }, [location]);
42
+ if (error) {
43
+ return /* @__PURE__ */ jsx2(FlexCol, { alignItems: "stretch", ...props, children: noErrorDisplay ? customError : /* @__PURE__ */ jsx2(FlexCol, { alignItems: "center", ...props, children: /* @__PURE__ */ jsx2(ErrorAlert, { error, errorContext, onCancel }) }) });
44
+ } else {
45
+ return /* @__PURE__ */ jsx2(Fragment, { children }) ?? null;
46
+ }
47
+ };
48
+
49
+ // src/components/ErrorBoundary/ThrownErrorBoundary.tsx
50
+ import { jsx as jsx3 } from "react/jsx-runtime";
51
+ var ThrownErrorBoundary = class _ThrownErrorBoundary extends Component {
52
+ state = {
53
+ xyoError: void 0
54
+ };
55
+ static getDerivedStateFromError(error) {
56
+ return { hasError: true, xyoError: _ThrownErrorBoundary.normalizeError(error) };
57
+ }
58
+ static normalizeError(error) {
59
+ return error.schema === ModuleErrorSchema ? error : { message: error.message, schema: ModuleErrorSchema, sources: [] };
60
+ }
61
+ componentDidCatch(error, errorInfo) {
62
+ const { rethrow, rollbar } = this.props;
63
+ const { xyoError } = this.state;
64
+ rollbar == null ? void 0 : rollbar.error(error);
65
+ console.error("Error:", xyoError, errorInfo);
66
+ if (rethrow) {
67
+ throw error;
68
+ }
11
69
  }
12
- return to;
70
+ render() {
71
+ const { xyoError } = this.state;
72
+ const { children, boundaryName, errorComponent } = this.props;
73
+ if (xyoError) {
74
+ if (errorComponent) {
75
+ return errorComponent(xyoError);
76
+ }
77
+ return /* @__PURE__ */ jsx3(ErrorRender, { error: xyoError, errorContext: `${boundaryName} Boundary` });
78
+ }
79
+ return children;
80
+ }
81
+ };
82
+
83
+ // src/contexts/ErrorReporter/Provider.tsx
84
+ import { useEffect as useEffect2, useState } from "react";
85
+
86
+ // src/contexts/ErrorReporter/Context.ts
87
+ import { createContext } from "react";
88
+ var ErrorReporterContext = createContext({});
89
+
90
+ // src/contexts/ErrorReporter/Provider.tsx
91
+ import { jsx as jsx4 } from "react/jsx-runtime";
92
+ var ErrorReporterProvider = ({ children, rollbar }) => {
93
+ const [rollbarInstance, setRollBarInstance] = useState();
94
+ useEffect2(() => {
95
+ if (rollbarInstance) {
96
+ setRollBarInstance(rollbarInstance);
97
+ }
98
+ }, [rollbar, rollbarInstance]);
99
+ return /* @__PURE__ */ jsx4(ErrorReporterContext.Provider, { value: { rollbar }, children });
100
+ };
101
+
102
+ // src/contexts/ErrorReporter/useRollbar.tsx
103
+ import { useContext } from "react";
104
+ var useRollbar = () => {
105
+ const context = useContext(ErrorReporterContext);
106
+ if (context === void 0) {
107
+ console.warn("useRollbar must be used within a ErrorReporterContext");
108
+ }
109
+ return context ?? {};
110
+ };
111
+ export {
112
+ ErrorAlert,
113
+ ErrorRender,
114
+ ErrorReporterProvider,
115
+ ThrownErrorBoundary,
116
+ useRollbar
13
117
  };
14
- var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
15
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
16
- var src_exports = {};
17
- module.exports = __toCommonJS(src_exports);
18
- __reExport(src_exports, require("./components"), module.exports);
19
- __reExport(src_exports, require("./contexts"), module.exports);
20
- // Annotate the CommonJS export names for ESM import in node:
21
- 0 && (module.exports = {
22
- ...require("./components"),
23
- ...require("./contexts")
24
- });
25
118
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts"],"sourcesContent":["export * from './components'\nexport * from './contexts'\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AAAA,wBAAc,yBAAd;AACA,wBAAc,uBADd;","names":[]}
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'\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","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,SAAsB,yBAAyB;AAC/C,SAAS,iBAAuC;;;ACDhD,SAAS,aAAa,gBAAgB;AACtC,SAAS,OAAmB,YAAY,kBAAkB;AAC1D,SAAS,gBAAgB;AAWrB,SACE,KADF;AAFG,IAAM,aAAwC,CAAC,EAAE,UAAU,OAAO,cAAc,GAAG,MAAM,MAAM;AACpG,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,IACE;AAAA,IACJ,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,IACE;AAAA,KACN;AAEJ;;;AC/BA,SAAS,eAAe;AACxB,SAAS,iBAAiB;AAC1B,SAAS,mBAAmB;AA+BhB,SAMD,UANC,OAAAA,YAAA;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,WAAW,YAAY;AAC7B,YAAU,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,gBAAAA,KAAC,WAAQ,YAAW,WAAW,GAAG,OAC/B,2BACC,cAEA,gBAAAA,KAAC,WAAQ,YAAW,UAAU,GAAG,OAC/B,0BAAAA,KAAC,cAAW,OAAc,cAA4B,UAAoB,GAC5E,GAEJ;AAAA,EAEJ,OAAO;AACL,WAAO,gBAAAA,KAAA,YAAG,UAAS,KAAO;AAAA,EAC5B;AACF;;;AFWa,gBAAAC,YAAA;AAlCN,IAAM,sBAAN,MAAM,6BAA4B,UAA8D;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,oBAAoB,QAAQ,EAAE,SAAS,MAAM,SAAS,QAAQ,mBAAmB,SAAS,CAAC,EAAE;AAAA,EAEnI;AAAA,EAEgB,kBAAkB,OAAc,WAAsB;AACpE,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,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,gBAAAA,KAAC,eAAY,OAAO,UAAU,cAAc,GAAG,YAAY,aAAa;AAAA,IACjF;AAEA,WAAO;AAAA,EACT;AACF;;;AGxDA,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":["jsx","jsx","useEffect","jsx","useEffect"]}
package/package.json CHANGED
@@ -10,10 +10,10 @@
10
10
  "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/issues"
11
11
  },
12
12
  "dependencies": {
13
- "@xylabs/react-button": "^3.1.0-rc.6",
14
- "@xylabs/react-flexbox": "^3.1.0-rc.6",
15
- "@xylabs/react-shared": "^3.1.0-rc.6",
16
- "@xyo-network/payload-model": "^2.74.5"
13
+ "@xylabs/react-button": "^3.0.5",
14
+ "@xylabs/react-flexbox": "^3.0.5",
15
+ "@xylabs/react-shared": "^3.0.5",
16
+ "@xyo-network/payload-model": "^2.75.3"
17
17
  },
18
18
  "peerDependencies": {
19
19
  "@mui/icons-material": "^5",
@@ -25,9 +25,9 @@
25
25
  "rollbar": "^2"
26
26
  },
27
27
  "devDependencies": {
28
- "@storybook/react": "^7.4.4",
29
- "@xylabs/ts-scripts-yarn3": "^3.0.55",
30
- "@xylabs/tsconfig-react": "^3.0.55",
28
+ "@storybook/react": "^7.4.5",
29
+ "@xylabs/ts-scripts-yarn3": "^3.0.78",
30
+ "@xylabs/tsconfig-react": "^3.0.78",
31
31
  "typescript": "^5.2.2"
32
32
  },
33
33
  "peerDependenciesMeta": {
@@ -42,28 +42,28 @@
42
42
  "node": {
43
43
  "import": {
44
44
  "types": "./dist/node/index.d.mts",
45
- "default": "./dist/node/index.mjs"
45
+ "default": "./dist/node/index.js"
46
46
  },
47
47
  "require": {
48
- "types": "./dist/node/index.d.ts",
49
- "default": "./dist/node/index.js"
48
+ "types": "./dist/node/index.d.cts",
49
+ "default": "./dist/node/index.cjs"
50
50
  }
51
51
  },
52
52
  "browser": {
53
53
  "import": {
54
- "types": "./dist/browser/index.d.ts",
54
+ "types": "./dist/browser/index.d.mts",
55
55
  "default": "./dist/browser/index.js"
56
56
  },
57
57
  "require": {
58
- "types": "./dist/browser/index.d.ts",
59
- "default": "./dist/browser/index.js"
58
+ "types": "./dist/browser/index.d.cts",
59
+ "default": "./dist/browser/index.cjs"
60
60
  }
61
61
  },
62
- "default": "./dist/browser/index.mjs"
62
+ "default": "./dist/browser/index.js"
63
63
  },
64
64
  "./package.json": "./package.json"
65
65
  },
66
- "main": "dist/browser/index.js",
66
+ "main": "dist/browser/index.cjs",
67
67
  "module": "dist/browser/index.js",
68
68
  "homepage": "https://xyo.network",
69
69
  "keywords": [
@@ -86,6 +86,6 @@
86
86
  },
87
87
  "sideEffects": false,
88
88
  "types": "dist/browser/index.d.ts",
89
- "version": "2.64.0-rc.7",
90
- "stableVersion": "2.63.1"
89
+ "version": "2.64.0",
90
+ "type": "module"
91
91
  }
@@ -1,26 +0,0 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
- import { Alert } from "@mui/material";
3
- import { ThrownErrorBoundary } from "./ThrownErrorBoundary";
4
- const StorybookEntry = {
5
- component: ThrownErrorBoundary,
6
- title: "auth-service/ApiBoundary/ThrownErrorBoundary"
7
- };
8
- const Template = ({ errorComponent }) => {
9
- return /* @__PURE__ */ jsx(ThrownErrorBoundary, { errorComponent, boundaryName: "StoryBook", children: /* @__PURE__ */ jsx(Alert, { severity: "info", children: "Use React Dev Tools to trigger and error within the boundary" }) });
10
- };
11
- const Default = Template.bind({});
12
- Default.args = {};
13
- const CustomErrorComponent = Template.bind({});
14
- CustomErrorComponent.args = {
15
- errorComponent: (e) => /* @__PURE__ */ jsxs(Alert, { severity: "error", children: [
16
- "Using Custom Error Component with error: ",
17
- e.message
18
- ] })
19
- };
20
- var ThrownErrorBoundary_stories_default = StorybookEntry;
21
- export {
22
- CustomErrorComponent,
23
- Default,
24
- ThrownErrorBoundary_stories_default as default
25
- };
26
- //# sourceMappingURL=ThrownErrorBoundary.stories.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/ErrorBoundary/ThrownErrorBoundary.stories.tsx"],"sourcesContent":["/* eslint-disable import/no-internal-modules */\nimport { Alert } from '@mui/material'\nimport { Meta, StoryFn } from '@storybook/react'\n\nimport { ThrownErrorBoundary } from './ThrownErrorBoundary'\n\nconst StorybookEntry: Meta = {\n component: ThrownErrorBoundary,\n title: 'auth-service/ApiBoundary/ThrownErrorBoundary',\n}\n\nconst Template: StoryFn<typeof ThrownErrorBoundary> = ({ errorComponent }) => {\n return (\n <ThrownErrorBoundary errorComponent={errorComponent} boundaryName=\"StoryBook\">\n <Alert severity=\"info\">Use React Dev Tools to trigger and error within the boundary</Alert>\n </ThrownErrorBoundary>\n )\n}\n\nconst Default = Template.bind({})\nDefault.args = {}\n\nconst CustomErrorComponent = Template.bind({})\nCustomErrorComponent.args = {\n errorComponent: (e) => <Alert severity=\"error\">Using Custom Error Component with error: {e.message}</Alert>,\n}\n\nexport { CustomErrorComponent, Default }\n\n// eslint-disable-next-line import/no-default-export\nexport default StorybookEntry\n"],"mappings":"AAcM,cAUmB,YAVnB;AAbN,SAAS,aAAa;AAGtB,SAAS,2BAA2B;AAEpC,MAAM,iBAAuB;AAAA,EAC3B,WAAW;AAAA,EACX,OAAO;AACT;AAEA,MAAM,WAAgD,CAAC,EAAE,eAAe,MAAM;AAC5E,SACE,oBAAC,uBAAoB,gBAAgC,cAAa,aAChE,8BAAC,SAAM,UAAS,QAAO,0EAA4D,GACrF;AAEJ;AAEA,MAAM,UAAU,SAAS,KAAK,CAAC,CAAC;AAChC,QAAQ,OAAO,CAAC;AAEhB,MAAM,uBAAuB,SAAS,KAAK,CAAC,CAAC;AAC7C,qBAAqB,OAAO;AAAA,EAC1B,gBAAgB,CAAC,MAAM,qBAAC,SAAM,UAAS,SAAQ;AAAA;AAAA,IAA0C,EAAE;AAAA,KAAQ;AACrG;AAKA,IAAO,sCAAQ;","names":[]}
@@ -1,35 +0,0 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
- import { Typography } from "@mui/material";
3
- import Rollbar from "rollbar";
4
- import { ErrorReporterProvider } from "./Provider";
5
- import { useRollbar } from "./useRollbar";
6
- const StorybookEntry = {
7
- argTypes: {},
8
- component: ErrorReporterProvider,
9
- parameters: {
10
- docs: {
11
- page: null
12
- }
13
- },
14
- title: "auth-service/ErrorReporterProvider"
15
- };
16
- const RollbarComponent = () => {
17
- const { rollbar } = useRollbar();
18
- const rollbarFound = typeof rollbar?.error === "function";
19
- return /* @__PURE__ */ jsxs(Typography, { color: rollbarFound ? "green" : "red", children: [
20
- "Rollbar instance ",
21
- rollbarFound ? "" : "NOT",
22
- " found from context!"
23
- ] });
24
- };
25
- const Template = () => {
26
- const rollbar = new Rollbar();
27
- return /* @__PURE__ */ jsx(ErrorReporterProvider, { rollbar, children: /* @__PURE__ */ jsx(RollbarComponent, {}) });
28
- };
29
- const Default = Template.bind({});
30
- var Provider_stories_default = StorybookEntry;
31
- export {
32
- Default,
33
- Provider_stories_default as default
34
- };
35
- //# sourceMappingURL=Provider.stories.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/contexts/ErrorReporter/Provider.stories.tsx"],"sourcesContent":["import { Typography } from '@mui/material'\nimport { Meta, StoryFn } from '@storybook/react'\nimport Rollbar from 'rollbar'\n\nimport { ErrorReporterProvider } from './Provider'\nimport { useRollbar } from './useRollbar'\n\nconst StorybookEntry = {\n argTypes: {},\n component: ErrorReporterProvider,\n parameters: {\n docs: {\n page: null,\n },\n },\n title: 'auth-service/ErrorReporterProvider',\n} as Meta<typeof ErrorReporterProvider>\n\nconst RollbarComponent = () => {\n const { rollbar } = useRollbar()\n const rollbarFound = typeof rollbar?.error === 'function'\n\n return <Typography color={rollbarFound ? 'green' : 'red'}>Rollbar instance {rollbarFound ? '' : 'NOT'} found from context!</Typography>\n}\n\nconst Template: StoryFn<typeof ErrorReporterProvider> = () => {\n const rollbar = new Rollbar()\n return (\n <ErrorReporterProvider rollbar={rollbar}>\n <RollbarComponent />\n </ErrorReporterProvider>\n )\n}\n\nconst Default = Template.bind({})\n\nexport { Default }\n\n// eslint-disable-next-line import/no-default-export\nexport default StorybookEntry\n"],"mappings":"AAsBS,SAOH,KAPG;AAtBT,SAAS,kBAAkB;AAE3B,OAAO,aAAa;AAEpB,SAAS,6BAA6B;AACtC,SAAS,kBAAkB;AAE3B,MAAM,iBAAiB;AAAA,EACrB,UAAU,CAAC;AAAA,EACX,WAAW;AAAA,EACX,YAAY;AAAA,IACV,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,OAAO;AACT;AAEA,MAAM,mBAAmB,MAAM;AAC7B,QAAM,EAAE,QAAQ,IAAI,WAAW;AAC/B,QAAM,eAAe,OAAO,SAAS,UAAU;AAE/C,SAAO,qBAAC,cAAW,OAAO,eAAe,UAAU,OAAO;AAAA;AAAA,IAAkB,eAAe,KAAK;AAAA,IAAM;AAAA,KAAoB;AAC5H;AAEA,MAAM,WAAkD,MAAM;AAC5D,QAAM,UAAU,IAAI,QAAQ;AAC5B,SACE,oBAAC,yBAAsB,SACrB,8BAAC,oBAAiB,GACpB;AAEJ;AAEA,MAAM,UAAU,SAAS,KAAK,CAAC,CAAC;AAKhC,IAAO,2BAAQ;","names":[]}
@@ -1,39 +0,0 @@
1
- import { jsx } from "react/jsx-runtime";
2
- import { ModuleErrorSchema } from "@xyo-network/payload-model";
3
- import { Component } from "react";
4
- import { ErrorRender } from "../ErrorRender";
5
- class ThrownErrorBoundary extends Component {
6
- state = {
7
- xyoError: void 0
8
- };
9
- static getDerivedStateFromError(error) {
10
- return { hasError: true, xyoError: ThrownErrorBoundary.normalizeError(error) };
11
- }
12
- static normalizeError(error) {
13
- return error.schema === ModuleErrorSchema ? error : { message: error.message, schema: ModuleErrorSchema, sources: [] };
14
- }
15
- componentDidCatch(error, errorInfo) {
16
- const { rethrow, rollbar } = this.props;
17
- const { xyoError } = this.state;
18
- rollbar?.error(error);
19
- console.error("Error:", xyoError, errorInfo);
20
- if (rethrow) {
21
- throw error;
22
- }
23
- }
24
- render() {
25
- const { xyoError } = this.state;
26
- const { children, boundaryName, errorComponent } = this.props;
27
- if (xyoError) {
28
- if (errorComponent) {
29
- return errorComponent(xyoError);
30
- }
31
- return /* @__PURE__ */ jsx(ErrorRender, { error: xyoError, errorContext: `${boundaryName} Boundary` });
32
- }
33
- return children;
34
- }
35
- }
36
- export {
37
- ThrownErrorBoundary
38
- };
39
- //# sourceMappingURL=ThrownErrorBoundary.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/ErrorBoundary/ThrownErrorBoundary.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'\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"],"mappings":"AAoDa;AApDb,SAAsB,yBAAyB;AAC/C,SAAS,iBAAuC;AAGhD,SAAS,mBAAmB;AAcrB,MAAM,4BAA4B,UAA8D;AAAA,EACrF,QAAkC;AAAA,IAChD,UAAU;AAAA,EACZ;AAAA,EAEA,OAAO,yBAAyB,OAAc;AAC5C,WAAO,EAAE,UAAU,MAAM,UAAU,oBAAoB,eAAe,KAAK,EAAE;AAAA,EAC/E;AAAA,EAEA,OAAc,eAAe,OAAyC;AACpE,WACG,MAAsB,WAAW,oBAAoB,QAAQ,EAAE,SAAS,MAAM,SAAS,QAAQ,mBAAmB,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,oBAAC,eAAY,OAAO,UAAU,cAAc,GAAG,YAAY,aAAa;AAAA,IACjF;AAEA,WAAO;AAAA,EACT;AACF;","names":[]}
@@ -1,51 +0,0 @@
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
- var ThrownErrorBoundary_stories_exports = {};
20
- __export(ThrownErrorBoundary_stories_exports, {
21
- CustomErrorComponent: () => CustomErrorComponent,
22
- Default: () => Default,
23
- default: () => ThrownErrorBoundary_stories_default
24
- });
25
- module.exports = __toCommonJS(ThrownErrorBoundary_stories_exports);
26
- var import_jsx_runtime = require("react/jsx-runtime");
27
- var import_material = require("@mui/material");
28
- var import_ThrownErrorBoundary = require("./ThrownErrorBoundary");
29
- const StorybookEntry = {
30
- component: import_ThrownErrorBoundary.ThrownErrorBoundary,
31
- title: "auth-service/ApiBoundary/ThrownErrorBoundary"
32
- };
33
- const Template = ({ errorComponent }) => {
34
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ThrownErrorBoundary.ThrownErrorBoundary, { errorComponent, boundaryName: "StoryBook", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.Alert, { severity: "info", children: "Use React Dev Tools to trigger and error within the boundary" }) });
35
- };
36
- const Default = Template.bind({});
37
- Default.args = {};
38
- const CustomErrorComponent = Template.bind({});
39
- CustomErrorComponent.args = {
40
- errorComponent: (e) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_material.Alert, { severity: "error", children: [
41
- "Using Custom Error Component with error: ",
42
- e.message
43
- ] })
44
- };
45
- var ThrownErrorBoundary_stories_default = StorybookEntry;
46
- // Annotate the CommonJS export names for ESM import in node:
47
- 0 && (module.exports = {
48
- CustomErrorComponent,
49
- Default
50
- });
51
- //# sourceMappingURL=ThrownErrorBoundary.stories.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/ErrorBoundary/ThrownErrorBoundary.stories.tsx"],"sourcesContent":["/* eslint-disable import/no-internal-modules */\nimport { Alert } from '@mui/material'\nimport { Meta, StoryFn } from '@storybook/react'\n\nimport { ThrownErrorBoundary } from './ThrownErrorBoundary'\n\nconst StorybookEntry: Meta = {\n component: ThrownErrorBoundary,\n title: 'auth-service/ApiBoundary/ThrownErrorBoundary',\n}\n\nconst Template: StoryFn<typeof ThrownErrorBoundary> = ({ errorComponent }) => {\n return (\n <ThrownErrorBoundary errorComponent={errorComponent} boundaryName=\"StoryBook\">\n <Alert severity=\"info\">Use React Dev Tools to trigger and error within the boundary</Alert>\n </ThrownErrorBoundary>\n )\n}\n\nconst Default = Template.bind({})\nDefault.args = {}\n\nconst CustomErrorComponent = Template.bind({})\nCustomErrorComponent.args = {\n errorComponent: (e) => <Alert severity=\"error\">Using Custom Error Component with error: {e.message}</Alert>,\n}\n\nexport { CustomErrorComponent, Default }\n\n// eslint-disable-next-line import/no-default-export\nexport default StorybookEntry\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAcM;AAbN,sBAAsB;AAGtB,iCAAoC;AAEpC,MAAM,iBAAuB;AAAA,EAC3B,WAAW;AAAA,EACX,OAAO;AACT;AAEA,MAAM,WAAgD,CAAC,EAAE,eAAe,MAAM;AAC5E,SACE,4CAAC,kDAAoB,gBAAgC,cAAa,aAChE,sDAAC,yBAAM,UAAS,QAAO,0EAA4D,GACrF;AAEJ;AAEA,MAAM,UAAU,SAAS,KAAK,CAAC,CAAC;AAChC,QAAQ,OAAO,CAAC;AAEhB,MAAM,uBAAuB,SAAS,KAAK,CAAC,CAAC;AAC7C,qBAAqB,OAAO;AAAA,EAC1B,gBAAgB,CAAC,MAAM,6CAAC,yBAAM,UAAS,SAAQ;AAAA;AAAA,IAA0C,EAAE;AAAA,KAAQ;AACrG;AAKA,IAAO,sCAAQ;","names":[]}
@@ -1,26 +0,0 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
- import { Alert } from "@mui/material";
3
- import { ThrownErrorBoundary } from "./ThrownErrorBoundary";
4
- const StorybookEntry = {
5
- component: ThrownErrorBoundary,
6
- title: "auth-service/ApiBoundary/ThrownErrorBoundary"
7
- };
8
- const Template = ({ errorComponent }) => {
9
- return /* @__PURE__ */ jsx(ThrownErrorBoundary, { errorComponent, boundaryName: "StoryBook", children: /* @__PURE__ */ jsx(Alert, { severity: "info", children: "Use React Dev Tools to trigger and error within the boundary" }) });
10
- };
11
- const Default = Template.bind({});
12
- Default.args = {};
13
- const CustomErrorComponent = Template.bind({});
14
- CustomErrorComponent.args = {
15
- errorComponent: (e) => /* @__PURE__ */ jsxs(Alert, { severity: "error", children: [
16
- "Using Custom Error Component with error: ",
17
- e.message
18
- ] })
19
- };
20
- var ThrownErrorBoundary_stories_default = StorybookEntry;
21
- export {
22
- CustomErrorComponent,
23
- Default,
24
- ThrownErrorBoundary_stories_default as default
25
- };
26
- //# sourceMappingURL=ThrownErrorBoundary.stories.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/ErrorBoundary/ThrownErrorBoundary.stories.tsx"],"sourcesContent":["/* eslint-disable import/no-internal-modules */\nimport { Alert } from '@mui/material'\nimport { Meta, StoryFn } from '@storybook/react'\n\nimport { ThrownErrorBoundary } from './ThrownErrorBoundary'\n\nconst StorybookEntry: Meta = {\n component: ThrownErrorBoundary,\n title: 'auth-service/ApiBoundary/ThrownErrorBoundary',\n}\n\nconst Template: StoryFn<typeof ThrownErrorBoundary> = ({ errorComponent }) => {\n return (\n <ThrownErrorBoundary errorComponent={errorComponent} boundaryName=\"StoryBook\">\n <Alert severity=\"info\">Use React Dev Tools to trigger and error within the boundary</Alert>\n </ThrownErrorBoundary>\n )\n}\n\nconst Default = Template.bind({})\nDefault.args = {}\n\nconst CustomErrorComponent = Template.bind({})\nCustomErrorComponent.args = {\n errorComponent: (e) => <Alert severity=\"error\">Using Custom Error Component with error: {e.message}</Alert>,\n}\n\nexport { CustomErrorComponent, Default }\n\n// eslint-disable-next-line import/no-default-export\nexport default StorybookEntry\n"],"mappings":"AAcM,cAUmB,YAVnB;AAbN,SAAS,aAAa;AAGtB,SAAS,2BAA2B;AAEpC,MAAM,iBAAuB;AAAA,EAC3B,WAAW;AAAA,EACX,OAAO;AACT;AAEA,MAAM,WAAgD,CAAC,EAAE,eAAe,MAAM;AAC5E,SACE,oBAAC,uBAAoB,gBAAgC,cAAa,aAChE,8BAAC,SAAM,UAAS,QAAO,0EAA4D,GACrF;AAEJ;AAEA,MAAM,UAAU,SAAS,KAAK,CAAC,CAAC;AAChC,QAAQ,OAAO,CAAC;AAEhB,MAAM,uBAAuB,SAAS,KAAK,CAAC,CAAC;AAC7C,qBAAqB,OAAO;AAAA,EAC1B,gBAAgB,CAAC,MAAM,qBAAC,SAAM,UAAS,SAAQ;AAAA;AAAA,IAA0C,EAAE;AAAA,KAAQ;AACrG;AAKA,IAAO,sCAAQ;","names":[]}
@@ -1,2 +0,0 @@
1
- export * from "./ThrownErrorBoundary";
2
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/ErrorBoundary/index.ts"],"sourcesContent":["export * from './ThrownErrorBoundary'\n"],"mappings":"AAAA,cAAc;","names":[]}
@@ -1,17 +0,0 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
- import { ExitToApp as ExitIcon } from "@mui/icons-material";
3
- import { Alert, AlertTitle, Typography } from "@mui/material";
4
- import { ButtonEx } from "@xylabs/react-button";
5
- const ErrorAlert = ({ onCancel, error, errorContext, ...props }) => {
6
- return /* @__PURE__ */ jsxs(Alert, { severity: "error", ...props, children: [
7
- /* @__PURE__ */ jsx(AlertTitle, { children: "Whoops! Something went wrong" }),
8
- errorContext ? /* @__PURE__ */ jsx(Typography, { variant: "caption", my: 0.5, lineHeight: "1", display: "block", children: errorContext }) : null,
9
- /* @__PURE__ */ jsx(Typography, { variant: "caption", mr: 0.5, fontWeight: "bold", children: "Error:" }),
10
- /* @__PURE__ */ jsx(Typography, { variant: "caption", children: error?.message }),
11
- onCancel ? /* @__PURE__ */ jsx(ButtonEx, { variant: "outlined", size: "small", onClick: onCancel, position: "absolute", style: { right: 8, top: 8 }, children: /* @__PURE__ */ jsx(ExitIcon, { fontSize: "small" }) }) : null
12
- ] });
13
- };
14
- export {
15
- ErrorAlert
16
- };
17
- //# sourceMappingURL=ErrorAlert.mjs.map
@@ -1 +0,0 @@
1
- //# sourceMappingURL=Props.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,32 +0,0 @@
1
- import { Fragment, jsx } from "react/jsx-runtime";
2
- import { FlexCol } from "@xylabs/react-flexbox";
3
- import { useEffect } from "react";
4
- import { useLocation } from "react-router-dom";
5
- import { ErrorAlert } from "./ErrorAlert";
6
- const ErrorRender = ({
7
- onCancel,
8
- error,
9
- noErrorDisplay = false,
10
- customError = null,
11
- children,
12
- errorContext,
13
- ...props
14
- }) => {
15
- const location = useLocation();
16
- useEffect(() => {
17
- location.state = {
18
- from: {
19
- pathname: window.location.pathname
20
- }
21
- };
22
- }, [location]);
23
- if (error) {
24
- return /* @__PURE__ */ jsx(FlexCol, { alignItems: "stretch", ...props, children: noErrorDisplay ? customError : /* @__PURE__ */ jsx(FlexCol, { alignItems: "center", ...props, children: /* @__PURE__ */ jsx(ErrorAlert, { error, errorContext, onCancel }) }) });
25
- } else {
26
- return /* @__PURE__ */ jsx(Fragment, { children }) ?? null;
27
- }
28
- };
29
- export {
30
- ErrorRender
31
- };
32
- //# sourceMappingURL=Render.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/ErrorRender/Render.tsx"],"sourcesContent":["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":"AAiCY,SAMD,UANC;AAjCZ,SAAS,eAAe;AACxB,SAAS,iBAAiB;AAC1B,SAAS,mBAAmB;AAE5B,SAAS,kBAAkB;AAGpB,MAAM,cAA0C,CAAC;AAAA,EACtD;AAAA,EACA;AAAA,EACA,iBAAiB;AAAA,EACjB,cAAc;AAAA,EACd;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,WAAW,YAAY;AAC7B,YAAU,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,oBAAC,WAAQ,YAAW,WAAW,GAAG,OAC/B,2BACC,cAEA,oBAAC,WAAQ,YAAW,UAAU,GAAG,OAC/B,8BAAC,cAAW,OAAc,cAA4B,UAAoB,GAC5E,GAEJ;AAAA,EAEJ,OAAO;AACL,WAAO,gCAAG,UAAS,KAAO;AAAA,EAC5B;AACF;","names":[]}
@@ -1,4 +0,0 @@
1
- export * from "./ErrorAlert";
2
- export * from "./Props";
3
- export * from "./Render";
4
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/ErrorRender/index.ts"],"sourcesContent":["export * from './ErrorAlert'\nexport * from './Props'\nexport * from './Render'\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}
@@ -1,3 +0,0 @@
1
- export * from "./ErrorBoundary";
2
- export * from "./ErrorRender";
3
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/index.ts"],"sourcesContent":["export * from './ErrorBoundary'\nexport * from './ErrorRender'\n"],"mappings":"AAAA,cAAc;AACd,cAAc;","names":[]}
@@ -1,6 +0,0 @@
1
- import { createContext } from "react";
2
- const ErrorReporterContext = createContext({});
3
- export {
4
- ErrorReporterContext
5
- };
6
- //# sourceMappingURL=Context.mjs.map
@@ -1,16 +0,0 @@
1
- import { jsx } from "react/jsx-runtime";
2
- import { useEffect, useState } from "react";
3
- import { ErrorReporterContext } from "./Context";
4
- const ErrorReporterProvider = ({ children, rollbar }) => {
5
- const [rollbarInstance, setRollBarInstance] = useState();
6
- useEffect(() => {
7
- if (rollbarInstance) {
8
- setRollBarInstance(rollbarInstance);
9
- }
10
- }, [rollbar, rollbarInstance]);
11
- return /* @__PURE__ */ jsx(ErrorReporterContext.Provider, { value: { rollbar }, children });
12
- };
13
- export {
14
- ErrorReporterProvider
15
- };
16
- //# sourceMappingURL=Provider.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/contexts/ErrorReporter/Provider.tsx"],"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"],"mappings":"AAmBS;AAlBT,SAAS,WAAW,gBAAgB;AAGpC,SAAS,4BAA4B;AAMrC,MAAM,wBAA4E,CAAC,EAAE,UAAU,QAAQ,MAAM;AAC3G,QAAM,CAAC,iBAAiB,kBAAkB,IAAI,SAAkB;AAEhE,YAAU,MAAM;AACd,QAAI,iBAAiB;AACnB,yBAAmB,eAAe;AAAA,IACpC;AAAA,EACF,GAAG,CAAC,SAAS,eAAe,CAAC;AAE7B,SAAO,oBAAC,qBAAqB,UAArB,EAA8B,OAAO,EAAE,QAAQ,GAAI,UAAS;AACtE;","names":[]}