quidproquo-web-react 0.0.253 → 0.0.255

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 (285) hide show
  1. package/lib/commonjs/api/hooks/index.d.ts +2 -2
  2. package/lib/commonjs/api/hooks/index.js +18 -18
  3. package/lib/commonjs/api/hooks/useAuthenticatedNetworkRequest.d.ts +2 -2
  4. package/lib/commonjs/api/hooks/useAuthenticatedNetworkRequest.js +14 -14
  5. package/lib/commonjs/api/hooks/useNetworkRequest.d.ts +2 -2
  6. package/lib/commonjs/api/hooks/useNetworkRequest.js +10 -10
  7. package/lib/commonjs/api/index.d.ts +1 -1
  8. package/lib/commonjs/api/index.js +17 -17
  9. package/lib/commonjs/auth/RefreshAuthTokensProvider.d.ts +7 -8
  10. package/lib/commonjs/auth/RefreshAuthTokensProvider.js +12 -12
  11. package/lib/commonjs/auth/authContext.d.ts +2 -3
  12. package/lib/commonjs/auth/authContext.js +8 -8
  13. package/lib/commonjs/auth/hooks/index.d.ts +3 -3
  14. package/lib/commonjs/auth/hooks/index.js +19 -19
  15. package/lib/commonjs/auth/hooks/useAuthAccessToken.d.ts +1 -1
  16. package/lib/commonjs/auth/hooks/useAuthAccessToken.js +12 -12
  17. package/lib/commonjs/auth/hooks/useIsLoggedIn.d.ts +1 -1
  18. package/lib/commonjs/auth/hooks/useIsLoggedIn.js +9 -9
  19. package/lib/commonjs/auth/hooks/useRefreshTokens.d.ts +2 -2
  20. package/lib/commonjs/auth/hooks/useRefreshTokens.js +35 -35
  21. package/lib/commonjs/auth/index.d.ts +4 -4
  22. package/lib/commonjs/auth/index.js +20 -20
  23. package/lib/commonjs/auth/types/AuthState.d.ts +8 -8
  24. package/lib/commonjs/auth/types/AuthState.js +2 -2
  25. package/lib/commonjs/auth/types/index.d.ts +1 -1
  26. package/lib/commonjs/auth/types/index.js +17 -17
  27. package/lib/commonjs/baseUrl/BaseUrlContext.d.ts +2 -3
  28. package/lib/commonjs/baseUrl/BaseUrlContext.js +9 -9
  29. package/lib/commonjs/baseUrl/BaseUrlProvider.d.ts +6 -7
  30. package/lib/commonjs/baseUrl/BaseUrlProvider.js +9 -9
  31. package/lib/commonjs/baseUrl/hooks/index.d.ts +1 -1
  32. package/lib/commonjs/baseUrl/hooks/index.js +17 -17
  33. package/lib/commonjs/baseUrl/hooks/useBaseUrlResolvers.d.ts +2 -2
  34. package/lib/commonjs/baseUrl/hooks/useBaseUrlResolvers.js +10 -10
  35. package/lib/commonjs/baseUrl/index.d.ts +3 -3
  36. package/lib/commonjs/baseUrl/index.js +19 -19
  37. package/lib/commonjs/baseUrl/types/BaseUrlResolver.d.ts +6 -6
  38. package/lib/commonjs/baseUrl/types/BaseUrlResolver.js +2 -2
  39. package/lib/commonjs/baseUrl/types/index.d.ts +1 -1
  40. package/lib/commonjs/baseUrl/types/index.js +17 -17
  41. package/lib/commonjs/hooks/asmj/QpqContextProvider.d.ts +10 -10
  42. package/lib/commonjs/hooks/asmj/QpqContextProvider.js +20 -20
  43. package/lib/commonjs/hooks/asmj/QpqMappedApi.d.ts +6 -6
  44. package/lib/commonjs/hooks/asmj/QpqMappedApi.js +2 -2
  45. package/lib/commonjs/hooks/asmj/QpqRuntimeEffectCatcher.d.ts +16 -16
  46. package/lib/commonjs/hooks/asmj/QpqRuntimeEffectCatcher.js +35 -35
  47. package/lib/commonjs/hooks/asmj/actionProcessor/getStateDispatchActionProcessor.d.ts +3 -3
  48. package/lib/commonjs/hooks/asmj/actionProcessor/getStateDispatchActionProcessor.js +23 -23
  49. package/lib/commonjs/hooks/asmj/actionProcessor/getStateReadActionProcessor.d.ts +2 -2
  50. package/lib/commonjs/hooks/asmj/actionProcessor/getStateReadActionProcessor.js +22 -22
  51. package/lib/commonjs/hooks/asmj/actionProcessor/index.d.ts +3 -3
  52. package/lib/commonjs/hooks/asmj/actionProcessor/index.js +18 -18
  53. package/lib/commonjs/hooks/asmj/createQpqRuntimeDefinition.d.ts +22 -16
  54. package/lib/commonjs/hooks/asmj/createQpqRuntimeDefinition.js +52 -39
  55. package/lib/commonjs/hooks/asmj/index.d.ts +6 -6
  56. package/lib/commonjs/hooks/asmj/index.js +22 -22
  57. package/lib/commonjs/hooks/asmj/useQpqRuntime.d.ts +4 -4
  58. package/lib/commonjs/hooks/asmj/useQpqRuntime.js +35 -36
  59. package/lib/commonjs/hooks/index.d.ts +8 -8
  60. package/lib/commonjs/hooks/index.js +24 -24
  61. package/lib/commonjs/hooks/useAsyncEffect.d.ts +2 -2
  62. package/lib/commonjs/hooks/useAsyncEffect.js +36 -36
  63. package/lib/commonjs/hooks/useFastCallback.d.ts +2 -2
  64. package/lib/commonjs/hooks/useFastCallback.js +19 -20
  65. package/lib/commonjs/hooks/useMetadata/index.d.ts +1 -1
  66. package/lib/commonjs/hooks/useMetadata/index.js +17 -17
  67. package/lib/commonjs/hooks/useMetadata/useMetadata.d.ts +5 -5
  68. package/lib/commonjs/hooks/useMetadata/useMetadata.js +14 -15
  69. package/lib/commonjs/hooks/useOnKeyDownEffect.d.ts +1 -1
  70. package/lib/commonjs/hooks/useOnKeyDownEffect.js +22 -23
  71. package/lib/commonjs/hooks/useQpq.d.ts +2 -2
  72. package/lib/commonjs/hooks/useQpq.js +45 -44
  73. package/lib/commonjs/hooks/useRunEvery.d.ts +1 -1
  74. package/lib/commonjs/hooks/useRunEvery.js +21 -22
  75. package/lib/commonjs/hooks/useThrottledMemo.d.ts +1 -1
  76. package/lib/commonjs/hooks/useThrottledMemo.js +31 -32
  77. package/lib/commonjs/index.d.ts +10 -8
  78. package/lib/commonjs/index.js +26 -24
  79. package/lib/commonjs/state/index.d.ts +1 -1
  80. package/lib/commonjs/state/index.js +17 -17
  81. package/lib/commonjs/state/useStateUpdater.d.ts +3 -4
  82. package/lib/commonjs/state/useStateUpdater.js +12 -12
  83. package/lib/commonjs/useFieldBinding/index.d.ts +1 -0
  84. package/lib/commonjs/useFieldBinding/index.js +17 -0
  85. package/lib/commonjs/useFieldBinding/useFieldBinding.d.ts +2 -0
  86. package/lib/commonjs/useFieldBinding/useFieldBinding.js +21 -0
  87. package/lib/commonjs/useSharedQueryParams/index.d.ts +2 -0
  88. package/lib/commonjs/useSharedQueryParams/index.js +18 -0
  89. package/lib/commonjs/useSharedQueryParams/logic/index.d.ts +4 -0
  90. package/lib/commonjs/useSharedQueryParams/logic/index.js +20 -0
  91. package/lib/commonjs/useSharedQueryParams/logic/runtime/askSetParam.d.ts +2 -0
  92. package/lib/commonjs/useSharedQueryParams/logic/runtime/askSetParam.js +9 -0
  93. package/lib/commonjs/useSharedQueryParams/logic/runtime/askSyncParams.d.ts +2 -0
  94. package/lib/commonjs/useSharedQueryParams/logic/runtime/askSyncParams.js +11 -0
  95. package/lib/commonjs/useSharedQueryParams/logic/runtime/index.d.ts +2 -0
  96. package/lib/commonjs/useSharedQueryParams/logic/runtime/index.js +18 -0
  97. package/lib/commonjs/useSharedQueryParams/logic/runtime/sharedQueryParamsLogic.d.ts +4 -0
  98. package/lib/commonjs/useSharedQueryParams/logic/runtime/sharedQueryParamsLogic.js +7 -0
  99. package/lib/commonjs/useSharedQueryParams/logic/sharedQueryParamsActionCreator.d.ts +2 -0
  100. package/lib/commonjs/useSharedQueryParams/logic/sharedQueryParamsActionCreator.js +11 -0
  101. package/lib/commonjs/useSharedQueryParams/logic/sharedQueryParamsReducer.d.ts +3 -0
  102. package/lib/commonjs/useSharedQueryParams/logic/sharedQueryParamsReducer.js +13 -0
  103. package/lib/commonjs/useSharedQueryParams/logic/sharedQueryParamsTypes.d.ts +10 -0
  104. package/lib/commonjs/useSharedQueryParams/logic/sharedQueryParamsTypes.js +7 -0
  105. package/lib/commonjs/useSharedQueryParams/sharedQueryParamsRuntime.d.ts +3 -0
  106. package/lib/commonjs/useSharedQueryParams/sharedQueryParamsRuntime.js +7 -0
  107. package/lib/commonjs/webSocketQueue/hooks/index.d.ts +2 -2
  108. package/lib/commonjs/webSocketQueue/hooks/index.js +18 -18
  109. package/lib/commonjs/webSocketQueue/hooks/useSubscribeToWebSocketQueueEvent.d.ts +3 -3
  110. package/lib/commonjs/webSocketQueue/hooks/useSubscribeToWebSocketQueueEvent.js +8 -8
  111. package/lib/commonjs/webSocketQueue/hooks/useWebsocketQueueSendEvent.d.ts +2 -2
  112. package/lib/commonjs/webSocketQueue/hooks/useWebsocketQueueSendEvent.js +9 -9
  113. package/lib/commonjs/webSocketQueue/index.d.ts +1 -1
  114. package/lib/commonjs/webSocketQueue/index.js +17 -17
  115. package/lib/commonjs/websocket/WebSocketAuthSync/WebSocketAuthSync.d.ts +6 -7
  116. package/lib/commonjs/websocket/WebSocketAuthSync/WebSocketAuthSync.js +14 -14
  117. package/lib/commonjs/websocket/WebSocketAuthSync/hooks/index.d.ts +2 -2
  118. package/lib/commonjs/websocket/WebSocketAuthSync/hooks/index.js +18 -18
  119. package/lib/commonjs/websocket/WebSocketAuthSync/hooks/useWebsocketAuthSync.d.ts +2 -2
  120. package/lib/commonjs/websocket/WebSocketAuthSync/hooks/useWebsocketAuthSync.js +37 -37
  121. package/lib/commonjs/websocket/WebSocketAuthSync/hooks/useWebsocketPingPong.d.ts +1 -1
  122. package/lib/commonjs/websocket/WebSocketAuthSync/hooks/useWebsocketPingPong.js +16 -16
  123. package/lib/commonjs/websocket/WebSocketAuthSync/index.d.ts +1 -1
  124. package/lib/commonjs/websocket/WebSocketAuthSync/index.js +17 -17
  125. package/lib/commonjs/websocket/WebsocketContext.d.ts +2 -3
  126. package/lib/commonjs/websocket/WebsocketContext.js +5 -5
  127. package/lib/commonjs/websocket/WebsocketProvider.d.ts +5 -6
  128. package/lib/commonjs/websocket/WebsocketProvider.js +11 -11
  129. package/lib/commonjs/websocket/hooks/index.d.ts +5 -5
  130. package/lib/commonjs/websocket/hooks/index.js +21 -21
  131. package/lib/commonjs/websocket/hooks/useSubscribeToWebSocketEvent.d.ts +3 -3
  132. package/lib/commonjs/websocket/hooks/useSubscribeToWebSocketEvent.js +17 -17
  133. package/lib/commonjs/websocket/hooks/useSubscribeToWebsocket.d.ts +2 -2
  134. package/lib/commonjs/websocket/hooks/useSubscribeToWebsocket.js +17 -17
  135. package/lib/commonjs/websocket/hooks/useWebsocketApi.d.ts +1 -1
  136. package/lib/commonjs/websocket/hooks/useWebsocketApi.js +10 -10
  137. package/lib/commonjs/websocket/hooks/useWebsocketManagement.d.ts +2 -2
  138. package/lib/commonjs/websocket/hooks/useWebsocketManagement.js +17 -17
  139. package/lib/commonjs/websocket/hooks/useWebsocketSendEvent.d.ts +2 -2
  140. package/lib/commonjs/websocket/hooks/useWebsocketSendEvent.js +15 -15
  141. package/lib/commonjs/websocket/index.d.ts +3 -3
  142. package/lib/commonjs/websocket/index.js +19 -19
  143. package/lib/esm/api/hooks/index.d.ts +2 -2
  144. package/lib/esm/api/hooks/index.js +2 -2
  145. package/lib/esm/api/hooks/useAuthenticatedNetworkRequest.d.ts +2 -2
  146. package/lib/esm/api/hooks/useAuthenticatedNetworkRequest.js +17 -17
  147. package/lib/esm/api/hooks/useNetworkRequest.d.ts +2 -2
  148. package/lib/esm/api/hooks/useNetworkRequest.js +6 -6
  149. package/lib/esm/api/index.d.ts +1 -1
  150. package/lib/esm/api/index.js +1 -1
  151. package/lib/esm/auth/RefreshAuthTokensProvider.d.ts +7 -8
  152. package/lib/esm/auth/RefreshAuthTokensProvider.js +9 -9
  153. package/lib/esm/auth/authContext.d.ts +2 -3
  154. package/lib/esm/auth/authContext.js +5 -5
  155. package/lib/esm/auth/hooks/index.d.ts +3 -3
  156. package/lib/esm/auth/hooks/index.js +3 -3
  157. package/lib/esm/auth/hooks/useAuthAccessToken.d.ts +1 -1
  158. package/lib/esm/auth/hooks/useAuthAccessToken.js +7 -7
  159. package/lib/esm/auth/hooks/useIsLoggedIn.d.ts +1 -1
  160. package/lib/esm/auth/hooks/useIsLoggedIn.js +5 -5
  161. package/lib/esm/auth/hooks/useRefreshTokens.d.ts +2 -2
  162. package/lib/esm/auth/hooks/useRefreshTokens.js +31 -31
  163. package/lib/esm/auth/index.d.ts +4 -4
  164. package/lib/esm/auth/index.js +4 -4
  165. package/lib/esm/auth/types/AuthState.d.ts +8 -8
  166. package/lib/esm/auth/types/AuthState.js +1 -1
  167. package/lib/esm/auth/types/index.d.ts +1 -1
  168. package/lib/esm/auth/types/index.js +1 -1
  169. package/lib/esm/baseUrl/BaseUrlContext.d.ts +2 -3
  170. package/lib/esm/baseUrl/BaseUrlContext.js +6 -6
  171. package/lib/esm/baseUrl/BaseUrlProvider.d.ts +6 -7
  172. package/lib/esm/baseUrl/BaseUrlProvider.js +5 -5
  173. package/lib/esm/baseUrl/hooks/index.d.ts +1 -1
  174. package/lib/esm/baseUrl/hooks/index.js +1 -1
  175. package/lib/esm/baseUrl/hooks/useBaseUrlResolvers.d.ts +2 -2
  176. package/lib/esm/baseUrl/hooks/useBaseUrlResolvers.js +6 -6
  177. package/lib/esm/baseUrl/index.d.ts +3 -3
  178. package/lib/esm/baseUrl/index.js +3 -3
  179. package/lib/esm/baseUrl/types/BaseUrlResolver.d.ts +6 -6
  180. package/lib/esm/baseUrl/types/BaseUrlResolver.js +1 -1
  181. package/lib/esm/baseUrl/types/index.d.ts +1 -1
  182. package/lib/esm/baseUrl/types/index.js +1 -1
  183. package/lib/esm/hooks/asmj/QpqContextProvider.d.ts +10 -10
  184. package/lib/esm/hooks/asmj/QpqContextProvider.js +15 -15
  185. package/lib/esm/hooks/asmj/QpqMappedApi.d.ts +6 -6
  186. package/lib/esm/hooks/asmj/QpqMappedApi.js +1 -1
  187. package/lib/esm/hooks/asmj/QpqRuntimeEffectCatcher.d.ts +16 -16
  188. package/lib/esm/hooks/asmj/QpqRuntimeEffectCatcher.js +30 -30
  189. package/lib/esm/hooks/asmj/actionProcessor/getStateDispatchActionProcessor.d.ts +3 -3
  190. package/lib/esm/hooks/asmj/actionProcessor/getStateDispatchActionProcessor.js +8 -8
  191. package/lib/esm/hooks/asmj/actionProcessor/getStateReadActionProcessor.d.ts +2 -2
  192. package/lib/esm/hooks/asmj/actionProcessor/getStateReadActionProcessor.js +7 -7
  193. package/lib/esm/hooks/asmj/actionProcessor/index.d.ts +3 -3
  194. package/lib/esm/hooks/asmj/actionProcessor/index.js +6 -6
  195. package/lib/esm/hooks/asmj/createQpqRuntimeDefinition.d.ts +22 -16
  196. package/lib/esm/hooks/asmj/createQpqRuntimeDefinition.js +46 -34
  197. package/lib/esm/hooks/asmj/index.d.ts +6 -6
  198. package/lib/esm/hooks/asmj/index.js +6 -6
  199. package/lib/esm/hooks/asmj/useQpqRuntime.d.ts +4 -4
  200. package/lib/esm/hooks/asmj/useQpqRuntime.js +32 -32
  201. package/lib/esm/hooks/index.d.ts +8 -8
  202. package/lib/esm/hooks/index.js +8 -8
  203. package/lib/esm/hooks/useAsyncEffect.d.ts +2 -2
  204. package/lib/esm/hooks/useAsyncEffect.js +23 -23
  205. package/lib/esm/hooks/useFastCallback.d.ts +2 -2
  206. package/lib/esm/hooks/useFastCallback.js +16 -16
  207. package/lib/esm/hooks/useMetadata/index.d.ts +1 -1
  208. package/lib/esm/hooks/useMetadata/index.js +1 -1
  209. package/lib/esm/hooks/useMetadata/useMetadata.d.ts +5 -5
  210. package/lib/esm/hooks/useMetadata/useMetadata.js +11 -11
  211. package/lib/esm/hooks/useOnKeyDownEffect.d.ts +1 -1
  212. package/lib/esm/hooks/useOnKeyDownEffect.js +19 -19
  213. package/lib/esm/hooks/useQpq.d.ts +2 -2
  214. package/lib/esm/hooks/useQpq.js +34 -32
  215. package/lib/esm/hooks/useRunEvery.d.ts +1 -1
  216. package/lib/esm/hooks/useRunEvery.js +18 -18
  217. package/lib/esm/hooks/useThrottledMemo.d.ts +1 -1
  218. package/lib/esm/hooks/useThrottledMemo.js +28 -28
  219. package/lib/esm/index.d.ts +10 -8
  220. package/lib/esm/index.js +10 -8
  221. package/lib/esm/state/index.d.ts +1 -1
  222. package/lib/esm/state/index.js +1 -1
  223. package/lib/esm/state/useStateUpdater.d.ts +3 -4
  224. package/lib/esm/state/useStateUpdater.js +11 -11
  225. package/lib/esm/useFieldBinding/index.d.ts +1 -0
  226. package/lib/esm/useFieldBinding/index.js +1 -0
  227. package/lib/esm/useFieldBinding/useFieldBinding.d.ts +2 -0
  228. package/lib/esm/useFieldBinding/useFieldBinding.js +17 -0
  229. package/lib/esm/useSharedQueryParams/index.d.ts +2 -0
  230. package/lib/esm/useSharedQueryParams/index.js +2 -0
  231. package/lib/esm/useSharedQueryParams/logic/index.d.ts +4 -0
  232. package/lib/esm/useSharedQueryParams/logic/index.js +4 -0
  233. package/lib/esm/useSharedQueryParams/logic/runtime/askSetParam.d.ts +2 -0
  234. package/lib/esm/useSharedQueryParams/logic/runtime/askSetParam.js +6 -0
  235. package/lib/esm/useSharedQueryParams/logic/runtime/askSyncParams.d.ts +2 -0
  236. package/lib/esm/useSharedQueryParams/logic/runtime/askSyncParams.js +8 -0
  237. package/lib/esm/useSharedQueryParams/logic/runtime/index.d.ts +2 -0
  238. package/lib/esm/useSharedQueryParams/logic/runtime/index.js +2 -0
  239. package/lib/esm/useSharedQueryParams/logic/runtime/sharedQueryParamsLogic.d.ts +4 -0
  240. package/lib/esm/useSharedQueryParams/logic/runtime/sharedQueryParamsLogic.js +4 -0
  241. package/lib/esm/useSharedQueryParams/logic/sharedQueryParamsActionCreator.d.ts +2 -0
  242. package/lib/esm/useSharedQueryParams/logic/sharedQueryParamsActionCreator.js +8 -0
  243. package/lib/esm/useSharedQueryParams/logic/sharedQueryParamsReducer.d.ts +3 -0
  244. package/lib/esm/useSharedQueryParams/logic/sharedQueryParamsReducer.js +10 -0
  245. package/lib/esm/useSharedQueryParams/logic/sharedQueryParamsTypes.d.ts +10 -0
  246. package/lib/esm/useSharedQueryParams/logic/sharedQueryParamsTypes.js +4 -0
  247. package/lib/esm/useSharedQueryParams/sharedQueryParamsRuntime.d.ts +3 -0
  248. package/lib/esm/useSharedQueryParams/sharedQueryParamsRuntime.js +4 -0
  249. package/lib/esm/webSocketQueue/hooks/index.d.ts +2 -2
  250. package/lib/esm/webSocketQueue/hooks/index.js +2 -2
  251. package/lib/esm/webSocketQueue/hooks/useSubscribeToWebSocketQueueEvent.d.ts +3 -3
  252. package/lib/esm/webSocketQueue/hooks/useSubscribeToWebSocketQueueEvent.js +4 -4
  253. package/lib/esm/webSocketQueue/hooks/useWebsocketQueueSendEvent.d.ts +2 -2
  254. package/lib/esm/webSocketQueue/hooks/useWebsocketQueueSendEvent.js +5 -5
  255. package/lib/esm/webSocketQueue/index.d.ts +1 -1
  256. package/lib/esm/webSocketQueue/index.js +1 -1
  257. package/lib/esm/websocket/WebSocketAuthSync/WebSocketAuthSync.d.ts +6 -7
  258. package/lib/esm/websocket/WebSocketAuthSync/WebSocketAuthSync.js +11 -11
  259. package/lib/esm/websocket/WebSocketAuthSync/hooks/index.d.ts +2 -2
  260. package/lib/esm/websocket/WebSocketAuthSync/hooks/index.js +2 -2
  261. package/lib/esm/websocket/WebSocketAuthSync/hooks/useWebsocketAuthSync.d.ts +2 -2
  262. package/lib/esm/websocket/WebSocketAuthSync/hooks/useWebsocketAuthSync.js +33 -33
  263. package/lib/esm/websocket/WebSocketAuthSync/hooks/useWebsocketPingPong.d.ts +1 -1
  264. package/lib/esm/websocket/WebSocketAuthSync/hooks/useWebsocketPingPong.js +12 -12
  265. package/lib/esm/websocket/WebSocketAuthSync/index.d.ts +1 -1
  266. package/lib/esm/websocket/WebSocketAuthSync/index.js +1 -1
  267. package/lib/esm/websocket/WebsocketContext.d.ts +2 -3
  268. package/lib/esm/websocket/WebsocketContext.js +2 -2
  269. package/lib/esm/websocket/WebsocketProvider.d.ts +5 -6
  270. package/lib/esm/websocket/WebsocketProvider.js +7 -7
  271. package/lib/esm/websocket/hooks/index.d.ts +5 -5
  272. package/lib/esm/websocket/hooks/index.js +5 -5
  273. package/lib/esm/websocket/hooks/useSubscribeToWebSocketEvent.d.ts +3 -3
  274. package/lib/esm/websocket/hooks/useSubscribeToWebSocketEvent.js +13 -13
  275. package/lib/esm/websocket/hooks/useSubscribeToWebsocket.d.ts +2 -2
  276. package/lib/esm/websocket/hooks/useSubscribeToWebsocket.js +13 -13
  277. package/lib/esm/websocket/hooks/useWebsocketApi.d.ts +1 -1
  278. package/lib/esm/websocket/hooks/useWebsocketApi.js +6 -6
  279. package/lib/esm/websocket/hooks/useWebsocketManagement.d.ts +2 -2
  280. package/lib/esm/websocket/hooks/useWebsocketManagement.js +13 -13
  281. package/lib/esm/websocket/hooks/useWebsocketSendEvent.d.ts +2 -2
  282. package/lib/esm/websocket/hooks/useWebsocketSendEvent.js +11 -11
  283. package/lib/esm/websocket/index.d.ts +3 -3
  284. package/lib/esm/websocket/index.js +3 -3
  285. package/package.json +8 -8
