@j2inn/fin5-ui-utils 6.0.5-beta.0 → 6.0.5

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 (212) hide show
  1. package/README.md +5 -5
  2. package/dist/fantomProps/createFin5Props/index.d.ts +12 -12
  3. package/dist/fantomProps/createFin5Props/index.js +146 -146
  4. package/dist/fantomProps/createFin5Props/runCreateFin5Props.d.ts +2 -2
  5. package/dist/fantomProps/createFin5Props/runCreateFin5Props.js +16 -16
  6. package/dist/fantomProps/fantomPropsToObject.d.ts +8 -8
  7. package/dist/fantomProps/fantomPropsToObject.js +183 -183
  8. package/dist/fantomProps/generateJsonFromFantomPropsFile.d.ts +4 -4
  9. package/dist/fantomProps/generateJsonFromFantomPropsFile.js +41 -41
  10. package/dist/fantomProps/localePropsToJson.d.ts +1 -1
  11. package/dist/fantomProps/localePropsToJson.js +50 -50
  12. package/dist/fantomProps/readFantomPropsFile.d.ts +5 -5
  13. package/dist/fantomProps/readFantomPropsFile.js +65 -66
  14. package/dist/fantomProps/readFantomPropsFile.js.map +1 -1
  15. package/dist/fin5Top/fin5FileUpload.d.ts +24 -24
  16. package/dist/fin5Top/fin5FileUpload.js +51 -51
  17. package/dist/fin5Top/fin5Top.d.ts +124 -124
  18. package/dist/fin5Top/fin5Top.js +53 -53
  19. package/dist/fin5Top/finEdge2Cloud.d.ts +6 -6
  20. package/dist/fin5Top/finEdge2Cloud.js +15 -15
  21. package/dist/fin5Top/getFin5BinUrl.d.ts +2 -2
  22. package/dist/fin5Top/getFin5BinUrl.js +9 -9
  23. package/dist/fin5Top/openFin5Alarm.d.ts +22 -22
  24. package/dist/fin5Top/openFin5Alarm.js +23 -23
  25. package/dist/fin5Top/openFin5Historian.d.ts +3 -3
  26. package/dist/fin5Top/openFin5Historian.js +19 -19
  27. package/dist/fin5Top/useFin5AppURLHashParameter.d.ts +18 -18
  28. package/dist/fin5Top/useFin5AppURLHashParameter.js +133 -133
  29. package/dist/index.d.ts +35 -35
  30. package/dist/index.js +69 -69
  31. package/dist/jobs/jobUtils.d.ts +14 -14
  32. package/dist/jobs/jobUtils.js +15 -15
  33. package/dist/react/app/Fin5AppContainer.d.ts +36 -36
  34. package/dist/react/app/Fin5AppContainer.js +102 -102
  35. package/dist/react/app/Fin5AppRootStore.d.ts +40 -40
  36. package/dist/react/app/Fin5AppRootStore.js +69 -69
  37. package/dist/react/components/ErrorBoundary.d.ts +57 -57
  38. package/dist/react/components/ErrorBoundary.js +150 -150
  39. package/dist/react/components/ErrorDisplayer.d.ts +19 -19
  40. package/dist/react/components/ErrorDisplayer.js +36 -36
  41. package/dist/react/components/Loader.d.ts +9 -9
  42. package/dist/react/components/Loader.js +17 -17
  43. package/dist/react/components/LoadingSpinner.d.ts +2 -2
  44. package/dist/react/components/LoadingSpinner.js +27 -27
  45. package/dist/react/components/RecordImage.d.ts +20 -20
  46. package/dist/react/components/RecordImage.js +51 -51
  47. package/dist/react/components/charts/QRCode.d.ts +25 -25
  48. package/dist/react/components/charts/QRCode.js +82 -82
  49. package/dist/react/components/charts/line-bar/Chart.d.ts +166 -166
  50. package/dist/react/components/charts/line-bar/Chart.js +442 -442
  51. package/dist/react/components/charts/line-bar/HGridChart.d.ts +58 -58
  52. package/dist/react/components/charts/line-bar/HGridChart.js +285 -285
  53. package/dist/react/components/charts/pie/PieChart.d.ts +94 -94
  54. package/dist/react/components/charts/pie/PieChart.js +204 -204
  55. package/dist/react/components/charts/pie/SimplePieChart.d.ts +21 -21
  56. package/dist/react/components/charts/pie/SimplePieChart.js +55 -55
  57. package/dist/react/components/graphics/GraphicViewer.d.ts +10 -10
  58. package/dist/react/components/graphics/GraphicViewer.js +29 -29
  59. package/dist/react/components/graphics/GraphicsTabViewer.d.ts +17 -17
  60. package/dist/react/components/graphics/GraphicsTabViewer.js +90 -90
  61. package/dist/react/components/makeCustomElement.d.ts +16 -16
  62. package/dist/react/components/makeCustomElement.js +150 -150
  63. package/dist/react/components/navigation/BasicLayout.d.ts +41 -41
  64. package/dist/react/components/navigation/BasicLayout.js +155 -155
  65. package/dist/react/components/navigation/HeaderSiderLayout.d.ts +13 -13
  66. package/dist/react/components/navigation/HeaderSiderLayout.js +110 -110
  67. package/dist/react/components/navigation/MenuPage.d.ts +37 -37
  68. package/dist/react/components/navigation/MenuPage.js +36 -36
  69. package/dist/react/components/navigation/MenuTrigger.d.ts +9 -9
  70. package/dist/react/components/navigation/MenuTrigger.js +33 -33
  71. package/dist/react/components/navigation/ReactRouterHeaderSiderLayout.d.ts +11 -11
  72. package/dist/react/components/navigation/ReactRouterHeaderSiderLayout.js +25 -25
  73. package/dist/react/components/navigation/ReactRouterLayout.d.ts +46 -46
  74. package/dist/react/components/navigation/ReactRouterLayout.js +132 -132
  75. package/dist/react/components/navigation/customRouting/Router.d.ts +12 -12
  76. package/dist/react/components/navigation/customRouting/Router.js +45 -45
  77. package/dist/react/components/navigation/customRouting/RouterLayout.d.ts +11 -11
  78. package/dist/react/components/navigation/customRouting/RouterLayout.js +61 -61
  79. package/dist/react/components/resolvable/configurationForm/ConfigurationForm.d.ts +27 -27
  80. package/dist/react/components/resolvable/configurationForm/ConfigurationForm.js +95 -95
  81. package/dist/react/components/resolvable/configurationForm/ConfigurationFormEntry.d.ts +16 -16
  82. package/dist/react/components/resolvable/configurationForm/ConfigurationFormEntry.js +88 -88
  83. package/dist/react/components/resolvable/configurationForm/getSectionDefault.d.ts +16 -16
  84. package/dist/react/components/resolvable/configurationForm/getSectionDefault.js +99 -99
  85. package/dist/react/hooks/useFin5BinUrl.d.ts +6 -6
  86. package/dist/react/hooks/useFin5BinUrl.js +15 -15
  87. package/dist/react/hooks/useFin5ColorScheme.d.ts +2 -2
  88. package/dist/react/hooks/useFin5ColorScheme.js +49 -49
  89. package/dist/react/hooks/useScreenSize.d.ts +7 -7
  90. package/dist/react/hooks/useScreenSize.js +31 -31
  91. package/dist_es/fantomProps/createFin5Props/index.d.ts +12 -12
  92. package/dist_es/fantomProps/createFin5Props/index.js +140 -140
  93. package/dist_es/fantomProps/createFin5Props/runCreateFin5Props.d.ts +2 -2
  94. package/dist_es/fantomProps/createFin5Props/runCreateFin5Props.js +11 -11
  95. package/dist_es/fantomProps/fantomPropsToObject.d.ts +8 -8
  96. package/dist_es/fantomProps/fantomPropsToObject.js +178 -178
  97. package/dist_es/fantomProps/generateJsonFromFantomPropsFile.d.ts +4 -4
  98. package/dist_es/fantomProps/generateJsonFromFantomPropsFile.js +12 -12
  99. package/dist_es/fantomProps/localePropsToJson.d.ts +1 -1
  100. package/dist_es/fantomProps/localePropsToJson.js +21 -21
  101. package/dist_es/fantomProps/readFantomPropsFile.d.ts +5 -5
  102. package/dist_es/fantomProps/readFantomPropsFile.js +39 -40
  103. package/dist_es/fantomProps/readFantomPropsFile.js.map +1 -1
  104. package/dist_es/fin5Top/fin5FileUpload.d.ts +24 -24
  105. package/dist_es/fin5Top/fin5FileUpload.js +47 -47
  106. package/dist_es/fin5Top/fin5Top.d.ts +124 -124
  107. package/dist_es/fin5Top/fin5Top.js +49 -49
  108. package/dist_es/fin5Top/finEdge2Cloud.d.ts +6 -6
  109. package/dist_es/fin5Top/finEdge2Cloud.js +11 -11
  110. package/dist_es/fin5Top/getFin5BinUrl.d.ts +2 -2
  111. package/dist_es/fin5Top/getFin5BinUrl.js +5 -5
  112. package/dist_es/fin5Top/openFin5Alarm.d.ts +22 -22
  113. package/dist_es/fin5Top/openFin5Alarm.js +19 -19
  114. package/dist_es/fin5Top/openFin5Historian.d.ts +3 -3
  115. package/dist_es/fin5Top/openFin5Historian.js +15 -15
  116. package/dist_es/fin5Top/useFin5AppURLHashParameter.d.ts +18 -18
  117. package/dist_es/fin5Top/useFin5AppURLHashParameter.js +124 -124
  118. package/dist_es/index.d.ts +35 -35
  119. package/dist_es/index.js +53 -53
  120. package/dist_es/jobs/jobUtils.d.ts +14 -14
  121. package/dist_es/jobs/jobUtils.js +9 -9
  122. package/dist_es/react/app/Fin5AppContainer.d.ts +36 -36
  123. package/dist_es/react/app/Fin5AppContainer.js +73 -73
  124. package/dist_es/react/app/Fin5AppRootStore.d.ts +40 -40
  125. package/dist_es/react/app/Fin5AppRootStore.js +65 -65
  126. package/dist_es/react/components/ErrorBoundary.d.ts +57 -57
  127. package/dist_es/react/components/ErrorBoundary.js +123 -123
  128. package/dist_es/react/components/ErrorDisplayer.d.ts +19 -19
  129. package/dist_es/react/components/ErrorDisplayer.js +28 -28
  130. package/dist_es/react/components/Loader.d.ts +9 -9
  131. package/dist_es/react/components/Loader.js +12 -12
  132. package/dist_es/react/components/LoadingSpinner.d.ts +2 -2
  133. package/dist_es/react/components/LoadingSpinner.js +20 -20
  134. package/dist_es/react/components/RecordImage.d.ts +20 -20
  135. package/dist_es/react/components/RecordImage.js +24 -24
  136. package/dist_es/react/components/charts/QRCode.d.ts +25 -25
  137. package/dist_es/react/components/charts/QRCode.js +52 -52
  138. package/dist_es/react/components/charts/line-bar/Chart.d.ts +166 -166
  139. package/dist_es/react/components/charts/line-bar/Chart.js +415 -415
  140. package/dist_es/react/components/charts/line-bar/HGridChart.d.ts +58 -58
  141. package/dist_es/react/components/charts/line-bar/HGridChart.js +250 -250
  142. package/dist_es/react/components/charts/pie/PieChart.d.ts +94 -94
  143. package/dist_es/react/components/charts/pie/PieChart.js +177 -177
  144. package/dist_es/react/components/charts/pie/SimplePieChart.d.ts +21 -21
  145. package/dist_es/react/components/charts/pie/SimplePieChart.js +25 -25
  146. package/dist_es/react/components/graphics/GraphicViewer.d.ts +10 -10
  147. package/dist_es/react/components/graphics/GraphicViewer.js +22 -22
  148. package/dist_es/react/components/graphics/GraphicsTabViewer.d.ts +17 -17
  149. package/dist_es/react/components/graphics/GraphicsTabViewer.js +60 -60
  150. package/dist_es/react/components/makeCustomElement.d.ts +16 -16
  151. package/dist_es/react/components/makeCustomElement.js +142 -142
  152. package/dist_es/react/components/navigation/BasicLayout.d.ts +41 -41
  153. package/dist_es/react/components/navigation/BasicLayout.js +124 -124
  154. package/dist_es/react/components/navigation/HeaderSiderLayout.d.ts +13 -13
  155. package/dist_es/react/components/navigation/HeaderSiderLayout.js +80 -80
  156. package/dist_es/react/components/navigation/MenuPage.d.ts +37 -37
  157. package/dist_es/react/components/navigation/MenuPage.js +30 -30
  158. package/dist_es/react/components/navigation/MenuTrigger.d.ts +9 -9
  159. package/dist_es/react/components/navigation/MenuTrigger.js +28 -28
  160. package/dist_es/react/components/navigation/ReactRouterHeaderSiderLayout.d.ts +11 -11
  161. package/dist_es/react/components/navigation/ReactRouterHeaderSiderLayout.js +18 -18
  162. package/dist_es/react/components/navigation/ReactRouterLayout.d.ts +46 -46
  163. package/dist_es/react/components/navigation/ReactRouterLayout.js +99 -99
  164. package/dist_es/react/components/navigation/customRouting/Router.d.ts +12 -12
  165. package/dist_es/react/components/navigation/customRouting/Router.js +18 -18
  166. package/dist_es/react/components/navigation/customRouting/RouterLayout.d.ts +11 -11
  167. package/dist_es/react/components/navigation/customRouting/RouterLayout.js +34 -34
  168. package/dist_es/react/components/resolvable/configurationForm/ConfigurationForm.d.ts +27 -27
  169. package/dist_es/react/components/resolvable/configurationForm/ConfigurationForm.js +64 -64
  170. package/dist_es/react/components/resolvable/configurationForm/ConfigurationFormEntry.d.ts +16 -16
  171. package/dist_es/react/components/resolvable/configurationForm/ConfigurationFormEntry.js +58 -58
  172. package/dist_es/react/components/resolvable/configurationForm/getSectionDefault.d.ts +16 -16
  173. package/dist_es/react/components/resolvable/configurationForm/getSectionDefault.js +94 -94
  174. package/dist_es/react/hooks/useFin5BinUrl.d.ts +6 -6
  175. package/dist_es/react/hooks/useFin5BinUrl.js +11 -11
  176. package/dist_es/react/hooks/useFin5ColorScheme.d.ts +2 -2
  177. package/dist_es/react/hooks/useFin5ColorScheme.js +45 -45
  178. package/dist_es/react/hooks/useScreenSize.d.ts +7 -7
  179. package/dist_es/react/hooks/useScreenSize.js +27 -27
  180. package/package.json +1 -1
  181. package/dist_es/react/app/Fin5AppContainer.jsx +0 -82
  182. package/dist_es/react/app/Fin5AppContainer.jsx.map +0 -1
  183. package/dist_es/react/components/ErrorBoundary.jsx +0 -150
  184. package/dist_es/react/components/ErrorBoundary.jsx.map +0 -1
  185. package/dist_es/react/components/ErrorDisplayer.jsx +0 -36
  186. package/dist_es/react/components/ErrorDisplayer.jsx.map +0 -1
  187. package/dist_es/react/components/Loader.jsx +0 -13
  188. package/dist_es/react/components/Loader.jsx.map +0 -1
  189. package/dist_es/react/components/LoadingSpinner.jsx +0 -22
  190. package/dist_es/react/components/LoadingSpinner.jsx.map +0 -1
  191. package/dist_es/react/components/charts/line-bar/ZincGridChart.d.ts +0 -12
  192. package/dist_es/react/components/charts/line-bar/ZincGridChart.js +0 -17
  193. package/dist_es/react/components/charts/line-bar/ZincGridChart.js.map +0 -1
  194. package/dist_es/react/components/graphics/GraphicViewer.jsx +0 -23
  195. package/dist_es/react/components/graphics/GraphicViewer.jsx.map +0 -1
  196. package/dist_es/react/components/graphics/GraphicsTabViewer.jsx +0 -63
  197. package/dist_es/react/components/graphics/GraphicsTabViewer.jsx.map +0 -1
  198. package/dist_es/react/components/navigation/BasicLayout.jsx +0 -133
  199. package/dist_es/react/components/navigation/BasicLayout.jsx.map +0 -1
  200. package/dist_es/react/components/navigation/MenuPage.jsx +0 -31
  201. package/dist_es/react/components/navigation/MenuPage.jsx.map +0 -1
  202. package/dist_es/react/components/navigation/Router.d.ts +0 -12
  203. package/dist_es/react/components/navigation/Router.js +0 -19
  204. package/dist_es/react/components/navigation/Router.js.map +0 -1
  205. package/dist_es/react/components/navigation/Router.jsx +0 -19
  206. package/dist_es/react/components/navigation/Router.jsx.map +0 -1
  207. package/dist_es/react/components/navigation/react-router/BasicLayout.d.ts +0 -23
  208. package/dist_es/react/components/navigation/react-router/BasicLayout.js +0 -82
  209. package/dist_es/react/components/navigation/react-router/BasicLayout.js.map +0 -1
  210. package/dist_es/react/components/navigation/react-router/ReactRouterBasicLayout.d.ts +0 -24
  211. package/dist_es/react/components/navigation/react-router/ReactRouterBasicLayout.js +0 -82
  212. package/dist_es/react/components/navigation/react-router/ReactRouterBasicLayout.js.map +0 -1
