@intuitionrobotics/thunderstorm 0.47.59 → 1.0.1

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 (542) hide show
  1. package/LICENSE +3 -0
  2. package/dist/app-backend/api/v1/utils/version/_assert.d.ts +4 -0
  3. package/dist/app-backend/api/v1/utils/version/_assert.d.ts.map +1 -0
  4. package/dist/app-backend/api/v1/utils/version/_assert.js +23 -0
  5. package/dist/app-backend/api/v1/utils/version/_assert.js.map +1 -0
  6. package/dist/app-backend/api/v1/utils/version/assert.d.ts +10 -0
  7. package/dist/app-backend/api/v1/utils/version/assert.d.ts.map +1 -0
  8. package/dist/app-backend/api/v1/utils/version/assert.js +36 -0
  9. package/dist/app-backend/api/v1/utils/version/assert.js.map +1 -0
  10. package/{app-backend → dist/app-backend}/core/BaseStorm.d.ts +1 -0
  11. package/dist/app-backend/core/BaseStorm.d.ts.map +1 -0
  12. package/dist/app-backend/core/BaseStorm.js +12 -0
  13. package/dist/app-backend/core/BaseStorm.js.map +1 -0
  14. package/{app-backend → dist/app-backend}/core/Storm.d.ts +5 -4
  15. package/dist/app-backend/core/Storm.d.ts.map +1 -0
  16. package/dist/app-backend/core/Storm.js +92 -0
  17. package/dist/app-backend/core/Storm.js.map +1 -0
  18. package/{app-backend → dist/app-backend}/exceptions.d.ts +2 -1
  19. package/dist/app-backend/exceptions.d.ts.map +1 -0
  20. package/dist/app-backend/exceptions.js +24 -0
  21. package/dist/app-backend/exceptions.js.map +1 -0
  22. package/{app-backend → dist/app-backend}/modules/CleanupScheduler.d.ts +1 -0
  23. package/dist/app-backend/modules/CleanupScheduler.d.ts.map +1 -0
  24. package/dist/app-backend/modules/CleanupScheduler.js +28 -0
  25. package/dist/app-backend/modules/CleanupScheduler.js.map +1 -0
  26. package/{app-backend → dist/app-backend}/modules/FirestoreBackupScheduler.d.ts +3 -2
  27. package/dist/app-backend/modules/FirestoreBackupScheduler.d.ts.map +1 -0
  28. package/dist/app-backend/modules/FirestoreBackupScheduler.js +54 -0
  29. package/dist/app-backend/modules/FirestoreBackupScheduler.js.map +1 -0
  30. package/{app-backend → dist/app-backend}/modules/ForceUpgrade.d.ts +5 -4
  31. package/dist/app-backend/modules/ForceUpgrade.d.ts.map +1 -0
  32. package/dist/app-backend/modules/ForceUpgrade.js +84 -0
  33. package/dist/app-backend/modules/ForceUpgrade.js.map +1 -0
  34. package/{app-backend → dist/app-backend}/modules/SlackModule.d.ts +3 -2
  35. package/dist/app-backend/modules/SlackModule.d.ts.map +1 -0
  36. package/dist/app-backend/modules/SlackModule.js +58 -0
  37. package/dist/app-backend/modules/SlackModule.js.map +1 -0
  38. package/dist/app-backend/modules/_imports.d.ts +11 -0
  39. package/dist/app-backend/modules/_imports.d.ts.map +1 -0
  40. package/dist/app-backend/modules/_imports.js +31 -0
  41. package/dist/app-backend/modules/_imports.js.map +1 -0
  42. package/{app-backend → dist/app-backend}/modules/http/AxiosHttpModule.d.ts +5 -4
  43. package/dist/app-backend/modules/http/AxiosHttpModule.d.ts.map +1 -0
  44. package/{app-backend → dist/app-backend}/modules/http/AxiosHttpModule.js +47 -55
  45. package/dist/app-backend/modules/http/AxiosHttpModule.js.map +1 -0
  46. package/{app-backend → dist/app-backend}/modules/http/types.d.ts +2 -1
  47. package/dist/app-backend/modules/http/types.d.ts.map +1 -0
  48. package/dist/app-backend/modules/http/types.js +2 -0
  49. package/{app-backend → dist/app-backend}/modules/http/types.js.map +1 -1
  50. package/{app-backend → dist/app-backend}/modules/proxy/RemoteProxy.d.ts +6 -5
  51. package/dist/app-backend/modules/proxy/RemoteProxy.d.ts.map +1 -0
  52. package/dist/app-backend/modules/proxy/RemoteProxy.js +88 -0
  53. package/dist/app-backend/modules/proxy/RemoteProxy.js.map +1 -0
  54. package/{app-backend → dist/app-backend}/modules/proxy/RemoteProxyCaller.d.ts +3 -2
  55. package/dist/app-backend/modules/proxy/RemoteProxyCaller.d.ts.map +1 -0
  56. package/dist/app-backend/modules/proxy/RemoteProxyCaller.js +109 -0
  57. package/dist/app-backend/modules/proxy/RemoteProxyCaller.js.map +1 -0
  58. package/{app-backend → dist/app-backend}/modules/server/HttpServer.d.ts +12 -9
  59. package/dist/app-backend/modules/server/HttpServer.d.ts.map +1 -0
  60. package/{app-backend → dist/app-backend}/modules/server/HttpServer.js +47 -67
  61. package/dist/app-backend/modules/server/HttpServer.js.map +1 -0
  62. package/{app-backend → dist/app-backend}/modules/server/server-api.d.ts +8 -7
  63. package/dist/app-backend/modules/server/server-api.d.ts.map +1 -0
  64. package/dist/app-backend/modules/server/server-api.js +346 -0
  65. package/dist/app-backend/modules/server/server-api.js.map +1 -0
  66. package/{app-backend → dist/app-backend}/modules/server/server-errors.d.ts +4 -3
  67. package/dist/app-backend/modules/server/server-errors.d.ts.map +1 -0
  68. package/{app-backend → dist/app-backend}/modules/server/server-errors.js +15 -24
  69. package/dist/app-backend/modules/server/server-errors.js.map +1 -0
  70. package/{app-backend → dist/app-backend}/utils/LogClient_File.d.ts +1 -0
  71. package/dist/app-backend/utils/LogClient_File.d.ts.map +1 -0
  72. package/{app-backend → dist/app-backend}/utils/LogClient_File.js +6 -7
  73. package/dist/app-backend/utils/LogClient_File.js.map +1 -0
  74. package/{app-backend → dist/app-backend}/utils/file.d.ts +1 -0
  75. package/dist/app-backend/utils/file.d.ts.map +1 -0
  76. package/{app-backend/utils/types.js → dist/app-backend/utils/file.js} +10 -6
  77. package/dist/app-backend/utils/file.js.map +1 -0
  78. package/dist/app-backend/utils/promisify-request.d.ts +3 -0
  79. package/dist/app-backend/utils/promisify-request.d.ts.map +1 -0
  80. package/dist/app-backend/utils/promisify-request.js +25 -0
  81. package/dist/app-backend/utils/promisify-request.js.map +1 -0
  82. package/{app-backend → dist/app-backend}/utils/to-be-removed.d.ts +1 -0
  83. package/dist/app-backend/utils/to-be-removed.d.ts.map +1 -0
  84. package/dist/app-backend/utils/to-be-removed.js +24 -0
  85. package/dist/app-backend/utils/to-be-removed.js.map +1 -0
  86. package/{app-backend → dist/app-backend}/utils/types.d.ts +1 -0
  87. package/dist/app-backend/utils/types.d.ts.map +1 -0
  88. package/dist/app-backend/utils/types.js +24 -0
  89. package/dist/app-backend/utils/types.js.map +1 -0
  90. package/{app-frontend → dist/app-frontend}/components/ActionButton.d.ts +1 -0
  91. package/dist/app-frontend/components/ActionButton.d.ts.map +1 -0
  92. package/{app-frontend → dist/app-frontend}/components/ActionButton.js +2 -6
  93. package/dist/app-frontend/components/ActionButton.js.map +1 -0
  94. package/{app-frontend → dist/app-frontend}/components/FilterInput.d.ts +3 -2
  95. package/dist/app-frontend/components/FilterInput.d.ts.map +1 -0
  96. package/dist/app-frontend/components/FilterInput.js +62 -0
  97. package/dist/app-frontend/components/FilterInput.js.map +1 -0
  98. package/{app-frontend → dist/app-frontend}/components/GenericSelect.d.ts +2 -1
  99. package/dist/app-frontend/components/GenericSelect.d.ts.map +1 -0
  100. package/{app-frontend → dist/app-frontend}/components/GenericSelect.js +8 -9
  101. package/dist/app-frontend/components/GenericSelect.js.map +1 -0
  102. package/{app-frontend → dist/app-frontend}/components/GenericTabs.d.ts +1 -0
  103. package/dist/app-frontend/components/GenericTabs.d.ts.map +1 -0
  104. package/dist/app-frontend/components/GenericTabs.js +7 -0
  105. package/dist/app-frontend/components/GenericTabs.js.map +1 -0
  106. package/{app-frontend → dist/app-frontend}/components/Overlay.d.ts +1 -0
  107. package/dist/app-frontend/components/Overlay.d.ts.map +1 -0
  108. package/{app-frontend → dist/app-frontend}/components/Overlay.js +6 -9
  109. package/dist/app-frontend/components/Overlay.js.map +1 -0
  110. package/{app-frontend → dist/app-frontend}/components/TS_Input.d.ts +2 -1
  111. package/dist/app-frontend/components/TS_Input.d.ts.map +1 -0
  112. package/{app-frontend → dist/app-frontend}/components/TS_Input.js +37 -36
  113. package/dist/app-frontend/components/TS_Input.js.map +1 -0
  114. package/{app-frontend → dist/app-frontend}/components/TS_Table.d.ts +4 -3
  115. package/dist/app-frontend/components/TS_Table.d.ts.map +1 -0
  116. package/{app-frontend → dist/app-frontend}/components/TS_Table.js +18 -23
  117. package/dist/app-frontend/components/TS_Table.js.map +1 -0
  118. package/{app-frontend → dist/app-frontend}/components/TS_TextArea.d.ts +3 -2
  119. package/dist/app-frontend/components/TS_TextArea.d.ts.map +1 -0
  120. package/{app-frontend → dist/app-frontend}/components/TS_TextArea.js +16 -19
  121. package/dist/app-frontend/components/TS_TextArea.js.map +1 -0
  122. package/{app-frontend → dist/app-frontend}/components/Tabs.d.ts +2 -1
  123. package/dist/app-frontend/components/Tabs.d.ts.map +1 -0
  124. package/dist/app-frontend/components/Tabs.js +30 -0
  125. package/dist/app-frontend/components/Tabs.js.map +1 -0
  126. package/{app-frontend → dist/app-frontend}/components/adapter/Adapter.d.ts +9 -8
  127. package/dist/app-frontend/components/adapter/Adapter.d.ts.map +1 -0
  128. package/{app-frontend → dist/app-frontend}/components/adapter/Adapter.js +36 -39
  129. package/dist/app-frontend/components/adapter/Adapter.js.map +1 -0
  130. package/{app-frontend → dist/app-frontend}/components/adapter/BaseRenderer.d.ts +2 -1
  131. package/dist/app-frontend/components/adapter/BaseRenderer.d.ts.map +1 -0
  132. package/{app-frontend → dist/app-frontend}/components/adapter/BaseRenderer.js +4 -8
  133. package/dist/app-frontend/components/adapter/BaseRenderer.js.map +1 -0
  134. package/{app-frontend → dist/app-frontend}/components/checkbox/TS_Checkbox.d.ts +2 -1
  135. package/dist/app-frontend/components/checkbox/TS_Checkbox.d.ts.map +1 -0
  136. package/{app-frontend → dist/app-frontend}/components/checkbox/TS_Checkbox.js +4 -10
  137. package/dist/app-frontend/components/checkbox/TS_Checkbox.js.map +1 -0
  138. package/{app-frontend → dist/app-frontend}/components/checkbox/TS_CheckboxField.d.ts +2 -1
  139. package/dist/app-frontend/components/checkbox/TS_CheckboxField.d.ts.map +1 -0
  140. package/dist/app-frontend/components/checkbox/TS_CheckboxField.js +19 -0
  141. package/dist/app-frontend/components/checkbox/TS_CheckboxField.js.map +1 -0
  142. package/{app-frontend → dist/app-frontend}/components/form/Form.d.ts +3 -2
  143. package/dist/app-frontend/components/form/Form.d.ts.map +1 -0
  144. package/{app-frontend → dist/app-frontend}/components/form/Form.js +12 -16
  145. package/dist/app-frontend/components/form/Form.js.map +1 -0
  146. package/{app-frontend → dist/app-frontend}/components/form/types.d.ts +3 -2
  147. package/dist/app-frontend/components/form/types.d.ts.map +1 -0
  148. package/{app-frontend/components → dist/app-frontend/components/form}/types.js +2 -2
  149. package/{app-frontend → dist/app-frontend}/components/form/types.js.map +1 -1
  150. package/{app-frontend → dist/app-frontend}/components/playground/Playground.d.ts +1 -0
  151. package/dist/app-frontend/components/playground/Playground.d.ts.map +1 -0
  152. package/{app-frontend → dist/app-frontend}/components/playground/Playground.js +9 -13
  153. package/dist/app-frontend/components/playground/Playground.js.map +1 -0
  154. package/{app-frontend → dist/app-frontend}/components/tree/MenuComponent.d.ts +4 -3
  155. package/dist/app-frontend/components/tree/MenuComponent.d.ts.map +1 -0
  156. package/{app-frontend → dist/app-frontend}/components/tree/MenuComponent.js +9 -11
  157. package/dist/app-frontend/components/tree/MenuComponent.js.map +1 -0
  158. package/{app-frontend → dist/app-frontend}/components/tree/MultiTypeAdaptor.d.ts +3 -2
  159. package/dist/app-frontend/components/tree/MultiTypeAdaptor.d.ts.map +1 -0
  160. package/{app-frontend → dist/app-frontend}/components/tree/MultiTypeAdaptor.js +7 -13
  161. package/dist/app-frontend/components/tree/MultiTypeAdaptor.js.map +1 -0
  162. package/{app-frontend → dist/app-frontend}/components/tree/SimpleTreeNodeRenderer.d.ts +3 -2
  163. package/dist/app-frontend/components/tree/SimpleTreeNodeRenderer.d.ts.map +1 -0
  164. package/{app-frontend → dist/app-frontend}/components/tree/SimpleTreeNodeRenderer.js +6 -11
  165. package/dist/app-frontend/components/tree/SimpleTreeNodeRenderer.js.map +1 -0
  166. package/{app-frontend → dist/app-frontend}/components/tree/Tree.d.ts +4 -3
  167. package/dist/app-frontend/components/tree/Tree.d.ts.map +1 -0
  168. package/dist/app-frontend/components/tree/Tree.js +287 -0
  169. package/dist/app-frontend/components/tree/Tree.js.map +1 -0
  170. package/{app-frontend → dist/app-frontend}/components/tree/types.d.ts +2 -1
  171. package/dist/app-frontend/components/tree/types.d.ts.map +1 -0
  172. package/dist/app-frontend/components/tree/types.js +23 -0
  173. package/{app-frontend → dist/app-frontend}/components/tree/types.js.map +1 -1
  174. package/{app-frontend → dist/app-frontend}/components/treeicons.d.ts +1 -0
  175. package/dist/app-frontend/components/treeicons.d.ts.map +1 -0
  176. package/dist/app-frontend/components/treeicons.js +6 -0
  177. package/dist/app-frontend/components/treeicons.js.map +1 -0
  178. package/{app-frontend → dist/app-frontend}/components/types.d.ts +1 -0
  179. package/dist/app-frontend/components/types.d.ts.map +1 -0
  180. package/{app-frontend/components/form → dist/app-frontend/components}/types.js +1 -2
  181. package/{app-frontend → dist/app-frontend}/components/types.js.map +1 -1
  182. package/{app-frontend → dist/app-frontend}/core/AbstractThunder.d.ts +3 -2
  183. package/dist/app-frontend/core/AbstractThunder.d.ts.map +1 -0
  184. package/{app-frontend → dist/app-frontend}/core/AbstractThunder.js +14 -17
  185. package/dist/app-frontend/core/AbstractThunder.js.map +1 -0
  186. package/{app-frontend → dist/app-frontend}/core/AppPage.d.ts +3 -2
  187. package/dist/app-frontend/core/AppPage.d.ts.map +1 -0
  188. package/{app-frontend → dist/app-frontend}/core/AppPage.js +8 -11
  189. package/dist/app-frontend/core/AppPage.js.map +1 -0
  190. package/{app-frontend → dist/app-frontend}/core/AppWrapper.d.ts +2 -1
  191. package/dist/app-frontend/core/AppWrapper.d.ts.map +1 -0
  192. package/dist/app-frontend/core/AppWrapper.js +22 -0
  193. package/dist/app-frontend/core/AppWrapper.js.map +1 -0
  194. package/{app-frontend → dist/app-frontend}/core/BaseComponent.d.ts +3 -2
  195. package/dist/app-frontend/core/BaseComponent.d.ts.map +1 -0
  196. package/{app-frontend → dist/app-frontend}/core/BaseComponent.js +33 -33
  197. package/dist/app-frontend/core/BaseComponent.js.map +1 -0
  198. package/{app-frontend → dist/app-frontend}/core/SimpleScriptInjector.d.ts +1 -0
  199. package/dist/app-frontend/core/SimpleScriptInjector.d.ts.map +1 -0
  200. package/{app-frontend → dist/app-frontend}/core/SimpleScriptInjector.js +5 -9
  201. package/dist/app-frontend/core/SimpleScriptInjector.js.map +1 -0
  202. package/{app-frontend → dist/app-frontend}/core/Thunder.d.ts +4 -3
  203. package/dist/app-frontend/core/Thunder.d.ts.map +1 -0
  204. package/dist/app-frontend/core/Thunder.js +88 -0
  205. package/dist/app-frontend/core/Thunder.js.map +1 -0
  206. package/{app-frontend → dist/app-frontend}/core/thunder-dispatcher.d.ts +2 -1
  207. package/dist/app-frontend/core/thunder-dispatcher.d.ts.map +1 -0
  208. package/dist/app-frontend/core/thunder-dispatcher.js +19 -0
  209. package/dist/app-frontend/core/thunder-dispatcher.js.map +1 -0
  210. package/{app-frontend → dist/app-frontend}/modules/ConnectivityModule.d.ts +1 -0
  211. package/dist/app-frontend/modules/ConnectivityModule.d.ts.map +1 -0
  212. package/dist/app-frontend/modules/ConnectivityModule.js +23 -0
  213. package/dist/app-frontend/modules/ConnectivityModule.js.map +1 -0
  214. package/{app-frontend → dist/app-frontend}/modules/ForceUpgrade.d.ts +2 -1
  215. package/dist/app-frontend/modules/ForceUpgrade.d.ts.map +1 -0
  216. package/dist/app-frontend/modules/ForceUpgrade.js +46 -0
  217. package/dist/app-frontend/modules/ForceUpgrade.js.map +1 -0
  218. package/{app-frontend → dist/app-frontend}/modules/HistoryModule.d.ts +3 -2
  219. package/dist/app-frontend/modules/HistoryModule.d.ts.map +1 -0
  220. package/{app-frontend → dist/app-frontend}/modules/HistoryModule.js +34 -36
  221. package/dist/app-frontend/modules/HistoryModule.js.map +1 -0
  222. package/{app-frontend → dist/app-frontend}/modules/ResourcesModule.d.ts +1 -0
  223. package/dist/app-frontend/modules/ResourcesModule.d.ts.map +1 -0
  224. package/dist/app-frontend/modules/ResourcesModule.js +17 -0
  225. package/dist/app-frontend/modules/ResourcesModule.js.map +1 -0
  226. package/{app-frontend → dist/app-frontend}/modules/StorageModule.d.ts +2 -1
  227. package/dist/app-frontend/modules/StorageModule.d.ts.map +1 -0
  228. package/{app-frontend → dist/app-frontend}/modules/StorageModule.js +24 -27
  229. package/dist/app-frontend/modules/StorageModule.js.map +1 -0
  230. package/{app-frontend → dist/app-frontend}/modules/ThunderstormModule.d.ts +1 -0
  231. package/dist/app-frontend/modules/ThunderstormModule.d.ts.map +1 -0
  232. package/{app-frontend → dist/app-frontend}/modules/ThunderstormModule.js +3 -6
  233. package/dist/app-frontend/modules/ThunderstormModule.js.map +1 -0
  234. package/{app-frontend → dist/app-frontend}/modules/component-loader/ReactEntryComponentInjector.d.ts +3 -2
  235. package/dist/app-frontend/modules/component-loader/ReactEntryComponentInjector.d.ts.map +1 -0
  236. package/{app-frontend → dist/app-frontend}/modules/component-loader/ReactEntryComponentInjector.js +18 -21
  237. package/dist/app-frontend/modules/component-loader/ReactEntryComponentInjector.js.map +1 -0
  238. package/{app-frontend → dist/app-frontend}/modules/component-loader/entry-component-loading-module.d.ts +1 -0
  239. package/dist/app-frontend/modules/component-loader/entry-component-loading-module.d.ts.map +1 -0
  240. package/{app-frontend → dist/app-frontend}/modules/component-loader/entry-component-loading-module.js +10 -14
  241. package/dist/app-frontend/modules/component-loader/entry-component-loading-module.js.map +1 -0
  242. package/{app-frontend → dist/app-frontend}/modules/dialog/Dialog.d.ts +4 -3
  243. package/dist/app-frontend/modules/dialog/Dialog.d.ts.map +1 -0
  244. package/dist/app-frontend/modules/dialog/Dialog.js +154 -0
  245. package/dist/app-frontend/modules/dialog/Dialog.js.map +1 -0
  246. package/{app-frontend → dist/app-frontend}/modules/dialog/DialogModule.d.ts +3 -2
  247. package/dist/app-frontend/modules/dialog/DialogModule.d.ts.map +1 -0
  248. package/{app-frontend → dist/app-frontend}/modules/dialog/DialogModule.js +28 -27
  249. package/dist/app-frontend/modules/dialog/DialogModule.js.map +1 -0
  250. package/dist/app-frontend/modules/http/HttpClient.d.ts +2 -0
  251. package/dist/app-frontend/modules/http/HttpClient.d.ts.map +1 -0
  252. package/{app-frontend → dist/app-frontend}/modules/http/HttpClient.js +3 -3
  253. package/{app-frontend → dist/app-frontend}/modules/http/HttpClient.js.map +1 -1
  254. package/{app-frontend → dist/app-frontend}/modules/http/XhrHttpModule.d.ts +4 -3
  255. package/dist/app-frontend/modules/http/XhrHttpModule.d.ts.map +1 -0
  256. package/{app-frontend → dist/app-frontend}/modules/http/XhrHttpModule.js +30 -32
  257. package/dist/app-frontend/modules/http/XhrHttpModule.js.map +1 -0
  258. package/{app-frontend → dist/app-frontend}/modules/locale/LocaleModule.d.ts +2 -1
  259. package/dist/app-frontend/modules/locale/LocaleModule.d.ts.map +1 -0
  260. package/dist/app-frontend/modules/locale/LocaleModule.js +42 -0
  261. package/dist/app-frontend/modules/locale/LocaleModule.js.map +1 -0
  262. package/{app-frontend → dist/app-frontend}/modules/locale/types.d.ts +1 -0
  263. package/dist/app-frontend/modules/locale/types.d.ts.map +1 -0
  264. package/dist/app-frontend/modules/locale/types.js +2 -0
  265. package/{app-frontend → dist/app-frontend}/modules/menu/MenuAndButton.d.ts +6 -5
  266. package/dist/app-frontend/modules/menu/MenuAndButton.d.ts.map +1 -0
  267. package/dist/app-frontend/modules/menu/MenuAndButton.js +38 -0
  268. package/dist/app-frontend/modules/menu/MenuAndButton.js.map +1 -0
  269. package/{app-frontend → dist/app-frontend}/modules/menu/MenuModule.d.ts +7 -6
  270. package/dist/app-frontend/modules/menu/MenuModule.d.ts.map +1 -0
  271. package/dist/app-frontend/modules/menu/MenuModule.js +60 -0
  272. package/dist/app-frontend/modules/menu/MenuModule.js.map +1 -0
  273. package/{app-frontend → dist/app-frontend}/modules/menu/PopupMenu.d.ts +4 -3
  274. package/dist/app-frontend/modules/menu/PopupMenu.d.ts.map +1 -0
  275. package/dist/app-frontend/modules/menu/PopupMenu.js +91 -0
  276. package/dist/app-frontend/modules/menu/PopupMenu.js.map +1 -0
  277. package/{app-frontend → dist/app-frontend}/modules/routing/RoutingModule.d.ts +2 -1
  278. package/dist/app-frontend/modules/routing/RoutingModule.d.ts.map +1 -0
  279. package/{app-frontend → dist/app-frontend}/modules/routing/RoutingModule.js +24 -24
  280. package/dist/app-frontend/modules/routing/RoutingModule.js.map +1 -0
  281. package/{app-frontend → dist/app-frontend}/modules/routing/route.d.ts +1 -0
  282. package/dist/app-frontend/modules/routing/route.d.ts.map +1 -0
  283. package/dist/app-frontend/modules/routing/route.js +68 -0
  284. package/dist/app-frontend/modules/routing/route.js.map +1 -0
  285. package/{app-frontend → dist/app-frontend}/modules/toaster/BaseToaster.d.ts +3 -2
  286. package/dist/app-frontend/modules/toaster/BaseToaster.d.ts.map +1 -0
  287. package/dist/app-frontend/modules/toaster/BaseToaster.js +52 -0
  288. package/dist/app-frontend/modules/toaster/BaseToaster.js.map +1 -0
  289. package/{app-frontend → dist/app-frontend}/modules/toaster/Toaster.d.ts +3 -2
  290. package/dist/app-frontend/modules/toaster/Toaster.d.ts.map +1 -0
  291. package/{app-frontend → dist/app-frontend}/modules/toaster/Toaster.js +6 -8
  292. package/dist/app-frontend/modules/toaster/Toaster.js.map +1 -0
  293. package/{app-frontend → dist/app-frontend}/modules/toaster/ToasterModule.d.ts +4 -3
  294. package/dist/app-frontend/modules/toaster/ToasterModule.d.ts.map +1 -0
  295. package/{app-frontend → dist/app-frontend}/modules/toaster/ToasterModule.js +50 -56
  296. package/dist/app-frontend/modules/toaster/ToasterModule.js.map +1 -0
  297. package/{app-frontend → dist/app-frontend}/modules/tooltip/Tooltip.d.ts +4 -3
  298. package/dist/app-frontend/modules/tooltip/Tooltip.d.ts.map +1 -0
  299. package/{app-frontend → dist/app-frontend}/modules/tooltip/Tooltip.js +21 -23
  300. package/dist/app-frontend/modules/tooltip/Tooltip.js.map +1 -0
  301. package/{app-frontend → dist/app-frontend}/modules/tooltip/TooltipModule.d.ts +2 -1
  302. package/dist/app-frontend/modules/tooltip/TooltipModule.d.ts.map +1 -0
  303. package/dist/app-frontend/modules/tooltip/TooltipModule.js +71 -0
  304. package/dist/app-frontend/modules/tooltip/TooltipModule.js.map +1 -0
  305. package/{app-frontend → dist/app-frontend}/tools/KeyboardListener.d.ts +1 -0
  306. package/dist/app-frontend/tools/KeyboardListener.d.ts.map +1 -0
  307. package/{app-frontend → dist/app-frontend}/tools/KeyboardListener.js +16 -22
  308. package/dist/app-frontend/tools/KeyboardListener.js.map +1 -0
  309. package/{app-frontend → dist/app-frontend}/tools/Stylable.d.ts +2 -1
  310. package/dist/app-frontend/tools/Stylable.d.ts.map +1 -0
  311. package/{app-frontend → dist/app-frontend}/tools/Stylable.js +5 -6
  312. package/dist/app-frontend/tools/Stylable.js.map +1 -0
  313. package/dist/app-frontend/types/renderer-map.d.ts +2 -0
  314. package/dist/app-frontend/types/renderer-map.d.ts.map +1 -0
  315. package/{app-frontend → dist/app-frontend}/types/renderer-map.js +1 -1
  316. package/{app-frontend → dist/app-frontend}/types/renderer-map.js.map +1 -1
  317. package/{app-frontend → dist/app-frontend}/utils/tools.d.ts +2 -1
  318. package/dist/app-frontend/utils/tools.d.ts.map +1 -0
  319. package/dist/app-frontend/utils/tools.js +28 -0
  320. package/dist/app-frontend/utils/tools.js.map +1 -0
  321. package/{app-frontend → dist/app-frontend}/widgets/FieldEditor.d.ts +3 -2
  322. package/dist/app-frontend/widgets/FieldEditor.d.ts.map +1 -0
  323. package/dist/app-frontend/widgets/FieldEditor.js +22 -0
  324. package/dist/app-frontend/widgets/FieldEditor.js.map +1 -0
  325. package/{app-frontend → dist/app-frontend}/widgets/FieldEditorClick.d.ts +4 -3
  326. package/dist/app-frontend/widgets/FieldEditorClick.d.ts.map +1 -0
  327. package/dist/app-frontend/widgets/FieldEditorClick.js +44 -0
  328. package/dist/app-frontend/widgets/FieldEditorClick.js.map +1 -0
  329. package/{app-frontend → dist/app-frontend}/widgets/FieldEditorWithButtons.d.ts +4 -3
  330. package/dist/app-frontend/widgets/FieldEditorWithButtons.d.ts.map +1 -0
  331. package/dist/app-frontend/widgets/FieldEditorWithButtons.js +51 -0
  332. package/dist/app-frontend/widgets/FieldEditorWithButtons.js.map +1 -0
  333. package/{app-frontend → dist/app-frontend}/widgets/click-to-drag/ClickToDrag.d.ts +2 -1
  334. package/dist/app-frontend/widgets/click-to-drag/ClickToDrag.d.ts.map +1 -0
  335. package/dist/app-frontend/widgets/click-to-drag/ClickToDrag.js +35 -0
  336. package/dist/app-frontend/widgets/click-to-drag/ClickToDrag.js.map +1 -0
  337. package/{app-frontend → dist/app-frontend}/widgets/click-to-drag/OverlayWithDocumentListener.d.ts +2 -1
  338. package/dist/app-frontend/widgets/click-to-drag/OverlayWithDocumentListener.d.ts.map +1 -0
  339. package/dist/app-frontend/widgets/click-to-drag/OverlayWithDocumentListener.js +30 -0
  340. package/dist/app-frontend/widgets/click-to-drag/OverlayWithDocumentListener.js.map +1 -0
  341. package/dist/backend-test.d.ts +2 -0
  342. package/dist/backend-test.d.ts.map +1 -0
  343. package/{app-frontend/components/tree/types.js → dist/backend-test.js} +2 -3
  344. package/dist/backend-test.js.map +1 -0
  345. package/dist/backend.d.ts +18 -0
  346. package/dist/backend.d.ts.map +1 -0
  347. package/dist/backend.js +38 -0
  348. package/dist/backend.js.map +1 -0
  349. package/dist/frontend.d.ts +53 -0
  350. package/dist/frontend.d.ts.map +1 -0
  351. package/dist/frontend.js +71 -0
  352. package/dist/frontend.js.map +1 -0
  353. package/dist/index.d.ts +7 -0
  354. package/dist/index.d.ts.map +1 -0
  355. package/{app-backend/api/v1/utils/version/_assert.js → dist/index.js} +7 -5
  356. package/dist/index.js.map +1 -0
  357. package/{shared → dist/shared}/BaseHttpModule.d.ts +4 -3
  358. package/dist/shared/BaseHttpModule.d.ts.map +1 -0
  359. package/dist/shared/BaseHttpModule.js +89 -0
  360. package/dist/shared/BaseHttpModule.js.map +1 -0
  361. package/{shared → dist/shared}/BaseHttpRequest.d.ts +3 -2
  362. package/dist/shared/BaseHttpRequest.d.ts.map +1 -0
  363. package/{shared → dist/shared}/BaseHttpRequest.js +82 -85
  364. package/dist/shared/BaseHttpRequest.js.map +1 -0
  365. package/{shared → dist/shared}/consts.d.ts +1 -0
  366. package/dist/shared/consts.d.ts.map +1 -0
  367. package/dist/shared/consts.js +25 -0
  368. package/dist/shared/consts.js.map +1 -0
  369. package/{shared → dist/shared}/force-upgrade.d.ts +2 -1
  370. package/dist/shared/force-upgrade.d.ts.map +1 -0
  371. package/dist/shared/force-upgrade.js +24 -0
  372. package/dist/shared/force-upgrade.js.map +1 -0
  373. package/{shared → dist/shared}/request-types.d.ts +3 -2
  374. package/dist/shared/request-types.d.ts.map +1 -0
  375. package/{shared → dist/shared}/request-types.js +4 -6
  376. package/dist/shared/request-types.js.map +1 -0
  377. package/{shared → dist/shared}/types.d.ts +1 -0
  378. package/dist/shared/types.d.ts.map +1 -0
  379. package/{shared → dist/shared}/types.js +2 -5
  380. package/dist/shared/types.js.map +1 -0
  381. package/{test-backend → dist/test-backend}/StormTester.d.ts +2 -1
  382. package/dist/test-backend/StormTester.d.ts.map +1 -0
  383. package/dist/test-backend/StormTester.js +78 -0
  384. package/dist/test-backend/StormTester.js.map +1 -0
  385. package/dist/test-frontend/ThunderTester.d.ts +2 -0
  386. package/dist/test-frontend/ThunderTester.d.ts.map +1 -0
  387. package/{test-frontend → dist/test-frontend}/ThunderTester.js +1 -1
  388. package/dist/tsconfig.tsbuildinfo +1 -0
  389. package/package.json +72 -14
  390. package/app-backend/api/v1/utils/version/_assert.d.ts +0 -1
  391. package/app-backend/api/v1/utils/version/_assert.js.map +0 -1
  392. package/app-backend/api/v1/utils/version/assert.d.ts +0 -1
  393. package/app-backend/api/v1/utils/version/assert.js +0 -48
  394. package/app-backend/api/v1/utils/version/assert.js.map +0 -1
  395. package/app-backend/core/BaseStorm.js +0 -19
  396. package/app-backend/core/BaseStorm.js.map +0 -1
  397. package/app-backend/core/Storm.js +0 -89
  398. package/app-backend/core/Storm.js.map +0 -1
  399. package/app-backend/exceptions.js +0 -26
  400. package/app-backend/exceptions.js.map +0 -1
  401. package/app-backend/modules/CleanupScheduler.js +0 -41
  402. package/app-backend/modules/CleanupScheduler.js.map +0 -1
  403. package/app-backend/modules/FirestoreBackupScheduler.js +0 -64
  404. package/app-backend/modules/FirestoreBackupScheduler.js.map +0 -1
  405. package/app-backend/modules/ForceUpgrade.js +0 -98
  406. package/app-backend/modules/ForceUpgrade.js.map +0 -1
  407. package/app-backend/modules/SlackModule.js +0 -74
  408. package/app-backend/modules/SlackModule.js.map +0 -1
  409. package/app-backend/modules/_imports.d.ts +0 -10
  410. package/app-backend/modules/_imports.js +0 -47
  411. package/app-backend/modules/_imports.js.map +0 -1
  412. package/app-backend/modules/http/AxiosHttpModule.js.map +0 -1
  413. package/app-backend/modules/http/types.js +0 -3
  414. package/app-backend/modules/proxy/RemoteProxy.js +0 -101
  415. package/app-backend/modules/proxy/RemoteProxy.js.map +0 -1
  416. package/app-backend/modules/proxy/RemoteProxyCaller.js +0 -110
  417. package/app-backend/modules/proxy/RemoteProxyCaller.js.map +0 -1
  418. package/app-backend/modules/server/HttpServer.js.map +0 -1
  419. package/app-backend/modules/server/server-api.js +0 -351
  420. package/app-backend/modules/server/server-api.js.map +0 -1
  421. package/app-backend/modules/server/server-errors.js.map +0 -1
  422. package/app-backend/utils/LogClient_File.js.map +0 -1
  423. package/app-backend/utils/file.js +0 -47
  424. package/app-backend/utils/file.js.map +0 -1
  425. package/app-backend/utils/promisify-request.d.ts +0 -2
  426. package/app-backend/utils/promisify-request.js +0 -39
  427. package/app-backend/utils/promisify-request.js.map +0 -1
  428. package/app-backend/utils/to-be-removed.js +0 -28
  429. package/app-backend/utils/to-be-removed.js.map +0 -1
  430. package/app-backend/utils/types.js.map +0 -1
  431. package/app-frontend/components/ActionButton.js.map +0 -1
  432. package/app-frontend/components/FilterInput.js +0 -63
  433. package/app-frontend/components/FilterInput.js.map +0 -1
  434. package/app-frontend/components/GenericSelect.js.map +0 -1
  435. package/app-frontend/components/GenericTabs.js +0 -11
  436. package/app-frontend/components/GenericTabs.js.map +0 -1
  437. package/app-frontend/components/Overlay.js.map +0 -1
  438. package/app-frontend/components/TS_Input.js.map +0 -1
  439. package/app-frontend/components/TS_Table.js.map +0 -1
  440. package/app-frontend/components/TS_TextArea.js.map +0 -1
  441. package/app-frontend/components/Tabs.js +0 -32
  442. package/app-frontend/components/Tabs.js.map +0 -1
  443. package/app-frontend/components/adapter/Adapter.js.map +0 -1
  444. package/app-frontend/components/adapter/BaseRenderer.js.map +0 -1
  445. package/app-frontend/components/checkbox/TS_Checkbox.js.map +0 -1
  446. package/app-frontend/components/checkbox/TS_CheckboxField.js +0 -26
  447. package/app-frontend/components/checkbox/TS_CheckboxField.js.map +0 -1
  448. package/app-frontend/components/form/Form.js.map +0 -1
  449. package/app-frontend/components/playground/Playground.js.map +0 -1
  450. package/app-frontend/components/tree/MenuComponent.js.map +0 -1
  451. package/app-frontend/components/tree/MultiTypeAdaptor.js.map +0 -1
  452. package/app-frontend/components/tree/SimpleTreeNodeRenderer.js.map +0 -1
  453. package/app-frontend/components/tree/Tree.js +0 -274
  454. package/app-frontend/components/tree/Tree.js.map +0 -1
  455. package/app-frontend/components/treeicons.js +0 -11
  456. package/app-frontend/components/treeicons.js.map +0 -1
  457. package/app-frontend/core/AbstractThunder.js.map +0 -1
  458. package/app-frontend/core/AppPage.js.map +0 -1
  459. package/app-frontend/core/AppWrapper.js +0 -27
  460. package/app-frontend/core/AppWrapper.js.map +0 -1
  461. package/app-frontend/core/BaseComponent.js.map +0 -1
  462. package/app-frontend/core/SimpleScriptInjector.js.map +0 -1
  463. package/app-frontend/core/Thunder.js +0 -92
  464. package/app-frontend/core/Thunder.js.map +0 -1
  465. package/app-frontend/core/thunder-dispatcher.js +0 -32
  466. package/app-frontend/core/thunder-dispatcher.js.map +0 -1
  467. package/app-frontend/modules/ConnectivityModule.js +0 -25
  468. package/app-frontend/modules/ConnectivityModule.js.map +0 -1
  469. package/app-frontend/modules/ForceUpgrade.js +0 -49
  470. package/app-frontend/modules/ForceUpgrade.js.map +0 -1
  471. package/app-frontend/modules/HistoryModule.js.map +0 -1
  472. package/app-frontend/modules/ResourcesModule.js +0 -19
  473. package/app-frontend/modules/ResourcesModule.js.map +0 -1
  474. package/app-frontend/modules/StorageModule.js.map +0 -1
  475. package/app-frontend/modules/ThunderstormModule.js.map +0 -1
  476. package/app-frontend/modules/component-loader/ReactEntryComponentInjector.js.map +0 -1
  477. package/app-frontend/modules/component-loader/entry-component-loading-module.js.map +0 -1
  478. package/app-frontend/modules/dialog/Dialog.js +0 -163
  479. package/app-frontend/modules/dialog/Dialog.js.map +0 -1
  480. package/app-frontend/modules/dialog/DialogModule.js.map +0 -1
  481. package/app-frontend/modules/http/HttpClient.d.ts +0 -0
  482. package/app-frontend/modules/http/XhrHttpModule.js.map +0 -1
  483. package/app-frontend/modules/locale/LocaleModule.js +0 -43
  484. package/app-frontend/modules/locale/LocaleModule.js.map +0 -1
  485. package/app-frontend/modules/locale/types.js +0 -3
  486. package/app-frontend/modules/menu/MenuAndButton.js +0 -40
  487. package/app-frontend/modules/menu/MenuAndButton.js.map +0 -1
  488. package/app-frontend/modules/menu/MenuModule.js +0 -57
  489. package/app-frontend/modules/menu/MenuModule.js.map +0 -1
  490. package/app-frontend/modules/menu/PopupMenu.js +0 -94
  491. package/app-frontend/modules/menu/PopupMenu.js.map +0 -1
  492. package/app-frontend/modules/routing/RoutingModule.js.map +0 -1
  493. package/app-frontend/modules/routing/route.js +0 -69
  494. package/app-frontend/modules/routing/route.js.map +0 -1
  495. package/app-frontend/modules/toaster/BaseToaster.js +0 -56
  496. package/app-frontend/modules/toaster/BaseToaster.js.map +0 -1
  497. package/app-frontend/modules/toaster/Toaster.js.map +0 -1
  498. package/app-frontend/modules/toaster/ToasterModule.js.map +0 -1
  499. package/app-frontend/modules/tooltip/Tooltip.js.map +0 -1
  500. package/app-frontend/modules/tooltip/TooltipModule.js +0 -74
  501. package/app-frontend/modules/tooltip/TooltipModule.js.map +0 -1
  502. package/app-frontend/tools/KeyboardListener.js.map +0 -1
  503. package/app-frontend/tools/Stylable.js.map +0 -1
  504. package/app-frontend/types/renderer-map.d.ts +0 -0
  505. package/app-frontend/utils/tools.js +0 -32
  506. package/app-frontend/utils/tools.js.map +0 -1
  507. package/app-frontend/widgets/FieldEditor.js +0 -25
  508. package/app-frontend/widgets/FieldEditor.js.map +0 -1
  509. package/app-frontend/widgets/FieldEditorClick.js +0 -48
  510. package/app-frontend/widgets/FieldEditorClick.js.map +0 -1
  511. package/app-frontend/widgets/FieldEditorWithButtons.js +0 -55
  512. package/app-frontend/widgets/FieldEditorWithButtons.js.map +0 -1
  513. package/app-frontend/widgets/click-to-drag/ClickToDrag.js +0 -39
  514. package/app-frontend/widgets/click-to-drag/ClickToDrag.js.map +0 -1
  515. package/app-frontend/widgets/click-to-drag/OverlayWithDocumentListener.js +0 -34
  516. package/app-frontend/widgets/click-to-drag/OverlayWithDocumentListener.js.map +0 -1
  517. package/backend-test.d.ts +0 -1
  518. package/backend-test.js +0 -38
  519. package/backend-test.js.map +0 -1
  520. package/backend.d.ts +0 -17
  521. package/backend.js +0 -54
  522. package/backend.js.map +0 -1
  523. package/frontend.d.ts +0 -53
  524. package/frontend.js +0 -90
  525. package/frontend.js.map +0 -1
  526. package/index.d.ts +0 -6
  527. package/index.js +0 -43
  528. package/index.js.map +0 -1
  529. package/shared/BaseHttpModule.js +0 -66
  530. package/shared/BaseHttpModule.js.map +0 -1
  531. package/shared/BaseHttpRequest.js.map +0 -1
  532. package/shared/consts.js +0 -28
  533. package/shared/consts.js.map +0 -1
  534. package/shared/force-upgrade.js +0 -26
  535. package/shared/force-upgrade.js.map +0 -1
  536. package/shared/request-types.js.map +0 -1
  537. package/shared/types.js.map +0 -1
  538. package/test-backend/StormTester.js +0 -90
  539. package/test-backend/StormTester.js.map +0 -1
  540. package/test-frontend/ThunderTester.d.ts +0 -0
  541. /package/{app-frontend → dist/app-frontend}/modules/locale/types.js.map +0 -0
  542. /package/{test-frontend → dist/test-frontend}/ThunderTester.js.map +0 -0
