@vived/host 4.0.2 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (300) hide show
  1. package/dist/cjs/AppSandbox/Factories/setupAppSandbox.js +6 -0
  2. package/dist/cjs/AppSandbox/Factories/setupAppSandbox.js.map +1 -1
  3. package/dist/cjs/AppSandbox/UCs/submitActivityAssetHandlerSandbox.js +37 -0
  4. package/dist/cjs/AppSandbox/UCs/submitActivityAssetHandlerSandbox.js.map +1 -0
  5. package/dist/cjs/AppSandbox/UCs/submitActivityAssetHandlerSandbox.test.js +55 -0
  6. package/dist/cjs/AppSandbox/UCs/submitActivityAssetHandlerSandbox.test.js.map +1 -0
  7. package/dist/cjs/Assets/Factories/setupAssetsForSandbox.js +1 -0
  8. package/dist/cjs/Assets/Factories/setupAssetsForSandbox.js.map +1 -1
  9. package/dist/cjs/Assets/Mocks/MockNewAssetUC.js +16 -0
  10. package/dist/cjs/Assets/Mocks/MockNewAssetUC.js.map +1 -0
  11. package/dist/cjs/Assets/Mocks/index.js +1 -0
  12. package/dist/cjs/Assets/Mocks/index.js.map +1 -1
  13. package/dist/cjs/Assets/UCs/NewAppAssetUC.js.map +1 -1
  14. package/dist/cjs/Assets/UCs/NewAppAssetUC.test.js.map +1 -1
  15. package/dist/cjs/Assets/UCs/NewAssetUC.js +53 -0
  16. package/dist/cjs/Assets/UCs/NewAssetUC.js.map +1 -0
  17. package/dist/cjs/Assets/UCs/NewAssetUC.test.js +104 -0
  18. package/dist/cjs/Assets/UCs/NewAssetUC.test.js.map +1 -0
  19. package/dist/cjs/Assets/UCs/index.js +1 -0
  20. package/dist/cjs/Assets/UCs/index.js.map +1 -1
  21. package/dist/cjs/Dialog/Entities/Alert.js +2 -0
  22. package/dist/cjs/Dialog/Entities/Alert.js.map +1 -1
  23. package/dist/cjs/Dialog/Entities/Alert.test.js +6 -0
  24. package/dist/cjs/Dialog/Entities/Alert.test.js.map +1 -1
  25. package/dist/cjs/Dialog/Entities/Confirm.js +3 -0
  26. package/dist/cjs/Dialog/Entities/Confirm.js.map +1 -1
  27. package/dist/cjs/Dialog/Entities/Confirm.test.js +12 -0
  28. package/dist/cjs/Dialog/Entities/Confirm.test.js.map +1 -1
  29. package/dist/cjs/Dialog/Entities/DialogQueue.js +16 -3
  30. package/dist/cjs/Dialog/Entities/DialogQueue.js.map +1 -1
  31. package/dist/cjs/Dialog/Entities/DialogQueue.test.js +21 -0
  32. package/dist/cjs/Dialog/Entities/DialogQueue.test.js.map +1 -1
  33. package/dist/cjs/Dialog/Entities/MarkDownEditor.js +3 -0
  34. package/dist/cjs/Dialog/Entities/MarkDownEditor.js.map +1 -1
  35. package/dist/cjs/Dialog/Entities/MarkDownEditor.test.js +12 -0
  36. package/dist/cjs/Dialog/Entities/MarkDownEditor.test.js.map +1 -1
  37. package/dist/cjs/Dialog/Entities/SelectModel.js +1 -0
  38. package/dist/cjs/Dialog/Entities/SelectModel.js.map +1 -1
  39. package/dist/cjs/Dialog/Entities/Spinner.js +2 -0
  40. package/dist/cjs/Dialog/Entities/Spinner.js.map +1 -1
  41. package/dist/cjs/Dialog/Entities/Spinner.test.js +17 -0
  42. package/dist/cjs/Dialog/Entities/Spinner.test.js.map +1 -1
  43. package/dist/cjs/Handler/setupStandardHostHandlers.js +1 -0
  44. package/dist/cjs/Handler/setupStandardHostHandlers.js.map +1 -1
  45. package/dist/cjs/StateMachine/Adapters/hostStateAdapter.js +24 -0
  46. package/dist/cjs/StateMachine/Adapters/hostStateAdapter.js.map +1 -0
  47. package/dist/cjs/StateMachine/Adapters/hostStateAdapter.test.js +49 -0
  48. package/dist/cjs/StateMachine/Adapters/hostStateAdapter.test.js.map +1 -0
  49. package/dist/cjs/StateMachine/Adapters/index.js +1 -0
  50. package/dist/cjs/StateMachine/Adapters/index.js.map +1 -1
  51. package/dist/cjs/StateMachine/Controllers/editStateName.js +13 -0
  52. package/dist/cjs/StateMachine/Controllers/editStateName.js.map +1 -0
  53. package/dist/cjs/StateMachine/Controllers/editStateName.test.js +49 -0
  54. package/dist/cjs/StateMachine/Controllers/editStateName.test.js.map +1 -0
  55. package/dist/cjs/StateMachine/Controllers/index.js +1 -0
  56. package/dist/cjs/StateMachine/Controllers/index.js.map +1 -1
  57. package/dist/cjs/StateMachine/Entities/HostStateMachine.js +67 -24
  58. package/dist/cjs/StateMachine/Entities/HostStateMachine.js.map +1 -1
  59. package/dist/cjs/StateMachine/Entities/HostStateMachine.test.js +174 -0
  60. package/dist/cjs/StateMachine/Entities/HostStateMachine.test.js.map +1 -1
  61. package/dist/cjs/StateMachine/Mocks/MockEditStateNameUC.js +12 -0
  62. package/dist/cjs/StateMachine/Mocks/MockEditStateNameUC.js.map +1 -0
  63. package/dist/cjs/StateMachine/Mocks/MockHostStatePM.js +23 -0
  64. package/dist/cjs/StateMachine/Mocks/MockHostStatePM.js.map +1 -0
  65. package/dist/cjs/StateMachine/PMs/HostStateMachinePM.js +21 -15
  66. package/dist/cjs/StateMachine/PMs/HostStateMachinePM.js.map +1 -1
  67. package/dist/cjs/StateMachine/PMs/HostStateMachinePM.test.js +65 -56
  68. package/dist/cjs/StateMachine/PMs/HostStateMachinePM.test.js.map +1 -1
  69. package/dist/cjs/StateMachine/PMs/HostStatePM.js +136 -0
  70. package/dist/cjs/StateMachine/PMs/HostStatePM.js.map +1 -0
  71. package/dist/cjs/StateMachine/PMs/HostStatePM.test.js +405 -0
  72. package/dist/cjs/StateMachine/PMs/HostStatePM.test.js.map +1 -0
  73. package/dist/cjs/StateMachine/PMs/index.js +1 -0
  74. package/dist/cjs/StateMachine/PMs/index.js.map +1 -1
  75. package/dist/cjs/StateMachine/UCs/EditStateNameUC.js +35 -0
  76. package/dist/cjs/StateMachine/UCs/EditStateNameUC.js.map +1 -0
  77. package/dist/cjs/StateMachine/UCs/EditStateNameUC.test.js +58 -0
  78. package/dist/cjs/StateMachine/UCs/EditStateNameUC.test.js.map +1 -0
  79. package/dist/cjs/StateMachine/UCs/index.js +1 -0
  80. package/dist/cjs/StateMachine/UCs/index.js.map +1 -1
  81. package/dist/cjs/VivedAPI/Mocks/MockSignedAuthToken.js +1 -2
  82. package/dist/cjs/VivedAPI/Mocks/MockSignedAuthToken.js.map +1 -1
  83. package/dist/cjs/VivedAPI/UCs/DeleteAssetOnAPIUC.js +1 -1
  84. package/dist/cjs/VivedAPI/UCs/DeleteAssetOnAPIUC.js.map +1 -1
  85. package/dist/cjs/VivedAPI/UCs/DeleteAssetOnAPIUC.test.js +2 -2
  86. package/dist/cjs/VivedAPI/UCs/DeleteAssetOnAPIUC.test.js.map +1 -1
  87. package/dist/cjs/VivedAPI/UCs/GetAppFromAPIUC.js +1 -1
  88. package/dist/cjs/VivedAPI/UCs/GetAppFromAPIUC.js.map +1 -1
  89. package/dist/cjs/VivedAPI/UCs/GetAppFromAPIUC.test.js +2 -2
  90. package/dist/cjs/VivedAPI/UCs/GetAppFromAPIUC.test.js.map +1 -1
  91. package/dist/cjs/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.js +1 -1
  92. package/dist/cjs/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.js.map +1 -1
  93. package/dist/cjs/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.test.js +2 -2
  94. package/dist/cjs/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.test.js.map +1 -1
  95. package/dist/cjs/VivedAPI/UCs/PatchAssetFileUC.js +1 -1
  96. package/dist/cjs/VivedAPI/UCs/PatchAssetFileUC.js.map +1 -1
  97. package/dist/cjs/VivedAPI/UCs/PatchAssetFileUC.test.js +2 -2
  98. package/dist/cjs/VivedAPI/UCs/PatchAssetFileUC.test.js.map +1 -1
  99. package/dist/cjs/VivedAPI/UCs/PatchAssetIsArchivedUC.js +1 -1
  100. package/dist/cjs/VivedAPI/UCs/PatchAssetIsArchivedUC.js.map +1 -1
  101. package/dist/cjs/VivedAPI/UCs/PatchAssetIsArchivedUC.test.js +2 -2
  102. package/dist/cjs/VivedAPI/UCs/PatchAssetIsArchivedUC.test.js.map +1 -1
  103. package/dist/cjs/VivedAPI/UCs/PatchAssetMetaUC.js +1 -1
  104. package/dist/cjs/VivedAPI/UCs/PatchAssetMetaUC.js.map +1 -1
  105. package/dist/cjs/VivedAPI/UCs/PatchAssetMetaUC.test.js +2 -2
  106. package/dist/cjs/VivedAPI/UCs/PatchAssetMetaUC.test.js.map +1 -1
  107. package/dist/cjs/VivedAPI/UCs/PatchAssetUC.js +2 -3
  108. package/dist/cjs/VivedAPI/UCs/PatchAssetUC.js.map +1 -1
  109. package/dist/cjs/VivedAPI/UCs/PatchAssetUC.test.js +2 -2
  110. package/dist/cjs/VivedAPI/UCs/PatchAssetUC.test.js.map +1 -1
  111. package/dist/cjs/VivedAPI/UCs/PostNewAssetUC.js +2 -3
  112. package/dist/cjs/VivedAPI/UCs/PostNewAssetUC.js.map +1 -1
  113. package/dist/cjs/VivedAPI/UCs/PostNewAssetUC.test.js +2 -2
  114. package/dist/cjs/VivedAPI/UCs/PostNewAssetUC.test.js.map +1 -1
  115. package/dist/cjs/VivedAPI/UCs/SignedAuthTokenUC.js.map +1 -1
  116. package/dist/esm/AppSandbox/Factories/setupAppSandbox.js +6 -0
  117. package/dist/esm/AppSandbox/Factories/setupAppSandbox.js.map +1 -1
  118. package/dist/esm/AppSandbox/UCs/submitActivityAssetHandlerSandbox.js +34 -0
  119. package/dist/esm/AppSandbox/UCs/submitActivityAssetHandlerSandbox.js.map +1 -0
  120. package/dist/esm/AppSandbox/UCs/submitActivityAssetHandlerSandbox.test.js +53 -0
  121. package/dist/esm/AppSandbox/UCs/submitActivityAssetHandlerSandbox.test.js.map +1 -0
  122. package/dist/esm/Assets/Factories/setupAssetsForSandbox.js +2 -1
  123. package/dist/esm/Assets/Factories/setupAssetsForSandbox.js.map +1 -1
  124. package/dist/esm/Assets/Mocks/MockNewAssetUC.js +11 -0
  125. package/dist/esm/Assets/Mocks/MockNewAssetUC.js.map +1 -0
  126. package/dist/esm/Assets/Mocks/index.js +1 -0
  127. package/dist/esm/Assets/Mocks/index.js.map +1 -1
  128. package/dist/esm/Assets/UCs/NewAppAssetUC.js.map +1 -1
  129. package/dist/esm/Assets/UCs/NewAppAssetUC.test.js.map +1 -1
  130. package/dist/esm/Assets/UCs/NewAssetUC.js +48 -0
  131. package/dist/esm/Assets/UCs/NewAssetUC.js.map +1 -0
  132. package/dist/esm/Assets/UCs/NewAssetUC.test.js +102 -0
  133. package/dist/esm/Assets/UCs/NewAssetUC.test.js.map +1 -0
  134. package/dist/esm/Assets/UCs/index.js +1 -0
  135. package/dist/esm/Assets/UCs/index.js.map +1 -1
  136. package/dist/esm/Dialog/Entities/Alert.js +2 -0
  137. package/dist/esm/Dialog/Entities/Alert.js.map +1 -1
  138. package/dist/esm/Dialog/Entities/Alert.test.js +6 -0
  139. package/dist/esm/Dialog/Entities/Alert.test.js.map +1 -1
  140. package/dist/esm/Dialog/Entities/Confirm.js +3 -0
  141. package/dist/esm/Dialog/Entities/Confirm.js.map +1 -1
  142. package/dist/esm/Dialog/Entities/Confirm.test.js +12 -0
  143. package/dist/esm/Dialog/Entities/Confirm.test.js.map +1 -1
  144. package/dist/esm/Dialog/Entities/DialogQueue.js +17 -4
  145. package/dist/esm/Dialog/Entities/DialogQueue.js.map +1 -1
  146. package/dist/esm/Dialog/Entities/DialogQueue.test.js +21 -0
  147. package/dist/esm/Dialog/Entities/DialogQueue.test.js.map +1 -1
  148. package/dist/esm/Dialog/Entities/MarkDownEditor.js +3 -0
  149. package/dist/esm/Dialog/Entities/MarkDownEditor.js.map +1 -1
  150. package/dist/esm/Dialog/Entities/MarkDownEditor.test.js +12 -0
  151. package/dist/esm/Dialog/Entities/MarkDownEditor.test.js.map +1 -1
  152. package/dist/esm/Dialog/Entities/SelectModel.js +1 -0
  153. package/dist/esm/Dialog/Entities/SelectModel.js.map +1 -1
  154. package/dist/esm/Dialog/Entities/Spinner.js +2 -0
  155. package/dist/esm/Dialog/Entities/Spinner.js.map +1 -1
  156. package/dist/esm/Dialog/Entities/Spinner.test.js +17 -0
  157. package/dist/esm/Dialog/Entities/Spinner.test.js.map +1 -1
  158. package/dist/esm/Handler/setupStandardHostHandlers.js +2 -1
  159. package/dist/esm/Handler/setupStandardHostHandlers.js.map +1 -1
  160. package/dist/esm/StateMachine/Adapters/hostStateAdapter.js +21 -0
  161. package/dist/esm/StateMachine/Adapters/hostStateAdapter.js.map +1 -0
  162. package/dist/esm/StateMachine/Adapters/hostStateAdapter.test.js +47 -0
  163. package/dist/esm/StateMachine/Adapters/hostStateAdapter.test.js.map +1 -0
  164. package/dist/esm/StateMachine/Adapters/index.js +1 -0
  165. package/dist/esm/StateMachine/Adapters/index.js.map +1 -1
  166. package/dist/esm/StateMachine/Controllers/editStateName.js +10 -0
  167. package/dist/esm/StateMachine/Controllers/editStateName.js.map +1 -0
  168. package/dist/esm/StateMachine/Controllers/editStateName.test.js +47 -0
  169. package/dist/esm/StateMachine/Controllers/editStateName.test.js.map +1 -0
  170. package/dist/esm/StateMachine/Controllers/index.js +1 -0
  171. package/dist/esm/StateMachine/Controllers/index.js.map +1 -1
  172. package/dist/esm/StateMachine/Entities/HostStateMachine.js +67 -24
  173. package/dist/esm/StateMachine/Entities/HostStateMachine.js.map +1 -1
  174. package/dist/esm/StateMachine/Entities/HostStateMachine.test.js +174 -0
  175. package/dist/esm/StateMachine/Entities/HostStateMachine.test.js.map +1 -1
  176. package/dist/esm/StateMachine/Mocks/MockEditStateNameUC.js +8 -0
  177. package/dist/esm/StateMachine/Mocks/MockEditStateNameUC.js.map +1 -0
  178. package/dist/esm/StateMachine/Mocks/MockHostStatePM.js +18 -0
  179. package/dist/esm/StateMachine/Mocks/MockHostStatePM.js.map +1 -0
  180. package/dist/esm/StateMachine/PMs/HostStateMachinePM.js +21 -15
  181. package/dist/esm/StateMachine/PMs/HostStateMachinePM.js.map +1 -1
  182. package/dist/esm/StateMachine/PMs/HostStateMachinePM.test.js +65 -56
  183. package/dist/esm/StateMachine/PMs/HostStateMachinePM.test.js.map +1 -1
  184. package/dist/esm/StateMachine/PMs/HostStatePM.js +131 -0
  185. package/dist/esm/StateMachine/PMs/HostStatePM.js.map +1 -0
  186. package/dist/esm/StateMachine/PMs/HostStatePM.test.js +403 -0
  187. package/dist/esm/StateMachine/PMs/HostStatePM.test.js.map +1 -0
  188. package/dist/esm/StateMachine/PMs/index.js +1 -0
  189. package/dist/esm/StateMachine/PMs/index.js.map +1 -1
  190. package/dist/esm/StateMachine/UCs/EditStateNameUC.js +30 -0
  191. package/dist/esm/StateMachine/UCs/EditStateNameUC.js.map +1 -0
  192. package/dist/esm/StateMachine/UCs/EditStateNameUC.test.js +56 -0
  193. package/dist/esm/StateMachine/UCs/EditStateNameUC.test.js.map +1 -0
  194. package/dist/esm/StateMachine/UCs/index.js +1 -0
  195. package/dist/esm/StateMachine/UCs/index.js.map +1 -1
  196. package/dist/esm/VivedAPI/Mocks/MockSignedAuthToken.js +1 -2
  197. package/dist/esm/VivedAPI/Mocks/MockSignedAuthToken.js.map +1 -1
  198. package/dist/esm/VivedAPI/UCs/DeleteAssetOnAPIUC.js +1 -1
  199. package/dist/esm/VivedAPI/UCs/DeleteAssetOnAPIUC.js.map +1 -1
  200. package/dist/esm/VivedAPI/UCs/DeleteAssetOnAPIUC.test.js +2 -2
  201. package/dist/esm/VivedAPI/UCs/DeleteAssetOnAPIUC.test.js.map +1 -1
  202. package/dist/esm/VivedAPI/UCs/GetAppFromAPIUC.js +1 -1
  203. package/dist/esm/VivedAPI/UCs/GetAppFromAPIUC.js.map +1 -1
  204. package/dist/esm/VivedAPI/UCs/GetAppFromAPIUC.test.js +2 -2
  205. package/dist/esm/VivedAPI/UCs/GetAppFromAPIUC.test.js.map +1 -1
  206. package/dist/esm/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.js +1 -1
  207. package/dist/esm/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.js.map +1 -1
  208. package/dist/esm/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.test.js +2 -2
  209. package/dist/esm/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.test.js.map +1 -1
  210. package/dist/esm/VivedAPI/UCs/PatchAssetFileUC.js +1 -1
  211. package/dist/esm/VivedAPI/UCs/PatchAssetFileUC.js.map +1 -1
  212. package/dist/esm/VivedAPI/UCs/PatchAssetFileUC.test.js +2 -2
  213. package/dist/esm/VivedAPI/UCs/PatchAssetFileUC.test.js.map +1 -1
  214. package/dist/esm/VivedAPI/UCs/PatchAssetIsArchivedUC.js +1 -1
  215. package/dist/esm/VivedAPI/UCs/PatchAssetIsArchivedUC.js.map +1 -1
  216. package/dist/esm/VivedAPI/UCs/PatchAssetIsArchivedUC.test.js +2 -2
  217. package/dist/esm/VivedAPI/UCs/PatchAssetIsArchivedUC.test.js.map +1 -1
  218. package/dist/esm/VivedAPI/UCs/PatchAssetMetaUC.js +1 -1
  219. package/dist/esm/VivedAPI/UCs/PatchAssetMetaUC.js.map +1 -1
  220. package/dist/esm/VivedAPI/UCs/PatchAssetMetaUC.test.js +2 -2
  221. package/dist/esm/VivedAPI/UCs/PatchAssetMetaUC.test.js.map +1 -1
  222. package/dist/esm/VivedAPI/UCs/PatchAssetUC.js +2 -3
  223. package/dist/esm/VivedAPI/UCs/PatchAssetUC.js.map +1 -1
  224. package/dist/esm/VivedAPI/UCs/PatchAssetUC.test.js +2 -2
  225. package/dist/esm/VivedAPI/UCs/PatchAssetUC.test.js.map +1 -1
  226. package/dist/esm/VivedAPI/UCs/PostNewAssetUC.js +2 -3
  227. package/dist/esm/VivedAPI/UCs/PostNewAssetUC.js.map +1 -1
  228. package/dist/esm/VivedAPI/UCs/PostNewAssetUC.test.js +2 -2
  229. package/dist/esm/VivedAPI/UCs/PostNewAssetUC.test.js.map +1 -1
  230. package/dist/esm/VivedAPI/UCs/SignedAuthTokenUC.js +1 -1
  231. package/dist/esm/VivedAPI/UCs/SignedAuthTokenUC.js.map +1 -1
  232. package/dist/types/AppSandbox/Factories/setupAppSandbox.d.ts.map +1 -1
  233. package/dist/types/AppSandbox/UCs/submitActivityAssetHandlerSandbox.d.ts +4 -0
  234. package/dist/types/AppSandbox/UCs/submitActivityAssetHandlerSandbox.d.ts.map +1 -0
  235. package/dist/types/AppSandbox/UCs/submitActivityAssetHandlerSandbox.test.d.ts +2 -0
  236. package/dist/types/AppSandbox/UCs/submitActivityAssetHandlerSandbox.test.d.ts.map +1 -0
  237. package/dist/types/Assets/Factories/setupAssetsForSandbox.d.ts.map +1 -1
  238. package/dist/types/Assets/Mocks/MockNewAssetUC.d.ts +8 -0
  239. package/dist/types/Assets/Mocks/MockNewAssetUC.d.ts.map +1 -0
  240. package/dist/types/Assets/Mocks/index.d.ts +1 -0
  241. package/dist/types/Assets/Mocks/index.d.ts.map +1 -1
  242. package/dist/types/Assets/UCs/NewAssetUC.d.ts +14 -0
  243. package/dist/types/Assets/UCs/NewAssetUC.d.ts.map +1 -0
  244. package/dist/types/Assets/UCs/NewAssetUC.test.d.ts +2 -0
  245. package/dist/types/Assets/UCs/NewAssetUC.test.d.ts.map +1 -0
  246. package/dist/types/Assets/UCs/index.d.ts +1 -0
  247. package/dist/types/Assets/UCs/index.d.ts.map +1 -1
  248. package/dist/types/Dialog/Entities/Alert.d.ts +1 -0
  249. package/dist/types/Dialog/Entities/Alert.d.ts.map +1 -1
  250. package/dist/types/Dialog/Entities/Confirm.d.ts +1 -0
  251. package/dist/types/Dialog/Entities/Confirm.d.ts.map +1 -1
  252. package/dist/types/Dialog/Entities/DialogQueue.d.ts +1 -0
  253. package/dist/types/Dialog/Entities/DialogQueue.d.ts.map +1 -1
  254. package/dist/types/Dialog/Entities/MarkDownEditor.d.ts +1 -0
  255. package/dist/types/Dialog/Entities/MarkDownEditor.d.ts.map +1 -1
  256. package/dist/types/Dialog/Entities/SelectModel.d.ts +1 -0
  257. package/dist/types/Dialog/Entities/SelectModel.d.ts.map +1 -1
  258. package/dist/types/Dialog/Entities/Spinner.d.ts +1 -0
  259. package/dist/types/Dialog/Entities/Spinner.d.ts.map +1 -1
  260. package/dist/types/Handler/setupStandardHostHandlers.d.ts.map +1 -1
  261. package/dist/types/StateMachine/Adapters/hostStateAdapter.d.ts +4 -0
  262. package/dist/types/StateMachine/Adapters/hostStateAdapter.d.ts.map +1 -0
  263. package/dist/types/StateMachine/Adapters/hostStateAdapter.test.d.ts +2 -0
  264. package/dist/types/StateMachine/Adapters/hostStateAdapter.test.d.ts.map +1 -0
  265. package/dist/types/StateMachine/Adapters/index.d.ts +1 -0
  266. package/dist/types/StateMachine/Adapters/index.d.ts.map +1 -1
  267. package/dist/types/StateMachine/Controllers/editStateName.d.ts +3 -0
  268. package/dist/types/StateMachine/Controllers/editStateName.d.ts.map +1 -0
  269. package/dist/types/StateMachine/Controllers/editStateName.test.d.ts +2 -0
  270. package/dist/types/StateMachine/Controllers/editStateName.test.d.ts.map +1 -0
  271. package/dist/types/StateMachine/Controllers/index.d.ts +1 -0
  272. package/dist/types/StateMachine/Controllers/index.d.ts.map +1 -1
  273. package/dist/types/StateMachine/Entities/HostStateMachine.d.ts +6 -0
  274. package/dist/types/StateMachine/Entities/HostStateMachine.d.ts.map +1 -1
  275. package/dist/types/StateMachine/Mocks/MockEditStateNameUC.d.ts +7 -0
  276. package/dist/types/StateMachine/Mocks/MockEditStateNameUC.d.ts.map +1 -0
  277. package/dist/types/StateMachine/Mocks/MockHostStatePM.d.ts +9 -0
  278. package/dist/types/StateMachine/Mocks/MockHostStatePM.d.ts.map +1 -0
  279. package/dist/types/StateMachine/PMs/HostStateMachinePM.d.ts +3 -4
  280. package/dist/types/StateMachine/PMs/HostStateMachinePM.d.ts.map +1 -1
  281. package/dist/types/StateMachine/PMs/HostStatePM.d.ts +18 -0
  282. package/dist/types/StateMachine/PMs/HostStatePM.d.ts.map +1 -0
  283. package/dist/types/StateMachine/PMs/HostStatePM.test.d.ts +2 -0
  284. package/dist/types/StateMachine/PMs/HostStatePM.test.d.ts.map +1 -0
  285. package/dist/types/StateMachine/PMs/index.d.ts +1 -0
  286. package/dist/types/StateMachine/PMs/index.d.ts.map +1 -1
  287. package/dist/types/StateMachine/UCs/EditStateNameUC.d.ts +9 -0
  288. package/dist/types/StateMachine/UCs/EditStateNameUC.d.ts.map +1 -0
  289. package/dist/types/StateMachine/UCs/EditStateNameUC.test.d.ts +2 -0
  290. package/dist/types/StateMachine/UCs/EditStateNameUC.test.d.ts.map +1 -0
  291. package/dist/types/StateMachine/UCs/index.d.ts +1 -0
  292. package/dist/types/StateMachine/UCs/index.d.ts.map +1 -1
  293. package/dist/types/VivedAPI/Mocks/MockSignedAuthToken.d.ts +1 -2
  294. package/dist/types/VivedAPI/Mocks/MockSignedAuthToken.d.ts.map +1 -1
  295. package/dist/types/VivedAPI/UCs/PatchAssetUC.d.ts.map +1 -1
  296. package/dist/types/VivedAPI/UCs/PostNewAssetUC.d.ts +2 -2
  297. package/dist/types/VivedAPI/UCs/PostNewAssetUC.d.ts.map +1 -1
  298. package/dist/types/VivedAPI/UCs/SignedAuthTokenUC.d.ts +1 -2
  299. package/dist/types/VivedAPI/UCs/SignedAuthTokenUC.d.ts.map +1 -1
  300. package/package.json +2 -2