@@ -1,70 +1,70 @@
1
- "use strict";
2
- /*
3
- * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Fin5AppRootStore = void 0;
7
- const mobx_1 = require("mobx");
8
- /**
9
- * An application root store for use with FIN5.
10
- */
11
- class Fin5AppRootStore {
12
- project = '';
13
- sidebarOpen = false;
14
- locale = '';
15
- allLocales = [];
16
- target = '';
17
- targetSidebar = '';
18
- currentUser;
19
- get app() {
20
- return undefined;
21
- }
22
- get sidebar() {
23
- return undefined;
24
- }
25
- apps = [];
26
- history = {
27
- state: {},
28
- pushState: (state) => {
29
- this.history.state = state;
30
- },
31
- replaceState: (state) => {
32
- this.history.state = state;
33
- },
34
- };
35
- historySidebar = {
36
- state: {},
37
- pushState: (state) => {
38
- this.historySidebar.state = state;
39
- },
40
- replaceState: (state) => {
41
- this.historySidebar.state = state;
42
- },
43
- };
44
- constructor() {
45
- (0, mobx_1.makeAutoObservable)(this, {
46
- currentUser: mobx_1.observable.ref,
47
- apps: mobx_1.observable.ref,
48
- });
49
- }
50
- openAppInNewWindow() { }
51
- open() { }
52
- openSidebar() { }
53
- postAppMessage() { }
54
- registerSidebars() { }
55
- unregisterSidebars() { }
56
- registerQuicklinks() { }
57
- unregisterQuicklinks() { }
58
- hasAppAccess = (_, access) => {
59
- // For FIN5, an operator only has readonly app level access.
60
- const user = this.currentUser;
61
- return user?.get('userRole')?.value === 'op'
62
- ? access === 'read'
63
- : !!user;
64
- };
65
- hasSidebar() {
66
- return false;
67
- }
68
- }
69
- exports.Fin5AppRootStore = Fin5AppRootStore;
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Fin5AppRootStore = void 0;
7
+ const mobx_1 = require("mobx");
8
+ /**
9
+ * An application root store for use with FIN5.
10
+ */
11
+ class Fin5AppRootStore {
12
+ project = '';
13
+ sidebarOpen = false;
14
+ locale = '';
15
+ allLocales = [];
16
+ target = '';
17
+ targetSidebar = '';
18
+ currentUser;
19
+ get app() {
20
+ return undefined;
21
+ }
22
+ get sidebar() {
23
+ return undefined;
24
+ }
25
+ apps = [];
26
+ history = {
27
+ state: {},
28
+ pushState: (state) => {
29
+ this.history.state = state;
30
+ },
31
+ replaceState: (state) => {
32
+ this.history.state = state;
33
+ },
34
+ };
35
+ historySidebar = {
36
+ state: {},
37
+ pushState: (state) => {
38
+ this.historySidebar.state = state;
39
+ },
40
+ replaceState: (state) => {
41
+ this.historySidebar.state = state;
42
+ },
43
+ };
44
+ constructor() {
45
+ (0, mobx_1.makeAutoObservable)(this, {
46
+ currentUser: mobx_1.observable.ref,
47
+ apps: mobx_1.observable.ref,
48
+ });
49
+ }
50
+ openAppInNewWindow() { }
51
+ open() { }
52
+ openSidebar() { }
53
+ postAppMessage() { }
54
+ registerSidebars() { }
55
+ unregisterSidebars() { }
56
+ registerQuicklinks() { }
57
+ unregisterQuicklinks() { }
58
+ hasAppAccess = (_, access) => {
59
+ // For FIN5, an operator only has readonly app level access.
60
+ const user = this.currentUser;
61
+ return user?.get('userRole')?.value === 'op'
62
+ ? access === 'read'
63
+ : !!user;
64
+ };
65
+ hasSidebar() {
66
+ return false;
67
+ }
68
+ }
69
+ exports.Fin5AppRootStore = Fin5AppRootStore;
70
70
  //# sourceMappingURL=Fin5AppRootStore.js.map
