@j2inn/fin5-ui-utils 8.1.2 → 8.2.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 (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 +20 -20
  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 -65
  14. package/dist/fin5Top/fin5FileUpload.d.ts +24 -24
  15. package/dist/fin5Top/fin5FileUpload.js +51 -51
  16. package/dist/fin5Top/fin5Top.d.ts +188 -165
  17. package/dist/fin5Top/fin5Top.js +86 -61
  18. package/dist/fin5Top/fin5Top.js.map +1 -1
  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 +161 -161
  35. package/dist/react/app/Fin5AppRootStore.d.ts +42 -42
  36. package/dist/react/app/Fin5AppRootStore.js +114 -114
  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 +56 -56
  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 +15 -15
  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 -39
  103. package/dist_es/fin5Top/fin5FileUpload.d.ts +24 -24
  104. package/dist_es/fin5Top/fin5FileUpload.js +47 -47
  105. package/dist_es/fin5Top/fin5Top.d.ts +188 -165
  106. package/dist_es/fin5Top/fin5Top.js +81 -57
  107. package/dist_es/fin5Top/fin5Top.js.map +1 -1
  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 +132 -132
  124. package/dist_es/react/app/Fin5AppContainer.jsx +82 -0
  125. package/dist_es/react/app/Fin5AppContainer.jsx.map +1 -0
  126. package/dist_es/react/app/Fin5AppRootStore.d.ts +42 -42
  127. package/dist_es/react/app/Fin5AppRootStore.js +110 -110
  128. package/dist_es/react/components/ErrorBoundary.d.ts +57 -57
  129. package/dist_es/react/components/ErrorBoundary.js +123 -123
  130. package/dist_es/react/components/ErrorBoundary.jsx +150 -0
  131. package/dist_es/react/components/ErrorBoundary.jsx.map +1 -0
  132. package/dist_es/react/components/ErrorDisplayer.d.ts +19 -19
  133. package/dist_es/react/components/ErrorDisplayer.js +28 -28
  134. package/dist_es/react/components/ErrorDisplayer.jsx +36 -0
  135. package/dist_es/react/components/ErrorDisplayer.jsx.map +1 -0
  136. package/dist_es/react/components/Loader.d.ts +9 -9
  137. package/dist_es/react/components/Loader.js +12 -12
  138. package/dist_es/react/components/Loader.jsx +13 -0
  139. package/dist_es/react/components/Loader.jsx.map +1 -0
  140. package/dist_es/react/components/LoadingSpinner.d.ts +2 -2
  141. package/dist_es/react/components/LoadingSpinner.js +20 -20
  142. package/dist_es/react/components/LoadingSpinner.jsx +22 -0
  143. package/dist_es/react/components/LoadingSpinner.jsx.map +1 -0
  144. package/dist_es/react/components/RecordImage.d.ts +20 -20
  145. package/dist_es/react/components/RecordImage.js +24 -24
  146. package/dist_es/react/components/charts/QRCode.d.ts +25 -25
  147. package/dist_es/react/components/charts/QRCode.js +52 -52
  148. package/dist_es/react/components/charts/line-bar/Chart.d.ts +166 -166
  149. package/dist_es/react/components/charts/line-bar/Chart.js +415 -415
  150. package/dist_es/react/components/charts/line-bar/HGridChart.d.ts +58 -58
  151. package/dist_es/react/components/charts/line-bar/HGridChart.js +250 -250
  152. package/dist_es/react/components/charts/line-bar/ZincGridChart.d.ts +12 -0
  153. package/dist_es/react/components/charts/line-bar/ZincGridChart.js +17 -0
  154. package/dist_es/react/components/charts/line-bar/ZincGridChart.js.map +1 -0
  155. package/dist_es/react/components/charts/pie/PieChart.d.ts +94 -94
  156. package/dist_es/react/components/charts/pie/PieChart.js +177 -177
  157. package/dist_es/react/components/charts/pie/SimplePieChart.d.ts +21 -21
  158. package/dist_es/react/components/charts/pie/SimplePieChart.js +25 -25
  159. package/dist_es/react/components/graphics/GraphicViewer.d.ts +10 -10
  160. package/dist_es/react/components/graphics/GraphicViewer.js +22 -22
  161. package/dist_es/react/components/graphics/GraphicViewer.jsx +23 -0
  162. package/dist_es/react/components/graphics/GraphicViewer.jsx.map +1 -0
  163. package/dist_es/react/components/graphics/GraphicsTabViewer.d.ts +17 -17
  164. package/dist_es/react/components/graphics/GraphicsTabViewer.js +60 -60
  165. package/dist_es/react/components/graphics/GraphicsTabViewer.jsx +63 -0
  166. package/dist_es/react/components/graphics/GraphicsTabViewer.jsx.map +1 -0
  167. package/dist_es/react/components/makeCustomElement.d.ts +16 -16
  168. package/dist_es/react/components/makeCustomElement.js +142 -142
  169. package/dist_es/react/components/navigation/BasicLayout.d.ts +41 -41
  170. package/dist_es/react/components/navigation/BasicLayout.js +124 -124
  171. package/dist_es/react/components/navigation/BasicLayout.jsx +133 -0
  172. package/dist_es/react/components/navigation/BasicLayout.jsx.map +1 -0
  173. package/dist_es/react/components/navigation/HeaderSiderLayout.d.ts +13 -13
  174. package/dist_es/react/components/navigation/HeaderSiderLayout.js +80 -80
  175. package/dist_es/react/components/navigation/MenuPage.d.ts +37 -37
  176. package/dist_es/react/components/navigation/MenuPage.js +30 -30
  177. package/dist_es/react/components/navigation/MenuPage.jsx +31 -0
  178. package/dist_es/react/components/navigation/MenuPage.jsx.map +1 -0
  179. package/dist_es/react/components/navigation/MenuTrigger.d.ts +9 -9
  180. package/dist_es/react/components/navigation/MenuTrigger.js +28 -28
  181. package/dist_es/react/components/navigation/ReactRouterHeaderSiderLayout.d.ts +11 -11
  182. package/dist_es/react/components/navigation/ReactRouterHeaderSiderLayout.js +18 -18
  183. package/dist_es/react/components/navigation/ReactRouterLayout.d.ts +46 -46
  184. package/dist_es/react/components/navigation/ReactRouterLayout.js +99 -99
  185. package/dist_es/react/components/navigation/Router.d.ts +12 -0
  186. package/dist_es/react/components/navigation/Router.js +19 -0
  187. package/dist_es/react/components/navigation/Router.js.map +1 -0
  188. package/dist_es/react/components/navigation/Router.jsx +19 -0
  189. package/dist_es/react/components/navigation/Router.jsx.map +1 -0
  190. package/dist_es/react/components/navigation/customRouting/Router.d.ts +12 -12
  191. package/dist_es/react/components/navigation/customRouting/Router.js +18 -18
  192. package/dist_es/react/components/navigation/customRouting/RouterLayout.d.ts +11 -11
  193. package/dist_es/react/components/navigation/customRouting/RouterLayout.js +34 -34
  194. package/dist_es/react/components/navigation/react-router/BasicLayout.d.ts +23 -0
  195. package/dist_es/react/components/navigation/react-router/BasicLayout.js +82 -0
  196. package/dist_es/react/components/navigation/react-router/BasicLayout.js.map +1 -0
  197. package/dist_es/react/components/navigation/react-router/ReactRouterBasicLayout.d.ts +24 -0
  198. package/dist_es/react/components/navigation/react-router/ReactRouterBasicLayout.js +82 -0
  199. package/dist_es/react/components/navigation/react-router/ReactRouterBasicLayout.js.map +1 -0
  200. package/dist_es/react/components/resolvable/configurationForm/ConfigurationForm.d.ts +27 -27
  201. package/dist_es/react/components/resolvable/configurationForm/ConfigurationForm.js +64 -64
  202. package/dist_es/react/components/resolvable/configurationForm/ConfigurationFormEntry.d.ts +16 -16
  203. package/dist_es/react/components/resolvable/configurationForm/ConfigurationFormEntry.js +58 -58
  204. package/dist_es/react/components/resolvable/configurationForm/getSectionDefault.d.ts +16 -16
  205. package/dist_es/react/components/resolvable/configurationForm/getSectionDefault.js +94 -94
  206. package/dist_es/react/hooks/useFin5BinUrl.d.ts +6 -6
  207. package/dist_es/react/hooks/useFin5BinUrl.js +11 -11
  208. package/dist_es/react/hooks/useFin5ColorScheme.d.ts +2 -2
  209. package/dist_es/react/hooks/useFin5ColorScheme.js +52 -52
  210. package/dist_es/react/hooks/useScreenSize.d.ts +7 -7
  211. package/dist_es/react/hooks/useScreenSize.js +27 -27
  212. package/package.json +2 -2
package/dist_es/index.js CHANGED
@@ -1,54 +1,54 @@
1
- /*
2
- * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
- */
4
- //////////////////////////////////////////////////////////////////////////
5
- // Fin5 APIs related modules
6
- //////////////////////////////////////////////////////////////////////////
7
- export * from './fin5Top/fin5FileUpload';
8
- export * from './fin5Top/fin5Top';
9
- export * from './fin5Top/finEdge2Cloud';
10
- export * from './fin5Top/getFin5BinUrl';
11
- export * from './fin5Top/openFin5Alarm';
12
- export * from './fin5Top/openFin5Historian';
13
- export * from './fin5Top/useFin5AppURLHashParameter';
14
- //////////////////////////////////////////////////////////////////////////
15
- // Fin5 features related modules
16
- //////////////////////////////////////////////////////////////////////////
17
- export * from './jobs/jobUtils';
18
- //////////////////////////////////////////////////////////////////////////
19
- // React components
20
- //////////////////////////////////////////////////////////////////////////
21
- export * from './react/components/ErrorBoundary';
22
- export * from './react/components/ErrorDisplayer';
23
- export * from './react/components/Loader';
24
- export * from './react/components/LoadingSpinner';
25
- export * from './react/components/graphics/GraphicViewer';
26
- export * from './react/components/graphics/GraphicsTabViewer';
27
- export * from './react/components/navigation/BasicLayout';
28
- export * from './react/components/navigation/MenuPage';
29
- export * from './react/components/navigation/ReactRouterLayout';
30
- export * from './react/components/navigation/ReactRouterHeaderSiderLayout';
31
- export * from './react/components/navigation/customRouting/RouterLayout';
32
- export * from './react/components/navigation/customRouting/Router';
33
- export * from './react/components/resolvable/configurationForm/ConfigurationForm';
34
- export * from './react/components/resolvable/configurationForm/ConfigurationFormEntry';
35
- export * from './react/components/resolvable/configurationForm/getSectionDefault';
36
- export * from './react/components/RecordImage';
37
- export * from './react/components/charts/QRCode';
38
- export * from './react/components/charts/line-bar/Chart';
39
- export * from './react/components/charts/line-bar/HGridChart';
40
- export * from './react/components/charts/pie/PieChart';
41
- export * from './react/components/charts/pie/SimplePieChart';
42
- export * from './react/components/makeCustomElement';
43
- //////////////////////////////////////////////////////////////////////////
44
- // React hooks
45
- //////////////////////////////////////////////////////////////////////////
46
- export * from './react/hooks/useFin5BinUrl';
47
- export * from './react/hooks/useFin5ColorScheme';
48
- export * from './react/hooks/useScreenSize';
49
- //////////////////////////////////////////////////////////////////////////
50
- // j2inn/app support for FIN5
51
- //////////////////////////////////////////////////////////////////////////
52
- export * from './react/app/Fin5AppContainer';
53
- export * from './react/app/Fin5AppRootStore';
1
+ /*
2
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
+ */
4
+ //////////////////////////////////////////////////////////////////////////
5
+ // Fin5 APIs related modules
6
+ //////////////////////////////////////////////////////////////////////////
7
+ export * from './fin5Top/fin5FileUpload';
8
+ export * from './fin5Top/fin5Top';
9
+ export * from './fin5Top/finEdge2Cloud';
10
+ export * from './fin5Top/getFin5BinUrl';
11
+ export * from './fin5Top/openFin5Alarm';
12
+ export * from './fin5Top/openFin5Historian';
13
+ export * from './fin5Top/useFin5AppURLHashParameter';
14
+ //////////////////////////////////////////////////////////////////////////
15
+ // Fin5 features related modules
16
+ //////////////////////////////////////////////////////////////////////////
17
+ export * from './jobs/jobUtils';
18
+ //////////////////////////////////////////////////////////////////////////
19
+ // React components
20
+ //////////////////////////////////////////////////////////////////////////
21
+ export * from './react/components/ErrorBoundary';
22
+ export * from './react/components/ErrorDisplayer';
23
+ export * from './react/components/Loader';
24
+ export * from './react/components/LoadingSpinner';
25
+ export * from './react/components/graphics/GraphicViewer';
26
+ export * from './react/components/graphics/GraphicsTabViewer';
27
+ export * from './react/components/navigation/BasicLayout';
28
+ export * from './react/components/navigation/MenuPage';
29
+ export * from './react/components/navigation/ReactRouterLayout';
30
+ export * from './react/components/navigation/ReactRouterHeaderSiderLayout';
31
+ export * from './react/components/navigation/customRouting/RouterLayout';
32
+ export * from './react/components/navigation/customRouting/Router';
33
+ export * from './react/components/resolvable/configurationForm/ConfigurationForm';
34
+ export * from './react/components/resolvable/configurationForm/ConfigurationFormEntry';
35
+ export * from './react/components/resolvable/configurationForm/getSectionDefault';
36
+ export * from './react/components/RecordImage';
37
+ export * from './react/components/charts/QRCode';
38
+ export * from './react/components/charts/line-bar/Chart';
39
+ export * from './react/components/charts/line-bar/HGridChart';
40
+ export * from './react/components/charts/pie/PieChart';
41
+ export * from './react/components/charts/pie/SimplePieChart';
42
+ export * from './react/components/makeCustomElement';
43
+ //////////////////////////////////////////////////////////////////////////
44
+ // React hooks
45
+ //////////////////////////////////////////////////////////////////////////
46
+ export * from './react/hooks/useFin5BinUrl';
47
+ export * from './react/hooks/useFin5ColorScheme';
48
+ export * from './react/hooks/useScreenSize';
49
+ //////////////////////////////////////////////////////////////////////////
50
+ // j2inn/app support for FIN5
51
+ //////////////////////////////////////////////////////////////////////////
52
+ export * from './react/app/Fin5AppContainer';
53
+ export * from './react/app/Fin5AppRootStore';
54
54
  //# sourceMappingURL=index.js.map
@@ -1,14 +1,14 @@
1
- import { HDict, HNum, HStr } from 'haystack-core';
2
- export declare enum JobStatus {
3
- doneOk = "doneOk",
4
- doneErr = "doneErr",
5
- running = "running"
6
- }
7
- export interface JobStatusDict extends HDict {
8
- jobStatus: HStr;
9
- progress: HNum;
10
- progressMsg: HStr;
11
- }
12
- export declare const isJobSuccessful: (jobStatus: JobStatusDict) => boolean;
13
- export declare const isJobError: (jobStatus: JobStatusDict) => boolean;
14
- export declare const isJobRunning: (jobStatus: JobStatusDict) => boolean;
1
+ import { HDict, HNum, HStr } from 'haystack-core';
2
+ export declare enum JobStatus {
3
+ doneOk = "doneOk",
4
+ doneErr = "doneErr",
5
+ running = "running"
6
+ }
7
+ export interface JobStatusDict extends HDict {
8
+ jobStatus: HStr;
9
+ progress: HNum;
10
+ progressMsg: HStr;
11
+ }
12
+ export declare const isJobSuccessful: (jobStatus: JobStatusDict) => boolean;
13
+ export declare const isJobError: (jobStatus: JobStatusDict) => boolean;
14
+ export declare const isJobRunning: (jobStatus: JobStatusDict) => boolean;
@@ -1,10 +1,10 @@
1
- export var JobStatus;
2
- (function (JobStatus) {
3
- JobStatus["doneOk"] = "doneOk";
4
- JobStatus["doneErr"] = "doneErr";
5
- JobStatus["running"] = "running";
6
- })(JobStatus || (JobStatus = {}));
7
- export const isJobSuccessful = (jobStatus) => jobStatus.jobStatus.value === JobStatus.doneOk;
8
- export const isJobError = (jobStatus) => jobStatus.jobStatus.value === JobStatus.doneErr;
9
- export const isJobRunning = (jobStatus) => jobStatus.jobStatus.value === JobStatus.running;
1
+ export var JobStatus;
2
+ (function (JobStatus) {
3
+ JobStatus["doneOk"] = "doneOk";
4
+ JobStatus["doneErr"] = "doneErr";
5
+ JobStatus["running"] = "running";
6
+ })(JobStatus || (JobStatus = {}));
7
+ export const isJobSuccessful = (jobStatus) => jobStatus.jobStatus.value === JobStatus.doneOk;
8
+ export const isJobError = (jobStatus) => jobStatus.jobStatus.value === JobStatus.doneErr;
9
+ export const isJobRunning = (jobStatus) => jobStatus.jobStatus.value === JobStatus.running;
10
10
  //# sourceMappingURL=jobUtils.js.map
@@ -1,36 +1,36 @@
1
- import React from 'react';
2
- import { AppStore } from '@j2inn/app';
3
- import { Client } from 'haystack-nclient';
4
- import { ThemeDef } from '@j2inn/ui';
5
- /**
6
- * Properties for the dev application container component.
7
- */
8
- export interface Fin5AppContainerProps {
9
- /**
10
- * The children to render.
11
- */
12
- children?: React.ReactNode;
13
- /**
14
- * The app store.
15
- */
16
- appStore?: AppStore;
17
- /**
18
- * The network client object.
19
- */
20
- client?: Client;
21
- /**
22
- * Optional project name. Typically this is only specified
23
- * in development mode. It's typically picked up from the URL.
24
- */
25
- project?: string;
26
- /**
27
- * The optional theme to use.
28
- */
29
- theme?: ThemeDef;
30
- }
31
- /**
32
- * Creates a basic application container environment to run a view in FIN5.
33
- */
34
- export declare const Fin5AppContainer: (({ children, appStore, client, project, theme, }: Fin5AppContainerProps) => JSX.Element) & {
35
- displayName: string;
36
- };
1
+ import React from 'react';
2
+ import { AppStore } from '@j2inn/app';
3
+ import { Client } from 'haystack-nclient';
4
+ import { ThemeDef } from '@j2inn/ui';
5
+ /**
6
+ * Properties for the dev application container component.
7
+ */
8
+ export interface Fin5AppContainerProps {
9
+ /**
10
+ * The children to render.
11
+ */
12
+ children?: React.ReactNode;
13
+ /**
14
+ * The app store.
15
+ */
16
+ appStore?: AppStore;
17
+ /**
18
+ * The network client object.
19
+ */
20
+ client?: Client;
21
+ /**
22
+ * Optional project name. Typically this is only specified
23
+ * in development mode. It's typically picked up from the URL.
24
+ */
25
+ project?: string;
26
+ /**
27
+ * The optional theme to use.
28
+ */
29
+ theme?: ThemeDef;
30
+ }
31
+ /**
32
+ * Creates a basic application container environment to run a view in FIN5.
33
+ */
34
+ export declare const Fin5AppContainer: (({ children, appStore, client, project, theme, }: Fin5AppContainerProps) => JSX.Element) & {
35
+ displayName: string;
36
+ };
@@ -1,133 +1,133 @@
1
- /*
2
- * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
- */
4
- import React, { useEffect, useRef, useState } from 'react';
5
- import { AppRootStoreContext, AppStoreContext } from '@j2inn/app-react';
6
- import { observer } from 'mobx-react-lite';
7
- import { Fin5AppRootStore } from './Fin5AppRootStore';
8
- import { Client, } from 'haystack-nclient';
9
- import { ClientContext } from 'haystack-react';
10
- import { I18NProvider } from '@j2inn/utils';
11
- import { ThemeProvider } from 'react-jss';
12
- import { DEFAULT_THEME, GenerateTheme } from '@j2inn/ui';
13
- import { fin5Top } from '../../fin5Top/fin5Top';
14
- import { useFin5AppURLHashParameter } from '../../fin5Top/useFin5AppURLHashParameter';
15
- import { HRef } from 'haystack-core';
16
- import { ErrorBoundary } from '../components/ErrorBoundary';
17
- import Loader from '../components/Loader';
18
- const PATH_PREFIX = 'finApp';
19
- /**
20
- * The Ractive keypath used to observe target reference changes on fin5Top.app.
21
- * @see https://ractive.js.org/api/#ractiveobserve
22
- */
23
- const FIN5_TARGET_KEYPATH = 'currentId';
24
- const getServiceUrl = ({ origin, path }) => `${origin}/${PATH_PREFIX}/api/${path}`;
25
- const getOpUrl = ({ origin, project, op }) => `${origin}/api/${project}/${op}`;
26
- const getHaystackServiceUrl = ({ origin, project, path, }) => `${origin}/${PATH_PREFIX}/api/haystack${project ? `/${project}` : ''}/${path}`;
27
- const getHostServiceUrl = ({ origin, path, }) => `${origin}/${PATH_PREFIX}/api/host/${path}`;
28
- /**
29
- * Runtime type guard that checks whether a store instance
30
- * exposes a boolean `initialized` flag.
31
- *
32
- * @param {AppStore | null | undefined} appStore - The store instance to test
33
- * @returns {appStore is AppStore & { initialized: boolean }} True if `appStore` has a boolean `initialized` property
34
- *
35
- * @remarks
36
- * To use the FINX onMessage feature, ensure the concrete store declares `initialized` ahead of time,
37
- * and set to true when children components have fully rendered.
38
- */
39
- function hasInitialized(appStore) {
40
- return (!!appStore &&
41
- 'initialized' in appStore &&
42
- typeof appStore.initialized === 'boolean');
43
- }
44
- /**
45
- * Creates a basic application container environment to run a view in FIN5.
46
- */
47
- export const Fin5AppContainer = observer(({ children, appStore, client, project, theme = GenerateTheme(DEFAULT_THEME).light, }) => {
48
- const [loading, setLoading] = useState(true);
49
- const [loadingi18n, setLoadingi18n] = useState(true);
50
- const rootStoreRef = useRef(null);
51
- rootStoreRef.current ??= new Fin5AppRootStore();
52
- const rootStore = rootStoreRef.current;
53
- const [hashProjName] = useFin5AppURLHashParameter('projectName');
54
- const containerProject = project || hashProjName || fin5Top?.finstack?.projectName || '';
55
- const locale = fin5Top?.languageManager?.currentLang ?? navigator?.language;
56
- rootStore.locale = locale;
57
- if (!rootStore.allLocales.includes(locale)) {
58
- rootStore.allLocales.push(locale);
59
- }
60
- const initialized = hasInitialized(appStore)
61
- ? appStore.initialized
62
- : false;
63
- const getClient = () => client ??
64
- new Client({
65
- base: new URL(window.location.href),
66
- project: containerProject,
67
- options: { headers: { accept: 'text/zinc' } },
68
- getServiceUrl,
69
- getOpUrl,
70
- getHaystackServiceUrl,
71
- getHostServiceUrl,
72
- });
73
- const [containerClient, setContainerClient] = useState(getClient);
74
- // Primary: set initial value from fin5Top.app and subscribe to changes via Ractive observe
75
- useEffect(() => {
76
- if (!fin5Top?.app)
77
- return;
78
- const initial = fin5Top.app.TargetRef?.() ?? '';
79
- rootStore.setTarget(initial ? HRef.make(initial).value : '');
80
- const observer = fin5Top.app.observe(FIN5_TARGET_KEYPATH, (newValue) => {
81
- const value = String(newValue);
82
- const target = value ?? '';
83
- rootStore.setTarget(target ? HRef.make(target).value : '');
84
- });
85
- return () => observer.cancel();
86
- }, []);
87
- useEffect(() => {
88
- setLoading(true);
89
- const newClient = getClient();
90
- setContainerClient(newClient);
91
- // Load everything network wise before we load
92
- // the application.
93
- Promise.all([
94
- newClient.ext.eval('finGetCurrentUser()'),
95
- newClient.ext.loadDefs(),
96
- ]).then(([userGrid]) => {
97
- rootStore.currentUser = userGrid.first;
98
- setLoading(false);
99
- });
100
- }, [client, containerProject]);
101
- useEffect(() => {
102
- const onMessage = (event) => {
103
- if (fin5Top?.location.origin === event.origin &&
104
- appStore?.onMessage) {
105
- appStore.onMessage({
106
- message: event.data.message,
107
- params: event.data,
108
- client: getClient(),
109
- appRootStore: rootStore,
110
- });
111
- }
112
- };
113
- window.addEventListener('message', onMessage);
114
- return () => window.removeEventListener('message', onMessage);
115
- }, []);
116
- useEffect(() => {
117
- // tell the top level app its ready
118
- if (initialized) {
119
- fin5Top?.postMessage({
120
- kind: 'iframeApp',
121
- loading: false,
122
- });
123
- }
124
- }, [initialized]);
125
- return (React.createElement(AppRootStoreContext.Provider, { value: rootStore },
126
- React.createElement(AppStoreContext.Provider, { value: appStore },
127
- React.createElement(ClientContext.Provider, { value: containerClient },
128
- React.createElement(I18NProvider, { locale: locale, setLoading: setLoadingi18n },
129
- React.createElement(ThemeProvider, { theme: theme },
130
- React.createElement(Loader, { loading: loading || loadingi18n },
131
- React.createElement(ErrorBoundary, { mode: "global" /* ErrorBoundaryMode.global */ }, children))))))));
132
- });
1
+ /*
2
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
+ */
4
+ import React, { useEffect, useRef, useState } from 'react';
5
+ import { AppRootStoreContext, AppStoreContext } from '@j2inn/app-react';
6
+ import { observer } from 'mobx-react-lite';
7
+ import { Fin5AppRootStore } from './Fin5AppRootStore';
8
+ import { Client, } from 'haystack-nclient';
9
+ import { ClientContext } from 'haystack-react';
10
+ import { I18NProvider } from '@j2inn/utils';
11
+ import { ThemeProvider } from 'react-jss';
12
+ import { DEFAULT_THEME, GenerateTheme } from '@j2inn/ui';
13
+ import { fin5Top } from '../../fin5Top/fin5Top';
14
+ import { useFin5AppURLHashParameter } from '../../fin5Top/useFin5AppURLHashParameter';
15
+ import { HRef } from 'haystack-core';
16
+ import { ErrorBoundary } from '../components/ErrorBoundary';
17
+ import Loader from '../components/Loader';
18
+ const PATH_PREFIX = 'finApp';
19
+ /**
20
+ * The Ractive keypath used to observe target reference changes on fin5Top.app.
21
+ * @see https://ractive.js.org/api/#ractiveobserve
22
+ */
23
+ const FIN5_TARGET_KEYPATH = 'currentId';
24
+ const getServiceUrl = ({ origin, path }) => `${origin}/${PATH_PREFIX}/api/${path}`;
25
+ const getOpUrl = ({ origin, project, op }) => `${origin}/api/${project}/${op}`;
26
+ const getHaystackServiceUrl = ({ origin, project, path, }) => `${origin}/${PATH_PREFIX}/api/haystack${project ? `/${project}` : ''}/${path}`;
27
+ const getHostServiceUrl = ({ origin, path, }) => `${origin}/${PATH_PREFIX}/api/host/${path}`;
28
+ /**
29
+ * Runtime type guard that checks whether a store instance
30
+ * exposes a boolean `initialized` flag.
31
+ *
32
+ * @param {AppStore | null | undefined} appStore - The store instance to test
33
+ * @returns {appStore is AppStore & { initialized: boolean }} True if `appStore` has a boolean `initialized` property
34
+ *
35
+ * @remarks
36
+ * To use the FINX onMessage feature, ensure the concrete store declares `initialized` ahead of time,
37
+ * and set to true when children components have fully rendered.
38
+ */
39
+ function hasInitialized(appStore) {
40
+ return (!!appStore &&
41
+ 'initialized' in appStore &&
42
+ typeof appStore.initialized === 'boolean');
43
+ }
44
+ /**
45
+ * Creates a basic application container environment to run a view in FIN5.
46
+ */
47
+ export const Fin5AppContainer = observer(({ children, appStore, client, project, theme = GenerateTheme(DEFAULT_THEME).light, }) => {
48
+ const [loading, setLoading] = useState(true);
49
+ const [loadingi18n, setLoadingi18n] = useState(true);
50
+ const rootStoreRef = useRef(null);
51
+ rootStoreRef.current ??= new Fin5AppRootStore();
52
+ const rootStore = rootStoreRef.current;
53
+ const [hashProjName] = useFin5AppURLHashParameter('projectName');
54
+ const containerProject = project || hashProjName || fin5Top?.finstack?.projectName || '';
55
+ const locale = fin5Top?.languageManager?.currentLang ?? navigator?.language;
56
+ rootStore.locale = locale;
57
+ if (!rootStore.allLocales.includes(locale)) {
58
+ rootStore.allLocales.push(locale);
59
+ }
60
+ const initialized = hasInitialized(appStore)
61
+ ? appStore.initialized
62
+ : false;
63
+ const getClient = () => client ??
64
+ new Client({
65
+ base: new URL(window.location.href),
66
+ project: containerProject,
67
+ options: { headers: { accept: 'text/zinc' } },
68
+ getServiceUrl,
69
+ getOpUrl,
70
+ getHaystackServiceUrl,
71
+ getHostServiceUrl,
72
+ });
73
+ const [containerClient, setContainerClient] = useState(getClient);
74
+ // Primary: set initial value from fin5Top.app and subscribe to changes via Ractive observe
75
+ useEffect(() => {
76
+ if (!fin5Top?.app)
77
+ return;
78
+ const initial = fin5Top.app.TargetRef?.() ?? '';
79
+ rootStore.setTarget(initial ? HRef.make(initial).value : '');
80
+ const observer = fin5Top.app.observe(FIN5_TARGET_KEYPATH, (newValue) => {
81
+ const value = String(newValue);
82
+ const target = value ?? '';
83
+ rootStore.setTarget(target ? HRef.make(target).value : '');
84
+ });
85
+ return () => observer.cancel();
86
+ }, []);
87
+ useEffect(() => {
88
+ setLoading(true);
89
+ const newClient = getClient();
90
+ setContainerClient(newClient);
91
+ // Load everything network wise before we load
92
+ // the application.
93
+ Promise.all([
94
+ newClient.ext.eval('finGetCurrentUser()'),
95
+ newClient.ext.loadDefs(),
96
+ ]).then(([userGrid]) => {
97
+ rootStore.currentUser = userGrid.first;
98
+ setLoading(false);
99
+ });
100
+ }, [client, containerProject]);
101
+ useEffect(() => {
102
+ const onMessage = (event) => {
103
+ if (fin5Top?.location.origin === event.origin &&
104
+ appStore?.onMessage) {
105
+ appStore.onMessage({
106
+ message: event.data.message,
107
+ params: event.data,
108
+ client: getClient(),
109
+ appRootStore: rootStore,
110
+ });
111
+ }
112
+ };
113
+ window.addEventListener('message', onMessage);
114
+ return () => window.removeEventListener('message', onMessage);
115
+ }, []);
116
+ useEffect(() => {
117
+ // tell the top level app its ready
118
+ if (initialized) {
119
+ fin5Top?.postMessage({
120
+ kind: 'iframeApp',
121
+ loading: false,
122
+ });
123
+ }
124
+ }, [initialized]);
125
+ return (React.createElement(AppRootStoreContext.Provider, { value: rootStore },
126
+ React.createElement(AppStoreContext.Provider, { value: appStore },
127
+ React.createElement(ClientContext.Provider, { value: containerClient },
128
+ React.createElement(I18NProvider, { locale: locale, setLoading: setLoadingi18n },
129
+ React.createElement(ThemeProvider, { theme: theme },
130
+ React.createElement(Loader, { loading: loading || loadingi18n },
131
+ React.createElement(ErrorBoundary, { mode: "global" /* ErrorBoundaryMode.global */ }, children))))))));
132
+ });
133
133
  //# sourceMappingURL=Fin5AppContainer.js.map
@@ -0,0 +1,82 @@
1
+ /*
2
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
+ */
4
+ import React, { useEffect, useRef, useState } from 'react';
5
+ import { AppRootStoreContext, AppStoreContext } from '@j2inn/app';
6
+ import { observer } from 'mobx-react-lite';
7
+ import { Fin5AppRootStore } from './Fin5AppRootStore';
8
+ import { Client, } from 'haystack-nclient';
9
+ import { ClientContext } from 'haystack-react';
10
+ import { I18NProvider } from '@j2inn/utils';
11
+ import { ThemeProvider } from 'react-jss';
12
+ import { DEFAULT_THEME, GenerateTheme } from '@j2inn/ui';
13
+ import { fin5Top } from '../../fin5Top/fin5Top';
14
+ import { useFin5AppURLHashParameter } from '../../fin5Top/useFin5AppURLHashParameter';
15
+ import { HRef } from 'haystack-core';
16
+ import { ErrorBoundary } from '../components/ErrorBoundary';
17
+ import Loader from '../components/Loader';
18
+ const PATH_PREFIX = 'finApp';
19
+ const getServiceUrl = ({ origin, path }) => `${origin}/${PATH_PREFIX}/api/${path}`;
20
+ const getOpUrl = ({ origin, project, op }) => `${origin}/api/${project}/${op}`;
21
+ const getHaystackServiceUrl = ({ origin, project, path, }) => `${origin}/${PATH_PREFIX}/api/haystack${project ? `/${project}` : ''}/${path}`;
22
+ const getHostServiceUrl = ({ origin, path, }) => `${origin}/${PATH_PREFIX}/api/host/${path}`;
23
+ /**
24
+ * Creates a basic application container environment to run a view in FIN5.
25
+ */
26
+ export const Fin5AppContainer = observer(({ children, appStore, client, project, theme = GenerateTheme(DEFAULT_THEME).light, }) => {
27
+ const [loading, setLoading] = useState(true);
28
+ const [loadingi18n, setLoadingi18n] = useState(true);
29
+ const rootStoreRef = useRef(null);
30
+ const rootStore = rootStoreRef.current ??
31
+ (rootStoreRef.current = new Fin5AppRootStore());
32
+ const [hashProjName] = useFin5AppURLHashParameter('projectName');
33
+ const containerProject = project || hashProjName || fin5Top?.finstack?.projectName || '';
34
+ const locale = fin5Top?.languageManager?.currentLang ?? navigator?.language;
35
+ rootStore.locale = locale;
36
+ if (!rootStore.allLocales.includes(locale)) {
37
+ rootStore.allLocales.push(locale);
38
+ }
39
+ const target = fin5Top?.app?.TargetRef?.() || '';
40
+ rootStore.target = target ? HRef.make(target).value : '';
41
+ const getClient = () => client ??
42
+ new Client({
43
+ base: new URL(window.location.href),
44
+ project: containerProject,
45
+ options: { headers: { accept: 'text/zinc' } },
46
+ getServiceUrl,
47
+ getOpUrl,
48
+ getHaystackServiceUrl,
49
+ getHostServiceUrl,
50
+ });
51
+ const [containerClient, setContainerClient] = useState(getClient);
52
+ useEffect(() => {
53
+ setLoading(true);
54
+ const newClient = getClient();
55
+ setContainerClient(newClient);
56
+ // Load everything network wise before we load
57
+ // the application.
58
+ Promise.all([
59
+ newClient.ext.eval('finGetCurrentUser()'),
60
+ newClient.ext.loadDefs(),
61
+ ]).then(([userGrid]) => {
62
+ rootStore.currentUser = userGrid.first;
63
+ setLoading(false);
64
+ });
65
+ }, [client, containerProject]);
66
+ return (<AppRootStoreContext.Provider value={rootStore}>
67
+ <AppStoreContext.Provider value={appStore}>
68
+ <ClientContext.Provider value={containerClient}>
69
+ <I18NProvider locale={locale} setLoading={setLoadingi18n}>
70
+ <ThemeProvider theme={theme}>
71
+ <Loader loading={loading || loadingi18n}>
72
+ <ErrorBoundary mode={"global" /* ErrorBoundaryMode.global */}>
73
+ {children}
74
+ </ErrorBoundary>
75
+ </Loader>
76
+ </ThemeProvider>
77
+ </I18NProvider>
78
+ </ClientContext.Provider>
79
+ </AppStoreContext.Provider>
80
+ </AppRootStoreContext.Provider>);
81
+ });
82
+ //# sourceMappingURL=Fin5AppContainer.jsx.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Fin5AppContainer.jsx","sourceRoot":"","sources":["../../../src/react/app/Fin5AppContainer.tsx"],"names":[],"mappings":"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"}