@@ -12,7 +12,7 @@ function makeTestRig() {
12
12
  const mockJsonRequester = (0, MockJsonRequestUC_1.makeMockJsonRequestUC)(appObjects);
13
13
  mockJsonRequester.doRequest.mockResolvedValue({});
14
14
  const mockAuth = (0, MockSignedAuthToken_1.makeMockSignedAuthTokenUC)(appObjects);
15
- mockAuth.getUserAuthToken.mockResolvedValue("mockAuthToken");
15
+ mockAuth.getAuthToken.mockResolvedValue("mockAuthToken");
16
16
  const uc = (0, PatchAssetIsArchivedUC_1.makePatchAssetIsArchivedUC)(appObjects.getOrCreate("ao"));
17
17
  return {
18
18
  uc,
@@ -62,7 +62,7 @@ describe("Patch Asset Is Archived UC", () => {
62
62
  });
63
63
  it("Rejects if the get auth token fails", () => {
64
64
  const { uc, mockAuth } = makeTestRig();
65
- mockAuth.getUserAuthToken.mockRejectedValue(new Error("Some Auth token error Error"));
65
+ mockAuth.getAuthToken.mockRejectedValue(new Error("Some Auth token error Error"));
66
66
  return expect(uc.doPatch("asset1", true)).rejects.toEqual(new Error("Some Auth token error Error"));
67
67
  });
68
68
  });
@@ -1 +1 @@
1
- {"version":3,"file":"PatchAssetIsArchivedUC.test.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PatchAssetIsArchivedUC.test.ts"],"names":[],"mappings":";;AAAA,sCAAgD;AAChD,+DAA4D;AAC5D,kEAAmE;AACnE,sEAAyE;AAEzE,qEAGkC;AAElC,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IACvC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;IAEjE,MAAM,QAAQ,GAAG,IAAI,+BAAc,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAEnE,MAAM,iBAAiB,GAAG,IAAA,yCAAqB,EAAC,UAAU,CAAC,CAAC;IAC5D,iBAAiB,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAElD,MAAM,QAAQ,GAAG,IAAA,+CAAyB,EAAC,UAAU,CAAC,CAAC;IACvD,QAAQ,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;IAE7D,MAAM,EAAE,GAAG,IAAA,mDAA0B,EAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IAEpE,OAAO;QACL,EAAE;QACF,UAAU;QACV,YAAY;QACZ,QAAQ;QACR,iBAAiB;QACjB,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC1C,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,WAAW,EAAE,CAAC;QAE3C,MAAM,CAAC,YAAY,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAC5B,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,WAAW,EAAE,CAAC;QAEzC,MAAM,CAAC,+CAAsB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;QACxB,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,EAAE,CAAC;QAE7B,OAAO,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACxE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,EAAE,EAAE,EAAE,iBAAiB,EAAE,GAAG,WAAW,EAAE,CAAC;QAEhD,iBAAiB,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAE5E,OAAO,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CACvD,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAC7B,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACvD,MAAM,EAAE,EAAE,EAAE,iBAAiB,EAAE,GAAG,WAAW,EAAE,CAAC;QAEhD,MAAM,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAEjC,MAAM,OAAO,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAQ,CAAC;QACpE,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAChC,6CAA6C,CAC9C,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,EAAE,EAAE,EAAE,iBAAiB,EAAE,GAAG,WAAW,EAAE,CAAC;QAEhD,MAAM,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAEjC,MAAM,OAAO,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI;aAC7C,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAuB,CAAC;QACrC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;YAC9B,aAAa,EAAE,sBAAsB;SACtC,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAC1B,IAAI,CAAC,SAAS,CAAC;YACb,QAAQ,EAAE,IAAI;SACf,CAAC,CACH,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,CAAC;QAEvC,QAAQ,CAAC,gBAAgB,CAAC,iBAAiB,CACzC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CACzC,CAAC;QAEF,OAAO,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CACvD,IAAI,KAAK,CAAC,6BAA6B,CAAC,CACzC,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { makeMockJsonRequestUC } from \"../Mocks/MockJsonRequestUC\";\r\nimport { makeMockSignedAuthTokenUC } from \"../Mocks/MockSignedAuthToken\";\r\nimport { RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport {\r\n makePatchAssetIsArchivedUC,\r\n PatchAssetIsArchivedUC\r\n} from \"./PatchAssetIsArchivedUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const singletonSpy = jest.spyOn(appObjects, \"registerSingleton\");\r\n\r\n const vivedAPI = new VivedAPIEntity(appObjects.getOrCreate(\"API\"));\r\n\r\n const mockJsonRequester = makeMockJsonRequestUC(appObjects);\r\n mockJsonRequester.doRequest.mockResolvedValue({});\r\n\r\n const mockAuth = makeMockSignedAuthTokenUC(appObjects);\r\n mockAuth.getUserAuthToken.mockResolvedValue(\"mockAuthToken\");\r\n\r\n const uc = makePatchAssetIsArchivedUC(appObjects.getOrCreate(\"ao\"));\r\n\r\n return {\r\n uc,\r\n appObjects,\r\n singletonSpy,\r\n vivedAPI,\r\n mockJsonRequester,\r\n mockAuth\r\n };\r\n}\r\n\r\ndescribe(\"Patch Asset Is Archived UC\", () => {\r\n it(\"Registers itself as the Singleton\", () => {\r\n const { uc, singletonSpy } = makeTestRig();\r\n\r\n expect(singletonSpy).toBeCalledWith(uc);\r\n });\r\n\r\n it(\"Gets the singleton\", () => {\r\n const { uc, appObjects } = makeTestRig();\r\n\r\n expect(PatchAssetIsArchivedUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Resolves\", async () => {\r\n const { uc } = makeTestRig();\r\n\r\n return expect(uc.doPatch(\"asset1\", true)).resolves.toEqual(undefined);\r\n });\r\n\r\n it(\"Warns and rejects if the JSON Request rejects\", () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n mockJsonRequester.doRequest.mockRejectedValue(new Error(\"Some JSON Error\"));\r\n\r\n return expect(uc.doPatch(\"asset1\", true)).rejects.toEqual(\r\n new Error(\"Some JSON Error\")\r\n );\r\n });\r\n\r\n it(\"Requests the JSON with the expected url\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n await uc.doPatch(\"asset1\", true);\r\n\r\n const postURL = mockJsonRequester.doRequest.mock.calls[0][0] as URL;\r\n expect(postURL.toString()).toEqual(\r\n \"https://api.vivedlearning.com/assets/asset1\"\r\n );\r\n });\r\n\r\n it(\"Requests the JSON with the expected options\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n await uc.doPatch(\"asset1\", true);\r\n\r\n const postURL = mockJsonRequester.doRequest.mock\r\n .calls[0][1] as RequestJSONOptions;\r\n expect(postURL.method).toEqual(\"PATCH\");\r\n expect(postURL.headers).toEqual({\r\n Authorization: \"Bearer mockAuthToken\"\r\n });\r\n\r\n expect(postURL.body).toEqual(\r\n JSON.stringify({\r\n archived: true\r\n })\r\n );\r\n });\r\n\r\n it(\"Rejects if the get auth token fails\", () => {\r\n const { uc, mockAuth } = makeTestRig();\r\n\r\n mockAuth.getUserAuthToken.mockRejectedValue(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n\r\n return expect(uc.doPatch(\"asset1\", true)).rejects.toEqual(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n });\r\n});\r\n"]}
1
+ {"version":3,"file":"PatchAssetIsArchivedUC.test.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PatchAssetIsArchivedUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { makeMockJsonRequestUC } from \"../Mocks/MockJsonRequestUC\";\r\nimport { makeMockSignedAuthTokenUC } from \"../Mocks/MockSignedAuthToken\";\r\nimport { RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport {\r\n makePatchAssetIsArchivedUC,\r\n PatchAssetIsArchivedUC\r\n} from \"./PatchAssetIsArchivedUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const singletonSpy = jest.spyOn(appObjects, \"registerSingleton\");\r\n\r\n const vivedAPI = new VivedAPIEntity(appObjects.getOrCreate(\"API\"));\r\n\r\n const mockJsonRequester = makeMockJsonRequestUC(appObjects);\r\n mockJsonRequester.doRequest.mockResolvedValue({});\r\n\r\n const mockAuth = makeMockSignedAuthTokenUC(appObjects);\r\n mockAuth.getAuthToken.mockResolvedValue(\"mockAuthToken\");\r\n\r\n const uc = makePatchAssetIsArchivedUC(appObjects.getOrCreate(\"ao\"));\r\n\r\n return {\r\n uc,\r\n appObjects,\r\n singletonSpy,\r\n vivedAPI,\r\n mockJsonRequester,\r\n mockAuth\r\n };\r\n}\r\n\r\ndescribe(\"Patch Asset Is Archived UC\", () => {\r\n it(\"Registers itself as the Singleton\", () => {\r\n const { uc, singletonSpy } = makeTestRig();\r\n\r\n expect(singletonSpy).toBeCalledWith(uc);\r\n });\r\n\r\n it(\"Gets the singleton\", () => {\r\n const { uc, appObjects } = makeTestRig();\r\n\r\n expect(PatchAssetIsArchivedUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Resolves\", async () => {\r\n const { uc } = makeTestRig();\r\n\r\n return expect(uc.doPatch(\"asset1\", true)).resolves.toEqual(undefined);\r\n });\r\n\r\n it(\"Warns and rejects if the JSON Request rejects\", () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n mockJsonRequester.doRequest.mockRejectedValue(new Error(\"Some JSON Error\"));\r\n\r\n return expect(uc.doPatch(\"asset1\", true)).rejects.toEqual(\r\n new Error(\"Some JSON Error\")\r\n );\r\n });\r\n\r\n it(\"Requests the JSON with the expected url\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n await uc.doPatch(\"asset1\", true);\r\n\r\n const postURL = mockJsonRequester.doRequest.mock.calls[0][0] as URL;\r\n expect(postURL.toString()).toEqual(\r\n \"https://api.vivedlearning.com/assets/asset1\"\r\n );\r\n });\r\n\r\n it(\"Requests the JSON with the expected options\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n await uc.doPatch(\"asset1\", true);\r\n\r\n const postURL = mockJsonRequester.doRequest.mock\r\n .calls[0][1] as RequestJSONOptions;\r\n expect(postURL.method).toEqual(\"PATCH\");\r\n expect(postURL.headers).toEqual({\r\n Authorization: \"Bearer mockAuthToken\"\r\n });\r\n\r\n expect(postURL.body).toEqual(\r\n JSON.stringify({\r\n archived: true\r\n })\r\n );\r\n });\r\n\r\n it(\"Rejects if the get auth token fails\", () => {\r\n const { uc, mockAuth } = makeTestRig();\r\n\r\n mockAuth.getAuthToken.mockRejectedValue(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n\r\n return expect(uc.doPatch(\"asset1\", true)).rejects.toEqual(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n });\r\n});\r\n"]}
@@ -23,7 +23,7 @@ class PatchAssetMetaUCImp extends PatchAssetMetaUC {
23
23
  }