@@ -1,7 +1,7 @@
1
- import { actionResult, StateActionType } from 'quidproquo-core';
2
- const getProcessStateRead = (getCurrentState) => async () => {
3
- return actionResult(getCurrentState());
4
- };
5
- export const getStateReadActionListResolver = (getCurrentState) => async (_qpqConfig, _dynamicModuleLoader) => ({
6
- [StateActionType.Read]: getProcessStateRead(getCurrentState),
7
- });
1
+ import { actionResult, StateActionType } from 'quidproquo-core';
2
+ const getProcessStateRead = (getCurrentState) => async () => {
3
+ return actionResult(getCurrentState());
4
+ };
5
+ export const getStateReadActionListResolver = (getCurrentState) => async (_qpqConfig, _dynamicModuleLoader) => ({
6
+ [StateActionType.Read]: getProcessStateRead(getCurrentState),
7
+ });
@@ -1,3 +1,3 @@
1
- import { ActionProcessorListResolver } from 'quidproquo-core';
2
- import { Dispatch } from 'react';
3
- export declare const getStateActionProcessor: <State>(dispatch: Dispatch<any>, getCurrentState: () => State) => ActionProcessorListResolver;
1
+ import { ActionProcessorListResolver } from 'quidproquo-core';
2
+ import { Dispatch } from 'react';
3
+ export declare const getStateActionProcessor: <State>(dispatch: Dispatch<any>, getCurrentState: () => State) => ActionProcessorListResolver;
@@ -1,6 +1,6 @@
1
- import { getStateDispatchActionListResolver } from './getStateDispatchActionProcessor';
2
- import { getStateReadActionListResolver } from './getStateReadActionProcessor';
3
- export const getStateActionProcessor = (dispatch, getCurrentState) => async (qpqConfig, dynamicModuleLoader) => ({
4
- ...(await getStateDispatchActionListResolver(dispatch)(qpqConfig, dynamicModuleLoader)),
5
- ...(await getStateReadActionListResolver(getCurrentState)(qpqConfig, dynamicModuleLoader)),
6
- });
1
+ import { getStateDispatchActionListResolver } from './getStateDispatchActionProcessor';
2
+ import { getStateReadActionListResolver } from './getStateReadActionProcessor';
3
+ export const getStateActionProcessor = (dispatch, getCurrentState) => async (qpqConfig, dynamicModuleLoader) => ({
4
+ ...(await getStateDispatchActionListResolver(dispatch)(qpqConfig, dynamicModuleLoader)),
5
+ ...(await getStateReadActionListResolver(getCurrentState)(qpqConfig, dynamicModuleLoader)),
6
+ });
@@ -1,16 +1,22 @@
1
- import { atom } from 'jotai';
2
- import { QpqApi } from './QpqMappedApi';
3
- import { QpqBubbleReducer } from './QpqRuntimeEffectCatcher';
4
- type CustomJotaiReducerAtom<TState> = ReturnType<typeof atom<TState>>;
5
- export type QpqAsmjState<TState, TAction, TApi extends QpqApi> = {
6
- atom: CustomJotaiReducerAtom<TState>;
7
- reducer: QpqBubbleReducer<TState, TAction>;
8
- initialState: TState;
9
- api: TApi;
10
- state: TState;
11
- };
12
- type AsmjStateGetter<TState, TAction, TApi extends QpqApi> = (name?: string) => QpqAsmjState<TState, TAction, TApi>;
13
- export type QpqRuntimeDefinition<TState, TAction, TApi extends QpqApi> = AsmjStateGetter<TState, TAction, TApi>;
14
- export declare function createQpqRuntimeDefinition<TState, TAction, TApi extends QpqApi>(api: TApi, initialState: TState, reducer?: QpqBubbleReducer<TState, TAction>): QpqRuntimeDefinition<TState, TAction, TApi>;
15
- export declare function useQpqRuntimeState<TState, TAction, TApi extends QpqApi>(atom: QpqRuntimeDefinition<TState, TAction, TApi>, name?: string): [TState, (newState: TState) => void, () => TState];
16
- export {};
1
+ import { atom } from 'jotai';
2
+ import { selectAtom } from 'jotai/utils';
3
+ import { QpqApi } from './QpqMappedApi';
4
+ import { QpqBubbleReducer } from './QpqRuntimeEffectCatcher';
5
+ type CustomJotaiReducerAtom<TState> = ReturnType<typeof atom<TState>>;
6
+ type CustomJotaiComputedAtom<TState, TSlice> = ReturnType<typeof selectAtom<TState, TSlice>>;
7
+ export type QpqAsmjState<TState, TAction, TApi extends QpqApi> = {
8
+ atom: CustomJotaiReducerAtom<TState>;
9
+ reducer: QpqBubbleReducer<TState, TAction>;
10
+ initialState: TState;
11
+ api: TApi;
12
+ state: TState;
13
+ };
14
+ type AsmjStateGetter<TState, TAction, TApi extends QpqApi> = (name?: string) => QpqAsmjState<TState, TAction, TApi>;
15
+ type AsmjStateComputer<TState, TSlice> = (name?: string) => CustomJotaiComputedAtom<TState, TSlice>;
16
+ export type QpqRuntimeDefinition<TState, TAction, TApi extends QpqApi> = AsmjStateGetter<TState, TAction, TApi>;
17
+ export type QpqRuntimeComputed<TState, TSlice> = AsmjStateComputer<TState, TSlice>;
18
+ export declare function createQpqRuntimeDefinition<TState, TAction, TApi extends QpqApi>(api: TApi, initialState: TState, reducer?: QpqBubbleReducer<TState, TAction>): QpqRuntimeDefinition<TState, TAction, TApi>;
19
+ export declare function createQpqRuntimeComputed<TState, TAction, TApi extends QpqApi, TSlice>(atom: QpqRuntimeDefinition<TState, TAction, TApi>, compute: (state: TState) => TSlice): QpqRuntimeComputed<TState, TSlice>;
20
+ export declare function useQpqRuntimeState<TState, TAction, TApi extends QpqApi>(atom: QpqRuntimeDefinition<TState, TAction, TApi>, name?: string): [TState, (newState: TState) => void, () => TState];
21
+ export declare function useQpqRuntimeComputed<TState, TSlice>(computedAtom: QpqRuntimeComputed<TState, TSlice>, name?: string): TSlice;
22
+ export {};
@@ -1,34 +1,46 @@
1
- import { useCallback } from 'react';
2
- import { atom, useAtom } from 'jotai';
3
- export function createQpqRuntimeDefinition(api, initialState, reducer = (s) => [s, false]) {
4
- const namedAtoms = new Map();
5
- const getCustomNamedAtom = (name) => {
6
- const actualName = name ? name : '$$qpq-default$$';
7
- if (!namedAtoms.has(actualName)) {
8
- console.log('Creating Atom: ', actualName);
9
- const winAtom = {
10
- atom: atom(initialState),
11
- reducer,
12
- initialState,
13
- api: api,
14
- state: initialState,
15
- };
16
- namedAtoms.set(actualName, winAtom);
17
- }
18
- return namedAtoms.get(actualName);
19
- };
20
- return getCustomNamedAtom;
21
- }
22
- export function useQpqRuntimeState(atom, name) {
23
- const [state, setState] = useAtom(atom(name).atom);
24
- const setStateWrapper = useCallback((newState) => {
25
- const info = atom(name);
26
- info.state = newState;
27
- setState(newState);
28
- }, [setState]);
29
- const getState = useCallback(() => {
30
- const state = atom(name).state;
31
- return state;
32
- }, [atom]);
33
- return [state, setStateWrapper, getState];
34
- }
1
+ import { useCallback, useMemo } from 'react';
2
+ import { atom, useAtom } from 'jotai';
3
+ import { selectAtom } from 'jotai/utils';
4
+ export function createQpqRuntimeDefinition(api, initialState, reducer = (s) => [s, false]) {
5
+ const namedAtoms = new Map();
6
+ const getCustomNamedAtom = (name) => {
7
+ const actualName = name ? name : '$$qpq-default$$';
8
+ if (!namedAtoms.has(actualName)) {
9
+ const winAtom = {
10
+ atom: atom(initialState),
11
+ reducer,
12
+ initialState,
13
+ api: api,
14
+ state: initialState,
15
+ };
16
+ namedAtoms.set(actualName, winAtom);
17
+ }
18
+ return namedAtoms.get(actualName);
19
+ };
20
+ return getCustomNamedAtom;
21
+ }
22
+ export function createQpqRuntimeComputed(atom, compute) {
23
+ return (name) => {
24
+ const info = atom(name);
25
+ return selectAtom(info.atom, compute);
26
+ };
27
+ }
28
+ export function useQpqRuntimeState(atom, name) {
29
+ const actualAtom = useMemo(() => atom(name).atom, [atom, name]);
30
+ const [state, setState] = useAtom(actualAtom);
31
+ const setStateWrapper = useCallback((newState) => {
32
+ const info = atom(name);
33
+ info.state = newState;
34
+ setState(newState);
35
+ }, [setState]);
36
+ const getState = useCallback(() => {
37
+ const state = atom(name).state;
38
+ return state;
39
+ }, [atom, name]);
40
+ return [state, setStateWrapper, getState];
41
+ }
42
+ export function useQpqRuntimeComputed(computedAtom, name) {
43
+ const computedAtomValue = useMemo(() => computedAtom(name), [computedAtom, name]);
44
+ const [state] = useAtom(computedAtomValue);
45
+ return state;
46
+ }
@@ -1,6 +1,6 @@
1
- export * from './actionProcessor';
2
- export * from './createQpqRuntimeDefinition';
3
- export * from './QpqContextProvider';
4
- export * from './QpqMappedApi';
5
- export * from './QpqRuntimeEffectCatcher';
6
- export * from './useQpqRuntime';
1
+ export * from './actionProcessor';
2
+ export * from './createQpqRuntimeDefinition';
3
+ export * from './QpqContextProvider';
4
+ export * from './QpqMappedApi';
5
+ export * from './QpqRuntimeEffectCatcher';
6
+ export * from './useQpqRuntime';
@@ -1,6 +1,6 @@
1
- export * from './actionProcessor';
2
- export * from './createQpqRuntimeDefinition';
3
- export * from './QpqContextProvider';
4
- export * from './QpqMappedApi';
5
- export * from './QpqRuntimeEffectCatcher';
6
- export * from './useQpqRuntime';
1
+ export * from './actionProcessor';
2
+ export * from './createQpqRuntimeDefinition';
3
+ export * from './QpqContextProvider';
4
+ export * from './QpqMappedApi';
5
+ export * from './QpqRuntimeEffectCatcher';
6
+ export * from './useQpqRuntime';
@@ -1,4 +1,4 @@
1
- import { Story } from 'quidproquo-core';
2
- import { QpqApi, QpqMappedApi } from './QpqMappedApi';
3
- import { QpqRuntimeDefinition } from '.';
4
- export declare function useQpqRuntime<TState, TAction, TApi extends QpqApi>(atom: QpqRuntimeDefinition<TState, TAction, TApi>, mainStory?: Story<any, any>, name?: string): [QpqMappedApi<TApi>, TState, (action: any) => void];
1
+ import { Story } from 'quidproquo-core';
2
+ import { QpqApi, QpqMappedApi } from './QpqMappedApi';
3
+ import { QpqRuntimeDefinition } from '.';
4
+ export declare function useQpqRuntime<TState, TAction, TApi extends QpqApi>(atom: QpqRuntimeDefinition<TState, TAction, TApi>, mainStory?: Story<any, any>, name?: string): [QpqMappedApi<TApi>, TState, (action: any) => void];
@@ -1,32 +1,32 @@
1
- import { useEffect, useMemo, useState } from 'react';
2
- import { useQpq } from '../useQpq';
3
- import { getStateActionProcessor } from './actionProcessor';
4
- import { useQpqRuntimeBubblingReducer } from './QpqRuntimeEffectCatcher';
5
- export function useQpqRuntime(atom, mainStory, name) {
6
- const atomInfo = atom(name);
7
- const [state, dispatch, getCurrentState] = useQpqRuntimeBubblingReducer(atom, name);
8
- // Api generators are memoized to prevent unnecessary re-renders.
9
- const [memoedApiGenerators] = useState(() => atomInfo.api);
10
- const resolver = useQpq(getStateActionProcessor(dispatch, getCurrentState));
11
- // Wrap and remap each API generator using the resolver.
12
- const api = useMemo(() => {
13
- const wrapped = {};
14
- for (const key in memoedApiGenerators) {
15
- if (Object.prototype.hasOwnProperty.call(memoedApiGenerators, key)) {
16
- // Remove the 'ask' prefix and lower-case the first character.
17
- const withoutAsk = key.slice(3); // e.g., "FetchTodos"
18
- const newKey = withoutAsk.charAt(0).toLowerCase() + withoutAsk.slice(1); // "fetchTodos"
19
- // We know newKey matches our mapped type so we can assign.
20
- // (A type assertion is used here to quiet the compiler.)
21
- wrapped[newKey] = resolver(memoedApiGenerators[key]);
22
- }
23
- }
24
- return wrapped;
25
- }, [resolver, memoedApiGenerators]);
26
- useEffect(() => {
27
- if (mainStory) {
28
- resolver(mainStory)();
29
- }
30
- }, []);
31
- return [api, state, dispatch];
32
- }
1
+ import { useEffect, useMemo, useState } from 'react';
2
+ import { useQpq } from '../useQpq';
3
+ import { getStateActionProcessor } from './actionProcessor';
4
+ import { useQpqRuntimeBubblingReducer } from './QpqRuntimeEffectCatcher';
5
+ export function useQpqRuntime(atom, mainStory, name) {
6
+ const atomInfo = useMemo(() => atom(name), [atom, name]);
7
+ const [state, dispatch, getCurrentState] = useQpqRuntimeBubblingReducer(atom, name);
8
+ // Api generators are memoized to prevent unnecessary re-renders.
9
+ const [memoedApiGenerators] = useState(() => atomInfo.api);
10
+ const resolver = useQpq(getStateActionProcessor(dispatch, getCurrentState));
11
+ // Wrap and remap each API generator using the resolver.
12
+ const api = useMemo(() => {
13
+ const wrapped = {};
14
+ for (const key in memoedApiGenerators) {
15
+ if (Object.prototype.hasOwnProperty.call(memoedApiGenerators, key)) {
16
+ // Remove the 'ask' prefix and lower-case the first character.
17
+ const withoutAsk = key.slice(3); // e.g., "FetchTodos"
18
+ const newKey = withoutAsk.charAt(0).toLowerCase() + withoutAsk.slice(1); // "fetchTodos"
19
+ // We know newKey matches our mapped type so we can assign.
20
+ // (A type assertion is used here to quiet the compiler.)
21
+ wrapped[newKey] = resolver(memoedApiGenerators[key]);
22
+ }
23
+ }
24
+ return wrapped;
25
+ }, [resolver, memoedApiGenerators]);
26
+ useEffect(() => {
27
+ if (mainStory) {
28
+ resolver(mainStory)();
29
+ }
30
+ }, []);
31
+ return [api, state, dispatch];
32
+ }
@@ -1,8 +1,8 @@
1
- export * from './asmj';
2
- export * from './useAsyncEffect';
3
- export * from './useFastCallback';
4
- export * from './useMetadata';
5
- export * from './useOnKeyDownEffect';
6
- export * from './useQpq';
7
- export * from './useRunEvery';
8
- export * from './useThrottledMemo';
1
+ export * from './asmj';
2
+ export * from './useAsyncEffect';
3
+ export * from './useFastCallback';
4
+ export * from './useMetadata';
5
+ export * from './useOnKeyDownEffect';
6
+ export * from './useQpq';
7
+ export * from './useRunEvery';
8
+ export * from './useThrottledMemo';
@@ -1,8 +1,8 @@
1
- export * from './asmj';
2
- export * from './useAsyncEffect';
3
- export * from './useFastCallback';
4
- export * from './useMetadata';
5
- export * from './useOnKeyDownEffect';
6
- export * from './useQpq';
7
- export * from './useRunEvery';
8
- export * from './useThrottledMemo';
1
+ export * from './asmj';
2
+ export * from './useAsyncEffect';
3
+ export * from './useFastCallback';
4
+ export * from './useMetadata';
5
+ export * from './useOnKeyDownEffect';
6
+ export * from './useQpq';
7
+ export * from './useRunEvery';
8
+ export * from './useThrottledMemo';
@@ -1,2 +1,2 @@
1
- import { DependencyList } from 'react';
2
- export declare const useAsyncEffect: (effect: (isMounted: () => boolean) => Promise<void | (() => void)>, deps?: DependencyList) => void;
1
+ import { DependencyList } from 'react';
2
+ export declare const useAsyncEffect: (effect: (isMounted: () => boolean) => Promise<void | (() => void)>, deps?: DependencyList) => void;
@@ -1,23 +1,23 @@
1
- import { useEffect } from 'react';
2
- export const useAsyncEffect = (effect, deps) => {
3
- useEffect(() => {
4
- const mountStatus = { mounted: true };
5
- const runEffect = async () => {
6
- try {
7
- return await effect(() => mountStatus.mounted);
8
- }
9
- catch (error) {
10
- console.error('Error in useAsyncEffect:', error);
11
- }
12
- };
13
- const result = runEffect();
14
- return () => {
15
- mountStatus.mounted = false;
16
- result.then((callback) => {
17
- if (callback) {
18
- callback();
19
- }
20
- });
21
- };
22
- }, deps);
23
- };
1
+ import { useEffect } from 'react';
2
+ export const useAsyncEffect = (effect, deps) => {
3
+ useEffect(() => {
4
+ const mountStatus = { mounted: true };
5
+ const runEffect = async () => {
6
+ try {
7
+ return await effect(() => mountStatus.mounted);
8
+ }
9
+ catch (error) {
10
+ console.error('Error in useAsyncEffect:', error);
11
+ }
12
+ };
13
+ const result = runEffect();
14
+ return () => {
15
+ mountStatus.mounted = false;
16
+ result.then((callback) => {
17
+ if (callback) {
18
+ callback();
19
+ }
20
+ });
21
+ };
22
+ }, deps);
23
+ };
@@ -1,2 +1,2 @@
1
- import { DependencyList } from 'react';
2
- export declare function useFastCallback<T extends Function>(callback: T, deps?: DependencyList): T;
1
+ import { DependencyList } from 'react';
2
+ export declare function useFastCallback<T extends Function>(callback: T, deps?: DependencyList): T;
@@ -1,16 +1,16 @@
1
- import { useCallback, useRef } from 'react';
2
- // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
3
- export function useFastCallback(callback, deps) {
4
- const callbackRef = useRef(callback);
5
- const depsRef = useRef(deps);
6
- // If the deps have changed, update the callback ref
7
- // We support undefined deps, which means they are always updated
8
- // This is different to [] where its never updated.
9
- const hasDepsChanged = !depsRef.current || !deps || depsRef.current.some((dep, index) => dep !== deps[index]);
10
- if (hasDepsChanged) {
11
- callbackRef.current = callback;
12
- }
13
- depsRef.current = deps;
14
- const memoFunc = useCallback((...args) => callbackRef.current(...args), []);
15
- return memoFunc;
16
- }
1
+ import { useCallback, useRef } from 'react';
2
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
3
+ export function useFastCallback(callback, deps) {
4
+ const callbackRef = useRef(callback);
5
+ const depsRef = useRef(deps);
6
+ // If the deps have changed, update the callback ref
7
+ // We support undefined deps, which means they are always updated
8
+ // This is different to [] where its never updated.
9
+ const hasDepsChanged = !depsRef.current || !deps || depsRef.current.some((dep, index) => dep !== deps[index]);
10
+ if (hasDepsChanged) {
11
+ callbackRef.current = callback;
12
+ }
13
+ depsRef.current = deps;
14
+ const memoFunc = useCallback((...args) => callbackRef.current(...args), []);
15
+ return memoFunc;
16
+ }
@@ -1 +1 @@
1
- export * from './useMetadata';
1
+ export * from './useMetadata';
@@ -1 +1 @@
1
- export * from './useMetadata';
1
+ export * from './useMetadata';
@@ -1,5 +1,5 @@
1
- type MetadataGetter<M> = () => M | undefined;
2
- type MetadataSetter<M> = (value: M) => void;
3
- type UseMetadataReturn<M> = [MetadataGetter<M>, MetadataSetter<M>];
4
- export declare function useMetadata<M>(key: object): UseMetadataReturn<M>;
5
- export {};
1
+ type MetadataGetter<M> = () => M | undefined;
2
+ type MetadataSetter<M> = (value: M) => void;
3
+ type UseMetadataReturn<M> = [MetadataGetter<M>, MetadataSetter<M>];
4
+ export declare function useMetadata<M>(key: object): UseMetadataReturn<M>;
5
+ export {};
@@ -1,11 +1,11 @@
1
- import { useMemo } from 'react';
2
- const metadataStore = new WeakMap();
3
- export function useMetadata(key) {
4
- return useMemo(() => {
5
- const getMetadata = () => metadataStore.get(key);
6
- const setMetadata = (value) => {
7
- metadataStore.set(key, value);
8
- };
9
- return [getMetadata, setMetadata];
10
- }, [key]);
11
- }
1
+ import { useMemo } from 'react';
2
+ const metadataStore = new WeakMap();
3
+ export function useMetadata(key) {
4
+ return useMemo(() => {
5
+ const getMetadata = () => metadataStore.get(key);
6
+ const setMetadata = (value) => {
7
+ metadataStore.set(key, value);
8
+ };
9
+ return [getMetadata, setMetadata];
10
+ }, [key]);
11
+ }
@@ -1 +1 @@
1
- export declare function useOnKeyDownEffect(targetKey: KeyboardEvent['key'], isActive: boolean, callback?: () => void): void;
1
+ export declare function useOnKeyDownEffect(targetKey: KeyboardEvent['key'], isActive: boolean, callback?: () => void): void;
@@ -1,19 +1,19 @@
1
- import { useEffect } from 'react';
2
- export function useOnKeyDownEffect(targetKey, isActive, callback) {
3
- useEffect(() => {
4
- if (!isActive || !callback) {
5
- return () => {
6
- // NOOP
7
- };
8
- }
9
- const handleKeyDown = (event) => {
10
- if (event.key === targetKey) {
11
- callback();
12
- }
13
- };
14
- document.addEventListener('keydown', handleKeyDown);
15
- return () => {
16
- document.removeEventListener('keydown', handleKeyDown);
17
- };
18
- }, [targetKey, isActive, callback]);
19
- }
1
+ import { useEffect } from 'react';
2
+ export function useOnKeyDownEffect(targetKey, isActive, callback) {
3
+ useEffect(() => {
4
+ if (!isActive || !callback) {
5
+ return () => {
6
+ // NOOP
7
+ };
8
+ }
9
+ const handleKeyDown = (event) => {
10
+ if (event.key === targetKey) {
11
+ callback();
12
+ }
13
+ };
14
+ document.addEventListener('keydown', handleKeyDown);
15
+ return () => {
16
+ document.removeEventListener('keydown', handleKeyDown);
17
+ };
18
+ }, [targetKey, isActive, callback]);
19
+ }
@@ -1,2 +1,2 @@
1
- import { ActionProcessorListResolver, StoryResolver } from 'quidproquo-core';
2
- export declare function useQpq(getActionProcessors?: ActionProcessorListResolver): StoryResolver;
1
+ import { ActionProcessorListResolver, StoryResolver } from 'quidproquo-core';
2
+ export declare function useQpq(getActionProcessors?: ActionProcessorListResolver): StoryResolver;
@@ -1,32 +1,34 @@
1
- import { getWebActionProcessors } from 'quidproquo-actionprocessor-web';
2
- import { createRuntime, defineModule, QpqRuntimeType, } from 'quidproquo-core';
3
- import { useQpqContextValues } from './asmj';
4
- // WIP ~ useFastCallback, wack things like loggers in a context, try to only make once instance of the runtime.
5
- // Also don't create every refresh.. useMemo / useCallback etc
6
- export function useQpq(getActionProcessors = async () => ({})) {
7
- const qpqContextValues = useQpqContextValues();
8
- const logger = {
9
- enableLogs: async () => { },
10
- log: async () => { },
11
- waitToFinishWriting: async () => { },
12
- moveToPermanentStorage: async () => { },
13
- };
14
- const resolveStory = createRuntime([defineModule('UI')], {
15
- depth: 0,
16
- context: qpqContextValues,
17
- }, async (qpqConfig, dynamicModuleLoader) => ({
18
- ...(await getWebActionProcessors(qpqConfig, dynamicModuleLoader)),
19
- ...(await getActionProcessors(qpqConfig, dynamicModuleLoader)),
20
- }), () => new Date().toISOString(), logger, `frontend::${'uuid'}`, QpqRuntimeType.UI, async (_runtime) => {
21
- // noop
22
- });
23
- return function getStoryExecutor(story) {
24
- return async (...args) => {
25
- const result = await resolveStory(story, args);
26
- if (result.error) {
27
- throw new Error(result.error.errorText);
28
- }
29
- return result.result;
30
- };
31
- };
32
- }
1
+ import { getWebActionProcessors } from 'quidproquo-actionprocessor-web';
2
+ import { createRuntime, defineModule, QpqRuntimeType, } from 'quidproquo-core';
3
+ import { useCallback, useMemo } from 'react';
4
+ import { useQpqContextValues } from './asmj';
5
+ // WIP ~ useFastCallback, wack things like loggers in a context, try to only make once instance of the runtime.
6
+ // Also don't create every refresh.. useMemo / useCallback etc
7
+ const logger = {
8
+ enableLogs: async () => { },
9
+ log: async () => { },
10
+ waitToFinishWriting: async () => { },
11
+ moveToPermanentStorage: async () => { },
12
+ };
13
+ export function useQpq(getActionProcessors = async () => ({})) {
14
+ const qpqContextValues = useQpqContextValues();
15
+ const resolveStory = useMemo(() => createRuntime([defineModule('UI')], {
16
+ depth: 0,
17
+ context: qpqContextValues,
18
+ }, async (qpqConfig, dynamicModuleLoader) => ({
19
+ ...(await getWebActionProcessors(qpqConfig, dynamicModuleLoader)),
20
+ ...(await getActionProcessors(qpqConfig, dynamicModuleLoader)),
21
+ }), () => new Date().toISOString(), logger, `frontend::${'uuid'}`, QpqRuntimeType.UI, async (_runtime) => {
22
+ // noop
23
+ }), [qpqContextValues]);
24
+ const qpq = useCallback(function getStoryExecutor(story) {
25
+ return async (...args) => {
26
+ const result = await resolveStory(story, args);
27
+ if (result.error) {
28
+ throw new Error(result.error.errorText);
29
+ }
30
+ return result.result;
31
+ };
32
+ }, [resolveStory]);
33
+ return qpq;
34
+ }
@@ -1 +1 @@
1
- export declare function useRunEvery<T>(func: () => T, intervalSeconds: number): T;
1
+ export declare function useRunEvery<T>(func: () => T, intervalSeconds: number): T;
@@ -1,18 +1,18 @@
1
- import { useEffect, useRef, useState } from 'react';
2
- export function useRunEvery(func, intervalSeconds) {
3
- const [value, setValue] = useState(func);
4
- const intervalRef = useRef(null);
5
- useEffect(() => {
6
- intervalRef.current = window.setInterval(() => {
7
- const newValue = func();
8
- setValue(newValue);
9
- }, intervalSeconds * 1000);
10
- return () => {
11
- if (intervalRef.current !== null) {
12
- window.clearInterval(intervalRef.current);
13
- intervalRef.current = null;
14
- }
15
- };
16
- }, [intervalSeconds]);
17
- return value;
18
- }
1
+ import { useEffect, useRef, useState } from 'react';
2
+ export function useRunEvery(func, intervalSeconds) {
3
+ const [value, setValue] = useState(func);
4
+ const intervalRef = useRef(null);
5
+ useEffect(() => {
6
+ intervalRef.current = window.setInterval(() => {
7
+ const newValue = func();
8
+ setValue(newValue);
9
+ }, intervalSeconds * 1000);
10
+ return () => {
11
+ if (intervalRef.current !== null) {
12
+ window.clearInterval(intervalRef.current);
13
+ intervalRef.current = null;
14
+ }
15
+ };
16
+ }, [intervalSeconds]);
17
+ return value;
18
+ }
@@ -1 +1 @@
1
- export declare function useThrottledMemo<T>(factory: () => T, deps: any[], delaySeconds?: number): T;
1
+ export declare function useThrottledMemo<T>(factory: () => T, deps: any[], delaySeconds?: number): T;