@@ -1,14 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HeaderKey = exports.RouteResolver = exports.HttpServer_Class = void 0;
4
- const compression = require("compression");
5
- const cors = require("cors");
6
- const fs = require("fs");
7
- const ts_common_1 = require("@intuitionrobotics/ts-common");
8
- const server_api_1 = require("./server-api");
9
- const exceptions_1 = require("../../exceptions");
10
- const express = require("express");
11
- const _imports_1 = require("../_imports");
1
+ import compression from 'compression';
2
+ import cors from 'cors';
3
+ import { addAllItemToArray, addItemToArray, LogLevel, Module } from "@intuitionrobotics/ts-common";
4
+ import { ServerApi } from "./server-api.js";
5
+ import { ApiException } from "../../exceptions.js";
6
+ import express from "express";
7
+ import { HeaderKey_FunctionExecutionId, HeaderKey_JWT } from '../_imports.js';
12
8
  const DefaultHeaders = [
13
9
  'content-type',
14
10
  'content-encoding',
@@ -16,10 +12,13 @@ const DefaultHeaders = [
16
12
  'authorization'
17
13
  ];
18
14
  const ExposedHeaders = [
19
- _imports_1.HeaderKey_FunctionExecutionId,
20
- _imports_1.HeaderKey_JWT
15
+ HeaderKey_FunctionExecutionId,
16
+ HeaderKey_JWT
21
17
  ];
22
- class HttpServer_Class extends ts_common_1.Module {
18
+ export class HttpServer_Class extends Module {
19
+ static expressMiddleware = [];
20
+ express;
21
+ routes;
23
22
  constructor(_express, configElement) {
24
23
  super("HttpServer");
25
24
  this.express = _express;
@@ -36,7 +35,7 @@ class HttpServer_Class extends ts_common_1.Module {
36
35
  return this.config.baseUrl;
37
36
  }
38
37
  init() {
39
- this.setMinLevel(server_api_1.ServerApi.isDebug ? ts_common_1.LogLevel.Verbose : ts_common_1.LogLevel.Info);
38
+ this.setMinLevel(ServerApi.isDebug ? LogLevel.Verbose : LogLevel.Info);
40
39
  const baseUrl = this.config.baseUrl;
41
40
  if (baseUrl) {
42
41
  if (baseUrl.endsWith("/"))
@@ -57,7 +56,7 @@ class HttpServer_Class extends ts_common_1.Module {
57
56
  myCors.exposedHeaders = ExposedHeaders;
58
57
  myCors.headers = DefaultHeaders.reduce((toRet, item) => {
59
58
  if (!toRet.includes(item))
60
- (0, ts_common_1.addItemToArray)(toRet, item);
59
+ addItemToArray(toRet, item);
61
60
  return toRet;
62
61
  }, myCors.headers || []);
63
62
  const corsOptions = {
@@ -82,7 +81,7 @@ class HttpServer_Class extends ts_common_1.Module {
82
81
  this.express.options('*', corsWithOptions);
83
82
  }
84
83
  printRoutes(prefix) {
85
- if (!server_api_1.ServerApi.isDebug)
84
+ if (!ServerApi.isDebug)
86
85
  return;
87
86
  const label = `Printing ${this.routes.length} Routes`;
88
87
  console.time(label);
@@ -111,66 +110,47 @@ class HttpServer_Class extends ts_common_1.Module {
111
110
  const routes = resolveRoutes(this.express._router.stack);
112
111
  this.routes = routes.reduce((toRet, route) => {
113
112
  const toAdd = Array.isArray(route) ? route : [route];
114
- (0, ts_common_1.addAllItemToArray)(toRet, toAdd);
113
+ addAllItemToArray(toRet, toAdd);
115
114
  return toRet;
116
115
  }, []);
117
116
  console.timeEnd('Resolving Apis');
118
117
  }
119
118
  }
120
- exports.HttpServer_Class = HttpServer_Class;
121
- HttpServer_Class.expressMiddleware = [];
122
- class RouteResolver {
123
- constructor(require, rootDir, apiFolder) {
124
- this.middlewares = [];
125
- this.require = require;
126
- this.rootDir = rootDir;
127
- this.apiFolder = apiFolder || "";
119
+ export class RouteResolver {
120
+ urlSegment;
121
+ routes = [];
122
+ middlewares = [];
123
+ constructor(urlSegment = "") {
124
+ this.urlSegment = urlSegment;
125
+ }
126
+ addRoutes(...entries) {
127
+ for (const entry of entries) {
128
+ if (Array.isArray(entry))
129
+ this.routes.push(...entry);
130
+ else
131
+ this.routes.push(entry);
132
+ }
133
+ return this;
128
134
  }
129
135
  setMiddlewares(...middlewares) {
130
136
  this.middlewares = middlewares;
131
137
  return this;
132
138
  }
133
139
  resolveApi(urlPrefix, baseUrl, _exp) {
134
- this.resolveApiImpl(urlPrefix, this.rootDir + "/" + this.apiFolder, baseUrl, _exp);
135
- }
136
- resolveApiImpl(urlPrefix, workingDir, baseUrl, _exp) {
137
- fs.readdirSync(workingDir).forEach((file) => {
138
- if (fs.statSync(`${workingDir}/${file}`).isDirectory()) {
139
- this.resolveApiImpl(`${urlPrefix}/${file}`, `${workingDir}/${file}`, baseUrl, _exp);
140
- return;
141
- }
142
- if (file.endsWith(".d.ts"))
143
- return;
144
- if (!file.endsWith(".js"))
145
- return;
146
- if (file.startsWith("_"))
147
- return;
148
- const relativePathToFile = `.${workingDir.replace(this.rootDir, "")}/${file}`;
149
- if (file.startsWith("&")) {
150
- let routeResolver;
151
- try {
152
- routeResolver = this.require(relativePathToFile);
153
- }
154
- catch (e) {
155
- console.log(`could not reference RouteResolver for: ${workingDir}/${relativePathToFile}`, e);
156
- throw e;
157
- }
158
- routeResolver.resolveApi(urlPrefix, baseUrl, _exp);
159
- return;
160
- }
161
- let content;
162
- try {
163
- content = this.require(relativePathToFile);
140
+ const fullPrefix = this.urlSegment ? `${urlPrefix}/${this.urlSegment}` : urlPrefix;
141
+ for (const route of this.routes) {
142
+ if (route instanceof RouteResolver) {
143
+ if (route.middlewares.length === 0)
144
+ route.middlewares = this.middlewares;
145
+ route.resolveApi(fullPrefix, baseUrl, _exp);
164
146
  }
165
- catch (e) {
166
- console.log(`could not reference ServerApi for: ${workingDir}/${relativePathToFile}`, e);
167
- throw e;
147
+ else {
148
+ route.addMiddlewares(...this.middlewares);
149
+ route.route(_exp, fullPrefix, baseUrl);
168
150
  }
169
- if (!Array.isArray(content))
170
- content = [content];
171
- this.routeApis(content, urlPrefix, baseUrl, _exp);
172
- });
151
+ }
173
152
  }
153
+ // Used by HttpServer.resolveApi() to mount the apis passed via Storm.setApis().
174
154
  routeApis(apis, urlPrefix, baseUrl, _exp) {
175
155
  apis.forEach(api => {
176
156
  api.addMiddlewares(...this.middlewares);
@@ -178,8 +158,9 @@ class RouteResolver {
178
158
  });
179
159
  }
180
160
  }
181
- exports.RouteResolver = RouteResolver;
182
- class HeaderKey {
161
+ export class HeaderKey {
162
+ key;
163
+ responseCode;
183
164
  constructor(key, responseCode = 400) {
184
165
  this.key = key;
185
166
  this.responseCode = responseCode;
@@ -187,9 +168,8 @@ class HeaderKey {
187
168
  get(request) {
188
169
  const value = request.header(this.key);
189
170
  if (!value)
190
- throw new exceptions_1.ApiException(this.responseCode, `Missing expected header: ${this.key}`);
171
+ throw new ApiException(this.responseCode, `Missing expected header: ${this.key}`);
191
172
  return value;
192
173
  }
193
174
  }
194
- exports.HeaderKey = HeaderKey;
195
175
  //# sourceMappingURL=HttpServer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HttpServer.js","sourceRoot":"","sources":["../../../../src/main/app-backend/modules/server/HttpServer.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
- import { Logger, ObjectTS, ValidatorTypeResolver } from "@intuitionrobotics/ts-common";
1
+ import { Logger, type ObjectTS, type ValidatorTypeResolver } from "@intuitionrobotics/ts-common";
2
2
  import { Stream } from "stream";
3
- import { ServerApi_Middleware } from "./HttpServer";
4
- import { IncomingHttpHeaders } from "http";
5
- import { ApiTypeBinder, ApiWithBody, ApiWithQuery, HttpMethod, QueryParams } from "../../../shared/types";
6
- import { ApiException } from "../../exceptions";
7
- import { ExpressRequest, ExpressResponse, ExpressRouter } from "../../utils/types";
3
+ import { type ServerApi_Middleware } from "./HttpServer.js";
4
+ import { type IncomingHttpHeaders } from "http";
5
+ import { type ApiTypeBinder, type ApiWithBody, type ApiWithQuery, HttpMethod, type QueryParams } from "../../../shared/types.js";
6
+ import { ApiException } from "../../exceptions.js";
7
+ import { type ExpressRequest, type ExpressResponse, type ExpressRouter } from "../../utils/types.js";
8
8
  export type HttpRequestData = {
9
9
  originalUrl: string;
10
10
  headers: IncomingHttpHeaders;
@@ -63,7 +63,7 @@ export declare class ServerApi_Redirect extends ServerApi<any> {
63
63
  private readonly responseCode;
64
64
  private readonly redirectUrl;
65
65
  constructor(apiName: string, responseCode: number, redirectUrl: string);
66
- protected process(request: ExpressRequest, response: ApiResponse, queryParams: QueryParams, body: any): Promise<void>;
66
+ protected process(request: ExpressRequest, response: ApiResponse, queryParams: QueryParams, _body: any): Promise<void>;
67
67
  }
68
68
  export declare class ApiResponse {
69
69
  private api;
@@ -90,3 +90,4 @@ export declare class ApiResponse {
90
90
  cause?: Error;
91
91
  }, headers?: any): void;
92
92
  }
93
+ //# sourceMappingURL=server-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-api.d.ts","sourceRoot":"","sources":["../../../../src/main/app-backend/modules/server/server-api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,346 @@
1
+ import { _keys, BadImplementationException, dispatch_onServerError, isErrorOfType, Logger, LogLevel, merge, MUSTNeverHappenException, ServerErrorSeverity, validate, ValidationException } from "@intuitionrobotics/ts-common";
2
+ import { Stream } from "stream";
3
+ import { parse } from "url";
4
+ import {} from "./HttpServer.js";
5
+ import {} from "http";
6
+ // noinspection TypeScriptPreferShortImport
7
+ import { HttpMethod } from "../../../shared/types.js";
8
+ import { assertProperty } from "../../utils/to-be-removed.js";
9
+ import { ApiException } from "../../exceptions.js";
10
+ import {} from "../../utils/types.js";
11
+ import { RemoteProxy } from "../proxy/RemoteProxy.js";
12
+ import { Storm } from "../../core/Storm.js";
13
+ export class ServerApi extends Logger {
14
+ static isDebug;
15
+ printResponse = true;
16
+ headersToLog = [];
17
+ method;
18
+ url;
19
+ relativePath;
20
+ middlewares;
21
+ bodyValidator;
22
+ queryValidator;
23
+ sideEffects = [];
24
+ baseUrl;
25
+ scopes = [];
26
+ constructor(method, relativePath, tag) {
27
+ super(tag || relativePath);
28
+ this.setMinLevel(ServerApi.isDebug ? LogLevel.Verbose : LogLevel.Info);
29
+ this.method = method;
30
+ this.relativePath = `${relativePath}`;
31
+ }
32
+ shouldPrintResponse() {
33
+ return this.printResponse;
34
+ }
35
+ ;
36
+ addSideEffect(sideEffect) {
37
+ this.sideEffects.push(sideEffect);
38
+ return this;
39
+ }
40
+ setMiddlewares(...middlewares) {
41
+ this.middlewares = middlewares;
42
+ return this;
43
+ }
44
+ addMiddlewares(...middlewares) {
45
+ this.middlewares = [...(this.middlewares || []), ...middlewares];
46
+ return this;
47
+ }
48
+ setScopes(...scopes) {
49
+ this.scopes = [...scopes];
50
+ return this;
51
+ }
52
+ getScopes() {
53
+ return this.scopes;
54
+ }
55
+ addHeaderToLog(...headersToLog) {
56
+ this.headersToLog.push(...headersToLog);
57
+ }
58
+ setBodyValidator(bodyValidator) {
59
+ this.bodyValidator = bodyValidator;
60
+ }
61
+ setQueryValidator(queryValidator) {
62
+ this.queryValidator = queryValidator;
63
+ }
64
+ asProxy() {
65
+ return new ServerApi_Proxy(this);
66
+ }
67
+ getUrl() {
68
+ return this.url;
69
+ }
70
+ dontPrintResponse() {
71
+ this.printResponse = false;
72
+ }
73
+ setMaxResponsePrintSize(printResponseMaxSizeBytes) {
74
+ this.printResponse = printResponseMaxSizeBytes > -1;
75
+ }
76
+ route(router, prefixUrl, baseUrl) {
77
+ this.baseUrl = baseUrl;
78
+ const fullPath = `${prefixUrl ? prefixUrl : ""}/${this.relativePath}`;
79
+ this.setTag(fullPath);
80
+ router[this.method](fullPath, this.callWrapper);
81
+ this.url = `${baseUrl}${fullPath}`;
82
+ }
83
+ assertProperty = assertProperty;
84
+ callWrapper = async (req, res) => {
85
+ await this.call(req, res);
86
+ await this.releaseSideEffects();
87
+ };
88
+ releaseSideEffects = async () => {
89
+ try {
90
+ await Promise.all(this.sideEffects.map(sideEffect => sideEffect()));
91
+ }
92
+ catch (e) {
93
+ this.logError("Something went wrong while performing the side effects", e);
94
+ }
95
+ finally {
96
+ this.sideEffects = [];
97
+ }
98
+ };
99
+ call = async (req, res) => {
100
+ const response = new ApiResponse(this, res);
101
+ this.logInfo(`Intercepted Url: ${req.path}`);
102
+ if (this.headersToLog.length > 0) {
103
+ const headers = {};
104
+ for (const headerName of this.headersToLog) {
105
+ headers[headerName] = req.header(headerName);
106
+ }
107
+ this.logDebug(`-- Headers: `, headers);
108
+ }
109
+ const reqQuery = parse(req.url, true).query;
110
+ if (reqQuery && typeof reqQuery === "object" && Object.keys(reqQuery).length)
111
+ this.logVerbose(`-- Url Params: `, reqQuery);
112
+ else
113
+ this.logVerbose(`-- No Params`);
114
+ const body = req.body;
115
+ if (body && ((typeof body === "object")))
116
+ this.logVerbose(`-- Body (Object): `, body);
117
+ else if (body && body.length)
118
+ this.logVerbose(`-- Body (String): `, body);
119
+ else
120
+ this.logVerbose(`-- No Body`);
121
+ const requestData = {
122
+ method: this.method,
123
+ originalUrl: req.path,
124
+ headers: req.headers,
125
+ url: req.url,
126
+ query: reqQuery,
127
+ body: body
128
+ };
129
+ try {
130
+ if (this.bodyValidator)
131
+ validate(body, this.bodyValidator);
132
+ if (this.queryValidator)
133
+ validate(reqQuery, this.queryValidator);
134
+ const context = await this.applyMiddlewares(req, requestData, response, this.scopes);
135
+ const toReturn = await this.process(req, response, reqQuery, body, context);
136
+ if (response.isConsumed())
137
+ return;
138
+ if (!toReturn)
139
+ return await response.end(200);
140
+ // TODO need to handle stream and buffers
141
+ // if (Buffer.isBuffer(toReturn))
142
+ // return response.stream(200, toReturn as Buffer);
143
+ const responseType = typeof toReturn;
144
+ if (responseType === "object")
145
+ return await response.json(200, toReturn);
146
+ if (responseType === "string" && toReturn.toLowerCase().startsWith("<html"))
147
+ return await response.html(200, toReturn);
148
+ return await response.text(200, toReturn);
149
+ }
150
+ catch (err) {
151
+ let dispatchError = true;
152
+ let e = err;
153
+ let severity = ServerErrorSeverity.Warning;
154
+ if (typeof e === "string")
155
+ e = new BadImplementationException(`String was thrown: ${e}`);
156
+ if (!(e instanceof Error) && typeof e === "object")
157
+ e = new BadImplementationException(`Object instance was thrown: ${JSON.stringify(e)}`);
158
+ try {
159
+ this.logErrorBold(e);
160
+ }
161
+ catch (e2) {
162
+ this.logErrorBold("Error while handling error on request...", e2);
163
+ this.logErrorBold(`Original error thrown: ${JSON.stringify(e)}`);
164
+ this.logErrorBold(`-- Someone was stupid... you MUST only throw an Error and not objects or strings!! --`);
165
+ }
166
+ if (isErrorOfType(e, ValidationException))
167
+ e = new ApiException(400, "Validator exception", e);
168
+ if (!isErrorOfType(e, ApiException))
169
+ e = new ApiException(500, "Unexpected server error", e);
170
+ const apiException = isErrorOfType(e, ApiException);
171
+ if (!apiException)
172
+ throw new MUSTNeverHappenException("MUST NEVER REACH HERE!!!");
173
+ dispatchError = apiException.getDispatchError();
174
+ if (apiException.responseCode >= 500)
175
+ severity = ServerErrorSeverity.Error;
176
+ else if (apiException.responseCode >= 400)
177
+ severity = ServerErrorSeverity.Warning;
178
+ switch (apiException.responseCode) {
179
+ case 401:
180
+ severity = ServerErrorSeverity.Debug;
181
+ break;
182
+ case 404:
183
+ severity = ServerErrorSeverity.Info;
184
+ break;
185
+ case 403:
186
+ severity = ServerErrorSeverity.Warning;
187
+ break;
188
+ case 500:
189
+ severity = ServerErrorSeverity.Critical;
190
+ break;
191
+ }
192
+ if (dispatchError) {
193
+ try {
194
+ const storm = Storm.getInstance();
195
+ if (storm) {
196
+ const message = await storm.errorMessageComposer(requestData, apiException);
197
+ await dispatch_onServerError.dispatchModuleAsync(severity, message);
198
+ }
199
+ }
200
+ catch (e) {
201
+ this.logError("Error while handing server error", e);
202
+ }
203
+ }
204
+ if (apiException.responseCode === 500)
205
+ return response.serverError(apiException);
206
+ return response.exception(apiException);
207
+ }
208
+ };
209
+ async applyMiddlewares(req, requestData, response, scopes) {
210
+ if (!this.middlewares)
211
+ return {};
212
+ const contextList = await Promise.all(this.middlewares.map(async (m) => m(req, requestData, response, scopes)));
213
+ return contextList.reduce((acc, c) => merge(acc, c || {}), {});
214
+ }
215
+ }
216
+ export class ServerApi_Get extends ServerApi {
217
+ constructor(apiName) {
218
+ super(HttpMethod.GET, apiName);
219
+ }
220
+ }
221
+ export class ServerApi_Post extends ServerApi {
222
+ constructor(apiName) {
223
+ super(HttpMethod.POST, apiName);
224
+ }
225
+ }
226
+ export class ServerApi_Proxy extends ServerApi {
227
+ api;
228
+ constructor(api) {
229
+ super(api.method, `${api.relativePath}/proxy`);
230
+ this.api = api;
231
+ this.setMiddlewares(RemoteProxy.Middleware);
232
+ }
233
+ async process(request, response, queryParams, body, context) {
234
+ // @ts-expect-error TS struggles with this dynamic typing
235
+ return this.api.process(request, response, queryParams, body, context);
236
+ }
237
+ }
238
+ export class ServerApi_Redirect extends ServerApi {
239
+ responseCode;
240
+ redirectUrl;
241
+ constructor(apiName, responseCode, redirectUrl) {
242
+ super(HttpMethod.ALL, apiName);
243
+ this.responseCode = responseCode;
244
+ this.redirectUrl = redirectUrl;
245
+ }
246
+ async process(request, response, queryParams, _body) {
247
+ const query = queryParams ? _keys(queryParams).reduce((c, k) => c + '&' + k + '=' + queryParams[k], '?') : '';
248
+ response.redirect(this.responseCode, `${this.baseUrl}${this.redirectUrl}${query}`);
249
+ }
250
+ }
251
+ export class ApiResponse {
252
+ api;
253
+ res;
254
+ consumed = false;
255
+ constructor(api, res) {
256
+ this.api = api;
257
+ this.res = res;
258
+ }
259
+ isConsumed() {
260
+ return this.consumed;
261
+ }
262
+ consume() {
263
+ if (this.consumed) {
264
+ this.api.logError("This API was already satisfied!!", new Error());
265
+ return;
266
+ }
267
+ this.consumed = true;
268
+ }
269
+ stream(responseCode, stream, headers) {
270
+ this.consume();
271
+ this.printHeaders(headers);
272
+ this.res.set(headers);
273
+ this.res.writeHead(responseCode);
274
+ stream.pipe(this.res, { end: false });
275
+ stream.on('end', () => {
276
+ this.res.end();
277
+ });
278
+ }
279
+ printHeaders(headers) {
280
+ if (!headers)
281
+ return this.api.logVerbose(` -- No response headers`);
282
+ this.api.logVerbose(` -- Response with headers: `, headers);
283
+ }
284
+ printResponse(response) {
285
+ if (!response)
286
+ return this.api.logVerbose(` -- No response body`);
287
+ if (!this.api.shouldPrintResponse())
288
+ return this.api.logVerbose(` -- Response: -- Not Printing --`);
289
+ this.api.logVerbose(` -- Response:`, response);
290
+ }
291
+ code(responseCode, headers) {
292
+ this.printHeaders(headers);
293
+ this.end(responseCode, "", headers);
294
+ }
295
+ text(responseCode, response, _headers) {
296
+ const headers = (_headers || {});
297
+ headers["content-type"] = "text/plain";
298
+ this.end(responseCode, response, headers);
299
+ }
300
+ html(responseCode, response, _headers) {
301
+ const headers = (_headers || {});
302
+ headers["content-type"] = "text/html";
303
+ this.end(responseCode, response, headers);
304
+ }
305
+ json(responseCode, response, _headers) {
306
+ this._json(responseCode, response, _headers);
307
+ }
308
+ _json(responseCode, response, _headers) {
309
+ const headers = (_headers || {});
310
+ headers["content-type"] = "application/json";
311
+ this.end(responseCode, response, headers);
312
+ }
313
+ end(responseCode, response, headers) {
314
+ this.consume();
315
+ this.printHeaders(headers);
316
+ this.printResponse(response);
317
+ this.res.set(headers);
318
+ this.res.writeHead(responseCode);
319
+ this.res.end(typeof response !== "string" ? JSON.stringify(response, null, 2) : response);
320
+ }
321
+ setHeaders(headers) {
322
+ this.res.header(headers);
323
+ }
324
+ setHeader(headerKey, value) {
325
+ this.res.header(headerKey, value);
326
+ }
327
+ getHeader(headerKey) {
328
+ return this.res.get(headerKey);
329
+ }
330
+ redirect(responseCode, url) {
331
+ this.consume();
332
+ this.res.redirect(responseCode, url);
333
+ }
334
+ exception(exception, headers) {
335
+ const responseBody = exception.responseBody;
336
+ if (!ServerApi.isDebug)
337
+ delete responseBody.debugMessage;
338
+ this._json(exception.responseCode, responseBody, headers);
339
+ }
340
+ serverError(error, headers) {
341
+ const stack = error.cause ? error.cause.stack : error.stack;
342
+ const message = (error.cause ? error.cause.message : error.message) || "";
343
+ this.text(500, ServerApi.isDebug && stack ? stack : message, headers);
344
+ }
345
+ }
346
+ //# sourceMappingURL=server-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-api.js","sourceRoot":"","sources":["../../../../src/main/app-backend/modules/server/server-api.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
- import { HttpRequestData } from "./server-api";
2
- import { HttpErrorHandler } from "./HttpServer";
3
- import { StringMap } from "@intuitionrobotics/ts-common";
1
+ import { type HttpRequestData } from "./server-api.js";
2
+ import { type HttpErrorHandler } from "./HttpServer.js";
3
+ import { type StringMap } from "@intuitionrobotics/ts-common";
4
4
  export type AppPropsResolver = (requestData: HttpRequestData) => Promise<StringMap>;
5
5
  export declare function DefaultApiErrorMessageComposer(headersToAttach?: string[], propsResolver?: AppPropsResolver): HttpErrorHandler;
6
+ //# sourceMappingURL=server-errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-errors.d.ts","sourceRoot":"","sources":["../../../../src/main/app-backend/modules/server/server-errors.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAC,KAAK,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAErD,OAAO,EAAC,KAAK,gBAAgB,EAAC,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAGN,KAAK,SAAS,EACd,MAAM,8BAA8B,CAAC;AAGtC,MAAM,MAAM,gBAAgB,GAAG,CAAC,WAAW,EAAE,eAAe,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;AAKpF,wBAAgB,8BAA8B,CAAC,eAAe,GAAE,MAAM,EAAO,EAAE,aAAa,GAAE,gBAAiC,GAAG,gBAAgB,CAwDjJ"}