24
24
  get getAuthToken() {
25
25
  return this.getCachedSingleton(SignedAuthTokenUC_1.SignedAuthTokenUC.type)
26
- ?.getUserAuthToken;
26
+ ?.getAuthToken;
27
27
  }
28
28
  get vivedAPI() {
29
29
  return this.getCachedSingleton(VivedAPIEntity_1.VivedAPIEntity.type);
@@ -1 +1 @@
1
- {"version":3,"file":"PatchAssetMetaUC.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PatchAssetMetaUC.ts"],"names":[],"mappings":";;;AA2BA,oDAEC;AA7BD,sCAKqB;AACrB,+DAA4D;AAC5D,mDAAoE;AACpE,2DAAwD;AASxD,MAAsB,gBAAiB,SAAQ,kBAAW;IAKxD,MAAM,CAAC,GAAG,CAAC,UAAyB;QAClC,OAAO,IAAA,4BAAqB,EAAC,gBAAgB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAClE,CAAC;;AAPH,4CAQC;AAPQ,qBAAI,GAAG,kBAAkB,CAAC;AASnC,SAAgB,oBAAoB,CAAC,SAAoB;IACvD,OAAO,IAAI,mBAAmB,CAAC,SAAS,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,mBAAoB,SAAQ,gBAAgB;IAChD,IAAY,aAAa;QACvB,OAAO,IAAI,CAAC,kBAAkB,CAAgB,6BAAa,CAAC,IAAI,CAAC;YAC/D,EAAE,SAAS,CAAC;IAChB,CAAC;IAED,IAAY,YAAY;QACtB,OAAO,IAAI,CAAC,kBAAkB,CAAoB,qCAAiB,CAAC,IAAI,CAAC;YACvE,EAAE,gBAAgB,CAAC;IACvB,CAAC;IAED,IAAY,QAAQ;QAClB,OAAO,IAAI,CAAC,kBAAkB,CAAiB,+BAAc,CAAC,IAAI,CAAC,CAAC;IACtE,CAAC;IA4CD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC;QA3C1C,YAAO,GAAG,CAAC,IAAuB,EAAiB,EAAE;YACnD,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;YACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;YAEzC,IAAI,CAAC,YAAY,IAAI,CAAC,QAAQ,IAAI,CAAC,aAAa,EAAE,CAAC;gBACjD,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC;YAC1B,CAAC;YAED,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;YAEjD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACrC,YAAY,EAAE;qBACX,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;oBACd,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;oBAExD,MAAM,IAAI,GAAG;wBACX,IAAI;wBACJ,WAAW;wBACX,QAAQ;qBACT,CAAC;oBAEF,MAAM,OAAO,GAAuB;wBAClC,MAAM,EAAE,OAAO;wBACf,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;wBAC1B,OAAO,EAAE;4BACP,aAAa,EAAE,SAAS,GAAG,KAAK;yBACjC;qBACF,CAAC;oBAEF,OAAO,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACzC,CAAC,CAAC;qBACD,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;oBACV,OAAO,EAAE,CAAC;gBACZ,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;oBACX,MAAM,CAAC,CAAC,CAAC,CAAC;oBACV,OAAO;gBACT,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAIA,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;CACF","sourcesContent":["import {\r\n getSingletonComponent,\r\n AppObject,\r\n AppObjectRepo,\r\n AppObjectUC\r\n} from \"@vived/core\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { JsonRequestUC, RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport { SignedAuthTokenUC } from \"./SignedAuthTokenUC\";\r\n\r\nexport interface PatchAssetMetaDTO {\r\n id: string;\r\n name: string;\r\n description: string;\r\n archived: boolean;\r\n}\r\n\r\nexport abstract class PatchAssetMetaUC extends AppObjectUC {\r\n static type = \"PatchAssetMetaUC\";\r\n\r\n abstract doPatch(data: PatchAssetMetaDTO): Promise<void>;\r\n\r\n static get(appObjects: AppObjectRepo): PatchAssetMetaUC | undefined {\r\n return getSingletonComponent(PatchAssetMetaUC.type, appObjects);\r\n }\r\n}\r\n\r\nexport function makePatchAssetMetaUC(appObject: AppObject): PatchAssetMetaUC {\r\n return new PatchAssetMetaUCImp(appObject);\r\n}\r\n\r\nclass PatchAssetMetaUCImp extends PatchAssetMetaUC {\r\n private get jsonRequester() {\r\n return this.getCachedSingleton<JsonRequestUC>(JsonRequestUC.type)\r\n ?.doRequest;\r\n }\r\n\r\n private get getAuthToken() {\r\n return this.getCachedSingleton<SignedAuthTokenUC>(SignedAuthTokenUC.type)\r\n ?.getUserAuthToken;\r\n }\r\n\r\n private get vivedAPI() {\r\n return this.getCachedSingleton<VivedAPIEntity>(VivedAPIEntity.type);\r\n }\r\n\r\n doPatch = (data: PatchAssetMetaDTO): Promise<void> => {\r\n const getAuthToken = this.getAuthToken;\r\n const vivedAPI = this.vivedAPI;\r\n const jsonRequester = this.jsonRequester;\r\n\r\n if (!getAuthToken || !vivedAPI || !jsonRequester) {\r\n return Promise.reject();\r\n }\r\n\r\n const { id, name, description, archived } = data;\r\n\r\n return new Promise((resolve, reject) => {\r\n getAuthToken()\r\n .then((token) => {\r\n const postURL = vivedAPI.getEndpointURL(`assets/${id}`);\r\n\r\n const body = {\r\n name,\r\n description,\r\n archived\r\n };\r\n\r\n const options: RequestJSONOptions = {\r\n method: \"PATCH\",\r\n body: JSON.stringify(body),\r\n headers: {\r\n Authorization: \"Bearer \" + token\r\n }\r\n };\r\n\r\n return jsonRequester(postURL, options);\r\n })\r\n .then((_) => {\r\n resolve();\r\n })\r\n .catch((e) => {\r\n reject(e);\r\n return;\r\n });\r\n });\r\n };\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, PatchAssetMetaUC.type);\r\n this.appObjects.registerSingleton(this);\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"PatchAssetMetaUC.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PatchAssetMetaUC.ts"],"names":[],"mappings":";;;AA2BA,oDAEC;AA7BD,sCAKqB;AACrB,+DAA4D;AAC5D,mDAAoE;AACpE,2DAAwD;AASxD,MAAsB,gBAAiB,SAAQ,kBAAW;IAKxD,MAAM,CAAC,GAAG,CAAC,UAAyB;QAClC,OAAO,IAAA,4BAAqB,EAAC,gBAAgB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAClE,CAAC;;AAPH,4CAQC;AAPQ,qBAAI,GAAG,kBAAkB,CAAC;AASnC,SAAgB,oBAAoB,CAAC,SAAoB;IACvD,OAAO,IAAI,mBAAmB,CAAC,SAAS,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,mBAAoB,SAAQ,gBAAgB;IAChD,IAAY,aAAa;QACvB,OAAO,IAAI,CAAC,kBAAkB,CAAgB,6BAAa,CAAC,IAAI,CAAC;YAC/D,EAAE,SAAS,CAAC;IAChB,CAAC;IAED,IAAY,YAAY;QACtB,OAAO,IAAI,CAAC,kBAAkB,CAAoB,qCAAiB,CAAC,IAAI,CAAC;YACvE,EAAE,YAAY,CAAC;IACnB,CAAC;IAED,IAAY,QAAQ;QAClB,OAAO,IAAI,CAAC,kBAAkB,CAAiB,+BAAc,CAAC,IAAI,CAAC,CAAC;IACtE,CAAC;IA4CD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC;QA3C1C,YAAO,GAAG,CAAC,IAAuB,EAAiB,EAAE;YACnD,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;YACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;YAEzC,IAAI,CAAC,YAAY,IAAI,CAAC,QAAQ,IAAI,CAAC,aAAa,EAAE,CAAC;gBACjD,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC;YAC1B,CAAC;YAED,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;YAEjD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACrC,YAAY,EAAE;qBACX,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;oBACd,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;oBAExD,MAAM,IAAI,GAAG;wBACX,IAAI;wBACJ,WAAW;wBACX,QAAQ;qBACT,CAAC;oBAEF,MAAM,OAAO,GAAuB;wBAClC,MAAM,EAAE,OAAO;wBACf,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;wBAC1B,OAAO,EAAE;4BACP,aAAa,EAAE,SAAS,GAAG,KAAK;yBACjC;qBACF,CAAC;oBAEF,OAAO,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACzC,CAAC,CAAC;qBACD,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;oBACV,OAAO,EAAE,CAAC;gBACZ,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;oBACX,MAAM,CAAC,CAAC,CAAC,CAAC;oBACV,OAAO;gBACT,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAIA,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;CACF","sourcesContent":["import {\r\n getSingletonComponent,\r\n AppObject,\r\n AppObjectRepo,\r\n AppObjectUC\r\n} from \"@vived/core\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { JsonRequestUC, RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport { SignedAuthTokenUC } from \"./SignedAuthTokenUC\";\r\n\r\nexport interface PatchAssetMetaDTO {\r\n id: string;\r\n name: string;\r\n description: string;\r\n archived: boolean;\r\n}\r\n\r\nexport abstract class PatchAssetMetaUC extends AppObjectUC {\r\n static type = \"PatchAssetMetaUC\";\r\n\r\n abstract doPatch(data: PatchAssetMetaDTO): Promise<void>;\r\n\r\n static get(appObjects: AppObjectRepo): PatchAssetMetaUC | undefined {\r\n return getSingletonComponent(PatchAssetMetaUC.type, appObjects);\r\n }\r\n}\r\n\r\nexport function makePatchAssetMetaUC(appObject: AppObject): PatchAssetMetaUC {\r\n return new PatchAssetMetaUCImp(appObject);\r\n}\r\n\r\nclass PatchAssetMetaUCImp extends PatchAssetMetaUC {\r\n private get jsonRequester() {\r\n return this.getCachedSingleton<JsonRequestUC>(JsonRequestUC.type)\r\n ?.doRequest;\r\n }\r\n\r\n private get getAuthToken() {\r\n return this.getCachedSingleton<SignedAuthTokenUC>(SignedAuthTokenUC.type)\r\n ?.getAuthToken;\r\n }\r\n\r\n private get vivedAPI() {\r\n return this.getCachedSingleton<VivedAPIEntity>(VivedAPIEntity.type);\r\n }\r\n\r\n doPatch = (data: PatchAssetMetaDTO): Promise<void> => {\r\n const getAuthToken = this.getAuthToken;\r\n const vivedAPI = this.vivedAPI;\r\n const jsonRequester = this.jsonRequester;\r\n\r\n if (!getAuthToken || !vivedAPI || !jsonRequester) {\r\n return Promise.reject();\r\n }\r\n\r\n const { id, name, description, archived } = data;\r\n\r\n return new Promise((resolve, reject) => {\r\n getAuthToken()\r\n .then((token) => {\r\n const postURL = vivedAPI.getEndpointURL(`assets/${id}`);\r\n\r\n const body = {\r\n name,\r\n description,\r\n archived\r\n };\r\n\r\n const options: RequestJSONOptions = {\r\n method: \"PATCH\",\r\n body: JSON.stringify(body),\r\n headers: {\r\n Authorization: \"Bearer \" + token\r\n }\r\n };\r\n\r\n return jsonRequester(postURL, options);\r\n })\r\n .then((_) => {\r\n resolve();\r\n })\r\n .catch((e) => {\r\n reject(e);\r\n return;\r\n });\r\n });\r\n };\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, PatchAssetMetaUC.type);\r\n this.appObjects.registerSingleton(this);\r\n }\r\n}\r\n"]}
@@ -12,7 +12,7 @@ function makeTestRig() {
12
12
  const mockJsonRequester = (0, MockJsonRequestUC_1.makeMockJsonRequestUC)(appObjects);
13
13
  mockJsonRequester.doRequest.mockResolvedValue({});
14
14
  const mockAuth = (0, MockSignedAuthToken_1.makeMockSignedAuthTokenUC)(appObjects);
15
- mockAuth.getUserAuthToken.mockResolvedValue("mockAuthToken");
15
+ mockAuth.getAuthToken.mockResolvedValue("mockAuthToken");
16
16
  const uc = (0, PatchAssetMetaUC_1.makePatchAssetMetaUC)(appObjects.getOrCreate("ao"));
17
17
  return {
18
18
  uc,
@@ -72,7 +72,7 @@ describe("Patch Asset Is Archived UC", () => {
72
72
  });
73
73
  it("Rejects if the get auth token fails", () => {
74
74
  const { uc, mockAuth } = makeTestRig();
75
- mockAuth.getUserAuthToken.mockRejectedValue(new Error("Some Auth token error Error"));
75
+ mockAuth.getAuthToken.mockRejectedValue(new Error("Some Auth token error Error"));
76
76
  return expect(uc.doPatch(makeDTO())).rejects.toEqual(new Error("Some Auth token error Error"));
77
77
  });
78
78
  });