@@ -1,57 +1,57 @@
1
- import React, { ErrorInfo, ReactNode } from 'react';
2
- /**
3
- * An error boundary can work at the global level (where something really screws up)
4
- * or an an app level (where the error is captured just for the running application).
5
- */
6
- export declare const enum ErrorBoundaryMode {
7
- global = "global",
8
- app = "app"
9
- }
10
- /**
11
- * The properties for an error boundary.
12
- */
13
- interface ErrorBoundaryProps {
14
- /**
15
- * The associated application id.
16
- */
17
- appId?: string;
18
- /**
19
- * The error mode.
20
- */
21
- mode: ErrorBoundaryMode;
22
- /**
23
- * Optional callback to display a report dialog.
24
- */
25
- showReportDialog?: () => void;
26
- /**
27
- * Optional callback used to capture the error.
28
- */
29
- onError?: (error: Error) => void;
30
- /**
31
- * Child components.
32
- */
33
- children?: React.ReactNode;
34
- }
35
- /**
36
- * The state for an error boundary.
37
- */
38
- interface ErrorBoundryState {
39
- /**
40
- * The last captured error.
41
- */
42
- error?: Error;
43
- }
44
- /**
45
- * A common error boundary used to capture errors.
46
- */
47
- export declare class ErrorBoundary extends React.Component<ErrorBoundaryProps, ErrorBoundryState> {
48
- state: {
49
- error?: Error;
50
- };
51
- componentDidCatch(error: Error, info: ErrorInfo): void;
52
- static getDerivedStateFromError(error: Error): {
53
- error: Error;
54
- };
55
- render(): ReactNode | JSX.Element;
56
- }
57
- export {};
1
+ import React, { ErrorInfo, ReactNode } from 'react';
2
+ /**
3
+ * An error boundary can work at the global level (where something really screws up)
4
+ * or an an app level (where the error is captured just for the running application).
5
+ */
6
+ export declare const enum ErrorBoundaryMode {
7
+ global = "global",
8
+ app = "app"
9
+ }
10
+ /**
11
+ * The properties for an error boundary.
12
+ */
13
+ interface ErrorBoundaryProps {
14
+ /**
15
+ * The associated application id.
16
+ */
17
+ appId?: string;
18
+ /**
19
+ * The error mode.
20
+ */
21
+ mode: ErrorBoundaryMode;
22
+ /**
23
+ * Optional callback to display a report dialog.
24
+ */
25
+ showReportDialog?: () => void;
26
+ /**
27
+ * Optional callback used to capture the error.
28
+ */
29
+ onError?: (error: Error) => void;
30
+ /**
31
+ * Child components.
32
+ */
33
+ children?: React.ReactNode;
34
+ }
35
+ /**
36
+ * The state for an error boundary.
37
+ */
38
+ interface ErrorBoundryState {
39
+ /**
40
+ * The last captured error.
41
+ */
42
+ error?: Error;
43
+ }
44
+ /**
45
+ * A common error boundary used to capture errors.
46
+ */
47
+ export declare class ErrorBoundary extends React.Component<ErrorBoundaryProps, ErrorBoundryState> {
48
+ state: {
49
+ error?: Error;
50
+ };
51
+ componentDidCatch(error: Error, info: ErrorInfo): void;
52
+ static getDerivedStateFromError(error: Error): {
53
+ error: Error;
54
+ };
55
+ render(): ReactNode | JSX.Element;
56
+ }
57
+ export {};
@@ -1,151 +1,151 @@
1
- "use strict";
2
- /*
3
- * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
- */
5
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- var desc = Object.getOwnPropertyDescriptor(m, k);
8
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
- desc = { enumerable: true, get: function() { return m[k]; } };
10
- }
11
- Object.defineProperty(o, k2, desc);
12
- }) : (function(o, m, k, k2) {
13
- if (k2 === undefined) k2 = k;
14
- o[k2] = m[k];
15
- }));
16
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
- Object.defineProperty(o, "default", { enumerable: true, value: v });
18
- }) : function(o, v) {
19
- o["default"] = v;
20
- });
21
- var __importStar = (this && this.__importStar) || function (mod) {
22
- if (mod && mod.__esModule) return mod;
23
- var result = {};
24
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
- __setModuleDefault(result, mod);
26
- return result;
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.ErrorBoundary = void 0;
30
- const react_1 = __importStar(require("react"));
31
- const ui_1 = require("@j2inn/ui");
32
- const utils_1 = require("@j2inn/utils");
33
- const react_jss_1 = require("react-jss");
34
- const boundryStyles = (0, react_jss_1.createUseStyles)((theme) => ({
35
- errorBoundry: {
36
- backgroundColor: theme.bodyBg,
37
- flex: `1 1 auto`,
38
- },
39
- boundryContainer: {
40
- margin: '0 auto',
41
- flex: `1 1 auto`,
42
- padding: `2rem`,
43
- maxWidth: 1024,
44
- backgroundColor: theme.bgColor,
45
- [`& h1, & h3`]: {
46
- paddingBottom: `1rem`,
47
- },
48
- },
49
- errorDetails: {
50
- [`& pre`]: {
51
- overflow: 'auto',
52
- marginTop: '1rem',
53
- backgroundColor: ui_1.ColorVals.Black,
54
- color: ui_1.ColorVals.White,
55
- padding: '0.3rem',
56
- },
57
- },
58
- }));
59
- function get(i18n, key, fallback) {
60
- return i18n.has(key) ? i18n.get(key) : fallback;
61
- }
62
- /**
63
- * Format an error message into something more useful for the clipboard.
64
- */
65
- function formatErrorMessage(error, appId) {
66
- return JSON.stringify({
67
- timestamp: new Date().toISOString(),
68
- appId: appId ?? '',
69
- location: location.href,
70
- navigator: {
71
- cookieEnabled: navigator.cookieEnabled,
72
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
73
- deviceMemory: navigator.deviceMemory,
74
- language: navigator.language,
75
- languages: navigator.languages,
76
- onLine: navigator.onLine,
77
- userAgent: navigator.userAgent,
78
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
79
- userAgentData: navigator.userAgentData,
80
- vendor: navigator.vendor,
81
- },
82
- error: String(error.stack),
83
- }, null, 2);
84
- }
85
- /**
86
- * Shows the internal error details to a user.
87
- */
88
- const ErrorDetails = ({ showDetails, setShowDetails, error, appId, }) => {
89
- const i18n = (0, utils_1.usei18n)();
90
- const classes = boundryStyles();
91
- const theme = (0, react_jss_1.useTheme)();
92
- const copyToClipboard = () => {
93
- navigator.clipboard.writeText(formatErrorMessage(error, appId));
94
- ui_1.Message.success(theme, get(i18n, 'finUi.errorBoundary.copiedErrorToClipboard', 'Copied error to clipboard'));
95
- };
96
- return (react_1.default.createElement("div", { className: classes.errorDetails },
97
- react_1.default.createElement(ui_1.Checkbox, { onChange: (e) => {
98
- setShowDetails(e.target.checked);
99
- }, defaultChecked: showDetails, value: showDetails }, get(i18n, 'finUi.errorBoundary.showDetails', 'Show details')),
100
- showDetails && (react_1.default.createElement(react_1.default.Fragment, null,
101
- react_1.default.createElement("pre", null, error.stack),
102
- react_1.default.createElement(ui_1.Container, { horizontal: true, middle: true, right: true },
103
- react_1.default.createElement(ui_1.Button, { onClick: copyToClipboard }, get(i18n, 'finUi.errorBoundary.copyToClipboard', 'Copy to clipboard')))))));
104
- };
105
- /**
106
- * The inner error boundary component. This is required so
107
- * we can use hooks that can't be used in a normal class component.
108
- */
109
- const ErrorBoundaryInner = ({ error, mode, appId, showReportDialog, }) => {
110
- const i18n = (0, utils_1.usei18n)();
111
- const [showDetails, setShowDetails] = (0, react_1.useState)(true);
112
- const classes = boundryStyles();
113
- const title = `finUi.errorBoundary.${mode}.title`;
114
- const appName = `${appId}.name`;
115
- const header = get(i18n, title, mode === 'global' ? 'Error' : 'Application error') +
116
- (appId ? `: ${get(i18n, appName, appName)}` : '');
117
- const continueMsg = get(i18n, `finUi.errorBoundary.${mode}.continue`, mode === 'global'
118
- ? 'To continue, please reload or navigate to the home page.'
119
- : 'To continue, please reload, navigate to the home page or another application.');
120
- return (react_1.default.createElement(ui_1.Container, { vertical: true, top: true, center: true, className: classes.errorBoundry },
121
- react_1.default.createElement("div", { className: classes.boundryContainer, style: { gap: `1rem` } },
122
- react_1.default.createElement("h1", null, header),
123
- react_1.default.createElement("h3", null, get(i18n, 'finUi.errorBoundary.description', 'The application has encountered an error when trying to display some content.')),
124
- react_1.default.createElement("p", null, continueMsg),
125
- react_1.default.createElement("div", null,
126
- react_1.default.createElement(ErrorDetails, { showDetails: showDetails, setShowDetails: setShowDetails, error: error, appId: appId })),
127
- react_1.default.createElement(ui_1.Divider, null),
128
- react_1.default.createElement(ui_1.Container, { horizontal: true, middle: true, left: true, style: { gap: `1rem` } },
129
- react_1.default.createElement(ui_1.Button, { onClick: () => window.location.reload(), type: 'primary' }, get(i18n, 'finUi.common.reload', 'Reload')),
130
- react_1.default.createElement(ui_1.Button, { onClick: () => window.location.assign('/') }, get(i18n, 'finUi.common.home', 'Home'))),
131
- showReportDialog && (react_1.default.createElement("div", { style: { marginTop: `0.5rem` } },
132
- react_1.default.createElement("small", { onClick: showReportDialog }, get(i18n, 'finUi.errorBoundary.additionalDetails', 'If you’d like, click here to include an additional error report to our team. Any details you provide will be helpful.')))))));
133
- };
134
- /**
135
- * A common error boundary used to capture errors.
136
- */
137
- class ErrorBoundary extends react_1.default.Component {
138
- state = {};
139
- componentDidCatch(error, info) {
140
- this.props.onError?.(error);
141
- console.error(error, info);
142
- }
143
- static getDerivedStateFromError(error) {
144
- return { error };
145
- }
146
- render() {
147
- return this.state.error ? (react_1.default.createElement(ErrorBoundaryInner, { error: this.state.error, mode: this.props.mode, appId: this.props.appId, showReportDialog: this.props.showReportDialog })) : (this.props.children);
148
- }
149
- }
150
- exports.ErrorBoundary = ErrorBoundary;
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || function (mod) {
22
+ if (mod && mod.__esModule) return mod;
23
+ var result = {};
24
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
+ __setModuleDefault(result, mod);
26
+ return result;
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.ErrorBoundary = void 0;
30
+ const react_1 = __importStar(require("react"));
31
+ const ui_1 = require("@j2inn/ui");
32
+ const utils_1 = require("@j2inn/utils");
33
+ const react_jss_1 = require("react-jss");
34
+ const boundryStyles = (0, react_jss_1.createUseStyles)((theme) => ({
35
+ errorBoundry: {
36
+ backgroundColor: theme.bodyBg,
37
+ flex: `1 1 auto`,
38
+ },
39
+ boundryContainer: {
40
+ margin: '0 auto',
41
+ flex: `1 1 auto`,
42
+ padding: `2rem`,
43
+ maxWidth: 1024,
44
+ backgroundColor: theme.bgColor,
45
+ [`& h1, & h3`]: {
46
+ paddingBottom: `1rem`,
47
+ },
48
+ },
49
+ errorDetails: {
50
+ [`& pre`]: {
51
+ overflow: 'auto',
52
+ marginTop: '1rem',
53
+ backgroundColor: ui_1.ColorVals.Black,
54
+ color: ui_1.ColorVals.White,
55
+ padding: '0.3rem',
56
+ },
57
+ },
58
+ }));
59
+ function get(i18n, key, fallback) {
60
+ return i18n.has(key) ? i18n.get(key) : fallback;
61
+ }
62
+ /**
63
+ * Format an error message into something more useful for the clipboard.
64
+ */
65
+ function formatErrorMessage(error, appId) {
66
+ return JSON.stringify({
67
+ timestamp: new Date().toISOString(),
68
+ appId: appId ?? '',
69
+ location: location.href,
70
+ navigator: {
71
+ cookieEnabled: navigator.cookieEnabled,
72
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
73
+ deviceMemory: navigator.deviceMemory,
74
+ language: navigator.language,
75
+ languages: navigator.languages,
76
+ onLine: navigator.onLine,
77
+ userAgent: navigator.userAgent,
78
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
79
+ userAgentData: navigator.userAgentData,
80
+ vendor: navigator.vendor,
81
+ },
82
+ error: String(error.stack),
83
+ }, null, 2);
84
+ }
85
+ /**
86
+ * Shows the internal error details to a user.
87
+ */
88
+ const ErrorDetails = ({ showDetails, setShowDetails, error, appId, }) => {
89
+ const i18n = (0, utils_1.usei18n)();
90
+ const classes = boundryStyles();
91
+ const theme = (0, react_jss_1.useTheme)();
92
+ const copyToClipboard = () => {
93
+ navigator.clipboard.writeText(formatErrorMessage(error, appId));
94
+ ui_1.Message.success(theme, get(i18n, 'finUi.errorBoundary.copiedErrorToClipboard', 'Copied error to clipboard'));
95
+ };
96
+ return (react_1.default.createElement("div", { className: classes.errorDetails },
97
+ react_1.default.createElement(ui_1.Checkbox, { onChange: (e) => {
98
+ setShowDetails(e.target.checked);
99
+ }, defaultChecked: showDetails, value: showDetails }, get(i18n, 'finUi.errorBoundary.showDetails', 'Show details')),
100
+ showDetails && (react_1.default.createElement(react_1.default.Fragment, null,
101
+ react_1.default.createElement("pre", null, error.stack),
102
+ react_1.default.createElement(ui_1.Container, { horizontal: true, middle: true, right: true },
103
+ react_1.default.createElement(ui_1.Button, { onClick: copyToClipboard }, get(i18n, 'finUi.errorBoundary.copyToClipboard', 'Copy to clipboard')))))));
104
+ };
105
+ /**
106
+ * The inner error boundary component. This is required so
107
+ * we can use hooks that can't be used in a normal class component.
108
+ */
109
+ const ErrorBoundaryInner = ({ error, mode, appId, showReportDialog, }) => {
110
+ const i18n = (0, utils_1.usei18n)();
111
+ const [showDetails, setShowDetails] = (0, react_1.useState)(true);
112
+ const classes = boundryStyles();
113
+ const title = `finUi.errorBoundary.${mode}.title`;
114
+ const appName = `${appId}.name`;
115
+ const header = get(i18n, title, mode === 'global' ? 'Error' : 'Application error') +
116
+ (appId ? `: ${get(i18n, appName, appName)}` : '');
117
+ const continueMsg = get(i18n, `finUi.errorBoundary.${mode}.continue`, mode === 'global'
118
+ ? 'To continue, please reload or navigate to the home page.'
119
+ : 'To continue, please reload, navigate to the home page or another application.');
120
+ return (react_1.default.createElement(ui_1.Container, { vertical: true, top: true, center: true, className: classes.errorBoundry },
121
+ react_1.default.createElement("div", { className: classes.boundryContainer, style: { gap: `1rem` } },
122
+ react_1.default.createElement("h1", null, header),
123
+ react_1.default.createElement("h3", null, get(i18n, 'finUi.errorBoundary.description', 'The application has encountered an error when trying to display some content.')),
124
+ react_1.default.createElement("p", null, continueMsg),
125
+ react_1.default.createElement("div", null,
126
+ react_1.default.createElement(ErrorDetails, { showDetails: showDetails, setShowDetails: setShowDetails, error: error, appId: appId })),
127
+ react_1.default.createElement(ui_1.Divider, null),
128
+ react_1.default.createElement(ui_1.Container, { horizontal: true, middle: true, left: true, style: { gap: `1rem` } },
129
+ react_1.default.createElement(ui_1.Button, { onClick: () => window.location.reload(), type: 'primary' }, get(i18n, 'finUi.common.reload', 'Reload')),
130
+ react_1.default.createElement(ui_1.Button, { onClick: () => window.location.assign('/') }, get(i18n, 'finUi.common.home', 'Home'))),
131
+ showReportDialog && (react_1.default.createElement("div", { style: { marginTop: `0.5rem` } },
132
+ react_1.default.createElement("small", { onClick: showReportDialog }, get(i18n, 'finUi.errorBoundary.additionalDetails', 'If you’d like, click here to include an additional error report to our team. Any details you provide will be helpful.')))))));
133
+ };
134
+ /**
135
+ * A common error boundary used to capture errors.
136
+ */
137
+ class ErrorBoundary extends react_1.default.Component {
138
+ state = {};
139
+ componentDidCatch(error, info) {
140
+ this.props.onError?.(error);
141
+ console.error(error, info);
142
+ }
143
+ static getDerivedStateFromError(error) {
144
+ return { error };
145
+ }
146
+ render() {
147
+ return this.state.error ? (react_1.default.createElement(ErrorBoundaryInner, { error: this.state.error, mode: this.props.mode, appId: this.props.appId, showReportDialog: this.props.showReportDialog })) : (this.props.children);
148
+ }
149
+ }
150
+ exports.ErrorBoundary = ErrorBoundary;
151
151
  //# sourceMappingURL=ErrorBoundary.js.map
@@ -1,19 +1,19 @@
1
- import React, { ErrorInfo, ReactNode } from 'react';
2
- interface ErrorBoundaryState {
3
- error?: Error;
4
- }
5
- interface ErrorBoundaryProps {
6
- children: ReactNode;
7
- }
8
- export declare class DefaultErrorBoundary extends React.Component<ErrorBoundaryProps> {
9
- state: ErrorBoundaryState;
10
- static getDerivedStateFromError(error: Error): ErrorBoundaryState;
11
- componentDidCatch(error: Error, errorInfo: ErrorInfo): void;
12
- render(): ReactNode;
13
- }
14
- export interface ErrorDisplayerProps {
15
- error: Error;
16
- extra: React.ReactNode;
17
- }
18
- export declare const ErrorDisplayer: React.FC<ErrorDisplayerProps>;
19
- export {};
1
+ import React, { ErrorInfo, ReactNode } from 'react';
2
+ interface ErrorBoundaryState {
3
+ error?: Error;
4
+ }
5
+ interface ErrorBoundaryProps {
6
+ children: ReactNode;
7
+ }
8
+ export declare class DefaultErrorBoundary extends React.Component<ErrorBoundaryProps> {
9
+ state: ErrorBoundaryState;
10
+ static getDerivedStateFromError(error: Error): ErrorBoundaryState;
11
+ componentDidCatch(error: Error, errorInfo: ErrorInfo): void;
12
+ render(): ReactNode;
13
+ }
14
+ export interface ErrorDisplayerProps {
15
+ error: Error;
16
+ extra: React.ReactNode;
17
+ }
18
+ export declare const ErrorDisplayer: React.FC<ErrorDisplayerProps>;
19
+ export {};