@@ -1 +1 @@
1
- {"version":3,"file":"PatchAssetMetaUC.test.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PatchAssetMetaUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { makeMockJsonRequestUC } from \"../Mocks/MockJsonRequestUC\";\r\nimport { makeMockSignedAuthTokenUC } from \"../Mocks/MockSignedAuthToken\";\r\nimport { RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport {\r\n makePatchAssetMetaUC,\r\n PatchAssetMetaDTO,\r\n PatchAssetMetaUC\r\n} from \"./PatchAssetMetaUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const singletonSpy = jest.spyOn(appObjects, \"registerSingleton\");\r\n\r\n const vivedAPI = new VivedAPIEntity(appObjects.getOrCreate(\"API\"));\r\n\r\n const mockJsonRequester = makeMockJsonRequestUC(appObjects);\r\n mockJsonRequester.doRequest.mockResolvedValue({});\r\n\r\n const mockAuth = makeMockSignedAuthTokenUC(appObjects);\r\n mockAuth.getUserAuthToken.mockResolvedValue(\"mockAuthToken\");\r\n\r\n const uc = makePatchAssetMetaUC(appObjects.getOrCreate(\"ao\"));\r\n\r\n return {\r\n uc,\r\n appObjects,\r\n singletonSpy,\r\n vivedAPI,\r\n mockJsonRequester,\r\n mockAuth\r\n };\r\n}\r\n\r\nfunction makeDTO(): PatchAssetMetaDTO {\r\n return {\r\n id: \"asset1\",\r\n archived: true,\r\n description: \"Asset Description\",\r\n name: \"assetName\"\r\n };\r\n}\r\n\r\ndescribe(\"Patch Asset Is Archived UC\", () => {\r\n it(\"Registers itself as the Singleton\", () => {\r\n const { uc, singletonSpy } = makeTestRig();\r\n\r\n expect(singletonSpy).toBeCalledWith(uc);\r\n });\r\n\r\n it(\"Gets the singleton\", () => {\r\n const { uc, appObjects } = makeTestRig();\r\n\r\n expect(PatchAssetMetaUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Resolves\", async () => {\r\n const { uc } = makeTestRig();\r\n\r\n return expect(uc.doPatch(makeDTO())).resolves.toEqual(undefined);\r\n });\r\n\r\n it(\"Warns and rejects if the JSON Request rejects\", () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n mockJsonRequester.doRequest.mockRejectedValue(new Error(\"Some JSON Error\"));\r\n\r\n return expect(uc.doPatch(makeDTO())).rejects.toEqual(\r\n new Error(\"Some JSON Error\")\r\n );\r\n });\r\n\r\n it(\"Requests the JSON with the expected url\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n await uc.doPatch(makeDTO());\r\n\r\n const postURL = mockJsonRequester.doRequest.mock.calls[0][0] as URL;\r\n expect(postURL.toString()).toEqual(\r\n \"https://api.vivedlearning.com/assets/asset1\"\r\n );\r\n });\r\n\r\n it(\"Requests the JSON with the expected options\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n const data = makeDTO();\r\n await uc.doPatch(data);\r\n\r\n const postURL = mockJsonRequester.doRequest.mock\r\n .calls[0][1] as RequestJSONOptions;\r\n expect(postURL.method).toEqual(\"PATCH\");\r\n expect(postURL.headers).toEqual({\r\n Authorization: \"Bearer mockAuthToken\"\r\n });\r\n\r\n const bodyObject = JSON.parse(postURL.body);\r\n expect(bodyObject.archived).toEqual(true);\r\n expect(bodyObject.description).toEqual(data.description);\r\n expect(bodyObject.name).toEqual(data.name);\r\n });\r\n\r\n it(\"Rejects if the get auth token fails\", () => {\r\n const { uc, mockAuth } = makeTestRig();\r\n\r\n mockAuth.getUserAuthToken.mockRejectedValue(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n\r\n return expect(uc.doPatch(makeDTO())).rejects.toEqual(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n });\r\n});\r\n"]}
1
+ {"version":3,"file":"PatchAssetMetaUC.test.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PatchAssetMetaUC.test.ts"],"names":[],"mappings":";;AAAA,sCAAgD;AAChD,+DAA4D;AAC5D,kEAAmE;AACnE,sEAAyE;AAEzE,yDAI4B;AAE5B,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IACvC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;IAEjE,MAAM,QAAQ,GAAG,IAAI,+BAAc,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAEnE,MAAM,iBAAiB,GAAG,IAAA,yCAAqB,EAAC,UAAU,CAAC,CAAC;IAC5D,iBAAiB,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAElD,MAAM,QAAQ,GAAG,IAAA,+CAAyB,EAAC,UAAU,CAAC,CAAC;IACvD,QAAQ,CAAC,YAAY,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;IAEzD,MAAM,EAAE,GAAG,IAAA,uCAAoB,EAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IAE9D,OAAO;QACL,EAAE;QACF,UAAU;QACV,YAAY;QACZ,QAAQ;QACR,iBAAiB;QACjB,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,SAAS,OAAO;IACd,OAAO;QACL,EAAE,EAAE,QAAQ;QACZ,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,mBAAmB;QAChC,IAAI,EAAE,WAAW;KAClB,CAAC;AACJ,CAAC;AAED,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC1C,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,WAAW,EAAE,CAAC;QAE3C,MAAM,CAAC,YAAY,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAC5B,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,WAAW,EAAE,CAAC;QAEzC,MAAM,CAAC,mCAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;QACxB,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,EAAE,CAAC;QAE7B,OAAO,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,EAAE,EAAE,EAAE,iBAAiB,EAAE,GAAG,WAAW,EAAE,CAAC;QAEhD,iBAAiB,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAE5E,OAAO,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAClD,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAC7B,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACvD,MAAM,EAAE,EAAE,EAAE,iBAAiB,EAAE,GAAG,WAAW,EAAE,CAAC;QAEhD,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QAE5B,MAAM,OAAO,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAQ,CAAC;QACpE,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAChC,6CAA6C,CAC9C,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,EAAE,EAAE,EAAE,iBAAiB,EAAE,GAAG,WAAW,EAAE,CAAC;QAEhD,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;QACvB,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEvB,MAAM,OAAO,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI;aAC7C,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAuB,CAAC;QACrC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;YAC9B,aAAa,EAAE,sBAAsB;SACtC,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC1C,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzD,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,CAAC;QAEvC,QAAQ,CAAC,YAAY,CAAC,iBAAiB,CACrC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CACzC,CAAC;QAEF,OAAO,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAClD,IAAI,KAAK,CAAC,6BAA6B,CAAC,CACzC,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { makeMockJsonRequestUC } from \"../Mocks/MockJsonRequestUC\";\r\nimport { makeMockSignedAuthTokenUC } from \"../Mocks/MockSignedAuthToken\";\r\nimport { RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport {\r\n makePatchAssetMetaUC,\r\n PatchAssetMetaDTO,\r\n PatchAssetMetaUC\r\n} from \"./PatchAssetMetaUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const singletonSpy = jest.spyOn(appObjects, \"registerSingleton\");\r\n\r\n const vivedAPI = new VivedAPIEntity(appObjects.getOrCreate(\"API\"));\r\n\r\n const mockJsonRequester = makeMockJsonRequestUC(appObjects);\r\n mockJsonRequester.doRequest.mockResolvedValue({});\r\n\r\n const mockAuth = makeMockSignedAuthTokenUC(appObjects);\r\n mockAuth.getAuthToken.mockResolvedValue(\"mockAuthToken\");\r\n\r\n const uc = makePatchAssetMetaUC(appObjects.getOrCreate(\"ao\"));\r\n\r\n return {\r\n uc,\r\n appObjects,\r\n singletonSpy,\r\n vivedAPI,\r\n mockJsonRequester,\r\n mockAuth\r\n };\r\n}\r\n\r\nfunction makeDTO(): PatchAssetMetaDTO {\r\n return {\r\n id: \"asset1\",\r\n archived: true,\r\n description: \"Asset Description\",\r\n name: \"assetName\"\r\n };\r\n}\r\n\r\ndescribe(\"Patch Asset Is Archived UC\", () => {\r\n it(\"Registers itself as the Singleton\", () => {\r\n const { uc, singletonSpy } = makeTestRig();\r\n\r\n expect(singletonSpy).toBeCalledWith(uc);\r\n });\r\n\r\n it(\"Gets the singleton\", () => {\r\n const { uc, appObjects } = makeTestRig();\r\n\r\n expect(PatchAssetMetaUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Resolves\", async () => {\r\n const { uc } = makeTestRig();\r\n\r\n return expect(uc.doPatch(makeDTO())).resolves.toEqual(undefined);\r\n });\r\n\r\n it(\"Warns and rejects if the JSON Request rejects\", () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n mockJsonRequester.doRequest.mockRejectedValue(new Error(\"Some JSON Error\"));\r\n\r\n return expect(uc.doPatch(makeDTO())).rejects.toEqual(\r\n new Error(\"Some JSON Error\")\r\n );\r\n });\r\n\r\n it(\"Requests the JSON with the expected url\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n await uc.doPatch(makeDTO());\r\n\r\n const postURL = mockJsonRequester.doRequest.mock.calls[0][0] as URL;\r\n expect(postURL.toString()).toEqual(\r\n \"https://api.vivedlearning.com/assets/asset1\"\r\n );\r\n });\r\n\r\n it(\"Requests the JSON with the expected options\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n const data = makeDTO();\r\n await uc.doPatch(data);\r\n\r\n const postURL = mockJsonRequester.doRequest.mock\r\n .calls[0][1] as RequestJSONOptions;\r\n expect(postURL.method).toEqual(\"PATCH\");\r\n expect(postURL.headers).toEqual({\r\n Authorization: \"Bearer mockAuthToken\"\r\n });\r\n\r\n const bodyObject = JSON.parse(postURL.body);\r\n expect(bodyObject.archived).toEqual(true);\r\n expect(bodyObject.description).toEqual(data.description);\r\n expect(bodyObject.name).toEqual(data.name);\r\n });\r\n\r\n it(\"Rejects if the get auth token fails\", () => {\r\n const { uc, mockAuth } = makeTestRig();\r\n\r\n mockAuth.getAuthToken.mockRejectedValue(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n\r\n return expect(uc.doPatch(makeDTO())).rejects.toEqual(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n });\r\n});\r\n"]}
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PatchAssetUC = void 0;
4
4
  exports.makePatchAssetUC = makePatchAssetUC;
5
5
  const core_1 = require("@vived/core");
6
- const core_2 = require("@vived/core");
7
6
  const VivedAPIEntity_1 = require("../Entities/VivedAPIEntity");
8
7
  const FileUploadUC_1 = require("./FileUploadUC");
9
8
  const JsonRequestUC_1 = require("./JsonRequestUC");
@@ -25,7 +24,7 @@ class PatchAssetUCImp extends PatchAssetUC {
25
24
  }
26
25
  get getAuthToken() {
27
26
  return this.getCachedSingleton(SignedAuthTokenUC_1.SignedAuthTokenUC.type)
28
- ?.getUserAuthToken;
27
+ ?.getAuthToken;
29
28
  }
30
29
  get fileUpload() {
31
30
  return this.getCachedSingleton(FileUploadUC_1.FileUploadUC.type)?.doUpload;
@@ -47,7 +46,7 @@ class PatchAssetUCImp extends PatchAssetUC {
47
46
  let extension = "";
48
47
  const strArr = file.name.split(".");
49
48
  extension = strArr[strArr.length - 1];
50
- const filename = `${(0, core_2.generateUniqueID)()}.${extension}`;
49
+ const filename = `${(0, core_1.generateUniqueID)()}.${extension}`;
51
50
  const assetFile = new File([file], `${filename}`, {
52
51
  lastModified: Date.now()
53
52
  });
@@ -1 +1 @@
1
- {"version":3,"file":"PatchAssetUC.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PatchAssetUC.ts"],"names":[],"mappings":"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","sourcesContent":["import {\r\n getSingletonComponent,\r\n AppObject,\r\n AppObjectRepo,\r\n AppObjectUC\r\n} from \"@vived/core\";\r\nimport { generateUniqueID } from \"@vived/core\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { FileUploadUC } from \"./FileUploadUC\";\r\nimport { JsonRequestUC, RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport { SignedAuthTokenUC } from \"./SignedAuthTokenUC\";\r\n\r\nexport interface PatchAssetDTO {\r\n id: string;\r\n name: string;\r\n description: string;\r\n archived: boolean;\r\n file: File;\r\n}\r\n\r\ninterface PatchParam {\r\n name: string;\r\n description: string;\r\n archived: boolean;\r\n filename: string;\r\n}\r\n\r\nexport abstract class PatchAssetUC extends AppObjectUC {\r\n static type = \"PatchAssetUC\";\r\n\r\n abstract doPatch(data: PatchAssetDTO): Promise<void>;\r\n\r\n static get(appObjects: AppObjectRepo): PatchAssetUC | undefined {\r\n return getSingletonComponent(PatchAssetUC.type, appObjects);\r\n }\r\n}\r\n\r\nexport function makePatchAssetUC(appObject: AppObject): PatchAssetUC {\r\n return new PatchAssetUCImp(appObject);\r\n}\r\n\r\nclass PatchAssetUCImp extends PatchAssetUC {\r\n private get jsonRequester() {\r\n return this.getCachedSingleton<JsonRequestUC>(JsonRequestUC.type)\r\n ?.doRequest;\r\n }\r\n\r\n private get getAuthToken() {\r\n return this.getCachedSingleton<SignedAuthTokenUC>(SignedAuthTokenUC.type)\r\n ?.getUserAuthToken;\r\n }\r\n\r\n private get fileUpload() {\r\n return this.getCachedSingleton<FileUploadUC>(FileUploadUC.type)?.doUpload;\r\n }\r\n\r\n private get vivedAPI() {\r\n return this.getCachedSingleton<VivedAPIEntity>(VivedAPIEntity.type);\r\n }\r\n\r\n doPatch = (data: PatchAssetDTO): Promise<void> => {\r\n const getAuthToken = this.getAuthToken;\r\n const vivedAPI = this.vivedAPI;\r\n const jsonRequester = this.jsonRequester;\r\n const fileUpload = this.fileUpload;\r\n\r\n if (!getAuthToken || !vivedAPI || !jsonRequester || !fileUpload) {\r\n return Promise.reject();\r\n }\r\n\r\n const { id, file, name, description, archived } = data;\r\n\r\n let extension: string = \"\";\r\n const strArr = file.name.split(\".\");\r\n extension = strArr[strArr.length - 1];\r\n const filename = `${generateUniqueID()}.${extension}`;\r\n\r\n const assetFile = new File([file], `${filename}`, {\r\n lastModified: Date.now()\r\n });\r\n\r\n return new Promise((resolve, reject) => {\r\n fileUpload(assetFile)\r\n .then((_) => {\r\n return getAuthToken();\r\n })\r\n .then((token) => {\r\n const url = vivedAPI.getEndpointURL(`assets/${id}`);\r\n const body: PatchParam = {\r\n archived,\r\n description,\r\n filename,\r\n name\r\n };\r\n\r\n const options: RequestJSONOptions = {\r\n method: \"PATCH\",\r\n body: JSON.stringify(body),\r\n headers: {\r\n Authorization: \"Bearer \" + token\r\n }\r\n };\r\n\r\n return jsonRequester(url, options);\r\n })\r\n .then((_) => {\r\n resolve();\r\n })\r\n .catch((e) => {\r\n reject(e);\r\n return;\r\n });\r\n });\r\n };\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, PatchAssetUC.type);\r\n this.appObjects.registerSingleton(this);\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"PatchAssetUC.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PatchAssetUC.ts"],"names":[],"mappings":"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","sourcesContent":["import {\r\n AppObject,\r\n AppObjectRepo,\r\n AppObjectUC,\r\n generateUniqueID,\r\n getSingletonComponent\r\n} from \"@vived/core\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { FileUploadUC } from \"./FileUploadUC\";\r\nimport { JsonRequestUC, RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport { SignedAuthTokenUC } from \"./SignedAuthTokenUC\";\r\n\r\nexport interface PatchAssetDTO {\r\n id: string;\r\n name: string;\r\n description: string;\r\n archived: boolean;\r\n file: File;\r\n}\r\n\r\ninterface PatchParam {\r\n name: string;\r\n description: string;\r\n archived: boolean;\r\n filename: string;\r\n}\r\n\r\nexport abstract class PatchAssetUC extends AppObjectUC {\r\n static type = \"PatchAssetUC\";\r\n\r\n abstract doPatch(data: PatchAssetDTO): Promise<void>;\r\n\r\n static get(appObjects: AppObjectRepo): PatchAssetUC | undefined {\r\n return getSingletonComponent(PatchAssetUC.type, appObjects);\r\n }\r\n}\r\n\r\nexport function makePatchAssetUC(appObject: AppObject): PatchAssetUC {\r\n return new PatchAssetUCImp(appObject);\r\n}\r\n\r\nclass PatchAssetUCImp extends PatchAssetUC {\r\n private get jsonRequester() {\r\n return this.getCachedSingleton<JsonRequestUC>(JsonRequestUC.type)\r\n ?.doRequest;\r\n }\r\n\r\n private get getAuthToken() {\r\n return this.getCachedSingleton<SignedAuthTokenUC>(SignedAuthTokenUC.type)\r\n ?.getAuthToken;\r\n }\r\n\r\n private get fileUpload() {\r\n return this.getCachedSingleton<FileUploadUC>(FileUploadUC.type)?.doUpload;\r\n }\r\n\r\n private get vivedAPI() {\r\n return this.getCachedSingleton<VivedAPIEntity>(VivedAPIEntity.type);\r\n }\r\n\r\n doPatch = (data: PatchAssetDTO): Promise<void> => {\r\n const getAuthToken = this.getAuthToken;\r\n const vivedAPI = this.vivedAPI;\r\n const jsonRequester = this.jsonRequester;\r\n const fileUpload = this.fileUpload;\r\n\r\n if (!getAuthToken || !vivedAPI || !jsonRequester || !fileUpload) {\r\n return Promise.reject();\r\n }\r\n\r\n const { id, file, name, description, archived } = data;\r\n\r\n let extension: string = \"\";\r\n const strArr = file.name.split(\".\");\r\n extension = strArr[strArr.length - 1];\r\n const filename = `${generateUniqueID()}.${extension}`;\r\n\r\n const assetFile = new File([file], `${filename}`, {\r\n lastModified: Date.now()\r\n });\r\n\r\n return new Promise((resolve, reject) => {\r\n fileUpload(assetFile)\r\n .then((_) => {\r\n return getAuthToken();\r\n })\r\n .then((token) => {\r\n const url = vivedAPI.getEndpointURL(`assets/${id}`);\r\n const body: PatchParam = {\r\n archived,\r\n description,\r\n filename,\r\n name\r\n };\r\n\r\n const options: RequestJSONOptions = {\r\n method: \"PATCH\",\r\n body: JSON.stringify(body),\r\n headers: {\r\n Authorization: \"Bearer \" + token\r\n }\r\n };\r\n\r\n return jsonRequester(url, options);\r\n })\r\n .then((_) => {\r\n resolve();\r\n })\r\n .catch((e) => {\r\n reject(e);\r\n return;\r\n });\r\n });\r\n };\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, PatchAssetUC.type);\r\n this.appObjects.registerSingleton(this);\r\n }\r\n}\r\n"]}
@@ -13,7 +13,7 @@ function makeTestRig() {
13
13
  const mockJsonRequester = (0, MockJsonRequestUC_1.makeMockJsonRequestUC)(appObjects);
14
14
  mockJsonRequester.doRequest.mockResolvedValue({});
15
15
  const mockAuth = (0, MockSignedAuthToken_1.makeMockSignedAuthTokenUC)(appObjects);
16
- mockAuth.getUserAuthToken.mockResolvedValue("mockAuthToken");
16
+ mockAuth.getAuthToken.mockResolvedValue("mockAuthToken");
17
17
  const mockFileUpload = (0, MockFileUpload_1.makeMockFileUploadUC)(appObjects);
18
18
  const uc = (0, PatchAssetUC_1.makePatchAssetUC)(appObjects.getOrCreate("ao"));
19
19
  return {
@@ -76,7 +76,7 @@ describe("Patch Asset Is Archived UC", () => {
76
76
  });
77
77
  it("Rejects if the get auth token fails", () => {
78
78
  const { uc, mockAuth } = makeTestRig();
79
- mockAuth.getUserAuthToken.mockRejectedValue(new Error("Some Auth token error Error"));
79
+ mockAuth.getAuthToken.mockRejectedValue(new Error("Some Auth token error Error"));
80
80
  return expect(uc.doPatch(makeDTO())).rejects.toEqual(new Error("Some Auth token error Error"));
81
81
  });
82
82
  it("Rejects if the file upload fails", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"PatchAssetUC.test.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PatchAssetUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { makeMockFileUploadUC } from \"../Mocks/MockFileUpload\";\r\nimport { makeMockJsonRequestUC } from \"../Mocks/MockJsonRequestUC\";\r\nimport { makeMockSignedAuthTokenUC } from \"../Mocks/MockSignedAuthToken\";\r\nimport { RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport { makePatchAssetUC, PatchAssetDTO, PatchAssetUC } from \"./PatchAssetUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const singletonSpy = jest.spyOn(appObjects, \"registerSingleton\");\r\n\r\n const vivedAPI = new VivedAPIEntity(appObjects.getOrCreate(\"API\"));\r\n\r\n const mockJsonRequester = makeMockJsonRequestUC(appObjects);\r\n mockJsonRequester.doRequest.mockResolvedValue({});\r\n\r\n const mockAuth = makeMockSignedAuthTokenUC(appObjects);\r\n mockAuth.getUserAuthToken.mockResolvedValue(\"mockAuthToken\");\r\n\r\n const mockFileUpload = makeMockFileUploadUC(appObjects);\r\n\r\n const uc = makePatchAssetUC(appObjects.getOrCreate(\"ao\"));\r\n\r\n return {\r\n uc,\r\n appObjects,\r\n singletonSpy,\r\n vivedAPI,\r\n mockJsonRequester,\r\n mockAuth,\r\n mockFileUpload\r\n };\r\n}\r\n\r\nfunction makeDTO(): PatchAssetDTO {\r\n return {\r\n id: \"asset1\",\r\n archived: true,\r\n description: \"Asset Description\",\r\n name: \"assetName\",\r\n file: new File([], \"some.filename\")\r\n };\r\n}\r\n\r\ndescribe(\"Patch Asset Is Archived UC\", () => {\r\n it(\"Registers itself as the Singleton\", () => {\r\n const { uc, singletonSpy } = makeTestRig();\r\n\r\n expect(singletonSpy).toBeCalledWith(uc);\r\n });\r\n\r\n it(\"Gets the singleton\", () => {\r\n const { uc, appObjects } = makeTestRig();\r\n\r\n expect(PatchAssetUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Resolves\", async () => {\r\n const { uc } = makeTestRig();\r\n\r\n return expect(uc.doPatch(makeDTO())).resolves.toEqual(undefined);\r\n });\r\n\r\n it(\"Warns and rejects if the JSON Request rejects\", () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n mockJsonRequester.doRequest.mockRejectedValue(new Error(\"Some JSON Error\"));\r\n\r\n return expect(uc.doPatch(makeDTO())).rejects.toEqual(\r\n new Error(\"Some JSON Error\")\r\n );\r\n });\r\n\r\n it(\"Requests the JSON with the expected url\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n await uc.doPatch(makeDTO());\r\n\r\n const postURL = mockJsonRequester.doRequest.mock.calls[0][0] as URL;\r\n expect(postURL.toString()).toEqual(\r\n \"https://api.vivedlearning.com/assets/asset1\"\r\n );\r\n });\r\n\r\n it(\"Requests the JSON with the expected options\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n const data = makeDTO();\r\n await uc.doPatch(data);\r\n\r\n const postURL = mockJsonRequester.doRequest.mock\r\n .calls[0][1] as RequestJSONOptions;\r\n expect(postURL.method).toEqual(\"PATCH\");\r\n expect(postURL.headers).toEqual({\r\n Authorization: \"Bearer mockAuthToken\"\r\n });\r\n\r\n const bodyObject = JSON.parse(postURL.body);\r\n expect(bodyObject.archived).toEqual(true);\r\n expect(bodyObject.description).toEqual(data.description);\r\n expect(bodyObject.name).toEqual(data.name);\r\n });\r\n\r\n it(\"Rejects if the get auth token fails\", () => {\r\n const { uc, mockAuth } = makeTestRig();\r\n\r\n mockAuth.getUserAuthToken.mockRejectedValue(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n\r\n return expect(uc.doPatch(makeDTO())).rejects.toEqual(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n });\r\n\r\n it(\"Rejects if the file upload fails\", () => {\r\n const { uc, mockFileUpload } = makeTestRig();\r\n\r\n mockFileUpload.doUpload.mockRejectedValue(new Error(\"Some upload error\"));\r\n\r\n return expect(uc.doPatch(makeDTO())).rejects.toEqual(\r\n new Error(\"Some upload error\")\r\n );\r\n });\r\n\r\n it(\"Calls file upload as expected\", async () => {\r\n const { uc, mockFileUpload } = makeTestRig();\r\n\r\n const data = makeDTO();\r\n await uc.doPatch(data);\r\n\r\n expect(mockFileUpload.doUpload).toBeCalledWith(data.file);\r\n });\r\n});\r\n"]}
1
+ {"version":3,"file":"PatchAssetUC.test.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PatchAssetUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { makeMockFileUploadUC } from \"../Mocks/MockFileUpload\";\r\nimport { makeMockJsonRequestUC } from \"../Mocks/MockJsonRequestUC\";\r\nimport { makeMockSignedAuthTokenUC } from \"../Mocks/MockSignedAuthToken\";\r\nimport { RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport { makePatchAssetUC, PatchAssetDTO, PatchAssetUC } from \"./PatchAssetUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const singletonSpy = jest.spyOn(appObjects, \"registerSingleton\");\r\n\r\n const vivedAPI = new VivedAPIEntity(appObjects.getOrCreate(\"API\"));\r\n\r\n const mockJsonRequester = makeMockJsonRequestUC(appObjects);\r\n mockJsonRequester.doRequest.mockResolvedValue({});\r\n\r\n const mockAuth = makeMockSignedAuthTokenUC(appObjects);\r\n mockAuth.getAuthToken.mockResolvedValue(\"mockAuthToken\");\r\n\r\n const mockFileUpload = makeMockFileUploadUC(appObjects);\r\n\r\n const uc = makePatchAssetUC(appObjects.getOrCreate(\"ao\"));\r\n\r\n return {\r\n uc,\r\n appObjects,\r\n singletonSpy,\r\n vivedAPI,\r\n mockJsonRequester,\r\n mockAuth,\r\n mockFileUpload\r\n };\r\n}\r\n\r\nfunction makeDTO(): PatchAssetDTO {\r\n return {\r\n id: \"asset1\",\r\n archived: true,\r\n description: \"Asset Description\",\r\n name: \"assetName\",\r\n file: new File([], \"some.filename\")\r\n };\r\n}\r\n\r\ndescribe(\"Patch Asset Is Archived UC\", () => {\r\n it(\"Registers itself as the Singleton\", () => {\r\n const { uc, singletonSpy } = makeTestRig();\r\n\r\n expect(singletonSpy).toBeCalledWith(uc);\r\n });\r\n\r\n it(\"Gets the singleton\", () => {\r\n const { uc, appObjects } = makeTestRig();\r\n\r\n expect(PatchAssetUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Resolves\", async () => {\r\n const { uc } = makeTestRig();\r\n\r\n return expect(uc.doPatch(makeDTO())).resolves.toEqual(undefined);\r\n });\r\n\r\n it(\"Warns and rejects if the JSON Request rejects\", () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n mockJsonRequester.doRequest.mockRejectedValue(new Error(\"Some JSON Error\"));\r\n\r\n return expect(uc.doPatch(makeDTO())).rejects.toEqual(\r\n new Error(\"Some JSON Error\")\r\n );\r\n });\r\n\r\n it(\"Requests the JSON with the expected url\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n await uc.doPatch(makeDTO());\r\n\r\n const postURL = mockJsonRequester.doRequest.mock.calls[0][0] as URL;\r\n expect(postURL.toString()).toEqual(\r\n \"https://api.vivedlearning.com/assets/asset1\"\r\n );\r\n });\r\n\r\n it(\"Requests the JSON with the expected options\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n const data = makeDTO();\r\n await uc.doPatch(data);\r\n\r\n const postURL = mockJsonRequester.doRequest.mock\r\n .calls[0][1] as RequestJSONOptions;\r\n expect(postURL.method).toEqual(\"PATCH\");\r\n expect(postURL.headers).toEqual({\r\n Authorization: \"Bearer mockAuthToken\"\r\n });\r\n\r\n const bodyObject = JSON.parse(postURL.body);\r\n expect(bodyObject.archived).toEqual(true);\r\n expect(bodyObject.description).toEqual(data.description);\r\n expect(bodyObject.name).toEqual(data.name);\r\n });\r\n\r\n it(\"Rejects if the get auth token fails\", () => {\r\n const { uc, mockAuth } = makeTestRig();\r\n\r\n mockAuth.getAuthToken.mockRejectedValue(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n\r\n return expect(uc.doPatch(makeDTO())).rejects.toEqual(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n });\r\n\r\n it(\"Rejects if the file upload fails\", () => {\r\n const { uc, mockFileUpload } = makeTestRig();\r\n\r\n mockFileUpload.doUpload.mockRejectedValue(new Error(\"Some upload error\"));\r\n\r\n return expect(uc.doPatch(makeDTO())).rejects.toEqual(\r\n new Error(\"Some upload error\")\r\n );\r\n });\r\n\r\n it(\"Calls file upload as expected\", async () => {\r\n const { uc, mockFileUpload } = makeTestRig();\r\n\r\n const data = makeDTO();\r\n await uc.doPatch(data);\r\n\r\n expect(mockFileUpload.doUpload).toBeCalledWith(data.file);\r\n });\r\n});\r\n"]}
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PostNewAssetUC = void 0;
4
4
  exports.makePostNewAssetUC = makePostNewAssetUC;
5
5
  const core_1 = require("@vived/core");
6
- const core_2 = require("@vived/core");
7
6
  const VivedAPIEntity_1 = require("../Entities/VivedAPIEntity");
8
7
  const FileUploadUC_1 = require("./FileUploadUC");
9
8
  const JsonRequestUC_1 = require("./JsonRequestUC");
@@ -25,7 +24,7 @@ class PostNewAssetUCImp extends PostNewAssetUC {
25
24
  }
26
25
  get getPlayerAuthToken() {
27
26
  return this.getCachedSingleton(SignedAuthTokenUC_1.SignedAuthTokenUC.type)
28
- ?.getUserAuthToken;
27
+ ?.getAuthToken;
29
28
  }
30
29
  get fileUploader() {
31
30
  return this.getCachedSingleton(FileUploadUC_1.FileUploadUC.type)?.doUpload;
@@ -48,7 +47,7 @@ class PostNewAssetUCImp extends PostNewAssetUC {
48
47
  let assetId;
49
48
  const nameSplits = file.name.split(".");
50
49
  const extension = nameSplits[nameSplits.length - 1];
51
- const filename = `${(0, core_2.generateUniqueID)()}.${extension}`;
50
+ const filename = `${(0, core_1.generateUniqueID)()}.${extension}`;
52
51
  const assetFile = new File([file], filename, {
53
52
  lastModified: Date.now()
54
53
  });
@@ -1 +1 @@
1
- {"version":3,"file":"PostNewAssetUC.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PostNewAssetUC.ts"],"names":[],"mappings":"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","sourcesContent":["import {\r\n getSingletonComponent,\r\n AppObject,\r\n AppObjectRepo,\r\n AppObjectUC\r\n} from \"@vived/core\";\r\nimport { generateUniqueID } from \"@vived/core\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { FileUploadUC } from \"./FileUploadUC\";\r\nimport { JsonRequestUC, RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport { SignedAuthTokenUC } from \"./SignedAuthTokenUC\";\r\n\r\nexport interface NewAssetDTO {\r\n name: string;\r\n description: string;\r\n ownerID: string;\r\n file: File;\r\n}\r\n\r\nexport interface NewAssetResponseDTO {\r\n id: string;\r\n filename: string;\r\n}\r\n\r\nexport abstract class PostNewAssetUC extends AppObjectUC {\r\n static type = \"PostNewAssetUC\";\r\n\r\n abstract doPost(data: NewAssetDTO): Promise<NewAssetResponseDTO>;\r\n\r\n static get(appObjects: AppObjectRepo): PostNewAssetUC | undefined {\r\n return getSingletonComponent(PostNewAssetUC.type, appObjects);\r\n }\r\n}\r\n\r\nexport function makePostNewAssetUC(appObject: AppObject): PostNewAssetUC {\r\n return new PostNewAssetUCImp(appObject);\r\n}\r\n\r\nclass PostNewAssetUCImp extends PostNewAssetUC {\r\n private get jsonRequester() {\r\n return this.getCachedSingleton<JsonRequestUC>(JsonRequestUC.type)\r\n ?.doRequest;\r\n }\r\n\r\n private get getPlayerAuthToken() {\r\n return this.getCachedSingleton<SignedAuthTokenUC>(SignedAuthTokenUC.type)\r\n ?.getUserAuthToken;\r\n }\r\n\r\n private get fileUploader() {\r\n return this.getCachedSingleton<FileUploadUC>(FileUploadUC.type)?.doUpload;\r\n }\r\n\r\n private get vivedAPI() {\r\n return this.getCachedSingleton<VivedAPIEntity>(VivedAPIEntity.type);\r\n }\r\n\r\n doPost = (data: NewAssetDTO): Promise<NewAssetResponseDTO> => {\r\n const fileUploader = this.fileUploader;\r\n const getPlayerAuthToken = this.getPlayerAuthToken;\r\n const vivedAPI = this.vivedAPI;\r\n const jsonRequester = this.jsonRequester;\r\n\r\n if (!fileUploader || !getPlayerAuthToken || !vivedAPI || !jsonRequester) {\r\n return Promise.reject();\r\n }\r\n\r\n return new Promise((resolve, reject) => {\r\n const { description, file, name, ownerID } = data;\r\n let assetId: string;\r\n\r\n const nameSplits = file.name.split(\".\");\r\n const extension = nameSplits[nameSplits.length - 1];\r\n const filename = `${generateUniqueID()}.${extension}`;\r\n const assetFile = new File([file], filename, {\r\n lastModified: Date.now()\r\n });\r\n\r\n fileUploader(assetFile)\r\n .then((_) => {\r\n return getPlayerAuthToken();\r\n })\r\n .then((token) => {\r\n const postURL = vivedAPI.getEndpointURL(\"assets\");\r\n\r\n const body = {\r\n ownerId: ownerID,\r\n name,\r\n description,\r\n filename\r\n };\r\n\r\n const options: RequestJSONOptions = {\r\n method: \"POST\",\r\n body: JSON.stringify(body),\r\n headers: {\r\n Authorization: \"Bearer \" + token\r\n }\r\n };\r\n\r\n return jsonRequester(postURL, options);\r\n })\r\n .then((result) => {\r\n assetId = result.assetId;\r\n resolve({\r\n id: assetId,\r\n filename\r\n });\r\n })\r\n .catch((e) => {\r\n reject(e);\r\n return;\r\n });\r\n });\r\n };\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, PostNewAssetUC.type);\r\n this.appObjects.registerSingleton(this);\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"PostNewAssetUC.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PostNewAssetUC.ts"],"names":[],"mappings":"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","sourcesContent":["import {\r\n AppObject,\r\n AppObjectRepo,\r\n AppObjectUC,\r\n generateUniqueID,\r\n getSingletonComponent\r\n} from \"@vived/core\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { FileUploadUC } from \"./FileUploadUC\";\r\nimport { JsonRequestUC, RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport { SignedAuthTokenUC } from \"./SignedAuthTokenUC\";\r\n\r\nexport interface NewAssetApiDto {\r\n name: string;\r\n description: string;\r\n ownerID: string;\r\n file: File;\r\n}\r\n\r\nexport interface NewAssetResponseDTO {\r\n id: string;\r\n filename: string;\r\n}\r\n\r\nexport abstract class PostNewAssetUC extends AppObjectUC {\r\n static type = \"PostNewAssetUC\";\r\n\r\n abstract doPost(data: NewAssetApiDto): Promise<NewAssetResponseDTO>;\r\n\r\n static get(appObjects: AppObjectRepo): PostNewAssetUC | undefined {\r\n return getSingletonComponent(PostNewAssetUC.type, appObjects);\r\n }\r\n}\r\n\r\nexport function makePostNewAssetUC(appObject: AppObject): PostNewAssetUC {\r\n return new PostNewAssetUCImp(appObject);\r\n}\r\n\r\nclass PostNewAssetUCImp extends PostNewAssetUC {\r\n private get jsonRequester() {\r\n return this.getCachedSingleton<JsonRequestUC>(JsonRequestUC.type)\r\n ?.doRequest;\r\n }\r\n\r\n private get getPlayerAuthToken() {\r\n return this.getCachedSingleton<SignedAuthTokenUC>(SignedAuthTokenUC.type)\r\n ?.getAuthToken;\r\n }\r\n\r\n private get fileUploader() {\r\n return this.getCachedSingleton<FileUploadUC>(FileUploadUC.type)?.doUpload;\r\n }\r\n\r\n private get vivedAPI() {\r\n return this.getCachedSingleton<VivedAPIEntity>(VivedAPIEntity.type);\r\n }\r\n\r\n doPost = (data: NewAssetApiDto): Promise<NewAssetResponseDTO> => {\r\n const fileUploader = this.fileUploader;\r\n const getPlayerAuthToken = this.getPlayerAuthToken;\r\n const vivedAPI = this.vivedAPI;\r\n const jsonRequester = this.jsonRequester;\r\n\r\n if (!fileUploader || !getPlayerAuthToken || !vivedAPI || !jsonRequester) {\r\n return Promise.reject();\r\n }\r\n\r\n return new Promise((resolve, reject) => {\r\n const { description, file, name, ownerID } = data;\r\n let assetId: string;\r\n\r\n const nameSplits = file.name.split(\".\");\r\n const extension = nameSplits[nameSplits.length - 1];\r\n const filename = `${generateUniqueID()}.${extension}`;\r\n const assetFile = new File([file], filename, {\r\n lastModified: Date.now()\r\n });\r\n\r\n fileUploader(assetFile)\r\n .then((_) => {\r\n return getPlayerAuthToken();\r\n })\r\n .then((token) => {\r\n const postURL = vivedAPI.getEndpointURL(\"assets\");\r\n\r\n const body = {\r\n ownerId: ownerID,\r\n name,\r\n description,\r\n filename\r\n };\r\n\r\n const options: RequestJSONOptions = {\r\n method: \"POST\",\r\n body: JSON.stringify(body),\r\n headers: {\r\n Authorization: \"Bearer \" + token\r\n }\r\n };\r\n\r\n return jsonRequester(postURL, options);\r\n })\r\n .then((result) => {\r\n assetId = result.assetId;\r\n resolve({\r\n id: assetId,\r\n filename\r\n });\r\n })\r\n .catch((e) => {\r\n reject(e);\r\n return;\r\n });\r\n });\r\n };\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, PostNewAssetUC.type);\r\n this.appObjects.registerSingleton(this);\r\n }\r\n}\r\n"]}
@@ -15,7 +15,7 @@ function makeTestRig() {
15
15
  const mockUpload = (0, MockFileUpload_1.makeMockFileUploadUC)(appObjects);
16
16
  mockUpload.doUpload.mockResolvedValue(undefined);
17
17
  const mockAuth = (0, MockSignedAuthToken_1.makeMockSignedAuthTokenUC)(appObjects);
18
- mockAuth.getUserAuthToken.mockResolvedValue("mockAuthToken");
18
+ mockAuth.getAuthToken.mockResolvedValue("mockAuthToken");
19
19
  const uc = (0, PostNewAssetUC_1.makePostNewAssetUC)(appObjects.getOrCreate("ao"));
20
20
  return {
21
21
  uc,
@@ -101,7 +101,7 @@ describe("JSON Requester", () => {
101
101
  name: "some name",
102
102
  ownerID: "someOwner"
103
103
  };
104
- mockAuth.getUserAuthToken.mockRejectedValue(new Error("Some Auth token error Error"));
104
+ mockAuth.getAuthToken.mockRejectedValue(new Error("Some Auth token error Error"));
105
105
  return expect(uc.doPost(dto)).rejects.toEqual(new Error("Some Auth token error Error"));
106
106
  });
107
107
  it("Rejects if the upload fails", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"PostNewAssetUC.test.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PostNewAssetUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { makeMockFileUploadUC } from \"../Mocks/MockFileUpload\";\r\nimport { makeMockJsonRequestUC } from \"../Mocks/MockJsonRequestUC\";\r\nimport { makeMockSignedAuthTokenUC } from \"../Mocks/MockSignedAuthToken\";\r\nimport { RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport {\r\n makePostNewAssetUC,\r\n NewAssetDTO,\r\n PostNewAssetUC\r\n} from \"./PostNewAssetUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const singletonSpy = jest.spyOn(appObjects, \"registerSingleton\");\r\n\r\n const vivedAPI = new VivedAPIEntity(appObjects.getOrCreate(\"API\"));\r\n\r\n const mockJsonRequester = makeMockJsonRequestUC(appObjects);\r\n mockJsonRequester.doRequest.mockResolvedValue({ assetId: \"newAssetID\" });\r\n\r\n const mockUpload = makeMockFileUploadUC(appObjects);\r\n mockUpload.doUpload.mockResolvedValue(undefined);\r\n\r\n const mockAuth = makeMockSignedAuthTokenUC(appObjects);\r\n mockAuth.getUserAuthToken.mockResolvedValue(\"mockAuthToken\");\r\n\r\n const uc = makePostNewAssetUC(appObjects.getOrCreate(\"ao\"));\r\n\r\n return {\r\n uc,\r\n appObjects,\r\n singletonSpy,\r\n vivedAPI,\r\n mockJsonRequester,\r\n mockUpload,\r\n mockAuth\r\n };\r\n}\r\n\r\ndescribe(\"JSON Requester\", () => {\r\n it(\"Registers itself as the Singleton\", () => {\r\n const { uc, singletonSpy } = makeTestRig();\r\n\r\n expect(singletonSpy).toBeCalledWith(uc);\r\n });\r\n\r\n it(\"Gets the singleton\", () => {\r\n const { uc, appObjects } = makeTestRig();\r\n\r\n expect(PostNewAssetUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Resolves with the new Asset ID and filename\", async () => {\r\n const { uc } = makeTestRig();\r\n\r\n const dto: NewAssetDTO = {\r\n description: \"some desc\",\r\n file: new File([], \"file.name\"),\r\n name: \"some name\",\r\n ownerID: \"someOwner\"\r\n };\r\n\r\n const resp = await uc.doPost(dto);\r\n\r\n expect(resp.id).toEqual(\"newAssetID\");\r\n expect(resp.filename).not.toEqual(\"file.name\");\r\n expect(resp.filename).toContain(\".name\");\r\n });\r\n\r\n it(\"Warns and rejects if the JSON Request rejects\", () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n mockJsonRequester.doRequest.mockRejectedValue(new Error(\"Some JSON Error\"));\r\n\r\n const dto: NewAssetDTO = {\r\n description: \"some desc\",\r\n file: new File([], \"filename\"),\r\n name: \"some name\",\r\n ownerID: \"someOwner\"\r\n };\r\n\r\n return expect(uc.doPost(dto)).rejects.toEqual(new Error(\"Some JSON Error\"));\r\n });\r\n\r\n it(\"Requests the JSON with the expected url\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n const dto: NewAssetDTO = {\r\n description: \"some desc\",\r\n file: new File([], \"filename\"),\r\n name: \"some name\",\r\n ownerID: \"someOwner\"\r\n };\r\n\r\n await uc.doPost(dto);\r\n\r\n const postURL = mockJsonRequester.doRequest.mock.calls[0][0] as URL;\r\n expect(postURL.toString()).toEqual(\"https://api.vivedlearning.com/assets\");\r\n });\r\n\r\n it(\"Requests the JSON with the expected options\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n const dto: NewAssetDTO = {\r\n description: \"some desc\",\r\n file: new File([], \"filename.file\"),\r\n name: \"some name\",\r\n ownerID: \"someOwner\"\r\n };\r\n\r\n await uc.doPost(dto);\r\n\r\n const postURL = mockJsonRequester.doRequest.mock\r\n .calls[0][1] as RequestJSONOptions;\r\n expect(postURL.method).toEqual(\"POST\");\r\n expect(postURL.headers).toEqual({\r\n Authorization: \"Bearer mockAuthToken\"\r\n });\r\n\r\n const body = JSON.parse(postURL.body) as any;\r\n expect(body.ownerId).toEqual(\"someOwner\");\r\n expect(body.name).toEqual(\"some name\");\r\n expect(body.description).toEqual(\"some desc\");\r\n expect(body.filename).toContain(\".file\");\r\n });\r\n\r\n it(\"Rejects if the get auth token fails\", () => {\r\n const { uc, mockAuth } = makeTestRig();\r\n\r\n const dto: NewAssetDTO = {\r\n description: \"some desc\",\r\n file: new File([], \"filename.file\"),\r\n name: \"some name\",\r\n ownerID: \"someOwner\"\r\n };\r\n mockAuth.getUserAuthToken.mockRejectedValue(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n\r\n return expect(uc.doPost(dto)).rejects.toEqual(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n });\r\n\r\n it(\"Rejects if the upload fails\", () => {\r\n const { uc, mockUpload } = makeTestRig();\r\n\r\n const dto: NewAssetDTO = {\r\n description: \"some desc\",\r\n file: new File([], \"filename.file\"),\r\n name: \"some name\",\r\n ownerID: \"someOwner\"\r\n };\r\n mockUpload.doUpload.mockRejectedValue(new Error(\"Some upload Error\"));\r\n\r\n return expect(uc.doPost(dto)).rejects.toEqual(\r\n new Error(\"Some upload Error\")\r\n );\r\n });\r\n});\r\n"]}
1
+ {"version":3,"file":"PostNewAssetUC.test.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PostNewAssetUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { makeMockFileUploadUC } from \"../Mocks/MockFileUpload\";\r\nimport { makeMockJsonRequestUC } from \"../Mocks/MockJsonRequestUC\";\r\nimport { makeMockSignedAuthTokenUC } from \"../Mocks/MockSignedAuthToken\";\r\nimport { RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport {\r\n makePostNewAssetUC,\r\n NewAssetApiDto,\r\n PostNewAssetUC\r\n} from \"./PostNewAssetUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const singletonSpy = jest.spyOn(appObjects, \"registerSingleton\");\r\n\r\n const vivedAPI = new VivedAPIEntity(appObjects.getOrCreate(\"API\"));\r\n\r\n const mockJsonRequester = makeMockJsonRequestUC(appObjects);\r\n mockJsonRequester.doRequest.mockResolvedValue({ assetId: \"newAssetID\" });\r\n\r\n const mockUpload = makeMockFileUploadUC(appObjects);\r\n mockUpload.doUpload.mockResolvedValue(undefined);\r\n\r\n const mockAuth = makeMockSignedAuthTokenUC(appObjects);\r\n mockAuth.getAuthToken.mockResolvedValue(\"mockAuthToken\");\r\n\r\n const uc = makePostNewAssetUC(appObjects.getOrCreate(\"ao\"));\r\n\r\n return {\r\n uc,\r\n appObjects,\r\n singletonSpy,\r\n vivedAPI,\r\n mockJsonRequester,\r\n mockUpload,\r\n mockAuth\r\n };\r\n}\r\n\r\ndescribe(\"JSON Requester\", () => {\r\n it(\"Registers itself as the Singleton\", () => {\r\n const { uc, singletonSpy } = makeTestRig();\r\n\r\n expect(singletonSpy).toBeCalledWith(uc);\r\n });\r\n\r\n it(\"Gets the singleton\", () => {\r\n const { uc, appObjects } = makeTestRig();\r\n\r\n expect(PostNewAssetUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Resolves with the new Asset ID and filename\", async () => {\r\n const { uc } = makeTestRig();\r\n\r\n const dto: NewAssetApiDto = {\r\n description: \"some desc\",\r\n file: new File([], \"file.name\"),\r\n name: \"some name\",\r\n ownerID: \"someOwner\"\r\n };\r\n\r\n const resp = await uc.doPost(dto);\r\n\r\n expect(resp.id).toEqual(\"newAssetID\");\r\n expect(resp.filename).not.toEqual(\"file.name\");\r\n expect(resp.filename).toContain(\".name\");\r\n });\r\n\r\n it(\"Warns and rejects if the JSON Request rejects\", () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n mockJsonRequester.doRequest.mockRejectedValue(new Error(\"Some JSON Error\"));\r\n\r\n const dto: NewAssetApiDto = {\r\n description: \"some desc\",\r\n file: new File([], \"filename\"),\r\n name: \"some name\",\r\n ownerID: \"someOwner\"\r\n };\r\n\r\n return expect(uc.doPost(dto)).rejects.toEqual(new Error(\"Some JSON Error\"));\r\n });\r\n\r\n it(\"Requests the JSON with the expected url\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n const dto: NewAssetApiDto = {\r\n description: \"some desc\",\r\n file: new File([], \"filename\"),\r\n name: \"some name\",\r\n ownerID: \"someOwner\"\r\n };\r\n\r\n await uc.doPost(dto);\r\n\r\n const postURL = mockJsonRequester.doRequest.mock.calls[0][0] as URL;\r\n expect(postURL.toString()).toEqual(\"https://api.vivedlearning.com/assets\");\r\n });\r\n\r\n it(\"Requests the JSON with the expected options\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n const dto: NewAssetApiDto = {\r\n description: \"some desc\",\r\n file: new File([], \"filename.file\"),\r\n name: \"some name\",\r\n ownerID: \"someOwner\"\r\n };\r\n\r\n await uc.doPost(dto);\r\n\r\n const postURL = mockJsonRequester.doRequest.mock\r\n .calls[0][1] as RequestJSONOptions;\r\n expect(postURL.method).toEqual(\"POST\");\r\n expect(postURL.headers).toEqual({\r\n Authorization: \"Bearer mockAuthToken\"\r\n });\r\n\r\n const body = JSON.parse(postURL.body) as any;\r\n expect(body.ownerId).toEqual(\"someOwner\");\r\n expect(body.name).toEqual(\"some name\");\r\n expect(body.description).toEqual(\"some desc\");\r\n expect(body.filename).toContain(\".file\");\r\n });\r\n\r\n it(\"Rejects if the get auth token fails\", () => {\r\n const { uc, mockAuth } = makeTestRig();\r\n\r\n const dto: NewAssetApiDto = {\r\n description: \"some desc\",\r\n file: new File([], \"filename.file\"),\r\n name: \"some name\",\r\n ownerID: \"someOwner\"\r\n };\r\n mockAuth.getAuthToken.mockRejectedValue(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n\r\n return expect(uc.doPost(dto)).rejects.toEqual(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n });\r\n\r\n it(\"Rejects if the upload fails\", () => {\r\n const { uc, mockUpload } = makeTestRig();\r\n\r\n const dto: NewAssetApiDto = {\r\n description: \"some desc\",\r\n file: new File([], \"filename.file\"),\r\n name: \"some name\",\r\n ownerID: \"someOwner\"\r\n };\r\n mockUpload.doUpload.mockRejectedValue(new Error(\"Some upload Error\"));\r\n\r\n return expect(uc.doPost(dto)).rejects.toEqual(\r\n new Error(\"Some upload Error\")\r\n );\r\n });\r\n});\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"SignedAuthTokenUC.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/SignedAuthTokenUC.ts"],"names":[],"mappings":";;;AAAA,sCAAgF;AAEhF,MAAsB,iBAAkB,SAAQ,kBAAW;IAMzD,MAAM,CAAC,GAAG,CAAC,UAAyB;QAClC,OAAO,IAAA,4BAAqB,EAAC,iBAAiB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACnE,CAAC;;AARH,8CASC;AARQ,sBAAI,GAAG,mBAAmB,CAAC","sourcesContent":["import { getSingletonComponent, AppObjectRepo, AppObjectUC } from \"@vived/core\";\r\n\r\nexport abstract class SignedAuthTokenUC extends AppObjectUC {\r\n static type = \"SignedAuthTokenUC\";\r\n\r\n abstract getPlayerAuthToken(): Promise<string>;\r\n abstract getUserAuthToken(): Promise<string>;\r\n\r\n static get(appObjects: AppObjectRepo): SignedAuthTokenUC | undefined {\r\n return getSingletonComponent(SignedAuthTokenUC.type, appObjects);\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"SignedAuthTokenUC.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/SignedAuthTokenUC.ts"],"names":[],"mappings":";;;AAAA,sCAAgF;AAEhF,MAAsB,iBAAkB,SAAQ,kBAAW;IAKzD,MAAM,CAAC,GAAG,CAAC,UAAyB;QAClC,OAAO,IAAA,4BAAqB,EAAC,iBAAiB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACnE,CAAC;;AAPH,8CAQC;AAPQ,sBAAI,GAAG,mBAAmB,CAAC","sourcesContent":["import { AppObjectRepo, AppObjectUC, getSingletonComponent } from \"@vived/core\";\r\n\r\nexport abstract class SignedAuthTokenUC extends AppObjectUC {\r\n static type = \"SignedAuthTokenUC\";\r\n\r\n abstract getAuthToken(): Promise<string>;\r\n\r\n static get(appObjects: AppObjectRepo): SignedAuthTokenUC | undefined {\r\n return getSingletonComponent(SignedAuthTokenUC.type, appObjects);\r\n }\r\n}\r\n"]}
@@ -6,6 +6,8 @@ import { setupStandardHostHandlers } from "../../Handler/setupStandardHostHandle
6
6
  import { makeAppSandboxEntity } from "../Entities";
7
7
  import { makeDevFeaturesEnabledPM, makeSandboxStatePM, makeShowInspectorPM, makeStartInZSpacePM } from "../PMs";
8
8
  import { makeShowBabylonInspectorUC } from "../UCs";
9
+ import { SubmitActivityAssetHandler } from "../../Handler";
10
+ import { makeSubmitActivityAssetHandlerSandbox } from "../UCs/submitActivityAssetHandlerSandbox";
9
11
  export function setupAppSandbox(appID, appObjects) {
10
12
  const ao = appObjects.getOrCreate(appID);
11
13
  // Entities
@@ -24,6 +26,10 @@ export function setupAppSandbox(appID, appObjects) {
24
26
  makeSandboxStatePM(ao);
25
27
  makeShowInspectorPM(ao);
26
28
  makeStartInZSpacePM(ao);
29
+ const submitActivityAssetUC = appObjects.getSingleton(SubmitActivityAssetHandler.type);
30
+ if (submitActivityAssetUC) {
31
+ submitActivityAssetUC.action = makeSubmitActivityAssetHandlerSandbox(appObjects);
32
+ }
27
33
  return entity;
28
34
  }
29
35
  //# sourceMappingURL=setupAppSandbox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setupAppSandbox.js","sourceRoot":"","sources":["../../../../src/AppSandbox/Factories/setupAppSandbox.ts"],"names":[],"mappings":"AACA,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,aAAa,EACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAC;AAC7F,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EAAoB,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,0BAA0B,EAAE,MAAM,QAAQ,CAAC;AAEpD,MAAM,UAAU,eAAe,CAC7B,KAAa,EACb,UAAyB;IAEzB,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAEzC,WAAW;IACX,MAAM,MAAM,GAAG,oBAAoB,CAAC,EAAE,CAAC,CAAC;IACxC,sBAAsB,CAAC,EAAE,CAAC,CAAC;IAC3B,qBAAqB,CAAC,EAAE,CAAC,CAAC;IAE1B,KAAK;IACL,4BAA4B,CAAC,EAAE,CAAC,CAAC;IACjC,yBAAyB,CAAC,EAAE,CAAC,CAAC;IAC9B,cAAc,CAAC,EAAE,CAAC,CAAC;IACnB,aAAa,CAAC,EAAE,CAAC,CAAC;IAClB,0BAA0B,CAAC,EAAE,CAAC,CAAC;IAC/B,kBAAkB,CAAC,EAAE,CAAC,CAAC;IAEvB,MAAM;IACN,wBAAwB,CAAC,EAAE,CAAC,CAAC;IAC7B,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACvB,mBAAmB,CAAC,EAAE,CAAC,CAAC;IACxB,mBAAmB,CAAC,EAAE,CAAC,CAAC;IAExB,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["import { AppObjectRepo } from \"@vived/core\";\r\nimport {\r\n makeSandboxMounter,\r\n makeStartAppUC,\r\n makeStopAppUC\r\n} from \"../../Apps/UCs\";\r\nimport { makeHostDispatchEntity } from \"../../Dispatcher/Entities\";\r\nimport { setupStandardHostDispatchers } from \"../../Dispatcher/setupStandardHostDispatchers\";\r\nimport { makeHostHandlerEntity } from \"../../Handler/Entities\";\r\nimport { setupStandardHostHandlers } from \"../../Handler/setupStandardHostHandlers\";\r\nimport { AppSandboxEntity, makeAppSandboxEntity } from \"../Entities\";\r\nimport {\r\n makeDevFeaturesEnabledPM,\r\n makeSandboxStatePM,\r\n makeShowInspectorPM,\r\n makeStartInZSpacePM\r\n} from \"../PMs\";\r\nimport { makeShowBabylonInspectorUC } from \"../UCs\";\r\n\r\nexport function setupAppSandbox(\r\n appID: string,\r\n appObjects: AppObjectRepo\r\n): AppSandboxEntity {\r\n const ao = appObjects.getOrCreate(appID);\r\n\r\n // Entities\r\n const entity = makeAppSandboxEntity(ao);\r\n makeHostDispatchEntity(ao);\r\n makeHostHandlerEntity(ao);\r\n\r\n // UC\r\n setupStandardHostDispatchers(ao);\r\n setupStandardHostHandlers(ao);\r\n makeStartAppUC(ao);\r\n makeStopAppUC(ao);\r\n makeShowBabylonInspectorUC(ao);\r\n makeSandboxMounter(ao);\r\n\r\n // PMs\r\n makeDevFeaturesEnabledPM(ao);\r\n makeSandboxStatePM(ao);\r\n makeShowInspectorPM(ao);\r\n makeStartInZSpacePM(ao);\r\n\r\n return entity;\r\n}\r\n"]}
1
+ {"version":3,"file":"setupAppSandbox.js","sourceRoot":"","sources":["../../../../src/AppSandbox/Factories/setupAppSandbox.ts"],"names":[],"mappings":"AACA,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,aAAa,EACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAC;AAC7F,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EAAoB,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,0BAA0B,EAAE,MAAM,QAAQ,CAAC;AACpD,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,qCAAqC,EAAE,MAAM,0CAA0C,CAAC;AAEjG,MAAM,UAAU,eAAe,CAC7B,KAAa,EACb,UAAyB;IAEzB,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAEzC,WAAW;IACX,MAAM,MAAM,GAAG,oBAAoB,CAAC,EAAE,CAAC,CAAC;IACxC,sBAAsB,CAAC,EAAE,CAAC,CAAC;IAC3B,qBAAqB,CAAC,EAAE,CAAC,CAAC;IAE1B,KAAK;IACL,4BAA4B,CAAC,EAAE,CAAC,CAAC;IACjC,yBAAyB,CAAC,EAAE,CAAC,CAAC;IAC9B,cAAc,CAAC,EAAE,CAAC,CAAC;IACnB,aAAa,CAAC,EAAE,CAAC,CAAC;IAClB,0BAA0B,CAAC,EAAE,CAAC,CAAC;IAC/B,kBAAkB,CAAC,EAAE,CAAC,CAAC;IAEvB,MAAM;IACN,wBAAwB,CAAC,EAAE,CAAC,CAAC;IAC7B,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACvB,mBAAmB,CAAC,EAAE,CAAC,CAAC;IACxB,mBAAmB,CAAC,EAAE,CAAC,CAAC;IAExB,MAAM,qBAAqB,GAAG,UAAU,CAAC,YAAY,CACnD,0BAA0B,CAAC,IAAI,CAChC,CAAC;IACF,IAAI,qBAAqB,EAAE,CAAC;QAC1B,qBAAqB,CAAC,MAAM,GAAG,qCAAqC,CAClE,UAAU,CACX,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["import { AppObjectRepo } from \"@vived/core\";\r\nimport {\r\n makeSandboxMounter,\r\n makeStartAppUC,\r\n makeStopAppUC\r\n} from \"../../Apps/UCs\";\r\nimport { makeHostDispatchEntity } from \"../../Dispatcher/Entities\";\r\nimport { setupStandardHostDispatchers } from \"../../Dispatcher/setupStandardHostDispatchers\";\r\nimport { makeHostHandlerEntity } from \"../../Handler/Entities\";\r\nimport { setupStandardHostHandlers } from \"../../Handler/setupStandardHostHandlers\";\r\nimport { AppSandboxEntity, makeAppSandboxEntity } from \"../Entities\";\r\nimport {\r\n makeDevFeaturesEnabledPM,\r\n makeSandboxStatePM,\r\n makeShowInspectorPM,\r\n makeStartInZSpacePM\r\n} from \"../PMs\";\r\nimport { makeShowBabylonInspectorUC } from \"../UCs\";\r\nimport { SubmitActivityAssetHandler } from \"../../Handler\";\r\nimport { makeSubmitActivityAssetHandlerSandbox } from \"../UCs/submitActivityAssetHandlerSandbox\";\r\n\r\nexport function setupAppSandbox(\r\n appID: string,\r\n appObjects: AppObjectRepo\r\n): AppSandboxEntity {\r\n const ao = appObjects.getOrCreate(appID);\r\n\r\n // Entities\r\n const entity = makeAppSandboxEntity(ao);\r\n makeHostDispatchEntity(ao);\r\n makeHostHandlerEntity(ao);\r\n\r\n // UC\r\n setupStandardHostDispatchers(ao);\r\n setupStandardHostHandlers(ao);\r\n makeStartAppUC(ao);\r\n makeStopAppUC(ao);\r\n makeShowBabylonInspectorUC(ao);\r\n makeSandboxMounter(ao);\r\n\r\n // PMs\r\n makeDevFeaturesEnabledPM(ao);\r\n makeSandboxStatePM(ao);\r\n makeShowInspectorPM(ao);\r\n makeStartInZSpacePM(ao);\r\n\r\n const submitActivityAssetUC = appObjects.getSingleton<SubmitActivityAssetHandler>(\r\n SubmitActivityAssetHandler.type\r\n );\r\n if (submitActivityAssetUC) {\r\n submitActivityAssetUC.action = makeSubmitActivityAssetHandlerSandbox(\r\n appObjects\r\n );\r\n }\r\n\r\n return entity;\r\n}\r\n"]}
@@ -0,0 +1,34 @@
1
+ import { AppSandboxEntity } from "..";
2
+ import { NewAssetUC } from "../../Assets";
3
+ export function makeSubmitActivityAssetHandlerSandbox(appObjects) {
4
+ return function submitActivityAssetHandler(assetFile, callback) {
5
+ const sandbox = AppSandboxEntity.get(appObjects);
6
+ if (!sandbox) {
7
+ appObjects.submitError("makeSubmitActivityAssetHandlerSandbox", "Unable to find AppSandboxEntity");
8
+ callback(undefined);
9
+ return;
10
+ }
11
+ if (!sandbox.mockActivityID) {
12
+ appObjects.submitError("makeSubmitActivityAssetHandlerSandbox", "No activity ID found");
13
+ callback(undefined);
14
+ return;
15
+ }
16
+ const ownerID = sandbox.mockActivityID;
17
+ const newAssetData = {
18
+ name: "Activity Asset",
19
+ description: "Asset for activity " + ownerID,
20
+ file: assetFile,
21
+ owner: ownerID
22
+ };
23
+ const newAssetUC = NewAssetUC.get(appObjects);
24
+ if (!newAssetUC) {
25
+ appObjects.submitError("makeSubmitActivityAssetHandlerSandbox", "Unable to find NewAssetUC");
26
+ callback(undefined);
27
+ return;
28
+ }
29
+ newAssetUC.create(newAssetData).then((assetID) => {
30
+ callback(assetID);
31
+ });
32
+ };
33
+ }
34
+ //# sourceMappingURL=submitActivityAssetHandlerSandbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"submitActivityAssetHandlerSandbox.js","sourceRoot":"","sources":["../../../../src/AppSandbox/UCs/submitActivityAssetHandlerSandbox.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,IAAI,CAAC;AACtC,OAAO,EAAe,UAAU,EAAE,MAAM,cAAc,CAAC;AAGvD,MAAM,UAAU,qCAAqC,CACnD,UAAyB;IAEzB,OAAO,SAAS,0BAA0B,CACxC,SAAe,EACf,QAA+C;QAE/C,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACjD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,UAAU,CAAC,WAAW,CACpB,uCAAuC,EACvC,iCAAiC,CAClC,CAAC;YACF,QAAQ,CAAC,SAAS,CAAC,CAAC;YACpB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YAC5B,UAAU,CAAC,WAAW,CACpB,uCAAuC,EACvC,sBAAsB,CACvB,CAAC;YACF,QAAQ,CAAC,SAAS,CAAC,CAAC;YACpB,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAW,OAAO,CAAC,cAAc,CAAC;QAE/C,MAAM,YAAY,GAAgB;YAChC,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,qBAAqB,GAAG,OAAO;YAC5C,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,OAAO;SACf,CAAC;QAEF,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC9C,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,UAAU,CAAC,WAAW,CACpB,uCAAuC,EACvC,2BAA2B,CAC5B,CAAC;YACF,QAAQ,CAAC,SAAS,CAAC,CAAC;YACpB,OAAO;QACT,CAAC;QAED,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;YAC/C,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC","sourcesContent":["import { AppObjectRepo } from \"@vived/core\";\r\nimport { AppSandboxEntity } from \"..\";\r\nimport { NewAssetDto, NewAssetUC } from \"../../Assets\";\r\nimport { SubmitActivityAssetAction } from \"../../Handler/UCs/SubmitActivityAssetHandler\";\r\n\r\nexport function makeSubmitActivityAssetHandlerSandbox(\r\n appObjects: AppObjectRepo\r\n): SubmitActivityAssetAction {\r\n return function submitActivityAssetHandler(\r\n assetFile: File,\r\n callback: (assetID: string | undefined) => void\r\n ): void {\r\n const sandbox = AppSandboxEntity.get(appObjects);\r\n if (!sandbox) {\r\n appObjects.submitError(\r\n \"makeSubmitActivityAssetHandlerSandbox\",\r\n \"Unable to find AppSandboxEntity\"\r\n );\r\n callback(undefined);\r\n return;\r\n }\r\n\r\n if (!sandbox.mockActivityID) {\r\n appObjects.submitError(\r\n \"makeSubmitActivityAssetHandlerSandbox\",\r\n \"No activity ID found\"\r\n );\r\n callback(undefined);\r\n return;\r\n }\r\n\r\n const ownerID: string = sandbox.mockActivityID;\r\n\r\n const newAssetData: NewAssetDto = {\r\n name: \"Activity Asset\",\r\n description: \"Asset for activity \" + ownerID,\r\n file: assetFile,\r\n owner: ownerID\r\n };\r\n\r\n const newAssetUC = NewAssetUC.get(appObjects);\r\n if (!newAssetUC) {\r\n appObjects.submitError(\r\n \"makeSubmitActivityAssetHandlerSandbox\",\r\n \"Unable to find NewAssetUC\"\r\n );\r\n callback(undefined);\r\n return;\r\n }\r\n\r\n newAssetUC.create(newAssetData).then((assetID) => {\r\n callback(assetID);\r\n });\r\n };\r\n}\r\n"]}
@@ -0,0 +1,53 @@
1
+ import { makeAppObjectRepo } from "@vived/core";
2
+ import { makeMockNewAssetUC, NewAssetUC } from "../../Assets";
3
+ import { makeAppSandboxEntity } from "../Entities";
4
+ import { makeSubmitActivityAssetHandlerSandbox } from "./submitActivityAssetHandlerSandbox";
5
+ describe("submitActivityAssetHandler", () => {
6
+ let appObjects;
7
+ let sandbox;
8
+ let newAssetUC;
9
+ let testFile;
10
+ let handler;
11
+ beforeEach(() => {
12
+ appObjects = makeAppObjectRepo();
13
+ sandbox = makeAppSandboxEntity(appObjects.getOrCreate("AppSandbox"));
14
+ sandbox.mockActivityID = "activity";
15
+ newAssetUC = makeMockNewAssetUC(appObjects);
16
+ newAssetUC.create.mockResolvedValue("asset123");
17
+ testFile = new File(["dummy content"], "test.png", {
18
+ type: "image/png"
19
+ });
20
+ handler = makeSubmitActivityAssetHandlerSandbox(appObjects);
21
+ });
22
+ afterEach(() => {
23
+ jest.restoreAllMocks();
24
+ });
25
+ it("should call callback is the new asset id", (done) => {
26
+ const callback = (id) => {
27
+ expect(id).toBe("asset123");
28
+ done();
29
+ };
30
+ handler(testFile, callback);
31
+ });
32
+ it("should submit error when activity ID is empty", (done) => {
33
+ sandbox.mockActivityID = "";
34
+ const errorSpy = jest.spyOn(appObjects, "submitError");
35
+ const callback = (id) => {
36
+ expect(id).toBeUndefined();
37
+ expect(errorSpy).toHaveBeenCalledWith("makeSubmitActivityAssetHandlerSandbox", "No activity ID found");
38
+ done();
39
+ };
40
+ handler(testFile, callback);
41
+ });
42
+ it("should submit error when NewAssetUC is missing", (done) => {
43
+ jest.spyOn(NewAssetUC, "get").mockReturnValue(undefined);
44
+ const errorSpy = jest.spyOn(appObjects, "submitError");
45
+ const callback = (id) => {
46
+ expect(id).toBeUndefined();
47
+ expect(errorSpy).toHaveBeenCalledWith("makeSubmitActivityAssetHandlerSandbox", "Unable to find NewAssetUC");
48
+ done();
49
+ };
50
+ handler(testFile, callback);
51
+ });
52
+ });
53
+ //# sourceMappingURL=submitActivityAssetHandlerSandbox.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"submitActivityAssetHandlerSandbox.test.js","sourceRoot":"","sources":["../../../../src/AppSandbox/UCs/submitActivityAssetHandlerSandbox.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAkB,UAAU,EAAE,MAAM,cAAc,CAAC;AAE9E,OAAO,EAAoB,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EAAE,qCAAqC,EAAE,MAAM,qCAAqC,CAAC;AAE5F,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC1C,IAAI,UAAyB,CAAC;IAC9B,IAAI,OAAyB,CAAC;IAC9B,IAAI,UAA0B,CAAC;IAC/B,IAAI,QAAc,CAAC;IACnB,IAAI,OAAkC,CAAC;IAEvC,UAAU,CAAC,GAAG,EAAE;QACd,UAAU,GAAG,iBAAiB,EAAE,CAAC;QACjC,OAAO,GAAG,oBAAoB,CAAC,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC;QAErE,OAAO,CAAC,cAAc,GAAG,UAAU,CAAC;QAEpC,UAAU,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC5C,UAAU,CAAC,MAAM,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAEhD,QAAQ,GAAG,IAAI,IAAI,CAAC,CAAC,eAAe,CAAC,EAAE,UAAU,EAAE;YACjD,IAAI,EAAE,WAAW;SAClB,CAAC,CAAC;QAEH,OAAO,GAAG,qCAAqC,CAAC,UAAU,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,CAAC,IAAI,EAAE,EAAE;QACtD,MAAM,QAAQ,GAAG,CAAC,EAAsB,EAAE,EAAE;YAC1C,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC5B,IAAI,EAAE,CAAC;QACT,CAAC,CAAC;QAEF,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,CAAC,IAAI,EAAE,EAAE;QAC3D,OAAO,CAAC,cAAc,GAAG,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;QAEvD,MAAM,QAAQ,GAAG,CAAC,EAAsB,EAAE,EAAE;YAC1C,MAAM,CAAC,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC;YAC3B,MAAM,CAAC,QAAQ,CAAC,CAAC,oBAAoB,CACnC,uCAAuC,EACvC,sBAAsB,CACvB,CAAC;YACF,IAAI,EAAE,CAAC;QACT,CAAC,CAAC;QAEF,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,CAAC,IAAI,EAAE,EAAE;QAC5D,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;QAEvD,MAAM,QAAQ,GAAG,CAAC,EAAsB,EAAE,EAAE;YAC1C,MAAM,CAAC,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC;YAC3B,MAAM,CAAC,QAAQ,CAAC,CAAC,oBAAoB,CACnC,uCAAuC,EACvC,2BAA2B,CAC5B,CAAC;YACF,IAAI,EAAE,CAAC;QACT,CAAC,CAAC;QAEF,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { AppObjectRepo, makeAppObjectRepo } from \"@vived/core\";\r\nimport { makeMockNewAssetUC, MockNewAssetUC, NewAssetUC } from \"../../Assets\";\r\nimport { SubmitActivityAssetAction } from \"../../Handler/UCs/SubmitActivityAssetHandler\";\r\nimport { AppSandboxEntity, makeAppSandboxEntity } from \"../Entities\";\r\nimport { makeSubmitActivityAssetHandlerSandbox } from \"./submitActivityAssetHandlerSandbox\";\r\n\r\ndescribe(\"submitActivityAssetHandler\", () => {\r\n let appObjects: AppObjectRepo;\r\n let sandbox: AppSandboxEntity;\r\n let newAssetUC: MockNewAssetUC;\r\n let testFile: File;\r\n let handler: SubmitActivityAssetAction;\r\n\r\n beforeEach(() => {\r\n appObjects = makeAppObjectRepo();\r\n sandbox = makeAppSandboxEntity(appObjects.getOrCreate(\"AppSandbox\"));\r\n\r\n sandbox.mockActivityID = \"activity\";\r\n\r\n newAssetUC = makeMockNewAssetUC(appObjects);\r\n newAssetUC.create.mockResolvedValue(\"asset123\");\r\n\r\n testFile = new File([\"dummy content\"], \"test.png\", {\r\n type: \"image/png\"\r\n });\r\n\r\n handler = makeSubmitActivityAssetHandlerSandbox(appObjects);\r\n });\r\n\r\n afterEach(() => {\r\n jest.restoreAllMocks();\r\n });\r\n\r\n it(\"should call callback is the new asset id\", (done) => {\r\n const callback = (id: string | undefined) => {\r\n expect(id).toBe(\"asset123\");\r\n done();\r\n };\r\n\r\n handler(testFile, callback);\r\n });\r\n\r\n it(\"should submit error when activity ID is empty\", (done) => {\r\n sandbox.mockActivityID = \"\";\r\n const errorSpy = jest.spyOn(appObjects, \"submitError\");\r\n\r\n const callback = (id: string | undefined) => {\r\n expect(id).toBeUndefined();\r\n expect(errorSpy).toHaveBeenCalledWith(\r\n \"makeSubmitActivityAssetHandlerSandbox\",\r\n \"No activity ID found\"\r\n );\r\n done();\r\n };\r\n\r\n handler(testFile, callback);\r\n });\r\n\r\n it(\"should submit error when NewAssetUC is missing\", (done) => {\r\n jest.spyOn(NewAssetUC, \"get\").mockReturnValue(undefined);\r\n const errorSpy = jest.spyOn(appObjects, \"submitError\");\r\n\r\n const callback = (id: string | undefined) => {\r\n expect(id).toBeUndefined();\r\n expect(errorSpy).toHaveBeenCalledWith(\r\n \"makeSubmitActivityAssetHandlerSandbox\",\r\n \"Unable to find NewAssetUC\"\r\n );\r\n done();\r\n };\r\n\r\n handler(testFile, callback);\r\n });\r\n});\r\n"]}
@@ -1,6 +1,6 @@
1
1
  import { makeAppAssets, makeAssetEntity, makeAssetRepo } from "../Entities";
2
2
  import { makeAppAssetListPM, makeAssetPM, makeEditingAppAssetPM, makeShowArchivedAppAssetPM } from "../PMs";
3
- import { makeArchiveAssetUC, makeDeleteAssetUC, makeDownloadAssetFileUC, makeEditAppAsset, makeGetAppAssetUC, makeGetAssetBlobURLUC, makeGetAssetFileUC, makeGetAssetUC, makeNewAppAssetUC, makePrefetchAssets, makeUpdateAppAssetMetaUC, makeUpdateAssetFileUC } from "../UCs";
3
+ import { makeArchiveAssetUC, makeDeleteAssetUC, makeDownloadAssetFileUC, makeEditAppAsset, makeGetAppAssetUC, makeGetAssetBlobURLUC, makeGetAssetFileUC, makeGetAssetUC, makeNewAppAssetUC, makeNewAssetUC, makePrefetchAssets, makeUpdateAppAssetMetaUC, makeUpdateAssetFileUC } from "../UCs";
4
4
  export function setupAssetsForSandbox(appObjects) {
5
5
  const assetRepoAO = appObjects.getOrCreate("Asset Repository");
6
6
  const appAssetsAO = appObjects.getOrCreate("App Assets");
@@ -14,6 +14,7 @@ export function setupAssetsForSandbox(appObjects) {
14
14
  makeGetAssetFileUC(assetRepoAO);
15
15
  makeGetAssetUC(assetRepoAO);
16
16
  makePrefetchAssets(assetRepoAO);
17
+ makeNewAssetUC(assetRepoAO);
17
18
  makeNewAppAssetUC(appAssetsAO);
18
19
  makeGetAppAssetUC(appAssetsAO);
19
20
  // PMs
@@ -1 +1 @@
1
- {"version":3,"file":"setupAssetsForSandbox.js","sourceRoot":"","sources":["../../../../src/Assets/Factories/setupAssetsForSandbox.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,aAAa,EACb,eAAe,EACf,aAAa,EACd,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,qBAAqB,EACrB,0BAA0B,EAC3B,MAAM,QAAQ,CAAC;AAChB,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,EACxB,qBAAqB,EACtB,MAAM,QAAQ,CAAC;AAEhB,MAAM,UAAU,qBAAqB,CAAC,UAAyB;IAC7D,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;IAC/D,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAEzD,WAAW;IACX,MAAM,SAAS,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;IAC7C,SAAS,CAAC,YAAY,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACtD,aAAa,CAAC,WAAW,CAAC,CAAC;IAE3B,MAAM;IACN,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAC9B,qBAAqB,CAAC,WAAW,CAAC,CAAC;IACnC,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAChC,cAAc,CAAC,WAAW,CAAC,CAAC;IAC5B,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAEhC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC/B,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAE/B,MAAM;IACN,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAChC,0BAA0B,CAAC,WAAW,CAAC,CAAC;IACxC,qBAAqB,CAAC,WAAW,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,gBAAgB,CAAC,UAAyB;IACjD,OAAO,SAAS,YAAY,CAAC,EAAU;QACrC,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAEtC,WAAW;QACX,MAAM,MAAM,GAAG,eAAe,CAAC,EAAE,CAAC,CAAC;QAEnC,MAAM;QACN,kBAAkB,CAAC,EAAE,CAAC,CAAC;QACvB,iBAAiB,CAAC,EAAE,CAAC,CAAC;QACtB,uBAAuB,CAAC,EAAE,CAAC,CAAC;QAC5B,qBAAqB,CAAC,EAAE,CAAC,CAAC;QAC1B,wBAAwB,CAAC,EAAE,CAAC,CAAC;QAE7B,MAAM;QACN,WAAW,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC","sourcesContent":["import { AppObjectRepo } from \"@vived/core\";\r\nimport {\r\n AssetEntity,\r\n makeAppAssets,\r\n makeAssetEntity,\r\n makeAssetRepo\r\n} from \"../Entities\";\r\nimport {\r\n makeAppAssetListPM,\r\n makeAssetPM,\r\n makeEditingAppAssetPM,\r\n makeShowArchivedAppAssetPM\r\n} from \"../PMs\";\r\nimport {\r\n makeArchiveAssetUC,\r\n makeDeleteAssetUC,\r\n makeDownloadAssetFileUC,\r\n makeEditAppAsset,\r\n makeGetAppAssetUC,\r\n makeGetAssetBlobURLUC,\r\n makeGetAssetFileUC,\r\n makeGetAssetUC,\r\n makeNewAppAssetUC,\r\n makePrefetchAssets,\r\n makeUpdateAppAssetMetaUC,\r\n makeUpdateAssetFileUC\r\n} from \"../UCs\";\r\n\r\nexport function setupAssetsForSandbox(appObjects: AppObjectRepo) {\r\n const assetRepoAO = appObjects.getOrCreate(\"Asset Repository\");\r\n const appAssetsAO = appObjects.getOrCreate(\"App Assets\");\r\n\r\n // Entities\r\n const assetRepo = makeAssetRepo(assetRepoAO);\r\n assetRepo.assetFactory = makeAssetFactory(appObjects);\r\n makeAppAssets(appAssetsAO);\r\n\r\n // UCs\r\n makeEditAppAsset(assetRepoAO);\r\n makeGetAssetBlobURLUC(assetRepoAO);\r\n makeGetAssetFileUC(assetRepoAO);\r\n makeGetAssetUC(assetRepoAO);\r\n makePrefetchAssets(assetRepoAO);\r\n\r\n makeNewAppAssetUC(appAssetsAO);\r\n makeGetAppAssetUC(appAssetsAO);\r\n\r\n // PMs\r\n makeAppAssetListPM(appAssetsAO);\r\n makeShowArchivedAppAssetPM(appAssetsAO);\r\n makeEditingAppAssetPM(appAssetsAO);\r\n}\r\n\r\nfunction makeAssetFactory(appObjects: AppObjectRepo) {\r\n return function assetFactory(id: string): AssetEntity {\r\n const ao = appObjects.getOrCreate(id);\r\n\r\n // Entities\r\n const entity = makeAssetEntity(ao);\r\n\r\n // UCs\r\n makeArchiveAssetUC(ao);\r\n makeDeleteAssetUC(ao);\r\n makeDownloadAssetFileUC(ao);\r\n makeUpdateAssetFileUC(ao);\r\n makeUpdateAppAssetMetaUC(ao);\r\n\r\n // PMs\r\n makeAssetPM(ao);\r\n return entity;\r\n };\r\n}\r\n"]}
1
+ {"version":3,"file":"setupAssetsForSandbox.js","sourceRoot":"","sources":["../../../../src/Assets/Factories/setupAssetsForSandbox.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,aAAa,EACb,eAAe,EACf,aAAa,EACd,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,qBAAqB,EACrB,0BAA0B,EAC3B,MAAM,QAAQ,CAAC;AAChB,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,wBAAwB,EACxB,qBAAqB,EACtB,MAAM,QAAQ,CAAC;AAEhB,MAAM,UAAU,qBAAqB,CAAC,UAAyB;IAC7D,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;IAC/D,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAEzD,WAAW;IACX,MAAM,SAAS,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;IAC7C,SAAS,CAAC,YAAY,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACtD,aAAa,CAAC,WAAW,CAAC,CAAC;IAE3B,MAAM;IACN,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAC9B,qBAAqB,CAAC,WAAW,CAAC,CAAC;IACnC,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAChC,cAAc,CAAC,WAAW,CAAC,CAAC;IAC5B,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAChC,cAAc,CAAC,WAAW,CAAC,CAAC;IAC5B,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC/B,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAE/B,MAAM;IACN,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAChC,0BAA0B,CAAC,WAAW,CAAC,CAAC;IACxC,qBAAqB,CAAC,WAAW,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,gBAAgB,CAAC,UAAyB;IACjD,OAAO,SAAS,YAAY,CAAC,EAAU;QACrC,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAEtC,WAAW;QACX,MAAM,MAAM,GAAG,eAAe,CAAC,EAAE,CAAC,CAAC;QAEnC,MAAM;QACN,kBAAkB,CAAC,EAAE,CAAC,CAAC;QACvB,iBAAiB,CAAC,EAAE,CAAC,CAAC;QACtB,uBAAuB,CAAC,EAAE,CAAC,CAAC;QAC5B,qBAAqB,CAAC,EAAE,CAAC,CAAC;QAC1B,wBAAwB,CAAC,EAAE,CAAC,CAAC;QAE7B,MAAM;QACN,WAAW,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC","sourcesContent":["import { AppObjectRepo } from \"@vived/core\";\r\nimport {\r\n AssetEntity,\r\n makeAppAssets,\r\n makeAssetEntity,\r\n makeAssetRepo\r\n} from \"../Entities\";\r\nimport {\r\n makeAppAssetListPM,\r\n makeAssetPM,\r\n makeEditingAppAssetPM,\r\n makeShowArchivedAppAssetPM\r\n} from \"../PMs\";\r\nimport {\r\n makeArchiveAssetUC,\r\n makeDeleteAssetUC,\r\n makeDownloadAssetFileUC,\r\n makeEditAppAsset,\r\n makeGetAppAssetUC,\r\n makeGetAssetBlobURLUC,\r\n makeGetAssetFileUC,\r\n makeGetAssetUC,\r\n makeNewAppAssetUC,\r\n makeNewAssetUC,\r\n makePrefetchAssets,\r\n makeUpdateAppAssetMetaUC,\r\n makeUpdateAssetFileUC\r\n} from \"../UCs\";\r\n\r\nexport function setupAssetsForSandbox(appObjects: AppObjectRepo) {\r\n const assetRepoAO = appObjects.getOrCreate(\"Asset Repository\");\r\n const appAssetsAO = appObjects.getOrCreate(\"App Assets\");\r\n\r\n // Entities\r\n const assetRepo = makeAssetRepo(assetRepoAO);\r\n assetRepo.assetFactory = makeAssetFactory(appObjects);\r\n makeAppAssets(appAssetsAO);\r\n\r\n // UCs\r\n makeEditAppAsset(assetRepoAO);\r\n makeGetAssetBlobURLUC(assetRepoAO);\r\n makeGetAssetFileUC(assetRepoAO);\r\n makeGetAssetUC(assetRepoAO);\r\n makePrefetchAssets(assetRepoAO);\r\n makeNewAssetUC(assetRepoAO);\r\n makeNewAppAssetUC(appAssetsAO);\r\n makeGetAppAssetUC(appAssetsAO);\r\n\r\n // PMs\r\n makeAppAssetListPM(appAssetsAO);\r\n makeShowArchivedAppAssetPM(appAssetsAO);\r\n makeEditingAppAssetPM(appAssetsAO);\r\n}\r\n\r\nfunction makeAssetFactory(appObjects: AppObjectRepo) {\r\n return function assetFactory(id: string): AssetEntity {\r\n const ao = appObjects.getOrCreate(id);\r\n\r\n // Entities\r\n const entity = makeAssetEntity(ao);\r\n\r\n // UCs\r\n makeArchiveAssetUC(ao);\r\n makeDeleteAssetUC(ao);\r\n makeDownloadAssetFileUC(ao);\r\n makeUpdateAssetFileUC(ao);\r\n makeUpdateAppAssetMetaUC(ao);\r\n\r\n // PMs\r\n makeAssetPM(ao);\r\n return entity;\r\n };\r\n}\r\n"]}