@vived/host 5.8.0 → 5.9.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 (1043) hide show
  1. package/dist/cjs/AppSandbox/Adapters/babylonInspectorSupportedAdapter.js.map +1 -1
  2. package/dist/cjs/AppSandbox/Adapters/devFeaturesEnabledAdapter.js.map +1 -1
  3. package/dist/cjs/AppSandbox/Adapters/sandboxStateAdapter.js.map +1 -1
  4. package/dist/cjs/AppSandbox/Adapters/showInspectorAdapter.js.map +1 -1
  5. package/dist/cjs/AppSandbox/Adapters/startInZSpaceAdapter.js.map +1 -1
  6. package/dist/cjs/AppSandbox/Controller/clearSandboxAppContainer.js.map +1 -1
  7. package/dist/cjs/AppSandbox/Controller/mountSandboxApp.js.map +1 -1
  8. package/dist/cjs/AppSandbox/Controller/setBabylonInspectorSupported.js.map +1 -1
  9. package/dist/cjs/AppSandbox/Controller/setSandboxAppContainer.js.map +1 -1
  10. package/dist/cjs/AppSandbox/Controller/setSandboxAppState.js.map +1 -1
  11. package/dist/cjs/AppSandbox/Controller/startSandboxApp.js.map +1 -1
  12. package/dist/cjs/AppSandbox/Controller/stopSandboxApp.js.map +1 -1
  13. package/dist/cjs/AppSandbox/Controller/toggleAllowDevFeatures.js.map +1 -1
  14. package/dist/cjs/AppSandbox/Controller/toggleShowInspector.js.map +1 -1
  15. package/dist/cjs/AppSandbox/Controller/toggleStartInZSpace.js.map +1 -1
  16. package/dist/cjs/AppSandbox/Controller/unmountSandboxApp.js.map +1 -1
  17. package/dist/cjs/AppSandbox/Entities/index.js.map +1 -1
  18. package/dist/cjs/AppSandbox/Factories/index.js.map +1 -1
  19. package/dist/cjs/AppSandbox/Mocks/BabylonInspectorSupportedPMMock.js.map +1 -1
  20. package/dist/cjs/AppSandbox/Mocks/DevFeaturesEnabledPMMock.js.map +1 -1
  21. package/dist/cjs/AppSandbox/Mocks/MockShowBabylonInspectorUC.js.map +1 -1
  22. package/dist/cjs/AppSandbox/Mocks/RenderAppPMMock.js.map +1 -1
  23. package/dist/cjs/AppSandbox/Mocks/ShowInspectorPMMock.js.map +1 -1
  24. package/dist/cjs/AppSandbox/Mocks/StartInZSpacePMMock.js.map +1 -1
  25. package/dist/cjs/AppSandbox/PMs/BabylonInspectorSupportedPM.js.map +1 -1
  26. package/dist/cjs/AppSandbox/PMs/DevFeaturesEnabledPM.js.map +1 -1
  27. package/dist/cjs/AppSandbox/PMs/SandboxStatePM.js.map +1 -1
  28. package/dist/cjs/AppSandbox/PMs/ShowInspectorPM.js.map +1 -1
  29. package/dist/cjs/AppSandbox/PMs/StartInZSpacePM.js.map +1 -1
  30. package/dist/cjs/AppSandbox/UCs/ShowBabylonInspectorUC.js.map +1 -1
  31. package/dist/cjs/AppSandbox/UCs/submitActivityAssetHandlerSandbox.js +5 -1
  32. package/dist/cjs/AppSandbox/UCs/submitActivityAssetHandlerSandbox.js.map +1 -1
  33. package/dist/cjs/AppSandbox/index.js.map +1 -1
  34. package/dist/cjs/Apps/Adapters/activeAppPMAdapter.js.map +1 -1
  35. package/dist/cjs/Apps/Adapters/appListPMAdapter.js.map +1 -1
  36. package/dist/cjs/Apps/Adapters/appPMAdapter.js.map +1 -1
  37. package/dist/cjs/Apps/Adapters/index.js.map +1 -1
  38. package/dist/cjs/Apps/Controllers/index.js.map +1 -1
  39. package/dist/cjs/Apps/Controllers/updateApp.js.map +1 -1
  40. package/dist/cjs/Apps/Entities/AppEntity.js.map +1 -1
  41. package/dist/cjs/Apps/Entities/AppRepo.js.map +1 -1
  42. package/dist/cjs/Apps/Entities/index.js.map +1 -1
  43. package/dist/cjs/Apps/Factories/AppsFeatureFactory.js.map +1 -1
  44. package/dist/cjs/Apps/Factories/index.js.map +1 -1
  45. package/dist/cjs/Apps/Mocks/MockActiveAppPM.js.map +1 -1
  46. package/dist/cjs/Apps/Mocks/MockAppListPM.js.map +1 -1
  47. package/dist/cjs/Apps/Mocks/MockAppMounterUC.js.map +1 -1
  48. package/dist/cjs/Apps/Mocks/MockAppPM.js.map +1 -1
  49. package/dist/cjs/Apps/Mocks/MockStartAppUC.js.map +1 -1
  50. package/dist/cjs/Apps/Mocks/MockStopAppUC.js.map +1 -1
  51. package/dist/cjs/Apps/Mocks/MockUpdateAppUC.js.map +1 -1
  52. package/dist/cjs/Apps/Mocks/index.js.map +1 -1
  53. package/dist/cjs/Apps/PMs/ActiveAppPM.js.map +1 -1
  54. package/dist/cjs/Apps/PMs/AppPM.js.map +1 -1
  55. package/dist/cjs/Apps/PMs/AppsListPM.js.map +1 -1
  56. package/dist/cjs/Apps/PMs/index.js.map +1 -1
  57. package/dist/cjs/Apps/UCs/Mounters/MounterUC.js.map +1 -1
  58. package/dist/cjs/Apps/UCs/Mounters/SandboxMounterUC.js +32 -0
  59. package/dist/cjs/Apps/UCs/Mounters/SandboxMounterUC.js.map +1 -1
  60. package/dist/cjs/Apps/UCs/Mounters/index.js.map +1 -1
  61. package/dist/cjs/Apps/UCs/StartAppUC.js.map +1 -1
  62. package/dist/cjs/Apps/UCs/StopAppUC.js.map +1 -1
  63. package/dist/cjs/Apps/UCs/UpdateAppUC.js.map +1 -1
  64. package/dist/cjs/Apps/UCs/formAppIDWithVersion.js.map +1 -1
  65. package/dist/cjs/Apps/UCs/index.js.map +1 -1
  66. package/dist/cjs/Apps/index.js.map +1 -1
  67. package/dist/cjs/AssetPlugin/Adapters/assetPluginPMAdapter.js.map +1 -1
  68. package/dist/cjs/AssetPlugin/Adapters/index.js.map +1 -1
  69. package/dist/cjs/AssetPlugin/Controllers/clearAssetPluginContainer.js.map +1 -1
  70. package/dist/cjs/AssetPlugin/Controllers/index.js.map +1 -1
  71. package/dist/cjs/AssetPlugin/Controllers/setAssetPluginContainer.js.map +1 -1
  72. package/dist/cjs/AssetPlugin/Entities/AssetPluginEntity.js.map +1 -1
  73. package/dist/cjs/AssetPlugin/Entities/index.js.map +1 -1
  74. package/dist/cjs/AssetPlugin/Factories/AssetPluginFeatureFactory.js.map +1 -1
  75. package/dist/cjs/AssetPlugin/Factories/index.js.map +1 -1
  76. package/dist/cjs/AssetPlugin/Factories/setupAssetsPluginForSandbox.js.map +1 -1
  77. package/dist/cjs/AssetPlugin/Mocks/MockAssetPluginContainerUC.js.map +1 -1
  78. package/dist/cjs/AssetPlugin/Mocks/MockAssetPluginPM.js.map +1 -1
  79. package/dist/cjs/AssetPlugin/Mocks/index.js.map +1 -1
  80. package/dist/cjs/AssetPlugin/PM/AssetPluginPM.js.map +1 -1
  81. package/dist/cjs/AssetPlugin/PM/index.js.map +1 -1
  82. package/dist/cjs/AssetPlugin/UCs/AssetPluginContainerUC.js.map +1 -1
  83. package/dist/cjs/AssetPlugin/UCs/SandboxAssetPluginContainerUC.js.map +1 -1
  84. package/dist/cjs/AssetPlugin/UCs/index.js.map +1 -1
  85. package/dist/cjs/AssetPlugin/index.js.map +1 -1
  86. package/dist/cjs/Assets/Adapters/appAssetListAdapter.js.map +1 -1
  87. package/dist/cjs/Assets/Adapters/assetAdapter.js.map +1 -1
  88. package/dist/cjs/Assets/Adapters/assetFileAdapter.js.map +1 -1
  89. package/dist/cjs/Assets/Adapters/editingAppAssetAdapter.js.map +1 -1
  90. package/dist/cjs/Assets/Adapters/index.js.map +1 -1
  91. package/dist/cjs/Assets/Adapters/showArchivedAppAssetAdapter.js.map +1 -1
  92. package/dist/cjs/Assets/Controllers/archiveAsset.js.map +1 -1
  93. package/dist/cjs/Assets/Controllers/deleteAsset.js.map +1 -1
  94. package/dist/cjs/Assets/Controllers/downloadAssetFile.js.map +1 -1
  95. package/dist/cjs/Assets/Controllers/editAppAsset.js.map +1 -1
  96. package/dist/cjs/Assets/Controllers/fetchAssetFile.js.map +1 -1
  97. package/dist/cjs/Assets/Controllers/getAppAssets.js.map +1 -1
  98. package/dist/cjs/Assets/Controllers/index.js.map +1 -1
  99. package/dist/cjs/Assets/Controllers/newAppAsset.js.map +1 -1
  100. package/dist/cjs/Assets/Controllers/toggleShowArchivedAssets.js.map +1 -1
  101. package/dist/cjs/Assets/Controllers/updateAppAssetMeta.js.map +1 -1
  102. package/dist/cjs/Assets/Controllers/updateAssetFile.js.map +1 -1
  103. package/dist/cjs/Assets/Entities/AppAssetsEntity.js.map +1 -1
  104. package/dist/cjs/Assets/Entities/AssetEntity.js.map +1 -1
  105. package/dist/cjs/Assets/Entities/AssetRepo.js.map +1 -1
  106. package/dist/cjs/Assets/Entities/index.js.map +1 -1
  107. package/dist/cjs/Assets/Factories/AssetsFactory.js.map +1 -1
  108. package/dist/cjs/Assets/Factories/SandboxAssetsFactory.js.map +1 -1
  109. package/dist/cjs/Assets/Factories/index.js.map +1 -1
  110. package/dist/cjs/Assets/Factories/setupAssetsForSandbox.js.map +1 -1
  111. package/dist/cjs/Assets/Mocks/AppAssetListPMMock.js.map +1 -1
  112. package/dist/cjs/Assets/Mocks/AssetFilePMMock.js.map +1 -1
  113. package/dist/cjs/Assets/Mocks/AssetPMMock.js.map +1 -1
  114. package/dist/cjs/Assets/Mocks/EditingAppAssetPMMock.js.map +1 -1
  115. package/dist/cjs/Assets/Mocks/MockArchiveAsset.js.map +1 -1
  116. package/dist/cjs/Assets/Mocks/MockDeleteAssetUC.js.map +1 -1
  117. package/dist/cjs/Assets/Mocks/MockDownloadAssetFileUC.js.map +1 -1
  118. package/dist/cjs/Assets/Mocks/MockEditAppAssetUC.js.map +1 -1
  119. package/dist/cjs/Assets/Mocks/MockGetAppAssetsUC.js.map +1 -1
  120. package/dist/cjs/Assets/Mocks/MockGetAssetBlobURLUC.js.map +1 -1
  121. package/dist/cjs/Assets/Mocks/MockGetAssetFileUC.js.map +1 -1
  122. package/dist/cjs/Assets/Mocks/MockGetAssetUC.js.map +1 -1
  123. package/dist/cjs/Assets/Mocks/MockNewAppAsset.js.map +1 -1
  124. package/dist/cjs/Assets/Mocks/MockNewAssetUC.js.map +1 -1
  125. package/dist/cjs/Assets/Mocks/MockPrefetchAssets.js.map +1 -1
  126. package/dist/cjs/Assets/Mocks/MockUpdateAppAssetMetaUC.js.map +1 -1
  127. package/dist/cjs/Assets/Mocks/MockUpdateAssetFileUC.js.map +1 -1
  128. package/dist/cjs/Assets/Mocks/ShowArchivedAppAssetPMMock.js.map +1 -1
  129. package/dist/cjs/Assets/Mocks/index.js.map +1 -1
  130. package/dist/cjs/Assets/PMs/AppAssetListPM.js.map +1 -1
  131. package/dist/cjs/Assets/PMs/AssetFilePM.js.map +1 -1
  132. package/dist/cjs/Assets/PMs/AssetPM.js.map +1 -1
  133. package/dist/cjs/Assets/PMs/EditingAppAssetPM.js.map +1 -1
  134. package/dist/cjs/Assets/PMs/ShowArchivedAppAssetPM.js.map +1 -1
  135. package/dist/cjs/Assets/PMs/index.js.map +1 -1
  136. package/dist/cjs/Assets/UCs/ArchiveAssetUC.js.map +1 -1
  137. package/dist/cjs/Assets/UCs/DeleteAssetUC.js.map +1 -1
  138. package/dist/cjs/Assets/UCs/DownloadAssetFileUC.js.map +1 -1
  139. package/dist/cjs/Assets/UCs/EditAppAssetUC.js.map +1 -1
  140. package/dist/cjs/Assets/UCs/GetAppAssetsUC.js.map +1 -1
  141. package/dist/cjs/Assets/UCs/GetAssetBlobURLUC.js.map +1 -1
  142. package/dist/cjs/Assets/UCs/GetAssetFileUC.js.map +1 -1
  143. package/dist/cjs/Assets/UCs/GetAssetUC.js.map +1 -1
  144. package/dist/cjs/Assets/UCs/NewAssetUC.js +3 -2
  145. package/dist/cjs/Assets/UCs/NewAssetUC.js.map +1 -1
  146. package/dist/cjs/Assets/UCs/PrefetchAssetsUC.js.map +1 -1
  147. package/dist/cjs/Assets/UCs/UpdateAppAssetMetaUC.js.map +1 -1
  148. package/dist/cjs/Assets/UCs/UpdateAssetFileUC.js.map +1 -1
  149. package/dist/cjs/Assets/UCs/index.js.map +1 -1
  150. package/dist/cjs/Assets/index.js.map +1 -1
  151. package/dist/cjs/Cache/Controllers/clearCache.js.map +1 -1
  152. package/dist/cjs/Cache/Controllers/index.js.map +1 -1
  153. package/dist/cjs/Cache/Entities/AssetCacheEntity.js.map +1 -1
  154. package/dist/cjs/Cache/Entities/CacheEntity.js.map +1 -1
  155. package/dist/cjs/Cache/Entities/ScriptCacheEntity.js.map +1 -1
  156. package/dist/cjs/Cache/Entities/index.js.map +1 -1
  157. package/dist/cjs/Cache/Factories/CacheFeatureFactory.js.map +1 -1
  158. package/dist/cjs/Cache/Factories/index.js.map +1 -1
  159. package/dist/cjs/Cache/Factories/setupCache.js.map +1 -1
  160. package/dist/cjs/Cache/Mocks/MockCacheEntity.js.map +1 -1
  161. package/dist/cjs/Cache/Mocks/MockGetAssetFromCacheUC.js.map +1 -1
  162. package/dist/cjs/Cache/Mocks/MockGetScriptFromCacheUC.js.map +1 -1
  163. package/dist/cjs/Cache/Mocks/MockStoreAssetInCacheUC.js.map +1 -1
  164. package/dist/cjs/Cache/Mocks/MockStoreScriptInCacheUC.js.map +1 -1
  165. package/dist/cjs/Cache/Mocks/index.js.map +1 -1
  166. package/dist/cjs/Cache/UCs/GetAssetFromCacheUC.js.map +1 -1
  167. package/dist/cjs/Cache/UCs/GetScriptFromCacheUC.js.map +1 -1
  168. package/dist/cjs/Cache/UCs/StoreAssetInCacheUC.js.map +1 -1
  169. package/dist/cjs/Cache/UCs/StoreScriptInCacheUC.js.map +1 -1
  170. package/dist/cjs/Cache/UCs/index.js.map +1 -1
  171. package/dist/cjs/Cache/index.js.map +1 -1
  172. package/dist/cjs/ChallengeResults/Adapters/challengeResultsListAdapter.js.map +1 -1
  173. package/dist/cjs/ChallengeResults/Adapters/challengeScoreListAdapter.js.map +1 -1
  174. package/dist/cjs/ChallengeResults/Adapters/hasChallengeResultsPMAdapter.js.map +1 -1
  175. package/dist/cjs/ChallengeResults/Adapters/index.js.map +1 -1
  176. package/dist/cjs/ChallengeResults/Entities/ChallengeResults.js.map +1 -1
  177. package/dist/cjs/ChallengeResults/Entities/index.js.map +1 -1
  178. package/dist/cjs/ChallengeResults/Factories/ChallengeResultsFactory.js.map +1 -1
  179. package/dist/cjs/ChallengeResults/Factories/index.js.map +1 -1
  180. package/dist/cjs/ChallengeResults/Factories/setupChallengeResults.js.map +1 -1
  181. package/dist/cjs/ChallengeResults/Mocks/ChallengeResultsListPMMock.js.map +1 -1
  182. package/dist/cjs/ChallengeResults/Mocks/MockChallengeScoreListPM.js.map +1 -1
  183. package/dist/cjs/ChallengeResults/Mocks/MockHasChallengeResultsPM.js.map +1 -1
  184. package/dist/cjs/ChallengeResults/Mocks/index.js.map +1 -1
  185. package/dist/cjs/ChallengeResults/PMs/ChallengeResultsListPM.js.map +1 -1
  186. package/dist/cjs/ChallengeResults/PMs/ChallengeScoreListPM.js.map +1 -1
  187. package/dist/cjs/ChallengeResults/PMs/HasChallengeResultsPM.js.map +1 -1
  188. package/dist/cjs/ChallengeResults/PMs/index.js.map +1 -1
  189. package/dist/cjs/ChallengeResults/index.js.map +1 -1
  190. package/dist/cjs/Dialog/Adapters/alertDialogAdapter.js.map +1 -1
  191. package/dist/cjs/Dialog/Adapters/confirmDialogAdapter.js.map +1 -1
  192. package/dist/cjs/Dialog/Adapters/dialogQueueAdapter.js.map +1 -1
  193. package/dist/cjs/Dialog/Adapters/index.js.map +1 -1
  194. package/dist/cjs/Dialog/Adapters/markDownEditorDialogAdapters.js.map +1 -1
  195. package/dist/cjs/Dialog/Adapters/spinnerDialogAdapter.js.map +1 -1
  196. package/dist/cjs/Dialog/Controllers/activeDialogHasClosed.js.map +1 -1
  197. package/dist/cjs/Dialog/Controllers/index.js.map +1 -1
  198. package/dist/cjs/Dialog/Entities/Alert.js.map +1 -1
  199. package/dist/cjs/Dialog/Entities/Confirm.js.map +1 -1
  200. package/dist/cjs/Dialog/Entities/MarkDownEditor.js.map +1 -1
  201. package/dist/cjs/Dialog/Entities/SelectModel.js.map +1 -1
  202. package/dist/cjs/Dialog/Entities/Spinner.js.map +1 -1
  203. package/dist/cjs/Dialog/Entities/index.js.map +1 -1
  204. package/dist/cjs/Dialog/Factories/SandboxDialogFactory.js.map +1 -1
  205. package/dist/cjs/Dialog/Factories/alertDialogFactory.js.map +1 -1
  206. package/dist/cjs/Dialog/Factories/confirmDialogFactory.js.map +1 -1
  207. package/dist/cjs/Dialog/Factories/index.js.map +1 -1
  208. package/dist/cjs/Dialog/Factories/markdownDialogEditorFactory.js.map +1 -1
  209. package/dist/cjs/Dialog/Factories/selectDialogModelFactory.js.map +1 -1
  210. package/dist/cjs/Dialog/Factories/setupDialogForSandbox.js.map +1 -1
  211. package/dist/cjs/Dialog/Factories/spinnerDialogFactory.js.map +1 -1
  212. package/dist/cjs/Dialog/Mocks/MockAlertDialogPM.js.map +1 -1
  213. package/dist/cjs/Dialog/Mocks/MockConfirmDialogPM.js.map +1 -1
  214. package/dist/cjs/Dialog/Mocks/MockDialogQueuePM.js.map +1 -1
  215. package/dist/cjs/Dialog/Mocks/MockMakeAlertDialogUC.js.map +1 -1
  216. package/dist/cjs/Dialog/Mocks/MockMakeConfirmDialogUC.js.map +1 -1
  217. package/dist/cjs/Dialog/Mocks/MockMakeMarkdownDialogUC.js.map +1 -1
  218. package/dist/cjs/Dialog/Mocks/MockMakeSelectModelDialogUC.js.map +1 -1
  219. package/dist/cjs/Dialog/Mocks/MockMakeSpinnerDialogUC.js.map +1 -1
  220. package/dist/cjs/Dialog/Mocks/MockMarkDownEditorDialogPM.js.map +1 -1
  221. package/dist/cjs/Dialog/Mocks/MockSpinnerDialogPM.js.map +1 -1
  222. package/dist/cjs/Dialog/Mocks/index.js.map +1 -1
  223. package/dist/cjs/Dialog/PMs/AlertDialogPM.js.map +1 -1
  224. package/dist/cjs/Dialog/PMs/ConfirmDialogPM.js.map +1 -1
  225. package/dist/cjs/Dialog/PMs/DialogQueuePM.js.map +1 -1
  226. package/dist/cjs/Dialog/PMs/MarkDownEditorDialogPM.js.map +1 -1
  227. package/dist/cjs/Dialog/PMs/SpinnerDialogPM.js.map +1 -1
  228. package/dist/cjs/Dialog/PMs/index.js.map +1 -1
  229. package/dist/cjs/Dialog/UCs/MakeAlertDialogUC.js.map +1 -1
  230. package/dist/cjs/Dialog/UCs/MakeConfirmDialogUC.js.map +1 -1
  231. package/dist/cjs/Dialog/UCs/MakeMarkdownDialogUC.js.map +1 -1
  232. package/dist/cjs/Dialog/UCs/MakeSelectModelDialogUC.js.map +1 -1
  233. package/dist/cjs/Dialog/UCs/MakeSpinnerDialogUC.js.map +1 -1
  234. package/dist/cjs/Dialog/UCs/index.js.map +1 -1
  235. package/dist/cjs/Dialog/index.js.map +1 -1
  236. package/dist/cjs/Dispatcher/Entities/index.js.map +1 -1
  237. package/dist/cjs/Dispatcher/Mocks/DispatchEnableFeatureUCMock.js.map +1 -1
  238. package/dist/cjs/Dispatcher/Mocks/MockDispatchAppDispatcherUC.js.map +1 -1
  239. package/dist/cjs/Dispatcher/Mocks/MockDispatchIsAuthoringUC.js.map +1 -1
  240. package/dist/cjs/Dispatcher/Mocks/MockDispatchSetStateUC.js.map +1 -1
  241. package/dist/cjs/Dispatcher/Mocks/MockDispatchShowBabylonInspectorUC.js.map +1 -1
  242. package/dist/cjs/Dispatcher/Mocks/MockDispatchStartAppUC.js.map +1 -1
  243. package/dist/cjs/Dispatcher/Mocks/MockDispatchStartBrowseChannelsUC.js.map +1 -1
  244. package/dist/cjs/Dispatcher/Mocks/MockDispatchStartZSpaceUC.js.map +1 -1
  245. package/dist/cjs/Dispatcher/Mocks/MockDispatchStopAppUC.js.map +1 -1
  246. package/dist/cjs/Dispatcher/Mocks/MockDispatchStopZSpaceUC.js.map +1 -1
  247. package/dist/cjs/Dispatcher/Mocks/MockDispatchThemeUC.js.map +1 -1
  248. package/dist/cjs/Dispatcher/UCs/DispatchDisposeAppUC.js.map +1 -1
  249. package/dist/cjs/Dispatcher/UCs/DispatchEnableFeatureUC.js.map +1 -1
  250. package/dist/cjs/Dispatcher/UCs/DispatchIsAuthoringUC.js.map +1 -1
  251. package/dist/cjs/Dispatcher/UCs/DispatchSetStateUC.js.map +1 -1
  252. package/dist/cjs/Dispatcher/UCs/DispatchShowBabylonInspectorUC.js.map +1 -1
  253. package/dist/cjs/Dispatcher/UCs/DispatchStartAppUC.js.map +1 -1
  254. package/dist/cjs/Dispatcher/UCs/DispatchStartBrowseChannelsUC.js.map +1 -1
  255. package/dist/cjs/Dispatcher/UCs/DispatchStartZSpaceUC.js.map +1 -1
  256. package/dist/cjs/Dispatcher/UCs/DispatchStopAppUC.js.map +1 -1
  257. package/dist/cjs/Dispatcher/UCs/DispatchStopZSpaceUC.js.map +1 -1
  258. package/dist/cjs/Dispatcher/index.js.map +1 -1
  259. package/dist/cjs/Events/Types/EventTypes.js.map +1 -1
  260. package/dist/cjs/Events/Types/PayloadTypes.js.map +1 -1
  261. package/dist/cjs/Events/Types/index.js.map +1 -1
  262. package/dist/cjs/Events/index.js.map +1 -1
  263. package/dist/cjs/Handler/Entities/index.js.map +1 -1
  264. package/dist/cjs/Handler/UCs/CallbackAssetDTO.js.map +1 -1
  265. package/dist/cjs/Handler/UCs/CloseAssetSystemPlugin.js.map +1 -1
  266. package/dist/cjs/Handler/UCs/GetAssetBlobURLHandler.js.map +1 -1
  267. package/dist/cjs/Handler/UCs/GetAssetFolderURLHandler.js.map +1 -1
  268. package/dist/cjs/Handler/UCs/GetAssetMetaHandler.js.map +1 -1
  269. package/dist/cjs/Handler/UCs/GetAssetsForOwnerHandler.js.map +1 -1
  270. package/dist/cjs/Handler/UCs/GetLinkedAssetsHandler.js.map +1 -1
  271. package/dist/cjs/Handler/UCs/GoToNextStateHandler.js.map +1 -1
  272. package/dist/cjs/Handler/UCs/GoToPreviousStateHandler.js.map +1 -1
  273. package/dist/cjs/Handler/UCs/HasNextStateHandler.js.map +1 -1
  274. package/dist/cjs/Handler/UCs/HasPreviousStateHandler.js.map +1 -1
  275. package/dist/cjs/Handler/UCs/IsAssetFetchedHandler.js.map +1 -1
  276. package/dist/cjs/Handler/UCs/IsZSpaceAvailableHandler.js.map +1 -1
  277. package/dist/cjs/Handler/UCs/NewActivityAssetHandler.js.map +1 -1
  278. package/dist/cjs/Handler/UCs/OnAppIsReadyHandler.js.map +1 -1
  279. package/dist/cjs/Handler/UCs/OnStateChangeHandler.js.map +1 -1
  280. package/dist/cjs/Handler/UCs/OnStateCompleteHandler.js.map +1 -1
  281. package/dist/cjs/Handler/UCs/RegisterExternalStyleSheetsHandler.js.map +1 -1
  282. package/dist/cjs/Handler/UCs/RestoreCurrentStateHandler.js.map +1 -1
  283. package/dist/cjs/Handler/UCs/ShowAlertHandler.js.map +1 -1
  284. package/dist/cjs/Handler/UCs/ShowConfirmHandler.js.map +1 -1
  285. package/dist/cjs/Handler/UCs/ShowMarkDownEditorHandler.js.map +1 -1
  286. package/dist/cjs/Handler/UCs/ShowSelectModelHandler.js.map +1 -1
  287. package/dist/cjs/Handler/UCs/ShowSpinnerHandler.js.map +1 -1
  288. package/dist/cjs/Handler/UCs/StartZSpaceHandler.js.map +1 -1
  289. package/dist/cjs/Handler/UCs/StopZSpaceHandler.js.map +1 -1
  290. package/dist/cjs/Handler/UCs/SubmitActivityAssetHandler.js.map +1 -1
  291. package/dist/cjs/Handler/UCs/SubmitLogHandler.js.map +1 -1
  292. package/dist/cjs/Handler/UCs/SubmitResultHandler.js.map +1 -1
  293. package/dist/cjs/Handler/index.js.map +1 -1
  294. package/dist/cjs/Logger/Adapters/fatalErrorAdapter.js.map +1 -1
  295. package/dist/cjs/Logger/Adapters/forwardLogsToConsoleAdapter.js.map +1 -1
  296. package/dist/cjs/Logger/Adapters/index.js.map +1 -1
  297. package/dist/cjs/Logger/Adapters/logSummaryAdapter.js.map +1 -1
  298. package/dist/cjs/Logger/Controllers/clickDownloadLog.js.map +1 -1
  299. package/dist/cjs/Logger/Controllers/index.js.map +1 -1
  300. package/dist/cjs/Logger/Controllers/toggleForwardLogs.js.map +1 -1
  301. package/dist/cjs/Logger/Entities/LoggerEntity.js.map +1 -1
  302. package/dist/cjs/Logger/Entities/index.js.map +1 -1
  303. package/dist/cjs/Logger/Factories/SandboxLoggerFactory.js.map +1 -1
  304. package/dist/cjs/Logger/Factories/index.js.map +1 -1
  305. package/dist/cjs/Logger/Factories/setupLoggerForSandbox.js.map +1 -1
  306. package/dist/cjs/Logger/Mocks/ForwardLogsToConsolePMMock.js.map +1 -1
  307. package/dist/cjs/Logger/Mocks/LogSummaryPMMock.js.map +1 -1
  308. package/dist/cjs/Logger/Mocks/MockDownloadLogUC.js.map +1 -1
  309. package/dist/cjs/Logger/Mocks/MockFatalErrorPM.js.map +1 -1
  310. package/dist/cjs/Logger/Mocks/index.js.map +1 -1
  311. package/dist/cjs/Logger/PMs/FatalErrorPM.js.map +1 -1
  312. package/dist/cjs/Logger/PMs/ForwardLogsToConsolePM.js.map +1 -1
  313. package/dist/cjs/Logger/PMs/LogSummaryPM.js.map +1 -1
  314. package/dist/cjs/Logger/PMs/index.js.map +1 -1
  315. package/dist/cjs/Logger/UCs/DownloadLogUC.js.map +1 -1
  316. package/dist/cjs/Logger/UCs/index.js.map +1 -1
  317. package/dist/cjs/Logger/index.js.map +1 -1
  318. package/dist/cjs/Snackbar/Adapters/index.js.map +1 -1
  319. package/dist/cjs/Snackbar/Adapters/snackbarAdapter.js.map +1 -1
  320. package/dist/cjs/Snackbar/Controllers/callActiveSnackbarAction.js.map +1 -1
  321. package/dist/cjs/Snackbar/Controllers/dismissActiveSnackbar.js.map +1 -1
  322. package/dist/cjs/Snackbar/Controllers/index.js.map +1 -1
  323. package/dist/cjs/Snackbar/Controllers/makeSnackbar.js.map +1 -1
  324. package/dist/cjs/Snackbar/Entities/SnackbarRepo.js.map +1 -1
  325. package/dist/cjs/Snackbar/Entities/index.js.map +1 -1
  326. package/dist/cjs/Snackbar/Factories/index.js.map +1 -1
  327. package/dist/cjs/Snackbar/Factories/setupSnackbar.js.map +1 -1
  328. package/dist/cjs/Snackbar/Mocks/SnackbarPMMock.js.map +1 -1
  329. package/dist/cjs/Snackbar/Mocks/index.js.map +1 -1
  330. package/dist/cjs/Snackbar/PMs/SnackbarPM.js.map +1 -1
  331. package/dist/cjs/Snackbar/PMs/index.js.map +1 -1
  332. package/dist/cjs/Snackbar/index.js.map +1 -1
  333. package/dist/cjs/StateMachine/Adapters/editingStateAdapter.js.map +1 -1
  334. package/dist/cjs/StateMachine/Adapters/hostStateAdapter.js.map +1 -1
  335. package/dist/cjs/StateMachine/Adapters/hostStateMachinePMAdapter.js.map +1 -1
  336. package/dist/cjs/StateMachine/Adapters/index.js.map +1 -1
  337. package/dist/cjs/StateMachine/Controllers/cancelEditing.js.map +1 -1
  338. package/dist/cjs/StateMachine/Controllers/consumeState.js.map +1 -1
  339. package/dist/cjs/StateMachine/Controllers/deleteState.js.map +1 -1
  340. package/dist/cjs/StateMachine/Controllers/duplicateState.js.map +1 -1
  341. package/dist/cjs/StateMachine/Controllers/editActiveState.js.map +1 -1
  342. package/dist/cjs/StateMachine/Controllers/editState.js.map +1 -1
  343. package/dist/cjs/StateMachine/Controllers/editStateName.js.map +1 -1
  344. package/dist/cjs/StateMachine/Controllers/endActivity.js.map +1 -1
  345. package/dist/cjs/StateMachine/Controllers/index.js.map +1 -1
  346. package/dist/cjs/StateMachine/Controllers/newState.js.map +1 -1
  347. package/dist/cjs/StateMachine/Controllers/saveAuthoring.js.map +1 -1
  348. package/dist/cjs/StateMachine/Controllers/savePersistentStates.js.map +1 -1
  349. package/dist/cjs/StateMachine/Controllers/setTransitionDuration.js.map +1 -1
  350. package/dist/cjs/StateMachine/Controllers/transitionToState.js.map +1 -1
  351. package/dist/cjs/StateMachine/Entities/HostEditingStateEntity.js.map +1 -1
  352. package/dist/cjs/StateMachine/Entities/HostStateEntity.js.map +1 -1
  353. package/dist/cjs/StateMachine/Entities/HostStateMachine.js.map +1 -1
  354. package/dist/cjs/StateMachine/Entities/index.js.map +1 -1
  355. package/dist/cjs/StateMachine/Factories/SandboxStateMachineFactory.js.map +1 -1
  356. package/dist/cjs/StateMachine/Factories/index.js.map +1 -1
  357. package/dist/cjs/StateMachine/Factories/setupStateMachineForSandbox.js.map +1 -1
  358. package/dist/cjs/StateMachine/Mocks/CancelEditingUCMock.js.map +1 -1
  359. package/dist/cjs/StateMachine/Mocks/ConsumeStateUCMock.js.map +1 -1
  360. package/dist/cjs/StateMachine/Mocks/EditStateUCMock.js.map +1 -1
  361. package/dist/cjs/StateMachine/Mocks/EndActivityUCMock.js.map +1 -1
  362. package/dist/cjs/StateMachine/Mocks/MockDeleteStateUC.js.map +1 -1
  363. package/dist/cjs/StateMachine/Mocks/MockDuplicateStateUC.js.map +1 -1
  364. package/dist/cjs/StateMachine/Mocks/MockEditActiveStateUC.js.map +1 -1
  365. package/dist/cjs/StateMachine/Mocks/MockEditStateNameUC.js.map +1 -1
  366. package/dist/cjs/StateMachine/Mocks/MockHostEditingStateEntity.js.map +1 -1
  367. package/dist/cjs/StateMachine/Mocks/MockHostStateEntity.js.map +1 -1
  368. package/dist/cjs/StateMachine/Mocks/MockHostStateMachinePM.js.map +1 -1
  369. package/dist/cjs/StateMachine/Mocks/MockHostStatePM.js.map +1 -1
  370. package/dist/cjs/StateMachine/Mocks/MockIsEditingStatePM.js.map +1 -1
  371. package/dist/cjs/StateMachine/Mocks/MockSaveAuthoringUC.js.map +1 -1
  372. package/dist/cjs/StateMachine/Mocks/MockTransitionToStateUC.js.map +1 -1
  373. package/dist/cjs/StateMachine/Mocks/NewStateUCMock.js.map +1 -1
  374. package/dist/cjs/StateMachine/Mocks/SavePersistentStatesMock.js.map +1 -1
  375. package/dist/cjs/StateMachine/Mocks/index.js.map +1 -1
  376. package/dist/cjs/StateMachine/PMs/EditingStatePM.js.map +1 -1
  377. package/dist/cjs/StateMachine/PMs/HostStateMachinePM.js.map +1 -1
  378. package/dist/cjs/StateMachine/PMs/HostStatePM.js.map +1 -1
  379. package/dist/cjs/StateMachine/PMs/index.js.map +1 -1
  380. package/dist/cjs/StateMachine/UCs/CancelEditing/CancelEditingUC.js.map +1 -1
  381. package/dist/cjs/StateMachine/UCs/CancelEditing/CancelSandboxEditingUC.js.map +1 -1
  382. package/dist/cjs/StateMachine/UCs/CancelEditing/index.js.map +1 -1
  383. package/dist/cjs/StateMachine/UCs/ConsumeState/ConsumeSandboxStateUC.js.map +1 -1
  384. package/dist/cjs/StateMachine/UCs/ConsumeState/ConsumeStateUC.js.map +1 -1
  385. package/dist/cjs/StateMachine/UCs/ConsumeState/index.js.map +1 -1
  386. package/dist/cjs/StateMachine/UCs/DeleteStateUC.js.map +1 -1
  387. package/dist/cjs/StateMachine/UCs/DuplicateStateUC.js.map +1 -1
  388. package/dist/cjs/StateMachine/UCs/EditActiveState/EditActiveSandboxStateUC.js.map +1 -1
  389. package/dist/cjs/StateMachine/UCs/EditActiveState/EditActiveStateUC.js.map +1 -1
  390. package/dist/cjs/StateMachine/UCs/EditActiveState/index.js.map +1 -1
  391. package/dist/cjs/StateMachine/UCs/EditState/EditSandboxStateUC.js.map +1 -1
  392. package/dist/cjs/StateMachine/UCs/EditState/EditStateUC.js.map +1 -1
  393. package/dist/cjs/StateMachine/UCs/EditState/index.js.map +1 -1
  394. package/dist/cjs/StateMachine/UCs/EditStateNameUC.js.map +1 -1
  395. package/dist/cjs/StateMachine/UCs/EndActivity/EndActivityUC.js.map +1 -1
  396. package/dist/cjs/StateMachine/UCs/EndActivity/EndSandboxActivityUC.js.map +1 -1
  397. package/dist/cjs/StateMachine/UCs/EndActivity/index.js.map +1 -1
  398. package/dist/cjs/StateMachine/UCs/NewState/NewSandboxStateUC.js.map +1 -1
  399. package/dist/cjs/StateMachine/UCs/NewState/NewStateUC.js.map +1 -1
  400. package/dist/cjs/StateMachine/UCs/NewState/index.js.map +1 -1
  401. package/dist/cjs/StateMachine/UCs/SaveAuthoring/SaveAuthoringSandboxUC.js.map +1 -1
  402. package/dist/cjs/StateMachine/UCs/SaveAuthoring/SaveAuthoringUC.js.map +1 -1
  403. package/dist/cjs/StateMachine/UCs/SaveAuthoring/index.js.map +1 -1
  404. package/dist/cjs/StateMachine/UCs/SavePersistentStates.js.map +1 -1
  405. package/dist/cjs/StateMachine/UCs/TransitionToState/TransitionToSandboxStateUC.js.map +1 -1
  406. package/dist/cjs/StateMachine/UCs/TransitionToState/TransitionToStateUC.js.map +1 -1
  407. package/dist/cjs/StateMachine/UCs/TransitionToState/index.js.map +1 -1
  408. package/dist/cjs/StateMachine/UCs/index.js.map +1 -1
  409. package/dist/cjs/StateMachine/UCs/setSandboxStatesFromData.js.map +1 -1
  410. package/dist/cjs/StateMachine/UCs/setSandboxStatesFromStringData.js.map +1 -1
  411. package/dist/cjs/StateMachine/index.js.map +1 -1
  412. package/dist/cjs/ThemeColors/Adapter/index.js.map +1 -1
  413. package/dist/cjs/ThemeColors/Adapter/themeColorAdapter.js.map +1 -1
  414. package/dist/cjs/ThemeColors/Controllers/getOnPrimaryColor.js.map +1 -1
  415. package/dist/cjs/ThemeColors/Controllers/getOnSurfaceColor.js.map +1 -1
  416. package/dist/cjs/ThemeColors/Controllers/getPrimaryColor.js.map +1 -1
  417. package/dist/cjs/ThemeColors/Controllers/getSurfaceColor.js.map +1 -1
  418. package/dist/cjs/ThemeColors/Controllers/getSurfaceContainerColor.js.map +1 -1
  419. package/dist/cjs/ThemeColors/Controllers/index.js.map +1 -1
  420. package/dist/cjs/ThemeColors/Controllers/setThemeByName.js.map +1 -1
  421. package/dist/cjs/ThemeColors/Data/index.js.map +1 -1
  422. package/dist/cjs/ThemeColors/Entities/index.js.map +1 -1
  423. package/dist/cjs/ThemeColors/Factories/ThemeFactory.js.map +1 -1
  424. package/dist/cjs/ThemeColors/Factories/index.js.map +1 -1
  425. package/dist/cjs/ThemeColors/Factories/setupTheme.js.map +1 -1
  426. package/dist/cjs/ThemeColors/Mocks/MockSetThemeUC.js.map +1 -1
  427. package/dist/cjs/ThemeColors/Mocks/MockThemeColorPM.js.map +1 -1
  428. package/dist/cjs/ThemeColors/Mocks/index.js.map +1 -1
  429. package/dist/cjs/ThemeColors/PM/index.js.map +1 -1
  430. package/dist/cjs/ThemeColors/UCs/SetThemeUC.js.map +1 -1
  431. package/dist/cjs/ThemeColors/UCs/index.js.map +1 -1
  432. package/dist/cjs/ThemeColors/index.js.map +1 -1
  433. package/dist/cjs/VivedAPI/Adapters/apiStageAdapter.js.map +1 -1
  434. package/dist/cjs/VivedAPI/Adapters/index.js.map +1 -1
  435. package/dist/cjs/VivedAPI/Adapters/userTokenAdapter.js.map +1 -1
  436. package/dist/cjs/VivedAPI/Controllers/index.js.map +1 -1
  437. package/dist/cjs/VivedAPI/Controllers/loginUser.js.map +1 -1
  438. package/dist/cjs/VivedAPI/Controllers/logoutUser.js.map +1 -1
  439. package/dist/cjs/VivedAPI/Controllers/refreshAuthenticatedUser.js.map +1 -1
  440. package/dist/cjs/VivedAPI/Controllers/setApiStage.js.map +1 -1
  441. package/dist/cjs/VivedAPI/Entities/VivedAPIEntity.js.map +1 -1
  442. package/dist/cjs/VivedAPI/Entities/index.js.map +1 -1
  443. package/dist/cjs/VivedAPI/Factories/SandboxVivedAPIFactory.js.map +1 -1
  444. package/dist/cjs/VivedAPI/Factories/VivedAPIFactory.js.map +1 -1
  445. package/dist/cjs/VivedAPI/Factories/index.js.map +1 -1
  446. package/dist/cjs/VivedAPI/Factories/setupAPI.js.map +1 -1
  447. package/dist/cjs/VivedAPI/Factories/setupVivedAPIForSandbox.js.map +1 -1
  448. package/dist/cjs/VivedAPI/Mocks/ApiStagePMMock.js.map +1 -1
  449. package/dist/cjs/VivedAPI/Mocks/MockBasicFetchUC.js.map +1 -1
  450. package/dist/cjs/VivedAPI/Mocks/MockBlobRequestUC.js.map +1 -1
  451. package/dist/cjs/VivedAPI/Mocks/MockDeleteAssetOnAPIUC.js.map +1 -1
  452. package/dist/cjs/VivedAPI/Mocks/MockFetchAssetFileFromAPIUC.js.map +1 -1
  453. package/dist/cjs/VivedAPI/Mocks/MockFetchAssetMetaFromAPIUC.js.map +1 -1
  454. package/dist/cjs/VivedAPI/Mocks/MockFileUpload.js.map +1 -1
  455. package/dist/cjs/VivedAPI/Mocks/MockGetAppFromAPIUC.js.map +1 -1
  456. package/dist/cjs/VivedAPI/Mocks/MockGetAssetsForOwnerUC.js.map +1 -1
  457. package/dist/cjs/VivedAPI/Mocks/MockJsonRequestUC.js.map +1 -1
  458. package/dist/cjs/VivedAPI/Mocks/MockPatchAssetFileUC.js.map +1 -1
  459. package/dist/cjs/VivedAPI/Mocks/MockPatchAssetIsArchivedUC.js.map +1 -1
  460. package/dist/cjs/VivedAPI/Mocks/MockPatchAssetMetaUC.js.map +1 -1
  461. package/dist/cjs/VivedAPI/Mocks/MockPatchAssetUC.js.map +1 -1
  462. package/dist/cjs/VivedAPI/Mocks/MockPostNewAssetUC.js.map +1 -1
  463. package/dist/cjs/VivedAPI/Mocks/MockSignedAuthToken.js.map +1 -1
  464. package/dist/cjs/VivedAPI/Mocks/MockUserLoginUC.js.map +1 -1
  465. package/dist/cjs/VivedAPI/Mocks/UserTokenPMMock.js.map +1 -1
  466. package/dist/cjs/VivedAPI/Mocks/index.js.map +1 -1
  467. package/dist/cjs/VivedAPI/PMs/ApiStagePM.js.map +1 -1
  468. package/dist/cjs/VivedAPI/PMs/UserTokenPM.js.map +1 -1
  469. package/dist/cjs/VivedAPI/PMs/index.js.map +1 -1
  470. package/dist/cjs/VivedAPI/UCs/BasicFetchUC.js.map +1 -1
  471. package/dist/cjs/VivedAPI/UCs/BlobRequestUC.js.map +1 -1
  472. package/dist/cjs/VivedAPI/UCs/DeleteAssetOnAPIUC.js.map +1 -1
  473. package/dist/cjs/VivedAPI/UCs/FetchAssetFileFromAPIUC.js.map +1 -1
  474. package/dist/cjs/VivedAPI/UCs/FetchAssetMetaFromAPIUC.js.map +1 -1
  475. package/dist/cjs/VivedAPI/UCs/GetAppFromAPIUC.js.map +1 -1
  476. package/dist/cjs/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.js.map +1 -1
  477. package/dist/cjs/VivedAPI/UCs/JsonRequestUC.js.map +1 -1
  478. package/dist/cjs/VivedAPI/UCs/PatchAssetFileUC.js.map +1 -1
  479. package/dist/cjs/VivedAPI/UCs/PatchAssetIsArchivedUC.js.map +1 -1
  480. package/dist/cjs/VivedAPI/UCs/PatchAssetMetaUC.js.map +1 -1
  481. package/dist/cjs/VivedAPI/UCs/PatchAssetUC.js.map +1 -1
  482. package/dist/cjs/VivedAPI/UCs/SignedAuthTokenUC.js.map +1 -1
  483. package/dist/cjs/VivedAPI/UCs/UserAuthUC.js.map +1 -1
  484. package/dist/cjs/VivedAPI/UCs/index.js.map +1 -1
  485. package/dist/cjs/VivedAPI/index.js.map +1 -1
  486. package/dist/cjs/ZSpaceHost/Adapters/emulateZSpaceAdapter.js.map +1 -1
  487. package/dist/cjs/ZSpaceHost/Adapters/index.js.map +1 -1
  488. package/dist/cjs/ZSpaceHost/Adapters/zSpaceIsActiveAdapter.js.map +1 -1
  489. package/dist/cjs/ZSpaceHost/Adapters/zSpaceIsSupportedAdapter.js.map +1 -1
  490. package/dist/cjs/ZSpaceHost/Controllers/index.js.map +1 -1
  491. package/dist/cjs/ZSpaceHost/Controllers/setZSpaceIsSupported.js.map +1 -1
  492. package/dist/cjs/ZSpaceHost/Controllers/startZSpace.js.map +1 -1
  493. package/dist/cjs/ZSpaceHost/Controllers/stopZSpace.js.map +1 -1
  494. package/dist/cjs/ZSpaceHost/Controllers/toggleEmulateZSpace.js.map +1 -1
  495. package/dist/cjs/ZSpaceHost/Entities/ZSpaceHost.js.map +1 -1
  496. package/dist/cjs/ZSpaceHost/Entities/index.js.map +1 -1
  497. package/dist/cjs/ZSpaceHost/Factories/SandboxZSpaceFactory.js.map +1 -1
  498. package/dist/cjs/ZSpaceHost/Factories/index.js.map +1 -1
  499. package/dist/cjs/ZSpaceHost/Factories/setupZSpaceForSandbox.js.map +1 -1
  500. package/dist/cjs/ZSpaceHost/Mocks/EmulateZSpacePMMock.js.map +1 -1
  501. package/dist/cjs/ZSpaceHost/Mocks/MockStartZSpaceUC.js.map +1 -1
  502. package/dist/cjs/ZSpaceHost/Mocks/MockStopZSpaceUC.js.map +1 -1
  503. package/dist/cjs/ZSpaceHost/Mocks/MockXRSession.js.map +1 -1
  504. package/dist/cjs/ZSpaceHost/Mocks/ZSpaceIsActivePMMock.js.map +1 -1
  505. package/dist/cjs/ZSpaceHost/Mocks/ZSpaceIsSupportedPMMock.js.map +1 -1
  506. package/dist/cjs/ZSpaceHost/Mocks/index.js.map +1 -1
  507. package/dist/cjs/ZSpaceHost/PMs/EmulateZSpacePM.js.map +1 -1
  508. package/dist/cjs/ZSpaceHost/PMs/ZSpaceIsActivePM.js.map +1 -1
  509. package/dist/cjs/ZSpaceHost/PMs/ZSpaceIsSupportedPM.js.map +1 -1
  510. package/dist/cjs/ZSpaceHost/PMs/index.js.map +1 -1
  511. package/dist/cjs/ZSpaceHost/UCs/StartZSpace/StartSandboxZSpaceUC.js.map +1 -1
  512. package/dist/cjs/ZSpaceHost/UCs/StartZSpace/StartZSpaceUC.js.map +1 -1
  513. package/dist/cjs/ZSpaceHost/UCs/StartZSpace/index.js.map +1 -1
  514. package/dist/cjs/ZSpaceHost/UCs/StopZSpace/StopSandboxZSpaceUC.js.map +1 -1
  515. package/dist/cjs/ZSpaceHost/UCs/StopZSpace/StopZSpaceUC.js.map +1 -1
  516. package/dist/cjs/ZSpaceHost/UCs/StopZSpace/index.js.map +1 -1
  517. package/dist/cjs/ZSpaceHost/UCs/checkForZSpaceSupport.js.map +1 -1
  518. package/dist/cjs/ZSpaceHost/UCs/index.js.map +1 -1
  519. package/dist/cjs/ZSpaceHost/index.js.map +1 -1
  520. package/dist/esm/AppSandbox/Adapters/babylonInspectorSupportedAdapter.js.map +1 -1
  521. package/dist/esm/AppSandbox/Adapters/devFeaturesEnabledAdapter.js.map +1 -1
  522. package/dist/esm/AppSandbox/Adapters/sandboxStateAdapter.js.map +1 -1
  523. package/dist/esm/AppSandbox/Adapters/showInspectorAdapter.js.map +1 -1
  524. package/dist/esm/AppSandbox/Adapters/startInZSpaceAdapter.js.map +1 -1
  525. package/dist/esm/AppSandbox/Controller/clearSandboxAppContainer.js.map +1 -1
  526. package/dist/esm/AppSandbox/Controller/mountSandboxApp.js.map +1 -1
  527. package/dist/esm/AppSandbox/Controller/setBabylonInspectorSupported.js.map +1 -1
  528. package/dist/esm/AppSandbox/Controller/setSandboxAppContainer.js.map +1 -1
  529. package/dist/esm/AppSandbox/Controller/setSandboxAppState.js.map +1 -1
  530. package/dist/esm/AppSandbox/Controller/startSandboxApp.js.map +1 -1
  531. package/dist/esm/AppSandbox/Controller/stopSandboxApp.js.map +1 -1
  532. package/dist/esm/AppSandbox/Controller/toggleAllowDevFeatures.js.map +1 -1
  533. package/dist/esm/AppSandbox/Controller/toggleShowInspector.js.map +1 -1
  534. package/dist/esm/AppSandbox/Controller/toggleStartInZSpace.js.map +1 -1
  535. package/dist/esm/AppSandbox/Controller/unmountSandboxApp.js.map +1 -1
  536. package/dist/esm/AppSandbox/Entities/index.js.map +1 -1
  537. package/dist/esm/AppSandbox/Factories/index.js.map +1 -1
  538. package/dist/esm/AppSandbox/Mocks/BabylonInspectorSupportedPMMock.js.map +1 -1
  539. package/dist/esm/AppSandbox/Mocks/DevFeaturesEnabledPMMock.js.map +1 -1
  540. package/dist/esm/AppSandbox/Mocks/MockShowBabylonInspectorUC.js.map +1 -1
  541. package/dist/esm/AppSandbox/Mocks/RenderAppPMMock.js.map +1 -1
  542. package/dist/esm/AppSandbox/Mocks/ShowInspectorPMMock.js.map +1 -1
  543. package/dist/esm/AppSandbox/Mocks/StartInZSpacePMMock.js.map +1 -1
  544. package/dist/esm/AppSandbox/PMs/BabylonInspectorSupportedPM.js.map +1 -1
  545. package/dist/esm/AppSandbox/PMs/DevFeaturesEnabledPM.js.map +1 -1
  546. package/dist/esm/AppSandbox/PMs/SandboxStatePM.js.map +1 -1
  547. package/dist/esm/AppSandbox/PMs/ShowInspectorPM.js.map +1 -1
  548. package/dist/esm/AppSandbox/PMs/StartInZSpacePM.js.map +1 -1
  549. package/dist/esm/AppSandbox/UCs/ShowBabylonInspectorUC.js.map +1 -1
  550. package/dist/esm/AppSandbox/UCs/submitActivityAssetHandlerSandbox.js +5 -1
  551. package/dist/esm/AppSandbox/UCs/submitActivityAssetHandlerSandbox.js.map +1 -1
  552. package/dist/esm/AppSandbox/index.js.map +1 -1
  553. package/dist/esm/Apps/Adapters/activeAppPMAdapter.js.map +1 -1
  554. package/dist/esm/Apps/Adapters/appListPMAdapter.js.map +1 -1
  555. package/dist/esm/Apps/Adapters/appPMAdapter.js.map +1 -1
  556. package/dist/esm/Apps/Adapters/index.js.map +1 -1
  557. package/dist/esm/Apps/Controllers/index.js.map +1 -1
  558. package/dist/esm/Apps/Controllers/updateApp.js.map +1 -1
  559. package/dist/esm/Apps/Entities/AppEntity.js.map +1 -1
  560. package/dist/esm/Apps/Entities/AppRepo.js.map +1 -1
  561. package/dist/esm/Apps/Entities/index.js.map +1 -1
  562. package/dist/esm/Apps/Factories/AppsFeatureFactory.js.map +1 -1
  563. package/dist/esm/Apps/Factories/index.js.map +1 -1
  564. package/dist/esm/Apps/Mocks/MockActiveAppPM.js.map +1 -1
  565. package/dist/esm/Apps/Mocks/MockAppListPM.js.map +1 -1
  566. package/dist/esm/Apps/Mocks/MockAppMounterUC.js.map +1 -1
  567. package/dist/esm/Apps/Mocks/MockAppPM.js.map +1 -1
  568. package/dist/esm/Apps/Mocks/MockStartAppUC.js.map +1 -1
  569. package/dist/esm/Apps/Mocks/MockStopAppUC.js.map +1 -1
  570. package/dist/esm/Apps/Mocks/MockUpdateAppUC.js.map +1 -1
  571. package/dist/esm/Apps/Mocks/index.js.map +1 -1
  572. package/dist/esm/Apps/PMs/ActiveAppPM.js.map +1 -1
  573. package/dist/esm/Apps/PMs/AppPM.js.map +1 -1
  574. package/dist/esm/Apps/PMs/AppsListPM.js.map +1 -1
  575. package/dist/esm/Apps/PMs/index.js.map +1 -1
  576. package/dist/esm/Apps/UCs/Mounters/MounterUC.js.map +1 -1
  577. package/dist/esm/Apps/UCs/Mounters/SandboxMounterUC.js +32 -0
  578. package/dist/esm/Apps/UCs/Mounters/SandboxMounterUC.js.map +1 -1
  579. package/dist/esm/Apps/UCs/Mounters/index.js.map +1 -1
  580. package/dist/esm/Apps/UCs/StartAppUC.js.map +1 -1
  581. package/dist/esm/Apps/UCs/StopAppUC.js.map +1 -1
  582. package/dist/esm/Apps/UCs/UpdateAppUC.js.map +1 -1
  583. package/dist/esm/Apps/UCs/formAppIDWithVersion.js.map +1 -1
  584. package/dist/esm/Apps/UCs/index.js.map +1 -1
  585. package/dist/esm/Apps/index.js.map +1 -1
  586. package/dist/esm/AssetPlugin/Adapters/assetPluginPMAdapter.js.map +1 -1
  587. package/dist/esm/AssetPlugin/Adapters/index.js.map +1 -1
  588. package/dist/esm/AssetPlugin/Controllers/clearAssetPluginContainer.js.map +1 -1
  589. package/dist/esm/AssetPlugin/Controllers/index.js.map +1 -1
  590. package/dist/esm/AssetPlugin/Controllers/setAssetPluginContainer.js.map +1 -1
  591. package/dist/esm/AssetPlugin/Entities/AssetPluginEntity.js.map +1 -1
  592. package/dist/esm/AssetPlugin/Entities/index.js.map +1 -1
  593. package/dist/esm/AssetPlugin/Factories/AssetPluginFeatureFactory.js.map +1 -1
  594. package/dist/esm/AssetPlugin/Factories/index.js.map +1 -1
  595. package/dist/esm/AssetPlugin/Factories/setupAssetsPluginForSandbox.js.map +1 -1
  596. package/dist/esm/AssetPlugin/Mocks/MockAssetPluginContainerUC.js.map +1 -1
  597. package/dist/esm/AssetPlugin/Mocks/MockAssetPluginPM.js.map +1 -1
  598. package/dist/esm/AssetPlugin/Mocks/index.js.map +1 -1
  599. package/dist/esm/AssetPlugin/PM/AssetPluginPM.js.map +1 -1
  600. package/dist/esm/AssetPlugin/PM/index.js.map +1 -1
  601. package/dist/esm/AssetPlugin/UCs/AssetPluginContainerUC.js.map +1 -1
  602. package/dist/esm/AssetPlugin/UCs/SandboxAssetPluginContainerUC.js.map +1 -1
  603. package/dist/esm/AssetPlugin/UCs/index.js.map +1 -1
  604. package/dist/esm/AssetPlugin/index.js.map +1 -1
  605. package/dist/esm/Assets/Adapters/appAssetListAdapter.js.map +1 -1
  606. package/dist/esm/Assets/Adapters/assetAdapter.js.map +1 -1
  607. package/dist/esm/Assets/Adapters/assetFileAdapter.js.map +1 -1
  608. package/dist/esm/Assets/Adapters/editingAppAssetAdapter.js.map +1 -1
  609. package/dist/esm/Assets/Adapters/index.js.map +1 -1
  610. package/dist/esm/Assets/Adapters/showArchivedAppAssetAdapter.js.map +1 -1
  611. package/dist/esm/Assets/Controllers/archiveAsset.js.map +1 -1
  612. package/dist/esm/Assets/Controllers/deleteAsset.js.map +1 -1
  613. package/dist/esm/Assets/Controllers/downloadAssetFile.js.map +1 -1
  614. package/dist/esm/Assets/Controllers/editAppAsset.js.map +1 -1
  615. package/dist/esm/Assets/Controllers/fetchAssetFile.js.map +1 -1
  616. package/dist/esm/Assets/Controllers/getAppAssets.js.map +1 -1
  617. package/dist/esm/Assets/Controllers/index.js.map +1 -1
  618. package/dist/esm/Assets/Controllers/newAppAsset.js.map +1 -1
  619. package/dist/esm/Assets/Controllers/toggleShowArchivedAssets.js.map +1 -1
  620. package/dist/esm/Assets/Controllers/updateAppAssetMeta.js.map +1 -1
  621. package/dist/esm/Assets/Controllers/updateAssetFile.js.map +1 -1
  622. package/dist/esm/Assets/Entities/AppAssetsEntity.js.map +1 -1
  623. package/dist/esm/Assets/Entities/AssetEntity.js.map +1 -1
  624. package/dist/esm/Assets/Entities/AssetRepo.js.map +1 -1
  625. package/dist/esm/Assets/Entities/index.js.map +1 -1
  626. package/dist/esm/Assets/Factories/AssetsFactory.js.map +1 -1
  627. package/dist/esm/Assets/Factories/SandboxAssetsFactory.js.map +1 -1
  628. package/dist/esm/Assets/Factories/index.js.map +1 -1
  629. package/dist/esm/Assets/Factories/setupAssetsForSandbox.js.map +1 -1
  630. package/dist/esm/Assets/Mocks/AppAssetListPMMock.js.map +1 -1
  631. package/dist/esm/Assets/Mocks/AssetFilePMMock.js.map +1 -1
  632. package/dist/esm/Assets/Mocks/AssetPMMock.js.map +1 -1
  633. package/dist/esm/Assets/Mocks/EditingAppAssetPMMock.js.map +1 -1
  634. package/dist/esm/Assets/Mocks/MockArchiveAsset.js.map +1 -1
  635. package/dist/esm/Assets/Mocks/MockDeleteAssetUC.js.map +1 -1
  636. package/dist/esm/Assets/Mocks/MockDownloadAssetFileUC.js.map +1 -1
  637. package/dist/esm/Assets/Mocks/MockEditAppAssetUC.js.map +1 -1
  638. package/dist/esm/Assets/Mocks/MockGetAppAssetsUC.js.map +1 -1
  639. package/dist/esm/Assets/Mocks/MockGetAssetBlobURLUC.js.map +1 -1
  640. package/dist/esm/Assets/Mocks/MockGetAssetFileUC.js.map +1 -1
  641. package/dist/esm/Assets/Mocks/MockGetAssetUC.js.map +1 -1
  642. package/dist/esm/Assets/Mocks/MockNewAppAsset.js.map +1 -1
  643. package/dist/esm/Assets/Mocks/MockNewAssetUC.js.map +1 -1
  644. package/dist/esm/Assets/Mocks/MockPrefetchAssets.js.map +1 -1
  645. package/dist/esm/Assets/Mocks/MockUpdateAppAssetMetaUC.js.map +1 -1
  646. package/dist/esm/Assets/Mocks/MockUpdateAssetFileUC.js.map +1 -1
  647. package/dist/esm/Assets/Mocks/ShowArchivedAppAssetPMMock.js.map +1 -1
  648. package/dist/esm/Assets/Mocks/index.js.map +1 -1
  649. package/dist/esm/Assets/PMs/AppAssetListPM.js.map +1 -1
  650. package/dist/esm/Assets/PMs/AssetFilePM.js.map +1 -1
  651. package/dist/esm/Assets/PMs/AssetPM.js.map +1 -1
  652. package/dist/esm/Assets/PMs/EditingAppAssetPM.js.map +1 -1
  653. package/dist/esm/Assets/PMs/ShowArchivedAppAssetPM.js.map +1 -1
  654. package/dist/esm/Assets/PMs/index.js.map +1 -1
  655. package/dist/esm/Assets/UCs/ArchiveAssetUC.js.map +1 -1
  656. package/dist/esm/Assets/UCs/DeleteAssetUC.js.map +1 -1
  657. package/dist/esm/Assets/UCs/DownloadAssetFileUC.js.map +1 -1
  658. package/dist/esm/Assets/UCs/EditAppAssetUC.js.map +1 -1
  659. package/dist/esm/Assets/UCs/GetAppAssetsUC.js.map +1 -1
  660. package/dist/esm/Assets/UCs/GetAssetBlobURLUC.js.map +1 -1
  661. package/dist/esm/Assets/UCs/GetAssetFileUC.js.map +1 -1
  662. package/dist/esm/Assets/UCs/GetAssetUC.js.map +1 -1
  663. package/dist/esm/Assets/UCs/NewAssetUC.js +3 -2
  664. package/dist/esm/Assets/UCs/NewAssetUC.js.map +1 -1
  665. package/dist/esm/Assets/UCs/PrefetchAssetsUC.js.map +1 -1
  666. package/dist/esm/Assets/UCs/UpdateAppAssetMetaUC.js.map +1 -1
  667. package/dist/esm/Assets/UCs/UpdateAssetFileUC.js.map +1 -1
  668. package/dist/esm/Assets/UCs/index.js.map +1 -1
  669. package/dist/esm/Assets/index.js.map +1 -1
  670. package/dist/esm/Cache/Controllers/clearCache.js.map +1 -1
  671. package/dist/esm/Cache/Controllers/index.js.map +1 -1
  672. package/dist/esm/Cache/Entities/AssetCacheEntity.js.map +1 -1
  673. package/dist/esm/Cache/Entities/CacheEntity.js.map +1 -1
  674. package/dist/esm/Cache/Entities/ScriptCacheEntity.js.map +1 -1
  675. package/dist/esm/Cache/Entities/index.js.map +1 -1
  676. package/dist/esm/Cache/Factories/CacheFeatureFactory.js.map +1 -1
  677. package/dist/esm/Cache/Factories/index.js.map +1 -1
  678. package/dist/esm/Cache/Factories/setupCache.js.map +1 -1
  679. package/dist/esm/Cache/Mocks/MockCacheEntity.js.map +1 -1
  680. package/dist/esm/Cache/Mocks/MockGetAssetFromCacheUC.js.map +1 -1
  681. package/dist/esm/Cache/Mocks/MockGetScriptFromCacheUC.js.map +1 -1
  682. package/dist/esm/Cache/Mocks/MockStoreAssetInCacheUC.js.map +1 -1
  683. package/dist/esm/Cache/Mocks/MockStoreScriptInCacheUC.js.map +1 -1
  684. package/dist/esm/Cache/Mocks/index.js.map +1 -1
  685. package/dist/esm/Cache/UCs/GetAssetFromCacheUC.js.map +1 -1
  686. package/dist/esm/Cache/UCs/GetScriptFromCacheUC.js.map +1 -1
  687. package/dist/esm/Cache/UCs/StoreAssetInCacheUC.js.map +1 -1
  688. package/dist/esm/Cache/UCs/StoreScriptInCacheUC.js.map +1 -1
  689. package/dist/esm/Cache/UCs/index.js.map +1 -1
  690. package/dist/esm/Cache/index.js.map +1 -1
  691. package/dist/esm/ChallengeResults/Adapters/challengeResultsListAdapter.js.map +1 -1
  692. package/dist/esm/ChallengeResults/Adapters/challengeScoreListAdapter.js.map +1 -1
  693. package/dist/esm/ChallengeResults/Adapters/hasChallengeResultsPMAdapter.js.map +1 -1
  694. package/dist/esm/ChallengeResults/Adapters/index.js.map +1 -1
  695. package/dist/esm/ChallengeResults/Entities/ChallengeResults.js.map +1 -1
  696. package/dist/esm/ChallengeResults/Entities/index.js.map +1 -1
  697. package/dist/esm/ChallengeResults/Factories/ChallengeResultsFactory.js.map +1 -1
  698. package/dist/esm/ChallengeResults/Factories/index.js.map +1 -1
  699. package/dist/esm/ChallengeResults/Factories/setupChallengeResults.js.map +1 -1
  700. package/dist/esm/ChallengeResults/Mocks/ChallengeResultsListPMMock.js.map +1 -1
  701. package/dist/esm/ChallengeResults/Mocks/MockChallengeScoreListPM.js.map +1 -1
  702. package/dist/esm/ChallengeResults/Mocks/MockHasChallengeResultsPM.js.map +1 -1
  703. package/dist/esm/ChallengeResults/Mocks/index.js.map +1 -1
  704. package/dist/esm/ChallengeResults/PMs/ChallengeResultsListPM.js.map +1 -1
  705. package/dist/esm/ChallengeResults/PMs/ChallengeScoreListPM.js.map +1 -1
  706. package/dist/esm/ChallengeResults/PMs/HasChallengeResultsPM.js.map +1 -1
  707. package/dist/esm/ChallengeResults/PMs/index.js.map +1 -1
  708. package/dist/esm/ChallengeResults/index.js.map +1 -1
  709. package/dist/esm/Dialog/Adapters/alertDialogAdapter.js.map +1 -1
  710. package/dist/esm/Dialog/Adapters/confirmDialogAdapter.js.map +1 -1
  711. package/dist/esm/Dialog/Adapters/dialogQueueAdapter.js.map +1 -1
  712. package/dist/esm/Dialog/Adapters/index.js.map +1 -1
  713. package/dist/esm/Dialog/Adapters/markDownEditorDialogAdapters.js.map +1 -1
  714. package/dist/esm/Dialog/Adapters/spinnerDialogAdapter.js.map +1 -1
  715. package/dist/esm/Dialog/Controllers/activeDialogHasClosed.js.map +1 -1
  716. package/dist/esm/Dialog/Controllers/index.js.map +1 -1
  717. package/dist/esm/Dialog/Entities/Alert.js.map +1 -1
  718. package/dist/esm/Dialog/Entities/Confirm.js.map +1 -1
  719. package/dist/esm/Dialog/Entities/MarkDownEditor.js.map +1 -1
  720. package/dist/esm/Dialog/Entities/SelectModel.js.map +1 -1
  721. package/dist/esm/Dialog/Entities/Spinner.js.map +1 -1
  722. package/dist/esm/Dialog/Entities/index.js.map +1 -1
  723. package/dist/esm/Dialog/Factories/SandboxDialogFactory.js.map +1 -1
  724. package/dist/esm/Dialog/Factories/alertDialogFactory.js.map +1 -1
  725. package/dist/esm/Dialog/Factories/confirmDialogFactory.js.map +1 -1
  726. package/dist/esm/Dialog/Factories/index.js.map +1 -1
  727. package/dist/esm/Dialog/Factories/markdownDialogEditorFactory.js.map +1 -1
  728. package/dist/esm/Dialog/Factories/selectDialogModelFactory.js.map +1 -1
  729. package/dist/esm/Dialog/Factories/setupDialogForSandbox.js.map +1 -1
  730. package/dist/esm/Dialog/Factories/spinnerDialogFactory.js.map +1 -1
  731. package/dist/esm/Dialog/Mocks/MockAlertDialogPM.js.map +1 -1
  732. package/dist/esm/Dialog/Mocks/MockConfirmDialogPM.js.map +1 -1
  733. package/dist/esm/Dialog/Mocks/MockDialogQueuePM.js.map +1 -1
  734. package/dist/esm/Dialog/Mocks/MockMakeAlertDialogUC.js.map +1 -1
  735. package/dist/esm/Dialog/Mocks/MockMakeConfirmDialogUC.js.map +1 -1
  736. package/dist/esm/Dialog/Mocks/MockMakeMarkdownDialogUC.js.map +1 -1
  737. package/dist/esm/Dialog/Mocks/MockMakeSelectModelDialogUC.js.map +1 -1
  738. package/dist/esm/Dialog/Mocks/MockMakeSpinnerDialogUC.js.map +1 -1
  739. package/dist/esm/Dialog/Mocks/MockMarkDownEditorDialogPM.js.map +1 -1
  740. package/dist/esm/Dialog/Mocks/MockSpinnerDialogPM.js.map +1 -1
  741. package/dist/esm/Dialog/Mocks/index.js.map +1 -1
  742. package/dist/esm/Dialog/PMs/AlertDialogPM.js.map +1 -1
  743. package/dist/esm/Dialog/PMs/ConfirmDialogPM.js.map +1 -1
  744. package/dist/esm/Dialog/PMs/DialogQueuePM.js.map +1 -1
  745. package/dist/esm/Dialog/PMs/MarkDownEditorDialogPM.js.map +1 -1
  746. package/dist/esm/Dialog/PMs/SpinnerDialogPM.js.map +1 -1
  747. package/dist/esm/Dialog/PMs/index.js.map +1 -1
  748. package/dist/esm/Dialog/UCs/MakeAlertDialogUC.js.map +1 -1
  749. package/dist/esm/Dialog/UCs/MakeConfirmDialogUC.js.map +1 -1
  750. package/dist/esm/Dialog/UCs/MakeMarkdownDialogUC.js.map +1 -1
  751. package/dist/esm/Dialog/UCs/MakeSelectModelDialogUC.js.map +1 -1
  752. package/dist/esm/Dialog/UCs/MakeSpinnerDialogUC.js.map +1 -1
  753. package/dist/esm/Dialog/UCs/index.js.map +1 -1
  754. package/dist/esm/Dialog/index.js.map +1 -1
  755. package/dist/esm/Dispatcher/Entities/index.js.map +1 -1
  756. package/dist/esm/Dispatcher/Mocks/DispatchEnableFeatureUCMock.js.map +1 -1
  757. package/dist/esm/Dispatcher/Mocks/MockDispatchAppDispatcherUC.js.map +1 -1
  758. package/dist/esm/Dispatcher/Mocks/MockDispatchIsAuthoringUC.js.map +1 -1
  759. package/dist/esm/Dispatcher/Mocks/MockDispatchSetStateUC.js.map +1 -1
  760. package/dist/esm/Dispatcher/Mocks/MockDispatchShowBabylonInspectorUC.js.map +1 -1
  761. package/dist/esm/Dispatcher/Mocks/MockDispatchStartAppUC.js.map +1 -1
  762. package/dist/esm/Dispatcher/Mocks/MockDispatchStartBrowseChannelsUC.js.map +1 -1
  763. package/dist/esm/Dispatcher/Mocks/MockDispatchStartZSpaceUC.js.map +1 -1
  764. package/dist/esm/Dispatcher/Mocks/MockDispatchStopAppUC.js.map +1 -1
  765. package/dist/esm/Dispatcher/Mocks/MockDispatchStopZSpaceUC.js.map +1 -1
  766. package/dist/esm/Dispatcher/Mocks/MockDispatchThemeUC.js.map +1 -1
  767. package/dist/esm/Dispatcher/UCs/DispatchDisposeAppUC.js.map +1 -1
  768. package/dist/esm/Dispatcher/UCs/DispatchEnableFeatureUC.js.map +1 -1
  769. package/dist/esm/Dispatcher/UCs/DispatchIsAuthoringUC.js.map +1 -1
  770. package/dist/esm/Dispatcher/UCs/DispatchSetStateUC.js.map +1 -1
  771. package/dist/esm/Dispatcher/UCs/DispatchShowBabylonInspectorUC.js.map +1 -1
  772. package/dist/esm/Dispatcher/UCs/DispatchStartAppUC.js.map +1 -1
  773. package/dist/esm/Dispatcher/UCs/DispatchStartBrowseChannelsUC.js.map +1 -1
  774. package/dist/esm/Dispatcher/UCs/DispatchStartZSpaceUC.js.map +1 -1
  775. package/dist/esm/Dispatcher/UCs/DispatchStopAppUC.js.map +1 -1
  776. package/dist/esm/Dispatcher/UCs/DispatchStopZSpaceUC.js.map +1 -1
  777. package/dist/esm/Dispatcher/index.js.map +1 -1
  778. package/dist/esm/Events/Types/EventTypes.js.map +1 -1
  779. package/dist/esm/Events/Types/PayloadTypes.js.map +1 -1
  780. package/dist/esm/Events/Types/index.js.map +1 -1
  781. package/dist/esm/Events/index.js.map +1 -1
  782. package/dist/esm/Handler/Entities/index.js.map +1 -1
  783. package/dist/esm/Handler/UCs/CallbackAssetDTO.js.map +1 -1
  784. package/dist/esm/Handler/UCs/CloseAssetSystemPlugin.js.map +1 -1
  785. package/dist/esm/Handler/UCs/GetAssetBlobURLHandler.js.map +1 -1
  786. package/dist/esm/Handler/UCs/GetAssetFolderURLHandler.js.map +1 -1
  787. package/dist/esm/Handler/UCs/GetAssetMetaHandler.js.map +1 -1
  788. package/dist/esm/Handler/UCs/GetAssetsForOwnerHandler.js.map +1 -1
  789. package/dist/esm/Handler/UCs/GetLinkedAssetsHandler.js.map +1 -1
  790. package/dist/esm/Handler/UCs/GoToNextStateHandler.js.map +1 -1
  791. package/dist/esm/Handler/UCs/GoToPreviousStateHandler.js.map +1 -1
  792. package/dist/esm/Handler/UCs/HasNextStateHandler.js.map +1 -1
  793. package/dist/esm/Handler/UCs/HasPreviousStateHandler.js.map +1 -1
  794. package/dist/esm/Handler/UCs/IsAssetFetchedHandler.js.map +1 -1
  795. package/dist/esm/Handler/UCs/IsZSpaceAvailableHandler.js.map +1 -1
  796. package/dist/esm/Handler/UCs/NewActivityAssetHandler.js.map +1 -1
  797. package/dist/esm/Handler/UCs/OnAppIsReadyHandler.js.map +1 -1
  798. package/dist/esm/Handler/UCs/OnStateChangeHandler.js.map +1 -1
  799. package/dist/esm/Handler/UCs/OnStateCompleteHandler.js.map +1 -1
  800. package/dist/esm/Handler/UCs/RegisterExternalStyleSheetsHandler.js.map +1 -1
  801. package/dist/esm/Handler/UCs/RestoreCurrentStateHandler.js.map +1 -1
  802. package/dist/esm/Handler/UCs/ShowAlertHandler.js.map +1 -1
  803. package/dist/esm/Handler/UCs/ShowConfirmHandler.js.map +1 -1
  804. package/dist/esm/Handler/UCs/ShowMarkDownEditorHandler.js.map +1 -1
  805. package/dist/esm/Handler/UCs/ShowSelectModelHandler.js.map +1 -1
  806. package/dist/esm/Handler/UCs/ShowSpinnerHandler.js.map +1 -1
  807. package/dist/esm/Handler/UCs/StartZSpaceHandler.js.map +1 -1
  808. package/dist/esm/Handler/UCs/StopZSpaceHandler.js.map +1 -1
  809. package/dist/esm/Handler/UCs/SubmitActivityAssetHandler.js.map +1 -1
  810. package/dist/esm/Handler/UCs/SubmitLogHandler.js.map +1 -1
  811. package/dist/esm/Handler/UCs/SubmitResultHandler.js.map +1 -1
  812. package/dist/esm/Handler/index.js.map +1 -1
  813. package/dist/esm/Logger/Adapters/fatalErrorAdapter.js.map +1 -1
  814. package/dist/esm/Logger/Adapters/forwardLogsToConsoleAdapter.js.map +1 -1
  815. package/dist/esm/Logger/Adapters/index.js.map +1 -1
  816. package/dist/esm/Logger/Adapters/logSummaryAdapter.js.map +1 -1
  817. package/dist/esm/Logger/Controllers/clickDownloadLog.js.map +1 -1
  818. package/dist/esm/Logger/Controllers/index.js.map +1 -1
  819. package/dist/esm/Logger/Controllers/toggleForwardLogs.js.map +1 -1
  820. package/dist/esm/Logger/Entities/LoggerEntity.js.map +1 -1
  821. package/dist/esm/Logger/Entities/index.js.map +1 -1
  822. package/dist/esm/Logger/Factories/SandboxLoggerFactory.js.map +1 -1
  823. package/dist/esm/Logger/Factories/index.js.map +1 -1
  824. package/dist/esm/Logger/Factories/setupLoggerForSandbox.js.map +1 -1
  825. package/dist/esm/Logger/Mocks/ForwardLogsToConsolePMMock.js.map +1 -1
  826. package/dist/esm/Logger/Mocks/LogSummaryPMMock.js.map +1 -1
  827. package/dist/esm/Logger/Mocks/MockDownloadLogUC.js.map +1 -1
  828. package/dist/esm/Logger/Mocks/MockFatalErrorPM.js.map +1 -1
  829. package/dist/esm/Logger/Mocks/index.js.map +1 -1
  830. package/dist/esm/Logger/PMs/FatalErrorPM.js.map +1 -1
  831. package/dist/esm/Logger/PMs/ForwardLogsToConsolePM.js.map +1 -1
  832. package/dist/esm/Logger/PMs/LogSummaryPM.js.map +1 -1
  833. package/dist/esm/Logger/PMs/index.js.map +1 -1
  834. package/dist/esm/Logger/UCs/DownloadLogUC.js.map +1 -1
  835. package/dist/esm/Logger/UCs/index.js.map +1 -1
  836. package/dist/esm/Logger/index.js.map +1 -1
  837. package/dist/esm/Snackbar/Adapters/index.js.map +1 -1
  838. package/dist/esm/Snackbar/Adapters/snackbarAdapter.js.map +1 -1
  839. package/dist/esm/Snackbar/Controllers/callActiveSnackbarAction.js.map +1 -1
  840. package/dist/esm/Snackbar/Controllers/dismissActiveSnackbar.js.map +1 -1
  841. package/dist/esm/Snackbar/Controllers/index.js.map +1 -1
  842. package/dist/esm/Snackbar/Controllers/makeSnackbar.js.map +1 -1
  843. package/dist/esm/Snackbar/Entities/SnackbarRepo.js.map +1 -1
  844. package/dist/esm/Snackbar/Entities/index.js.map +1 -1
  845. package/dist/esm/Snackbar/Factories/index.js.map +1 -1
  846. package/dist/esm/Snackbar/Factories/setupSnackbar.js.map +1 -1
  847. package/dist/esm/Snackbar/Mocks/SnackbarPMMock.js.map +1 -1
  848. package/dist/esm/Snackbar/Mocks/index.js.map +1 -1
  849. package/dist/esm/Snackbar/PMs/SnackbarPM.js.map +1 -1
  850. package/dist/esm/Snackbar/PMs/index.js.map +1 -1
  851. package/dist/esm/Snackbar/index.js.map +1 -1
  852. package/dist/esm/StateMachine/Adapters/editingStateAdapter.js.map +1 -1
  853. package/dist/esm/StateMachine/Adapters/hostStateAdapter.js.map +1 -1
  854. package/dist/esm/StateMachine/Adapters/hostStateMachinePMAdapter.js.map +1 -1
  855. package/dist/esm/StateMachine/Adapters/index.js.map +1 -1
  856. package/dist/esm/StateMachine/Controllers/cancelEditing.js.map +1 -1
  857. package/dist/esm/StateMachine/Controllers/consumeState.js.map +1 -1
  858. package/dist/esm/StateMachine/Controllers/deleteState.js.map +1 -1
  859. package/dist/esm/StateMachine/Controllers/duplicateState.js.map +1 -1
  860. package/dist/esm/StateMachine/Controllers/editActiveState.js.map +1 -1
  861. package/dist/esm/StateMachine/Controllers/editState.js.map +1 -1
  862. package/dist/esm/StateMachine/Controllers/editStateName.js.map +1 -1
  863. package/dist/esm/StateMachine/Controllers/endActivity.js.map +1 -1
  864. package/dist/esm/StateMachine/Controllers/index.js.map +1 -1
  865. package/dist/esm/StateMachine/Controllers/newState.js.map +1 -1
  866. package/dist/esm/StateMachine/Controllers/saveAuthoring.js.map +1 -1
  867. package/dist/esm/StateMachine/Controllers/savePersistentStates.js.map +1 -1
  868. package/dist/esm/StateMachine/Controllers/setTransitionDuration.js.map +1 -1
  869. package/dist/esm/StateMachine/Controllers/transitionToState.js.map +1 -1
  870. package/dist/esm/StateMachine/Entities/HostEditingStateEntity.js.map +1 -1
  871. package/dist/esm/StateMachine/Entities/HostStateEntity.js.map +1 -1
  872. package/dist/esm/StateMachine/Entities/HostStateMachine.js.map +1 -1
  873. package/dist/esm/StateMachine/Entities/index.js.map +1 -1
  874. package/dist/esm/StateMachine/Factories/SandboxStateMachineFactory.js.map +1 -1
  875. package/dist/esm/StateMachine/Factories/index.js.map +1 -1
  876. package/dist/esm/StateMachine/Factories/setupStateMachineForSandbox.js.map +1 -1
  877. package/dist/esm/StateMachine/Mocks/CancelEditingUCMock.js.map +1 -1
  878. package/dist/esm/StateMachine/Mocks/ConsumeStateUCMock.js.map +1 -1
  879. package/dist/esm/StateMachine/Mocks/EditStateUCMock.js.map +1 -1
  880. package/dist/esm/StateMachine/Mocks/EndActivityUCMock.js.map +1 -1
  881. package/dist/esm/StateMachine/Mocks/MockDeleteStateUC.js.map +1 -1
  882. package/dist/esm/StateMachine/Mocks/MockDuplicateStateUC.js.map +1 -1
  883. package/dist/esm/StateMachine/Mocks/MockEditActiveStateUC.js.map +1 -1
  884. package/dist/esm/StateMachine/Mocks/MockEditStateNameUC.js.map +1 -1
  885. package/dist/esm/StateMachine/Mocks/MockHostEditingStateEntity.js.map +1 -1
  886. package/dist/esm/StateMachine/Mocks/MockHostStateEntity.js.map +1 -1
  887. package/dist/esm/StateMachine/Mocks/MockHostStateMachinePM.js.map +1 -1
  888. package/dist/esm/StateMachine/Mocks/MockHostStatePM.js.map +1 -1
  889. package/dist/esm/StateMachine/Mocks/MockIsEditingStatePM.js.map +1 -1
  890. package/dist/esm/StateMachine/Mocks/MockSaveAuthoringUC.js.map +1 -1
  891. package/dist/esm/StateMachine/Mocks/MockTransitionToStateUC.js.map +1 -1
  892. package/dist/esm/StateMachine/Mocks/NewStateUCMock.js.map +1 -1
  893. package/dist/esm/StateMachine/Mocks/SavePersistentStatesMock.js.map +1 -1
  894. package/dist/esm/StateMachine/Mocks/index.js.map +1 -1
  895. package/dist/esm/StateMachine/PMs/EditingStatePM.js.map +1 -1
  896. package/dist/esm/StateMachine/PMs/HostStateMachinePM.js.map +1 -1
  897. package/dist/esm/StateMachine/PMs/HostStatePM.js.map +1 -1
  898. package/dist/esm/StateMachine/PMs/index.js.map +1 -1
  899. package/dist/esm/StateMachine/UCs/CancelEditing/CancelEditingUC.js.map +1 -1
  900. package/dist/esm/StateMachine/UCs/CancelEditing/CancelSandboxEditingUC.js.map +1 -1
  901. package/dist/esm/StateMachine/UCs/CancelEditing/index.js.map +1 -1
  902. package/dist/esm/StateMachine/UCs/ConsumeState/ConsumeSandboxStateUC.js.map +1 -1
  903. package/dist/esm/StateMachine/UCs/ConsumeState/ConsumeStateUC.js.map +1 -1
  904. package/dist/esm/StateMachine/UCs/ConsumeState/index.js.map +1 -1
  905. package/dist/esm/StateMachine/UCs/DeleteStateUC.js.map +1 -1
  906. package/dist/esm/StateMachine/UCs/DuplicateStateUC.js.map +1 -1
  907. package/dist/esm/StateMachine/UCs/EditActiveState/EditActiveSandboxStateUC.js.map +1 -1
  908. package/dist/esm/StateMachine/UCs/EditActiveState/EditActiveStateUC.js.map +1 -1
  909. package/dist/esm/StateMachine/UCs/EditActiveState/index.js.map +1 -1
  910. package/dist/esm/StateMachine/UCs/EditState/EditSandboxStateUC.js.map +1 -1
  911. package/dist/esm/StateMachine/UCs/EditState/EditStateUC.js.map +1 -1
  912. package/dist/esm/StateMachine/UCs/EditState/index.js.map +1 -1
  913. package/dist/esm/StateMachine/UCs/EditStateNameUC.js.map +1 -1
  914. package/dist/esm/StateMachine/UCs/EndActivity/EndActivityUC.js.map +1 -1
  915. package/dist/esm/StateMachine/UCs/EndActivity/EndSandboxActivityUC.js.map +1 -1
  916. package/dist/esm/StateMachine/UCs/EndActivity/index.js.map +1 -1
  917. package/dist/esm/StateMachine/UCs/NewState/NewSandboxStateUC.js.map +1 -1
  918. package/dist/esm/StateMachine/UCs/NewState/NewStateUC.js.map +1 -1
  919. package/dist/esm/StateMachine/UCs/NewState/index.js.map +1 -1
  920. package/dist/esm/StateMachine/UCs/SaveAuthoring/SaveAuthoringSandboxUC.js.map +1 -1
  921. package/dist/esm/StateMachine/UCs/SaveAuthoring/SaveAuthoringUC.js.map +1 -1
  922. package/dist/esm/StateMachine/UCs/SaveAuthoring/index.js.map +1 -1
  923. package/dist/esm/StateMachine/UCs/SavePersistentStates.js.map +1 -1
  924. package/dist/esm/StateMachine/UCs/TransitionToState/TransitionToSandboxStateUC.js.map +1 -1
  925. package/dist/esm/StateMachine/UCs/TransitionToState/TransitionToStateUC.js.map +1 -1
  926. package/dist/esm/StateMachine/UCs/TransitionToState/index.js.map +1 -1
  927. package/dist/esm/StateMachine/UCs/index.js.map +1 -1
  928. package/dist/esm/StateMachine/UCs/setSandboxStatesFromData.js.map +1 -1
  929. package/dist/esm/StateMachine/UCs/setSandboxStatesFromStringData.js.map +1 -1
  930. package/dist/esm/StateMachine/index.js.map +1 -1
  931. package/dist/esm/ThemeColors/Adapter/index.js.map +1 -1
  932. package/dist/esm/ThemeColors/Adapter/themeColorAdapter.js.map +1 -1
  933. package/dist/esm/ThemeColors/Controllers/getOnPrimaryColor.js.map +1 -1
  934. package/dist/esm/ThemeColors/Controllers/getOnSurfaceColor.js.map +1 -1
  935. package/dist/esm/ThemeColors/Controllers/getPrimaryColor.js.map +1 -1
  936. package/dist/esm/ThemeColors/Controllers/getSurfaceColor.js.map +1 -1
  937. package/dist/esm/ThemeColors/Controllers/getSurfaceContainerColor.js.map +1 -1
  938. package/dist/esm/ThemeColors/Controllers/index.js.map +1 -1
  939. package/dist/esm/ThemeColors/Controllers/setThemeByName.js.map +1 -1
  940. package/dist/esm/ThemeColors/Data/index.js.map +1 -1
  941. package/dist/esm/ThemeColors/Entities/index.js.map +1 -1
  942. package/dist/esm/ThemeColors/Factories/ThemeFactory.js.map +1 -1
  943. package/dist/esm/ThemeColors/Factories/index.js.map +1 -1
  944. package/dist/esm/ThemeColors/Factories/setupTheme.js.map +1 -1
  945. package/dist/esm/ThemeColors/Mocks/MockSetThemeUC.js.map +1 -1
  946. package/dist/esm/ThemeColors/Mocks/MockThemeColorPM.js.map +1 -1
  947. package/dist/esm/ThemeColors/Mocks/index.js.map +1 -1
  948. package/dist/esm/ThemeColors/PM/index.js.map +1 -1
  949. package/dist/esm/ThemeColors/UCs/SetThemeUC.js.map +1 -1
  950. package/dist/esm/ThemeColors/UCs/index.js.map +1 -1
  951. package/dist/esm/ThemeColors/index.js.map +1 -1
  952. package/dist/esm/VivedAPI/Adapters/apiStageAdapter.js.map +1 -1
  953. package/dist/esm/VivedAPI/Adapters/index.js.map +1 -1
  954. package/dist/esm/VivedAPI/Adapters/userTokenAdapter.js.map +1 -1
  955. package/dist/esm/VivedAPI/Controllers/index.js.map +1 -1
  956. package/dist/esm/VivedAPI/Controllers/loginUser.js.map +1 -1
  957. package/dist/esm/VivedAPI/Controllers/logoutUser.js.map +1 -1
  958. package/dist/esm/VivedAPI/Controllers/refreshAuthenticatedUser.js.map +1 -1
  959. package/dist/esm/VivedAPI/Controllers/setApiStage.js.map +1 -1
  960. package/dist/esm/VivedAPI/Entities/VivedAPIEntity.js.map +1 -1
  961. package/dist/esm/VivedAPI/Entities/index.js.map +1 -1
  962. package/dist/esm/VivedAPI/Factories/SandboxVivedAPIFactory.js.map +1 -1
  963. package/dist/esm/VivedAPI/Factories/VivedAPIFactory.js.map +1 -1
  964. package/dist/esm/VivedAPI/Factories/index.js.map +1 -1
  965. package/dist/esm/VivedAPI/Factories/setupAPI.js.map +1 -1
  966. package/dist/esm/VivedAPI/Factories/setupVivedAPIForSandbox.js.map +1 -1
  967. package/dist/esm/VivedAPI/Mocks/ApiStagePMMock.js.map +1 -1
  968. package/dist/esm/VivedAPI/Mocks/MockBasicFetchUC.js.map +1 -1
  969. package/dist/esm/VivedAPI/Mocks/MockBlobRequestUC.js.map +1 -1
  970. package/dist/esm/VivedAPI/Mocks/MockDeleteAssetOnAPIUC.js.map +1 -1
  971. package/dist/esm/VivedAPI/Mocks/MockFetchAssetFileFromAPIUC.js.map +1 -1
  972. package/dist/esm/VivedAPI/Mocks/MockFetchAssetMetaFromAPIUC.js.map +1 -1
  973. package/dist/esm/VivedAPI/Mocks/MockFileUpload.js.map +1 -1
  974. package/dist/esm/VivedAPI/Mocks/MockGetAppFromAPIUC.js.map +1 -1
  975. package/dist/esm/VivedAPI/Mocks/MockGetAssetsForOwnerUC.js.map +1 -1
  976. package/dist/esm/VivedAPI/Mocks/MockJsonRequestUC.js.map +1 -1
  977. package/dist/esm/VivedAPI/Mocks/MockPatchAssetFileUC.js.map +1 -1
  978. package/dist/esm/VivedAPI/Mocks/MockPatchAssetIsArchivedUC.js.map +1 -1
  979. package/dist/esm/VivedAPI/Mocks/MockPatchAssetMetaUC.js.map +1 -1
  980. package/dist/esm/VivedAPI/Mocks/MockPatchAssetUC.js.map +1 -1
  981. package/dist/esm/VivedAPI/Mocks/MockPostNewAssetUC.js.map +1 -1
  982. package/dist/esm/VivedAPI/Mocks/MockSignedAuthToken.js.map +1 -1
  983. package/dist/esm/VivedAPI/Mocks/MockUserLoginUC.js.map +1 -1
  984. package/dist/esm/VivedAPI/Mocks/UserTokenPMMock.js.map +1 -1
  985. package/dist/esm/VivedAPI/Mocks/index.js.map +1 -1
  986. package/dist/esm/VivedAPI/PMs/ApiStagePM.js.map +1 -1
  987. package/dist/esm/VivedAPI/PMs/UserTokenPM.js.map +1 -1
  988. package/dist/esm/VivedAPI/PMs/index.js.map +1 -1
  989. package/dist/esm/VivedAPI/UCs/BasicFetchUC.js.map +1 -1
  990. package/dist/esm/VivedAPI/UCs/BlobRequestUC.js.map +1 -1
  991. package/dist/esm/VivedAPI/UCs/DeleteAssetOnAPIUC.js.map +1 -1
  992. package/dist/esm/VivedAPI/UCs/FetchAssetFileFromAPIUC.js.map +1 -1
  993. package/dist/esm/VivedAPI/UCs/FetchAssetMetaFromAPIUC.js.map +1 -1
  994. package/dist/esm/VivedAPI/UCs/GetAppFromAPIUC.js.map +1 -1
  995. package/dist/esm/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.js.map +1 -1
  996. package/dist/esm/VivedAPI/UCs/JsonRequestUC.js.map +1 -1
  997. package/dist/esm/VivedAPI/UCs/PatchAssetFileUC.js.map +1 -1
  998. package/dist/esm/VivedAPI/UCs/PatchAssetIsArchivedUC.js.map +1 -1
  999. package/dist/esm/VivedAPI/UCs/PatchAssetMetaUC.js.map +1 -1
  1000. package/dist/esm/VivedAPI/UCs/PatchAssetUC.js.map +1 -1
  1001. package/dist/esm/VivedAPI/UCs/SignedAuthTokenUC.js.map +1 -1
  1002. package/dist/esm/VivedAPI/UCs/UserAuthUC.js.map +1 -1
  1003. package/dist/esm/VivedAPI/UCs/index.js.map +1 -1
  1004. package/dist/esm/VivedAPI/index.js.map +1 -1
  1005. package/dist/esm/ZSpaceHost/Adapters/emulateZSpaceAdapter.js.map +1 -1
  1006. package/dist/esm/ZSpaceHost/Adapters/index.js.map +1 -1
  1007. package/dist/esm/ZSpaceHost/Adapters/zSpaceIsActiveAdapter.js.map +1 -1
  1008. package/dist/esm/ZSpaceHost/Adapters/zSpaceIsSupportedAdapter.js.map +1 -1
  1009. package/dist/esm/ZSpaceHost/Controllers/index.js.map +1 -1
  1010. package/dist/esm/ZSpaceHost/Controllers/setZSpaceIsSupported.js.map +1 -1
  1011. package/dist/esm/ZSpaceHost/Controllers/startZSpace.js.map +1 -1
  1012. package/dist/esm/ZSpaceHost/Controllers/stopZSpace.js.map +1 -1
  1013. package/dist/esm/ZSpaceHost/Controllers/toggleEmulateZSpace.js.map +1 -1
  1014. package/dist/esm/ZSpaceHost/Entities/ZSpaceHost.js.map +1 -1
  1015. package/dist/esm/ZSpaceHost/Entities/index.js.map +1 -1
  1016. package/dist/esm/ZSpaceHost/Factories/SandboxZSpaceFactory.js.map +1 -1
  1017. package/dist/esm/ZSpaceHost/Factories/index.js.map +1 -1
  1018. package/dist/esm/ZSpaceHost/Factories/setupZSpaceForSandbox.js.map +1 -1
  1019. package/dist/esm/ZSpaceHost/Mocks/EmulateZSpacePMMock.js.map +1 -1
  1020. package/dist/esm/ZSpaceHost/Mocks/MockStartZSpaceUC.js.map +1 -1
  1021. package/dist/esm/ZSpaceHost/Mocks/MockStopZSpaceUC.js.map +1 -1
  1022. package/dist/esm/ZSpaceHost/Mocks/MockXRSession.js.map +1 -1
  1023. package/dist/esm/ZSpaceHost/Mocks/ZSpaceIsActivePMMock.js.map +1 -1
  1024. package/dist/esm/ZSpaceHost/Mocks/ZSpaceIsSupportedPMMock.js.map +1 -1
  1025. package/dist/esm/ZSpaceHost/Mocks/index.js.map +1 -1
  1026. package/dist/esm/ZSpaceHost/PMs/EmulateZSpacePM.js.map +1 -1
  1027. package/dist/esm/ZSpaceHost/PMs/ZSpaceIsActivePM.js.map +1 -1
  1028. package/dist/esm/ZSpaceHost/PMs/ZSpaceIsSupportedPM.js.map +1 -1
  1029. package/dist/esm/ZSpaceHost/PMs/index.js.map +1 -1
  1030. package/dist/esm/ZSpaceHost/UCs/StartZSpace/StartSandboxZSpaceUC.js.map +1 -1
  1031. package/dist/esm/ZSpaceHost/UCs/StartZSpace/StartZSpaceUC.js.map +1 -1
  1032. package/dist/esm/ZSpaceHost/UCs/StartZSpace/index.js.map +1 -1
  1033. package/dist/esm/ZSpaceHost/UCs/StopZSpace/StopSandboxZSpaceUC.js.map +1 -1
  1034. package/dist/esm/ZSpaceHost/UCs/StopZSpace/StopZSpaceUC.js.map +1 -1
  1035. package/dist/esm/ZSpaceHost/UCs/StopZSpace/index.js.map +1 -1
  1036. package/dist/esm/ZSpaceHost/UCs/checkForZSpaceSupport.js.map +1 -1
  1037. package/dist/esm/ZSpaceHost/UCs/index.js.map +1 -1
  1038. package/dist/esm/ZSpaceHost/index.js.map +1 -1
  1039. package/dist/types/AppSandbox/UCs/submitActivityAssetHandlerSandbox.d.ts.map +1 -1
  1040. package/dist/types/Apps/UCs/Mounters/SandboxMounterUC.d.ts.map +1 -1
  1041. package/dist/types/Assets/UCs/NewAssetUC.d.ts +6 -0
  1042. package/dist/types/Assets/UCs/NewAssetUC.d.ts.map +1 -1
  1043. package/package.json +67 -67
@@ -1 +1 @@
1
- {"version":3,"file":"AssetEntity.js","sourceRoot":"","sources":["../../../../src/Assets/Entities/AssetEntity.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n AppObject,\n AppObjectEntity,\n MemoizedBoolean,\n MemoizedString\n} from \"@vived/core\";\n\n/**\n * AssetEntity manages individual file-based resources in VIVED applications.\n *\n * This entity handles:\n * 1. Asset metadata (name, description, owner, archive status)\n * 2. File management (filename, fileURL, blob URL creation)\n * 3. Linked asset relationships for hierarchical asset structures\n * 4. Fetch state management (loading indicators, error handling)\n * 5. Observer pattern implementation for UI updates\n *\n * Key Concepts:\n * - Uses memoized properties for efficient change tracking and notifications\n * - Supports both file URLs (remote) and blob URLs (local) for flexible file access\n * - Maintains linked asset relationships to support complex asset hierarchies\n * - Implements observer pattern to notify UI components of changes\n *\n * Usage Patterns:\n * ```typescript\n * // Get an asset entity from an app object\n * const asset = AssetEntity.get(appObject);\n * if (asset) {\n * // Set asset metadata\n * asset.name = \"My Asset\";\n * asset.description = \"A sample asset\";\n *\n * // Handle file operations\n * asset.setFile(fileObject);\n * const blobURL = asset.blobURL; // Access local blob URL\n *\n * // Manage linked assets\n * asset.addLinkedAsset(\"texture\", \"texture123\");\n * const textures = asset.getLinkedAssetByType(\"texture\");\n *\n * // Monitor fetch state\n * if (asset.isFetchingFile) {\n * console.log(\"File is being downloaded...\");\n * }\n * if (asset.fetchError) {\n * console.error(\"Failed to fetch file:\", asset.fetchError.message);\n * }\n * }\n * ```\n *\n * Integration Points:\n * - Works with AssetRepo for asset lifecycle management\n * - Integrates with AppAssetsEntity for collection management\n * - Used by GetAssetBlobURLUC for file retrieval operations\n * - Supports caching mechanisms for optimized file access\n */\nexport abstract class AssetEntity extends AppObjectEntity {\n /** Static type identifier for component registration */\n static type = \"AssetEntity\";\n\n /**\n * Unique identifier for this asset, derived from the underlying AppObject\n * @readonly\n */\n abstract readonly id: string;\n\n /**\n * Display name of the asset\n * Triggers change notifications when modified for UI updates\n */\n abstract get name(): string;\n abstract set name(name: string);\n\n /**\n * Detailed description of the asset's purpose or content\n * Triggers change notifications when modified for UI updates\n */\n abstract get description(): string;\n abstract set description(description: string);\n\n /**\n * ID of the user or entity that owns this asset\n * Used for permission and filtering operations\n */\n abstract get owner(): string;\n abstract set owner(val: string);\n\n /**\n * Whether this asset is archived (hidden from normal views)\n * Used for soft deletion and filtering capabilities\n */\n abstract get archived(): boolean;\n abstract set archived(archived: boolean);\n\n /**\n * Original filename of the uploaded file\n * Preserved for download operations and display purposes\n */\n abstract get filename(): string;\n abstract set filename(filename: string);\n\n /**\n * Remote URL where the file can be accessed\n * Used for fetching the actual file content from external storage\n */\n abstract get fileURL(): string;\n abstract set fileURL(fileURL: string);\n\n /**\n * Sets the local file object and creates a blob URL for immediate access\n * @param file - The file object to associate with this asset\n * Side effects: Creates blob URL, triggers change notifications\n */\n abstract setFile(file: File): void;\n\n /**\n * The local file object if one has been set\n * @returns File object or undefined if no file has been loaded locally\n */\n abstract get file(): File | undefined;\n\n /**\n * Local blob URL for immediate file access without network requests\n * @returns Blob URL string or undefined if no local file is available\n */\n abstract get blobURL(): string | undefined;\n\n /**\n * Indicates whether the file has been successfully fetched and stored locally\n * @returns true if file is available locally, false otherwise\n */\n abstract get fileHasBeenFetched(): boolean;\n\n /**\n * Array of linked assets that have relationships with this asset\n * Supports hierarchical asset structures (e.g., models with textures)\n * @returns Array of linked asset references with type and ID\n */\n abstract get linkedAssets(): { type: string; id: string }[];\n\n /**\n * Adds a linked asset relationship\n * @param type - The type/category of the linked asset (e.g., \"texture\", \"sound\")\n * @param id - The unique ID of the linked asset\n * Side effects: Triggers change notifications if asset is not already linked\n */\n abstract addLinkedAsset(type: string, id: string): void;\n\n /**\n * Removes a linked asset relationship\n * @param type - The type/category of the linked asset to remove\n * @param id - The unique ID of the linked asset to remove\n * Side effects: Triggers change notifications if asset was previously linked\n */\n abstract removeLinkedAsset(type: string, id: string): void;\n\n /**\n * Retrieves all linked asset IDs of a specific type\n * @param type - The type/category to filter by (e.g., \"texture\", \"sound\")\n * @returns Array of asset IDs that match the specified type\n */\n abstract getLinkedAssetByType(type: string): string[];\n\n /**\n * Indicates whether a file fetch operation is currently in progress\n * Used for showing loading states in UI components\n */\n abstract get isFetchingFile(): boolean;\n abstract set isFetchingFile(isFetchingFile: boolean);\n\n /**\n * Any error that occurred during the most recent fetch operation\n * Used for error handling and user feedback in UI components\n */\n abstract get fetchError(): Error | undefined;\n abstract set fetchError(fetchError: Error | undefined);\n\n /**\n * Retrieves an AssetEntity component from an AppObject\n * @param appObject - The AppObject to search for the AssetEntity component\n * @returns AssetEntity instance or undefined if not found\n * Logs warning if component is not found to aid in debugging\n */\n static get(appObject: AppObject): AssetEntity | undefined {\n const asset = appObject.getComponent<AssetEntity>(AssetEntity.type);\n if (!asset) {\n appObject.appObjectRepo.submitWarning(\n \"AssetEntity.get\",\n \"Unable to find AssetEntity on app object \" + appObject.id\n );\n }\n return asset;\n }\n}\n\n/**\n * Factory function to create a new AssetEntity instance\n * @param appObject - The AppObject that will host this AssetEntity\n * @returns A new AssetEntity implementation instance\n */\nexport function makeAssetEntity(appObject: AppObject): AssetEntity {\n return new AssetImp(appObject);\n}\n\n/**\n * Private implementation of AssetEntity that handles all the concrete functionality.\n *\n * Key Implementation Details:\n * - Uses MemoizedString and MemoizedBoolean for efficient change tracking\n * - All memoized properties automatically trigger change notifications when modified\n * - Blob URL management with proper cleanup on disposal\n * - Linked asset management with duplicate prevention\n * - File fetch state management for async operations\n *\n * Memoization Pattern:\n * The implementation uses memoized properties that only trigger change notifications\n * when values actually change, preventing unnecessary UI updates and improving performance.\n * Each memoized property is initialized with a default value and a change callback.\n */\nclass AssetImp extends AssetEntity {\n /** Returns the unique ID from the underlying AppObject */\n get id(): string {\n return this.appObject.id;\n }\n\n /**\n * Memoized asset name with change notification\n * Initialized to empty string, triggers notifyOnChange when modified\n */\n private _memoizedName: MemoizedString = new MemoizedString(\n \"\",\n this.notifyOnChange\n );\n get name(): string {\n return this._memoizedName.val;\n }\n\n set name(name: string) {\n this._memoizedName.val = name;\n }\n\n /**\n * Memoized asset owner with change notification\n * Stores the ID of the user/entity that owns this asset\n */\n private _memoizedOwner: MemoizedString = new MemoizedString(\n \"\",\n this.notifyOnChange\n );\n get owner(): string {\n return this._memoizedOwner.val;\n }\n\n set owner(val: string) {\n this._memoizedOwner.val = val;\n }\n\n /**\n * Memoized asset description with change notification\n * Stores detailed information about the asset's purpose or content\n */\n private _memoizedDescription: MemoizedString = new MemoizedString(\n \"\",\n this.notifyOnChange\n );\n get description(): string {\n return this._memoizedDescription.val;\n }\n\n set description(description: string) {\n this._memoizedDescription.val = description;\n }\n\n /**\n * Memoized archive status with change notification\n * Used for soft deletion and filtering of assets\n */\n private _memoizedArchived: MemoizedBoolean = new MemoizedBoolean(\n false,\n this.notifyOnChange\n );\n get archived(): boolean {\n return this._memoizedArchived.val;\n }\n\n set archived(archived: boolean) {\n this._memoizedArchived.val = archived;\n }\n\n /**\n * Memoized file URL for remote asset access\n * Points to where the actual file can be downloaded from\n */\n private _memoizedFileURL: MemoizedString = new MemoizedString(\n \"\",\n this.notifyOnChange\n );\n\n /**\n * Memoized filename for display and download purposes\n * Preserves the original name of the uploaded file\n */\n private _memoizedFilename: MemoizedString = new MemoizedString(\n \"\",\n this.notifyOnChange\n );\n\n get filename(): string {\n return this._memoizedFilename.val;\n }\n set filename(name: string) {\n this._memoizedFilename.val = name;\n }\n get fileURL(): string {\n return this._memoizedFileURL.val;\n }\n\n set fileURL(name: string) {\n this._memoizedFileURL.val = name;\n }\n\n /** Local file object storage */\n private _file: File | undefined = undefined;\n\n /** Local blob URL for immediate file access */\n private _blobURL: string | undefined = undefined;\n\n /**\n * Sets a local file and creates a blob URL for immediate access\n * This is typically called after successfully downloading a file\n * @param file - The file object to store locally\n * Side effects: Creates blob URL, triggers change notifications to update UI\n */\n setFile = (file: File) => {\n this._file = file;\n this._blobURL = URL.createObjectURL(file);\n this.notifyOnChange();\n };\n\n /** Returns the locally stored file object, if any */\n get file(): File | undefined {\n return this._file;\n }\n\n /** Returns the blob URL for local file access, if available */\n get blobURL(): string | undefined {\n return this._blobURL;\n }\n\n /**\n * Indicates whether a file has been successfully fetched and stored locally\n * Used to determine if file operations can proceed without network requests\n */\n get fileHasBeenFetched(): boolean {\n return this._file !== undefined;\n }\n\n /**\n * Storage for linked asset relationships\n * Supports hierarchical asset structures where assets depend on other assets\n */\n private _linkedAssets: { type: string; id: string }[] = [];\n\n /**\n * Returns a copy of all linked assets to prevent external modification\n * This ensures the internal state cannot be corrupted by external code\n */\n get linkedAssets(): { type: string; id: string }[] {\n return [...this._linkedAssets];\n }\n\n /**\n * Adds a linked asset relationship if it doesn't already exist\n * Prevents duplicate relationships and maintains data integrity\n * @param type - Category of the linked asset (e.g., \"texture\", \"sound\", \"model\")\n * @param id - Unique identifier of the linked asset\n */\n addLinkedAsset = (type: string, id: string) => {\n const existingAsset = this._linkedAssets.find((asset) => {\n return asset.id === id;\n });\n\n if (existingAsset === undefined) {\n this._linkedAssets.push({\n id,\n type\n });\n this.notifyOnChange();\n }\n };\n\n /**\n * Removes a linked asset relationship if it exists\n * Maintains referential integrity by only removing exact matches\n * @param type - Category of the linked asset to remove\n * @param id - Unique identifier of the linked asset to remove\n */\n removeLinkedAsset = (type: string, id: string) => {\n let foundAsset: boolean = false;\n this._linkedAssets.forEach((asset) => {\n if (asset.type === type && asset.id === id) {\n foundAsset = true;\n }\n });\n\n if (foundAsset) {\n this._linkedAssets = this._linkedAssets.filter(\n (asset) => asset.id !== id\n );\n this.notifyOnChange();\n }\n };\n\n /**\n * Retrieves all linked asset IDs of a specific type\n * Useful for finding all assets of a particular category (e.g., all textures)\n * @param type - The asset type to filter by\n * @returns Array of asset IDs matching the specified type\n */\n getLinkedAssetByType = (type: string): string[] => {\n const rVal: string[] = [];\n\n this._linkedAssets.forEach((asset) => {\n if (asset.type === type) {\n rVal.push(asset.id);\n }\n });\n\n return rVal;\n };\n\n /**\n * Memoized fetch state indicator with change notification\n * Used to show loading states in UI during file download operations\n */\n private _memoizedIsFetchingFile: MemoizedBoolean = new MemoizedBoolean(\n false,\n this.notifyOnChange\n );\n get isFetchingFile(): boolean {\n return this._memoizedIsFetchingFile.val;\n }\n set isFetchingFile(archived: boolean) {\n this._memoizedIsFetchingFile.val = archived;\n }\n\n /**\n * Storage for the most recent fetch error\n * Helps with error handling and user feedback in UI components\n */\n private _fetchError: Error | undefined = undefined;\n\n /** Returns the current fetch error, if any */\n get fetchError(): Error | undefined {\n return this._fetchError;\n }\n\n /**\n * Sets the fetch error with smart change detection\n * Only triggers change notifications if the error actually changes\n * This prevents unnecessary UI updates when the same error is set multiple times\n * @param fetchError - The error that occurred, or undefined to clear the error\n */\n set fetchError(fetchError: Error | undefined) {\n if (fetchError === undefined && this.fetchError === undefined) return;\n\n if (\n fetchError !== undefined &&\n this.fetchError !== undefined &&\n fetchError.message === this.fetchError.message\n )\n return;\n\n this._fetchError = fetchError;\n this.notifyOnChange();\n }\n\n /**\n * Cleanup method that properly releases blob URL resources\n * Important: Blob URLs must be revoked to prevent memory leaks\n * This is automatically called when the entity is disposed\n * Side effects: Revokes blob URL, triggers change notification, calls parent dispose\n */\n dispose = () => {\n if (this._blobURL !== undefined) {\n URL.revokeObjectURL(this._blobURL);\n this._blobURL = undefined;\n this.notifyOnChange();\n }\n super.dispose();\n };\n\n /**\n * Initializes the AssetEntity with proper component registration\n * @param appObject - The AppObject that will host this entity\n */\n constructor(appObject: AppObject) {\n super(appObject, AssetEntity.type);\n }\n}\n"]}
1
+ {"version":3,"file":"AssetEntity.js","sourceRoot":"","sources":["../../../../src/Assets/Entities/AssetEntity.ts"],"names":[],"mappings":"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","sourcesContent":["import {\r\n AppObject,\r\n AppObjectEntity,\r\n MemoizedBoolean,\r\n MemoizedString\r\n} from \"@vived/core\";\r\n\r\n/**\r\n * AssetEntity manages individual file-based resources in VIVED applications.\r\n *\r\n * This entity handles:\r\n * 1. Asset metadata (name, description, owner, archive status)\r\n * 2. File management (filename, fileURL, blob URL creation)\r\n * 3. Linked asset relationships for hierarchical asset structures\r\n * 4. Fetch state management (loading indicators, error handling)\r\n * 5. Observer pattern implementation for UI updates\r\n *\r\n * Key Concepts:\r\n * - Uses memoized properties for efficient change tracking and notifications\r\n * - Supports both file URLs (remote) and blob URLs (local) for flexible file access\r\n * - Maintains linked asset relationships to support complex asset hierarchies\r\n * - Implements observer pattern to notify UI components of changes\r\n *\r\n * Usage Patterns:\r\n * ```typescript\r\n * // Get an asset entity from an app object\r\n * const asset = AssetEntity.get(appObject);\r\n * if (asset) {\r\n * // Set asset metadata\r\n * asset.name = \"My Asset\";\r\n * asset.description = \"A sample asset\";\r\n *\r\n * // Handle file operations\r\n * asset.setFile(fileObject);\r\n * const blobURL = asset.blobURL; // Access local blob URL\r\n *\r\n * // Manage linked assets\r\n * asset.addLinkedAsset(\"texture\", \"texture123\");\r\n * const textures = asset.getLinkedAssetByType(\"texture\");\r\n *\r\n * // Monitor fetch state\r\n * if (asset.isFetchingFile) {\r\n * console.log(\"File is being downloaded...\");\r\n * }\r\n * if (asset.fetchError) {\r\n * console.error(\"Failed to fetch file:\", asset.fetchError.message);\r\n * }\r\n * }\r\n * ```\r\n *\r\n * Integration Points:\r\n * - Works with AssetRepo for asset lifecycle management\r\n * - Integrates with AppAssetsEntity for collection management\r\n * - Used by GetAssetBlobURLUC for file retrieval operations\r\n * - Supports caching mechanisms for optimized file access\r\n */\r\nexport abstract class AssetEntity extends AppObjectEntity {\r\n /** Static type identifier for component registration */\r\n static type = \"AssetEntity\";\r\n\r\n /**\r\n * Unique identifier for this asset, derived from the underlying AppObject\r\n * @readonly\r\n */\r\n abstract readonly id: string;\r\n\r\n /**\r\n * Display name of the asset\r\n * Triggers change notifications when modified for UI updates\r\n */\r\n abstract get name(): string;\r\n abstract set name(name: string);\r\n\r\n /**\r\n * Detailed description of the asset's purpose or content\r\n * Triggers change notifications when modified for UI updates\r\n */\r\n abstract get description(): string;\r\n abstract set description(description: string);\r\n\r\n /**\r\n * ID of the user or entity that owns this asset\r\n * Used for permission and filtering operations\r\n */\r\n abstract get owner(): string;\r\n abstract set owner(val: string);\r\n\r\n /**\r\n * Whether this asset is archived (hidden from normal views)\r\n * Used for soft deletion and filtering capabilities\r\n */\r\n abstract get archived(): boolean;\r\n abstract set archived(archived: boolean);\r\n\r\n /**\r\n * Original filename of the uploaded file\r\n * Preserved for download operations and display purposes\r\n */\r\n abstract get filename(): string;\r\n abstract set filename(filename: string);\r\n\r\n /**\r\n * Remote URL where the file can be accessed\r\n * Used for fetching the actual file content from external storage\r\n */\r\n abstract get fileURL(): string;\r\n abstract set fileURL(fileURL: string);\r\n\r\n /**\r\n * Sets the local file object and creates a blob URL for immediate access\r\n * @param file - The file object to associate with this asset\r\n * Side effects: Creates blob URL, triggers change notifications\r\n */\r\n abstract setFile(file: File): void;\r\n\r\n /**\r\n * The local file object if one has been set\r\n * @returns File object or undefined if no file has been loaded locally\r\n */\r\n abstract get file(): File | undefined;\r\n\r\n /**\r\n * Local blob URL for immediate file access without network requests\r\n * @returns Blob URL string or undefined if no local file is available\r\n */\r\n abstract get blobURL(): string | undefined;\r\n\r\n /**\r\n * Indicates whether the file has been successfully fetched and stored locally\r\n * @returns true if file is available locally, false otherwise\r\n */\r\n abstract get fileHasBeenFetched(): boolean;\r\n\r\n /**\r\n * Array of linked assets that have relationships with this asset\r\n * Supports hierarchical asset structures (e.g., models with textures)\r\n * @returns Array of linked asset references with type and ID\r\n */\r\n abstract get linkedAssets(): { type: string; id: string }[];\r\n\r\n /**\r\n * Adds a linked asset relationship\r\n * @param type - The type/category of the linked asset (e.g., \"texture\", \"sound\")\r\n * @param id - The unique ID of the linked asset\r\n * Side effects: Triggers change notifications if asset is not already linked\r\n */\r\n abstract addLinkedAsset(type: string, id: string): void;\r\n\r\n /**\r\n * Removes a linked asset relationship\r\n * @param type - The type/category of the linked asset to remove\r\n * @param id - The unique ID of the linked asset to remove\r\n * Side effects: Triggers change notifications if asset was previously linked\r\n */\r\n abstract removeLinkedAsset(type: string, id: string): void;\r\n\r\n /**\r\n * Retrieves all linked asset IDs of a specific type\r\n * @param type - The type/category to filter by (e.g., \"texture\", \"sound\")\r\n * @returns Array of asset IDs that match the specified type\r\n */\r\n abstract getLinkedAssetByType(type: string): string[];\r\n\r\n /**\r\n * Indicates whether a file fetch operation is currently in progress\r\n * Used for showing loading states in UI components\r\n */\r\n abstract get isFetchingFile(): boolean;\r\n abstract set isFetchingFile(isFetchingFile: boolean);\r\n\r\n /**\r\n * Any error that occurred during the most recent fetch operation\r\n * Used for error handling and user feedback in UI components\r\n */\r\n abstract get fetchError(): Error | undefined;\r\n abstract set fetchError(fetchError: Error | undefined);\r\n\r\n /**\r\n * Retrieves an AssetEntity component from an AppObject\r\n * @param appObject - The AppObject to search for the AssetEntity component\r\n * @returns AssetEntity instance or undefined if not found\r\n * Logs warning if component is not found to aid in debugging\r\n */\r\n static get(appObject: AppObject): AssetEntity | undefined {\r\n const asset = appObject.getComponent<AssetEntity>(AssetEntity.type);\r\n if (!asset) {\r\n appObject.appObjectRepo.submitWarning(\r\n \"AssetEntity.get\",\r\n \"Unable to find AssetEntity on app object \" + appObject.id\r\n );\r\n }\r\n return asset;\r\n }\r\n}\r\n\r\n/**\r\n * Factory function to create a new AssetEntity instance\r\n * @param appObject - The AppObject that will host this AssetEntity\r\n * @returns A new AssetEntity implementation instance\r\n */\r\nexport function makeAssetEntity(appObject: AppObject): AssetEntity {\r\n return new AssetImp(appObject);\r\n}\r\n\r\n/**\r\n * Private implementation of AssetEntity that handles all the concrete functionality.\r\n *\r\n * Key Implementation Details:\r\n * - Uses MemoizedString and MemoizedBoolean for efficient change tracking\r\n * - All memoized properties automatically trigger change notifications when modified\r\n * - Blob URL management with proper cleanup on disposal\r\n * - Linked asset management with duplicate prevention\r\n * - File fetch state management for async operations\r\n *\r\n * Memoization Pattern:\r\n * The implementation uses memoized properties that only trigger change notifications\r\n * when values actually change, preventing unnecessary UI updates and improving performance.\r\n * Each memoized property is initialized with a default value and a change callback.\r\n */\r\nclass AssetImp extends AssetEntity {\r\n /** Returns the unique ID from the underlying AppObject */\r\n get id(): string {\r\n return this.appObject.id;\r\n }\r\n\r\n /**\r\n * Memoized asset name with change notification\r\n * Initialized to empty string, triggers notifyOnChange when modified\r\n */\r\n private _memoizedName: MemoizedString = new MemoizedString(\r\n \"\",\r\n this.notifyOnChange\r\n );\r\n get name(): string {\r\n return this._memoizedName.val;\r\n }\r\n\r\n set name(name: string) {\r\n this._memoizedName.val = name;\r\n }\r\n\r\n /**\r\n * Memoized asset owner with change notification\r\n * Stores the ID of the user/entity that owns this asset\r\n */\r\n private _memoizedOwner: MemoizedString = new MemoizedString(\r\n \"\",\r\n this.notifyOnChange\r\n );\r\n get owner(): string {\r\n return this._memoizedOwner.val;\r\n }\r\n\r\n set owner(val: string) {\r\n this._memoizedOwner.val = val;\r\n }\r\n\r\n /**\r\n * Memoized asset description with change notification\r\n * Stores detailed information about the asset's purpose or content\r\n */\r\n private _memoizedDescription: MemoizedString = new MemoizedString(\r\n \"\",\r\n this.notifyOnChange\r\n );\r\n get description(): string {\r\n return this._memoizedDescription.val;\r\n }\r\n\r\n set description(description: string) {\r\n this._memoizedDescription.val = description;\r\n }\r\n\r\n /**\r\n * Memoized archive status with change notification\r\n * Used for soft deletion and filtering of assets\r\n */\r\n private _memoizedArchived: MemoizedBoolean = new MemoizedBoolean(\r\n false,\r\n this.notifyOnChange\r\n );\r\n get archived(): boolean {\r\n return this._memoizedArchived.val;\r\n }\r\n\r\n set archived(archived: boolean) {\r\n this._memoizedArchived.val = archived;\r\n }\r\n\r\n /**\r\n * Memoized file URL for remote asset access\r\n * Points to where the actual file can be downloaded from\r\n */\r\n private _memoizedFileURL: MemoizedString = new MemoizedString(\r\n \"\",\r\n this.notifyOnChange\r\n );\r\n\r\n /**\r\n * Memoized filename for display and download purposes\r\n * Preserves the original name of the uploaded file\r\n */\r\n private _memoizedFilename: MemoizedString = new MemoizedString(\r\n \"\",\r\n this.notifyOnChange\r\n );\r\n\r\n get filename(): string {\r\n return this._memoizedFilename.val;\r\n }\r\n set filename(name: string) {\r\n this._memoizedFilename.val = name;\r\n }\r\n get fileURL(): string {\r\n return this._memoizedFileURL.val;\r\n }\r\n\r\n set fileURL(name: string) {\r\n this._memoizedFileURL.val = name;\r\n }\r\n\r\n /** Local file object storage */\r\n private _file: File | undefined = undefined;\r\n\r\n /** Local blob URL for immediate file access */\r\n private _blobURL: string | undefined = undefined;\r\n\r\n /**\r\n * Sets a local file and creates a blob URL for immediate access\r\n * This is typically called after successfully downloading a file\r\n * @param file - The file object to store locally\r\n * Side effects: Creates blob URL, triggers change notifications to update UI\r\n */\r\n setFile = (file: File) => {\r\n this._file = file;\r\n this._blobURL = URL.createObjectURL(file);\r\n this.notifyOnChange();\r\n };\r\n\r\n /** Returns the locally stored file object, if any */\r\n get file(): File | undefined {\r\n return this._file;\r\n }\r\n\r\n /** Returns the blob URL for local file access, if available */\r\n get blobURL(): string | undefined {\r\n return this._blobURL;\r\n }\r\n\r\n /**\r\n * Indicates whether a file has been successfully fetched and stored locally\r\n * Used to determine if file operations can proceed without network requests\r\n */\r\n get fileHasBeenFetched(): boolean {\r\n return this._file !== undefined;\r\n }\r\n\r\n /**\r\n * Storage for linked asset relationships\r\n * Supports hierarchical asset structures where assets depend on other assets\r\n */\r\n private _linkedAssets: { type: string; id: string }[] = [];\r\n\r\n /**\r\n * Returns a copy of all linked assets to prevent external modification\r\n * This ensures the internal state cannot be corrupted by external code\r\n */\r\n get linkedAssets(): { type: string; id: string }[] {\r\n return [...this._linkedAssets];\r\n }\r\n\r\n /**\r\n * Adds a linked asset relationship if it doesn't already exist\r\n * Prevents duplicate relationships and maintains data integrity\r\n * @param type - Category of the linked asset (e.g., \"texture\", \"sound\", \"model\")\r\n * @param id - Unique identifier of the linked asset\r\n */\r\n addLinkedAsset = (type: string, id: string) => {\r\n const existingAsset = this._linkedAssets.find((asset) => {\r\n return asset.id === id;\r\n });\r\n\r\n if (existingAsset === undefined) {\r\n this._linkedAssets.push({\r\n id,\r\n type\r\n });\r\n this.notifyOnChange();\r\n }\r\n };\r\n\r\n /**\r\n * Removes a linked asset relationship if it exists\r\n * Maintains referential integrity by only removing exact matches\r\n * @param type - Category of the linked asset to remove\r\n * @param id - Unique identifier of the linked asset to remove\r\n */\r\n removeLinkedAsset = (type: string, id: string) => {\r\n let foundAsset: boolean = false;\r\n this._linkedAssets.forEach((asset) => {\r\n if (asset.type === type && asset.id === id) {\r\n foundAsset = true;\r\n }\r\n });\r\n\r\n if (foundAsset) {\r\n this._linkedAssets = this._linkedAssets.filter(\r\n (asset) => asset.id !== id\r\n );\r\n this.notifyOnChange();\r\n }\r\n };\r\n\r\n /**\r\n * Retrieves all linked asset IDs of a specific type\r\n * Useful for finding all assets of a particular category (e.g., all textures)\r\n * @param type - The asset type to filter by\r\n * @returns Array of asset IDs matching the specified type\r\n */\r\n getLinkedAssetByType = (type: string): string[] => {\r\n const rVal: string[] = [];\r\n\r\n this._linkedAssets.forEach((asset) => {\r\n if (asset.type === type) {\r\n rVal.push(asset.id);\r\n }\r\n });\r\n\r\n return rVal;\r\n };\r\n\r\n /**\r\n * Memoized fetch state indicator with change notification\r\n * Used to show loading states in UI during file download operations\r\n */\r\n private _memoizedIsFetchingFile: MemoizedBoolean = new MemoizedBoolean(\r\n false,\r\n this.notifyOnChange\r\n );\r\n get isFetchingFile(): boolean {\r\n return this._memoizedIsFetchingFile.val;\r\n }\r\n set isFetchingFile(archived: boolean) {\r\n this._memoizedIsFetchingFile.val = archived;\r\n }\r\n\r\n /**\r\n * Storage for the most recent fetch error\r\n * Helps with error handling and user feedback in UI components\r\n */\r\n private _fetchError: Error | undefined = undefined;\r\n\r\n /** Returns the current fetch error, if any */\r\n get fetchError(): Error | undefined {\r\n return this._fetchError;\r\n }\r\n\r\n /**\r\n * Sets the fetch error with smart change detection\r\n * Only triggers change notifications if the error actually changes\r\n * This prevents unnecessary UI updates when the same error is set multiple times\r\n * @param fetchError - The error that occurred, or undefined to clear the error\r\n */\r\n set fetchError(fetchError: Error | undefined) {\r\n if (fetchError === undefined && this.fetchError === undefined) return;\r\n\r\n if (\r\n fetchError !== undefined &&\r\n this.fetchError !== undefined &&\r\n fetchError.message === this.fetchError.message\r\n )\r\n return;\r\n\r\n this._fetchError = fetchError;\r\n this.notifyOnChange();\r\n }\r\n\r\n /**\r\n * Cleanup method that properly releases blob URL resources\r\n * Important: Blob URLs must be revoked to prevent memory leaks\r\n * This is automatically called when the entity is disposed\r\n * Side effects: Revokes blob URL, triggers change notification, calls parent dispose\r\n */\r\n dispose = () => {\r\n if (this._blobURL !== undefined) {\r\n URL.revokeObjectURL(this._blobURL);\r\n this._blobURL = undefined;\r\n this.notifyOnChange();\r\n }\r\n super.dispose();\r\n };\r\n\r\n /**\r\n * Initializes the AssetEntity with proper component registration\r\n * @param appObject - The AppObject that will host this entity\r\n */\r\n constructor(appObject: AppObject) {\r\n super(appObject, AssetEntity.type);\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AssetRepo.js","sourceRoot":"","sources":["../../../../src/Assets/Entities/AssetRepo.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n getSingletonComponent,\n AppObject,\n AppObjectEntity,\n AppObjectRepo\n} from \"@vived/core\";\nimport { AssetEntity, makeAssetEntity } from \"./AssetEntity\";\n\n/**\n * Data Transfer Object interface for asset operations between external APIs and the asset system.\n *\n * This interface defines the structure for transferring asset data from external sources\n * (such as APIs, databases, or file systems) into the VIVED asset management system.\n * It includes all necessary metadata and supports hierarchical asset relationships.\n *\n * @interface AssetDTO\n * @property id - Unique identifier for the asset\n * @property ownerId - ID of the user or entity that owns this asset\n * @property name - Display name of the asset\n * @property description - Detailed description of the asset's purpose or content\n * @property archived - Whether the asset is archived (soft deleted)\n * @property filename - Original filename of the uploaded file\n * @property fileURL - Remote URL where the file can be accessed\n * @property linkedAssets - Array of linked asset relationships with type and nested DTO\n */\nexport interface AssetDTO {\n id: string;\n ownerId: string;\n name: string;\n description: string;\n archived: boolean;\n filename: string;\n fileURL: string;\n linkedAssets: { type: string; asset: AssetDTO }[];\n}\n\n/**\n * AssetRepo implements the Repository pattern for asset lifecycle management in VIVED applications.\n *\n * This singleton entity handles:\n * 1. Asset CRUD operations (Create, Read, Update, Delete)\n * 2. Factory pattern for asset creation with dependency injection support\n * 3. DTO to entity mapping for external data integration\n * 4. Recursive linked asset processing for complex hierarchies\n * 5. Asset lookup and caching for performance optimization\n *\n * Key Concepts:\n * - Repository pattern provides a clean abstraction over asset storage\n * - Factory pattern allows for customizable asset creation strategies\n * - DTO processing supports complex asset hierarchies with linked relationships\n * - Singleton pattern ensures consistent asset management across the application\n *\n * Usage Patterns:\n * ```typescript\n * // Get the global asset repository\n * const assetRepo = AssetRepo.get(appObjects);\n * if (assetRepo) {\n * // Basic CRUD operations\n * const asset = assetRepo.getOrCreate(\"asset123\");\n * assetRepo.add(asset);\n * const allAssets = assetRepo.getAll();\n * const exists = assetRepo.has(\"asset123\");\n * assetRepo.remove(\"asset123\");\n *\n * // DTO processing for external data\n * const assetDTO = {\n * id: \"asset456\",\n * name: \"Sample Asset\",\n * // ... other properties\n * linkedAssets: [\n * { type: \"texture\", asset: textureDTO },\n * { type: \"sound\", asset: soundDTO }\n * ]\n * };\n * const createdAsset = assetRepo.addFromDTO(assetDTO);\n * }\n * ```\n *\n * Integration Points:\n * - Works with AssetEntity for individual asset management\n * - Integrates with AppAssetsEntity for collection operations\n * - Used by GetAppAssetsUC and other use cases for bulk operations\n * - Supports external APIs through DTO processing\n */\nexport abstract class AssetRepo extends AppObjectEntity {\n /** Static type identifier for component registration */\n static type = \"AssetRepository\";\n\n /**\n * Adds an asset to the repository if not already present\n * @param asset - The AssetEntity to add to the repository\n * Side effects: Triggers change notifications for UI updates\n */\n abstract add(asset: AssetEntity): void;\n\n /**\n * Checks if an asset exists in the repository\n * @param id - The unique identifier to check for\n * @returns true if the asset exists, false otherwise\n */\n abstract has(id: string): boolean;\n\n /**\n * Retrieves an asset from the repository\n * @param assetID - The unique identifier of the asset to retrieve\n * @returns AssetEntity if found, undefined otherwise\n */\n abstract get(assetID: string): AssetEntity | undefined;\n\n /**\n * Retrieves an existing asset or creates a new one if not found\n * Uses the asset factory to create new instances when needed\n * @param assetID - The unique identifier of the asset\n * @returns AssetEntity (either existing or newly created)\n */\n abstract getOrCreate(assetID: string): AssetEntity;\n\n /**\n * Retrieves all assets currently stored in the repository\n * @returns Array of all AssetEntity instances\n */\n abstract getAll(): AssetEntity[];\n\n /**\n * Removes an asset from the repository\n * @param assetID - The unique identifier of the asset to remove\n * Side effects: Triggers change notifications for UI updates\n */\n abstract remove(assetID: string): void;\n\n /**\n * Factory method for creating new AssetEntity instances\n * Can be overridden or injected to customize asset creation behavior\n * @param id - The unique identifier for the new asset\n * @returns A new AssetEntity instance\n */\n abstract assetFactory(id: string): AssetEntity;\n\n /**\n * Creates assets from external DTO data with recursive linked asset processing\n * Handles complex asset hierarchies by processing all linked assets recursively\n * @param dto - The asset data transfer object containing asset metadata and relationships\n * @returns The primary AssetEntity created from the DTO\n * Side effects: Creates and adds multiple assets if linked assets are present\n */\n abstract addFromDTO(dto: AssetDTO): AssetEntity;\n\n /**\n * Retrieves the singleton AssetRepo from the host application objects\n * @param hostAppObjects - The application object repository to search\n * @returns AssetRepo instance or undefined if not found\n * Uses getSingletonComponent to ensure only one instance exists\n */\n static get(hostAppObjects: AppObjectRepo): AssetRepo | undefined {\n return getSingletonComponent(AssetRepo.type, hostAppObjects);\n }\n}\n\n/**\n * Factory function to create a new AssetRepo instance\n * @param appObj - The AppObject that will host this AssetRepo\n * @returns A new AssetRepo implementation instance\n */\nexport function makeAssetRepo(appObj: AppObject): AssetRepo {\n return new AssetRepositoryImp(appObj);\n}\n\n/**\n * Private implementation of AssetRepo that handles all concrete repository functionality.\n *\n * Key Implementation Details:\n * - Uses Map for efficient asset lookup and storage\n * - Implements factory pattern with fallback to default asset creation\n * - Processes DTOs recursively to handle complex asset hierarchies\n * - Maintains referential integrity when mapping DTOs to entities\n * - Automatic singleton registration ensures global accessibility\n *\n * DTO Processing Pattern:\n * The addFromDTO method recursively processes linked assets to ensure that\n * complex asset hierarchies are properly created and linked. This supports\n * scenarios where assets depend on other assets (e.g., 3D models with textures).\n *\n * Factory Pattern Implementation:\n * The assetFactory method can be overridden or injected to customize how\n * assets are created, allowing for different asset types or initialization strategies.\n */\nclass AssetRepositoryImp extends AssetRepo {\n /** Internal storage for asset lookup using Map for O(1) access */\n private assetLookup = new Map<string, AssetEntity>();\n\n /**\n * Checks if an asset exists in the repository\n * @param id - The asset ID to check for\n * @returns true if asset exists, false otherwise\n */\n has = (id: string): boolean => {\n return this.assetLookup.has(id);\n };\n /**\n * Factory method for creating new AssetEntity instances\n * Uses default factory if not injected via dependency injection\n * This allows for dependency injection of custom asset creation logic\n * @param id - The unique identifier for the new asset\n * @returns A new AssetEntity instance using the default factory\n */\n assetFactory = (id: string): AssetEntity => {\n return makeAssetEntity(this.appObjects.getOrCreate(id));\n };\n\n /**\n * Adds an asset to the repository if not already present\n * Prevents duplicate entries and maintains repository integrity\n * @param asset - The AssetEntity to add\n * Side effects: Triggers change notifications if asset was added\n */\n add = (asset: AssetEntity): void => {\n if (this.assetLookup.has(asset.id)) return;\n this.assetLookup.set(asset.id, asset);\n this.notifyOnChange();\n };\n\n /**\n * Retrieves an asset from the repository\n * @param assetID - The unique identifier of the asset\n * @returns AssetEntity if found, undefined otherwise\n */\n get = (assetID: string): AssetEntity | undefined => {\n return this.assetLookup.get(assetID);\n };\n\n /**\n * Retrieves an existing asset or creates a new one using the factory\n * This is the primary method for ensuring assets exist in the repository\n * @param assetID - The unique identifier of the asset\n * @returns AssetEntity (either existing or newly created)\n */\n getOrCreate = (assetID: string): AssetEntity => {\n const existing = this.assetLookup.get(assetID);\n if (existing) {\n return existing;\n }\n\n const newAsset = this.assetFactory(assetID);\n this.add(newAsset);\n return newAsset;\n };\n\n /**\n * Retrieves all assets in the repository\n * Returns the values from the internal Map as an array\n * @returns Array of all AssetEntity instances\n */\n getAll = (): AssetEntity[] => {\n return Array.from(this.assetLookup.values());\n };\n\n /**\n * Removes an asset from the repository if present\n * @param assetID - The unique identifier of the asset to remove\n * Side effects: Triggers change notifications if asset was removed\n */\n remove = (assetID: string) => {\n if (!this.assetLookup.has(assetID)) return;\n\n this.assetLookup.delete(assetID);\n this.notifyOnChange();\n };\n\n /**\n * Creates assets from external DTO data with recursive linked asset processing\n * This method handles complex asset hierarchies by:\n * 1. Creating the primary asset from the DTO\n * 2. Recursively processing all linked assets\n * 3. Establishing relationships between assets\n *\n * @param dto - The asset data transfer object containing metadata and relationships\n * @returns The primary AssetEntity created from the DTO\n * Side effects: Creates and adds multiple assets for complex hierarchies\n */\n addFromDTO(dto: AssetDTO): AssetEntity {\n const baseAsset = this.getOrCreate(dto.id);\n this.setAssetFromDTO(dto, baseAsset);\n\n const allLinkedDTOs: AssetDTO[] = [];\n this.addLinkedAssetDTOsRecursively(dto.linkedAssets, allLinkedDTOs);\n\n allLinkedDTOs.forEach((linkedDTO) => {\n const asset = this.getOrCreate(linkedDTO.id);\n this.setAssetFromDTO(linkedDTO, asset);\n });\n\n return baseAsset;\n }\n\n /**\n * Recursively processes linked asset DTOs to build a flat list of all dependencies\n * This method traverses the entire asset hierarchy to ensure all linked assets\n * are processed regardless of nesting depth\n *\n * @param linkedAssetList - Array of linked asset references with type and DTO\n * @param metaList - Accumulator array for collecting all linked DTOs\n * Side effects: Populates metaList with all linked DTOs found in the hierarchy\n */\n private addLinkedAssetDTOsRecursively(\n linkedAssetList: { type: string; asset: AssetDTO }[],\n metaList: AssetDTO[]\n ) {\n linkedAssetList.forEach((linkedAsset) => {\n metaList.push(linkedAsset.asset);\n this.addLinkedAssetDTOsRecursively(\n linkedAsset.asset.linkedAssets,\n metaList\n );\n });\n }\n\n /**\n * Maps DTO properties to an AssetEntity instance\n * This method handles the conversion from external data format to internal entity state\n * Also establishes linked asset relationships\n *\n * @param data - The DTO containing asset metadata\n * @param asset - The AssetEntity to populate with DTO data\n * @returns The populated AssetEntity for chaining\n * Side effects: Modifies asset properties and establishes linked asset relationships\n */\n private setAssetFromDTO = (data: AssetDTO, asset: AssetEntity) => {\n asset.description = data.description;\n asset.name = data.name;\n asset.archived = data.archived;\n asset.filename = data.filename;\n asset.owner = data.ownerId;\n asset.fileURL = data.fileURL;\n\n data.linkedAssets.forEach((linkedAsset) => {\n asset.addLinkedAsset(linkedAsset.type, linkedAsset.asset.id);\n });\n\n return asset;\n };\n\n /**\n * Initializes the AssetRepo with singleton registration\n * @param appObj - The AppObject that will host this repository\n * Side effects: Registers this instance as a singleton for global access\n */\n constructor(appObj: AppObject) {\n super(appObj, AssetRepo.type);\n this.appObjects.registerSingleton(this);\n }\n}\n"]}
1
+ {"version":3,"file":"AssetRepo.js","sourceRoot":"","sources":["../../../../src/Assets/Entities/AssetRepo.ts"],"names":[],"mappings":"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","sourcesContent":["import {\r\n getSingletonComponent,\r\n AppObject,\r\n AppObjectEntity,\r\n AppObjectRepo\r\n} from \"@vived/core\";\r\nimport { AssetEntity, makeAssetEntity } from \"./AssetEntity\";\r\n\r\n/**\r\n * Data Transfer Object interface for asset operations between external APIs and the asset system.\r\n *\r\n * This interface defines the structure for transferring asset data from external sources\r\n * (such as APIs, databases, or file systems) into the VIVED asset management system.\r\n * It includes all necessary metadata and supports hierarchical asset relationships.\r\n *\r\n * @interface AssetDTO\r\n * @property id - Unique identifier for the asset\r\n * @property ownerId - ID of the user or entity that owns this asset\r\n * @property name - Display name of the asset\r\n * @property description - Detailed description of the asset's purpose or content\r\n * @property archived - Whether the asset is archived (soft deleted)\r\n * @property filename - Original filename of the uploaded file\r\n * @property fileURL - Remote URL where the file can be accessed\r\n * @property linkedAssets - Array of linked asset relationships with type and nested DTO\r\n */\r\nexport interface AssetDTO {\r\n id: string;\r\n ownerId: string;\r\n name: string;\r\n description: string;\r\n archived: boolean;\r\n filename: string;\r\n fileURL: string;\r\n linkedAssets: { type: string; asset: AssetDTO }[];\r\n}\r\n\r\n/**\r\n * AssetRepo implements the Repository pattern for asset lifecycle management in VIVED applications.\r\n *\r\n * This singleton entity handles:\r\n * 1. Asset CRUD operations (Create, Read, Update, Delete)\r\n * 2. Factory pattern for asset creation with dependency injection support\r\n * 3. DTO to entity mapping for external data integration\r\n * 4. Recursive linked asset processing for complex hierarchies\r\n * 5. Asset lookup and caching for performance optimization\r\n *\r\n * Key Concepts:\r\n * - Repository pattern provides a clean abstraction over asset storage\r\n * - Factory pattern allows for customizable asset creation strategies\r\n * - DTO processing supports complex asset hierarchies with linked relationships\r\n * - Singleton pattern ensures consistent asset management across the application\r\n *\r\n * Usage Patterns:\r\n * ```typescript\r\n * // Get the global asset repository\r\n * const assetRepo = AssetRepo.get(appObjects);\r\n * if (assetRepo) {\r\n * // Basic CRUD operations\r\n * const asset = assetRepo.getOrCreate(\"asset123\");\r\n * assetRepo.add(asset);\r\n * const allAssets = assetRepo.getAll();\r\n * const exists = assetRepo.has(\"asset123\");\r\n * assetRepo.remove(\"asset123\");\r\n *\r\n * // DTO processing for external data\r\n * const assetDTO = {\r\n * id: \"asset456\",\r\n * name: \"Sample Asset\",\r\n * // ... other properties\r\n * linkedAssets: [\r\n * { type: \"texture\", asset: textureDTO },\r\n * { type: \"sound\", asset: soundDTO }\r\n * ]\r\n * };\r\n * const createdAsset = assetRepo.addFromDTO(assetDTO);\r\n * }\r\n * ```\r\n *\r\n * Integration Points:\r\n * - Works with AssetEntity for individual asset management\r\n * - Integrates with AppAssetsEntity for collection operations\r\n * - Used by GetAppAssetsUC and other use cases for bulk operations\r\n * - Supports external APIs through DTO processing\r\n */\r\nexport abstract class AssetRepo extends AppObjectEntity {\r\n /** Static type identifier for component registration */\r\n static type = \"AssetRepository\";\r\n\r\n /**\r\n * Adds an asset to the repository if not already present\r\n * @param asset - The AssetEntity to add to the repository\r\n * Side effects: Triggers change notifications for UI updates\r\n */\r\n abstract add(asset: AssetEntity): void;\r\n\r\n /**\r\n * Checks if an asset exists in the repository\r\n * @param id - The unique identifier to check for\r\n * @returns true if the asset exists, false otherwise\r\n */\r\n abstract has(id: string): boolean;\r\n\r\n /**\r\n * Retrieves an asset from the repository\r\n * @param assetID - The unique identifier of the asset to retrieve\r\n * @returns AssetEntity if found, undefined otherwise\r\n */\r\n abstract get(assetID: string): AssetEntity | undefined;\r\n\r\n /**\r\n * Retrieves an existing asset or creates a new one if not found\r\n * Uses the asset factory to create new instances when needed\r\n * @param assetID - The unique identifier of the asset\r\n * @returns AssetEntity (either existing or newly created)\r\n */\r\n abstract getOrCreate(assetID: string): AssetEntity;\r\n\r\n /**\r\n * Retrieves all assets currently stored in the repository\r\n * @returns Array of all AssetEntity instances\r\n */\r\n abstract getAll(): AssetEntity[];\r\n\r\n /**\r\n * Removes an asset from the repository\r\n * @param assetID - The unique identifier of the asset to remove\r\n * Side effects: Triggers change notifications for UI updates\r\n */\r\n abstract remove(assetID: string): void;\r\n\r\n /**\r\n * Factory method for creating new AssetEntity instances\r\n * Can be overridden or injected to customize asset creation behavior\r\n * @param id - The unique identifier for the new asset\r\n * @returns A new AssetEntity instance\r\n */\r\n abstract assetFactory(id: string): AssetEntity;\r\n\r\n /**\r\n * Creates assets from external DTO data with recursive linked asset processing\r\n * Handles complex asset hierarchies by processing all linked assets recursively\r\n * @param dto - The asset data transfer object containing asset metadata and relationships\r\n * @returns The primary AssetEntity created from the DTO\r\n * Side effects: Creates and adds multiple assets if linked assets are present\r\n */\r\n abstract addFromDTO(dto: AssetDTO): AssetEntity;\r\n\r\n /**\r\n * Retrieves the singleton AssetRepo from the host application objects\r\n * @param hostAppObjects - The application object repository to search\r\n * @returns AssetRepo instance or undefined if not found\r\n * Uses getSingletonComponent to ensure only one instance exists\r\n */\r\n static get(hostAppObjects: AppObjectRepo): AssetRepo | undefined {\r\n return getSingletonComponent(AssetRepo.type, hostAppObjects);\r\n }\r\n}\r\n\r\n/**\r\n * Factory function to create a new AssetRepo instance\r\n * @param appObj - The AppObject that will host this AssetRepo\r\n * @returns A new AssetRepo implementation instance\r\n */\r\nexport function makeAssetRepo(appObj: AppObject): AssetRepo {\r\n return new AssetRepositoryImp(appObj);\r\n}\r\n\r\n/**\r\n * Private implementation of AssetRepo that handles all concrete repository functionality.\r\n *\r\n * Key Implementation Details:\r\n * - Uses Map for efficient asset lookup and storage\r\n * - Implements factory pattern with fallback to default asset creation\r\n * - Processes DTOs recursively to handle complex asset hierarchies\r\n * - Maintains referential integrity when mapping DTOs to entities\r\n * - Automatic singleton registration ensures global accessibility\r\n *\r\n * DTO Processing Pattern:\r\n * The addFromDTO method recursively processes linked assets to ensure that\r\n * complex asset hierarchies are properly created and linked. This supports\r\n * scenarios where assets depend on other assets (e.g., 3D models with textures).\r\n *\r\n * Factory Pattern Implementation:\r\n * The assetFactory method can be overridden or injected to customize how\r\n * assets are created, allowing for different asset types or initialization strategies.\r\n */\r\nclass AssetRepositoryImp extends AssetRepo {\r\n /** Internal storage for asset lookup using Map for O(1) access */\r\n private assetLookup = new Map<string, AssetEntity>();\r\n\r\n /**\r\n * Checks if an asset exists in the repository\r\n * @param id - The asset ID to check for\r\n * @returns true if asset exists, false otherwise\r\n */\r\n has = (id: string): boolean => {\r\n return this.assetLookup.has(id);\r\n };\r\n /**\r\n * Factory method for creating new AssetEntity instances\r\n * Uses default factory if not injected via dependency injection\r\n * This allows for dependency injection of custom asset creation logic\r\n * @param id - The unique identifier for the new asset\r\n * @returns A new AssetEntity instance using the default factory\r\n */\r\n assetFactory = (id: string): AssetEntity => {\r\n return makeAssetEntity(this.appObjects.getOrCreate(id));\r\n };\r\n\r\n /**\r\n * Adds an asset to the repository if not already present\r\n * Prevents duplicate entries and maintains repository integrity\r\n * @param asset - The AssetEntity to add\r\n * Side effects: Triggers change notifications if asset was added\r\n */\r\n add = (asset: AssetEntity): void => {\r\n if (this.assetLookup.has(asset.id)) return;\r\n this.assetLookup.set(asset.id, asset);\r\n this.notifyOnChange();\r\n };\r\n\r\n /**\r\n * Retrieves an asset from the repository\r\n * @param assetID - The unique identifier of the asset\r\n * @returns AssetEntity if found, undefined otherwise\r\n */\r\n get = (assetID: string): AssetEntity | undefined => {\r\n return this.assetLookup.get(assetID);\r\n };\r\n\r\n /**\r\n * Retrieves an existing asset or creates a new one using the factory\r\n * This is the primary method for ensuring assets exist in the repository\r\n * @param assetID - The unique identifier of the asset\r\n * @returns AssetEntity (either existing or newly created)\r\n */\r\n getOrCreate = (assetID: string): AssetEntity => {\r\n const existing = this.assetLookup.get(assetID);\r\n if (existing) {\r\n return existing;\r\n }\r\n\r\n const newAsset = this.assetFactory(assetID);\r\n this.add(newAsset);\r\n return newAsset;\r\n };\r\n\r\n /**\r\n * Retrieves all assets in the repository\r\n * Returns the values from the internal Map as an array\r\n * @returns Array of all AssetEntity instances\r\n */\r\n getAll = (): AssetEntity[] => {\r\n return Array.from(this.assetLookup.values());\r\n };\r\n\r\n /**\r\n * Removes an asset from the repository if present\r\n * @param assetID - The unique identifier of the asset to remove\r\n * Side effects: Triggers change notifications if asset was removed\r\n */\r\n remove = (assetID: string) => {\r\n if (!this.assetLookup.has(assetID)) return;\r\n\r\n this.assetLookup.delete(assetID);\r\n this.notifyOnChange();\r\n };\r\n\r\n /**\r\n * Creates assets from external DTO data with recursive linked asset processing\r\n * This method handles complex asset hierarchies by:\r\n * 1. Creating the primary asset from the DTO\r\n * 2. Recursively processing all linked assets\r\n * 3. Establishing relationships between assets\r\n *\r\n * @param dto - The asset data transfer object containing metadata and relationships\r\n * @returns The primary AssetEntity created from the DTO\r\n * Side effects: Creates and adds multiple assets for complex hierarchies\r\n */\r\n addFromDTO(dto: AssetDTO): AssetEntity {\r\n const baseAsset = this.getOrCreate(dto.id);\r\n this.setAssetFromDTO(dto, baseAsset);\r\n\r\n const allLinkedDTOs: AssetDTO[] = [];\r\n this.addLinkedAssetDTOsRecursively(dto.linkedAssets, allLinkedDTOs);\r\n\r\n allLinkedDTOs.forEach((linkedDTO) => {\r\n const asset = this.getOrCreate(linkedDTO.id);\r\n this.setAssetFromDTO(linkedDTO, asset);\r\n });\r\n\r\n return baseAsset;\r\n }\r\n\r\n /**\r\n * Recursively processes linked asset DTOs to build a flat list of all dependencies\r\n * This method traverses the entire asset hierarchy to ensure all linked assets\r\n * are processed regardless of nesting depth\r\n *\r\n * @param linkedAssetList - Array of linked asset references with type and DTO\r\n * @param metaList - Accumulator array for collecting all linked DTOs\r\n * Side effects: Populates metaList with all linked DTOs found in the hierarchy\r\n */\r\n private addLinkedAssetDTOsRecursively(\r\n linkedAssetList: { type: string; asset: AssetDTO }[],\r\n metaList: AssetDTO[]\r\n ) {\r\n linkedAssetList.forEach((linkedAsset) => {\r\n metaList.push(linkedAsset.asset);\r\n this.addLinkedAssetDTOsRecursively(\r\n linkedAsset.asset.linkedAssets,\r\n metaList\r\n );\r\n });\r\n }\r\n\r\n /**\r\n * Maps DTO properties to an AssetEntity instance\r\n * This method handles the conversion from external data format to internal entity state\r\n * Also establishes linked asset relationships\r\n *\r\n * @param data - The DTO containing asset metadata\r\n * @param asset - The AssetEntity to populate with DTO data\r\n * @returns The populated AssetEntity for chaining\r\n * Side effects: Modifies asset properties and establishes linked asset relationships\r\n */\r\n private setAssetFromDTO = (data: AssetDTO, asset: AssetEntity) => {\r\n asset.description = data.description;\r\n asset.name = data.name;\r\n asset.archived = data.archived;\r\n asset.filename = data.filename;\r\n asset.owner = data.ownerId;\r\n asset.fileURL = data.fileURL;\r\n\r\n data.linkedAssets.forEach((linkedAsset) => {\r\n asset.addLinkedAsset(linkedAsset.type, linkedAsset.asset.id);\r\n });\r\n\r\n return asset;\r\n };\r\n\r\n /**\r\n * Initializes the AssetRepo with singleton registration\r\n * @param appObj - The AppObject that will host this repository\r\n * Side effects: Registers this instance as a singleton for global access\r\n */\r\n constructor(appObj: AppObject) {\r\n super(appObj, AssetRepo.type);\r\n this.appObjects.registerSingleton(this);\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Assets/Entities/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,gDAA8B;AAC9B,8CAA4B","sourcesContent":["export * from \"./AppAssetsEntity\";\nexport * from \"./AssetEntity\";\nexport * from \"./AssetRepo\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Assets/Entities/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,gDAA8B;AAC9B,8CAA4B","sourcesContent":["export * from \"./AppAssetsEntity\";\r\nexport * from \"./AssetEntity\";\r\nexport * from \"./AssetRepo\";\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AssetsFactory.js","sourceRoot":"","sources":["../../../../src/Assets/Factories/AssetsFactory.ts"],"names":[],"mappings":";;;AAAA,sCAAsE;AACtE,0CAA0E;AAC1E,gCAAsD;AACtD,gCAUgB;AAEhB;;;;GAIG;AACH,MAAa,aAAc,SAAQ,oBAAa;IAI9C,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,CAAC,CAAC;QAJnB,+BAA+B;QACtB,gBAAW,GAAG,eAAe,CAAC;IAIvC,CAAC;IAED;;OAEG;IACH,aAAa;QACX,sBAAsB;QACtB,MAAM,SAAS,GAAG,IAAA,wBAAa,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAChD,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;IACnD,CAAC;IAED;;OAEG;IACK,gBAAgB;QACtB,OAAO,CAAC,EAAU,EAAe,EAAE;YACjC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAE3C,WAAW;YACX,MAAM,MAAM,GAAG,IAAA,0BAAe,EAAC,EAAE,CAAC,CAAC;YAEnC,qBAAqB;YACrB,IAAA,wBAAkB,EAAC,EAAE,CAAC,CAAC;YACvB,IAAA,uBAAiB,EAAC,EAAE,CAAC,CAAC;YACtB,IAAA,6BAAuB,EAAC,EAAE,CAAC,CAAC;YAC5B,IAAA,2BAAqB,EAAC,EAAE,CAAC,CAAC;YAE1B,qBAAqB;YACrB,IAAA,iBAAW,EAAC,EAAE,CAAC,CAAC;YAChB,IAAA,qBAAe,EAAC,EAAE,CAAC,CAAC;YAEpB,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,iBAAiB;QACjB,IAAA,2BAAqB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtC,IAAA,wBAAkB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnC,IAAA,oBAAc,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAA,wBAAkB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnC,IAAA,oBAAc,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,6CAA6C;IAC/C,CAAC;IAED;;OAEG;IACH,UAAU;QACR,0CAA0C;IAC5C,CAAC;CACF;AAlED,sCAkEC","sourcesContent":["import { AppObject, AppObjectRepo, DomainFactory } from \"@vived/core\";\nimport { AssetEntity, makeAssetEntity, makeAssetRepo } from \"../Entities\";\nimport { makeAssetFilePM, makeAssetPM } from \"../PMs\";\nimport {\n makeArchiveAssetUC,\n makeDeleteAssetUC,\n makeDownloadAssetFileUC,\n makeGetAssetBlobURLUC,\n makeGetAssetFileUC,\n makeGetAssetUC,\n makeNewAssetUC,\n makePrefetchAssets,\n makeUpdateAssetFileUC\n} from \"../UCs\";\n\n/**\n * Factory responsible for setting up the Assets domain components.\n * This factory initializes all entities, use cases, and presentation models\n * required for the Assets functionality.\n */\nexport class AssetsFactory extends DomainFactory {\n // Unique name for this factory\n readonly factoryName = \"AssetsFactory\";\n\n constructor(appObject: AppObject) {\n super(appObject);\n }\n\n /**\n * Sets up all entities required for the Assets system\n */\n setupEntities(): void {\n // Initialize entities\n const assetRepo = makeAssetRepo(this.appObject);\n assetRepo.assetFactory = this.makeAssetFactory();\n }\n\n /**\n * Creates an asset factory function that properly initializes assets with all required components\n */\n private makeAssetFactory() {\n return (id: string): AssetEntity => {\n const ao = this.appObjects.getOrCreate(id);\n\n // Entities\n const entity = makeAssetEntity(ao);\n\n // UCs for each asset\n makeArchiveAssetUC(ao);\n makeDeleteAssetUC(ao);\n makeDownloadAssetFileUC(ao);\n makeUpdateAssetFileUC(ao);\n\n // PMs for each asset\n makeAssetPM(ao);\n makeAssetFilePM(ao);\n\n return entity;\n };\n }\n\n /**\n * Sets up all use cases for the Assets system\n */\n setupUCs(): void {\n // Repository UCs\n makeGetAssetBlobURLUC(this.appObject);\n makeGetAssetFileUC(this.appObject);\n makeGetAssetUC(this.appObject);\n makePrefetchAssets(this.appObject);\n makeNewAssetUC(this.appObject);\n }\n\n /**\n * Sets up all presentation managers for the Assets system\n */\n setupPMs(): void {\n // No PMs needed for core asset functionality\n }\n\n /**\n * Performs any final setup operations after all components are initialized\n */\n finalSetup(): void {\n // No additional setup required for assets\n }\n}\n"]}
1
+ {"version":3,"file":"AssetsFactory.js","sourceRoot":"","sources":["../../../../src/Assets/Factories/AssetsFactory.ts"],"names":[],"mappings":";;;AAAA,sCAAsE;AACtE,0CAA0E;AAC1E,gCAAsD;AACtD,gCAUgB;AAEhB;;;;GAIG;AACH,MAAa,aAAc,SAAQ,oBAAa;IAI9C,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,CAAC,CAAC;QAJnB,+BAA+B;QACtB,gBAAW,GAAG,eAAe,CAAC;IAIvC,CAAC;IAED;;OAEG;IACH,aAAa;QACX,sBAAsB;QACtB,MAAM,SAAS,GAAG,IAAA,wBAAa,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAChD,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;IACnD,CAAC;IAED;;OAEG;IACK,gBAAgB;QACtB,OAAO,CAAC,EAAU,EAAe,EAAE;YACjC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAE3C,WAAW;YACX,MAAM,MAAM,GAAG,IAAA,0BAAe,EAAC,EAAE,CAAC,CAAC;YAEnC,qBAAqB;YACrB,IAAA,wBAAkB,EAAC,EAAE,CAAC,CAAC;YACvB,IAAA,uBAAiB,EAAC,EAAE,CAAC,CAAC;YACtB,IAAA,6BAAuB,EAAC,EAAE,CAAC,CAAC;YAC5B,IAAA,2BAAqB,EAAC,EAAE,CAAC,CAAC;YAE1B,qBAAqB;YACrB,IAAA,iBAAW,EAAC,EAAE,CAAC,CAAC;YAChB,IAAA,qBAAe,EAAC,EAAE,CAAC,CAAC;YAEpB,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,iBAAiB;QACjB,IAAA,2BAAqB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtC,IAAA,wBAAkB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnC,IAAA,oBAAc,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAA,wBAAkB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnC,IAAA,oBAAc,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,6CAA6C;IAC/C,CAAC;IAED;;OAEG;IACH,UAAU;QACR,0CAA0C;IAC5C,CAAC;CACF;AAlED,sCAkEC","sourcesContent":["import { AppObject, AppObjectRepo, DomainFactory } from \"@vived/core\";\r\nimport { AssetEntity, makeAssetEntity, makeAssetRepo } from \"../Entities\";\r\nimport { makeAssetFilePM, makeAssetPM } from \"../PMs\";\r\nimport {\r\n makeArchiveAssetUC,\r\n makeDeleteAssetUC,\r\n makeDownloadAssetFileUC,\r\n makeGetAssetBlobURLUC,\r\n makeGetAssetFileUC,\r\n makeGetAssetUC,\r\n makeNewAssetUC,\r\n makePrefetchAssets,\r\n makeUpdateAssetFileUC\r\n} from \"../UCs\";\r\n\r\n/**\r\n * Factory responsible for setting up the Assets domain components.\r\n * This factory initializes all entities, use cases, and presentation models\r\n * required for the Assets functionality.\r\n */\r\nexport class AssetsFactory extends DomainFactory {\r\n // Unique name for this factory\r\n readonly factoryName = \"AssetsFactory\";\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject);\r\n }\r\n\r\n /**\r\n * Sets up all entities required for the Assets system\r\n */\r\n setupEntities(): void {\r\n // Initialize entities\r\n const assetRepo = makeAssetRepo(this.appObject);\r\n assetRepo.assetFactory = this.makeAssetFactory();\r\n }\r\n\r\n /**\r\n * Creates an asset factory function that properly initializes assets with all required components\r\n */\r\n private makeAssetFactory() {\r\n return (id: string): AssetEntity => {\r\n const ao = this.appObjects.getOrCreate(id);\r\n\r\n // Entities\r\n const entity = makeAssetEntity(ao);\r\n\r\n // UCs for each asset\r\n makeArchiveAssetUC(ao);\r\n makeDeleteAssetUC(ao);\r\n makeDownloadAssetFileUC(ao);\r\n makeUpdateAssetFileUC(ao);\r\n\r\n // PMs for each asset\r\n makeAssetPM(ao);\r\n makeAssetFilePM(ao);\r\n\r\n return entity;\r\n };\r\n }\r\n\r\n /**\r\n * Sets up all use cases for the Assets system\r\n */\r\n setupUCs(): void {\r\n // Repository UCs\r\n makeGetAssetBlobURLUC(this.appObject);\r\n makeGetAssetFileUC(this.appObject);\r\n makeGetAssetUC(this.appObject);\r\n makePrefetchAssets(this.appObject);\r\n makeNewAssetUC(this.appObject);\r\n }\r\n\r\n /**\r\n * Sets up all presentation managers for the Assets system\r\n */\r\n setupPMs(): void {\r\n // No PMs needed for core asset functionality\r\n }\r\n\r\n /**\r\n * Performs any final setup operations after all components are initialized\r\n */\r\n finalSetup(): void {\r\n // No additional setup required for assets\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"SandboxAssetsFactory.js","sourceRoot":"","sources":["../../../../src/Assets/Factories/SandboxAssetsFactory.ts"],"names":[],"mappings":";;;AAuHA,4DAKC;AA5HD,sCAAsE;AACtE,0CAMqB;AACrB,gCAMgB;AAChB,gCAcgB;AAEhB;;;;GAIG;AACH,MAAa,oBAAqB,SAAQ,oBAAa;IAOrD,YAAY,SAAoB,EAAE,UAAyB;QACzD,KAAK,CAAC,SAAS,CAAC,CAAC;QAPnB,+BAA+B;QACtB,gBAAW,GAAG,sBAAsB,CAAC;QAO5C,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;QAC9D,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,aAAa;QACX,sBAAsB;QACtB,MAAM,SAAS,GAAG,IAAA,wBAAa,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAClD,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACjD,IAAA,wBAAa,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,uBAAuB;QACvB,IAAA,sBAAgB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACnC,IAAA,2BAAqB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxC,IAAA,wBAAkB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACrC,IAAA,oBAAc,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjC,IAAA,wBAAkB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACrC,IAAA,oBAAc,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAEjC,iBAAiB;QACjB,IAAA,uBAAiB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpC,IAAA,uBAAiB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,iBAAiB;QACjB,IAAA,wBAAkB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACrC,IAAA,gCAA0B,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAA,2BAAqB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,UAAU;QACR,0CAA0C;IAC5C,CAAC;IAED;;OAEG;IACK,gBAAgB;QACtB,OAAO,CAAC,EAAU,EAAe,EAAE;YACjC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAE3C,WAAW;YACX,MAAM,MAAM,GAAG,IAAA,0BAAe,EAAC,EAAE,CAAC,CAAC;YAEnC,MAAM;YACN,IAAA,wBAAkB,EAAC,EAAE,CAAC,CAAC;YACvB,IAAA,uBAAiB,EAAC,EAAE,CAAC,CAAC;YACtB,IAAA,6BAAuB,EAAC,EAAE,CAAC,CAAC;YAC5B,IAAA,2BAAqB,EAAC,EAAE,CAAC,CAAC;YAC1B,IAAA,8BAAwB,EAAC,EAAE,CAAC,CAAC;YAE7B,MAAM;YACN,IAAA,iBAAW,EAAC,EAAE,CAAC,CAAC;YAChB,IAAA,qBAAe,EAAC,EAAE,CAAC,CAAC;YAEpB,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;IACJ,CAAC;CACF;AAjFD,oDAiFC;AAED,SAAgB,wBAAwB,CACtC,UAAyB;IAEzB,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IACnD,OAAO,IAAI,oBAAoB,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;AAClD,CAAC","sourcesContent":["import { AppObject, AppObjectRepo, DomainFactory } from \"@vived/core\";\nimport {\n AssetEntity,\n AssetRepo,\n makeAppAssets,\n makeAssetEntity,\n makeAssetRepo\n} from \"../Entities\";\nimport {\n makeAppAssetListPM,\n makeAssetFilePM,\n makeAssetPM,\n makeEditingAppAssetPM,\n makeShowArchivedAppAssetPM\n} from \"../PMs\";\nimport {\n makeArchiveAssetUC,\n makeDeleteAssetUC,\n makeDownloadAssetFileUC,\n makeEditAppAsset,\n makeGetAppAssetUC,\n makeGetAssetBlobURLUC,\n makeGetAssetFileUC,\n makeGetAssetUC,\n makeNewAppAssetUC,\n makeNewAssetUC,\n makePrefetchAssets,\n makeUpdateAppAssetMetaUC,\n makeUpdateAssetFileUC\n} from \"../UCs\";\n\n/**\n * Factory responsible for setting up the Assets domain components for sandbox.\n * This factory initializes all entities, use cases, and presentation models\n * required for the Assets functionality.\n */\nexport class SandboxAssetsFactory extends DomainFactory {\n // Unique name for this factory\n readonly factoryName = \"SandboxAssetsFactory\";\n\n private assetRepoAO: AppObject;\n private appAssetsAO: AppObject;\n\n constructor(appObject: AppObject, appObjects: AppObjectRepo) {\n super(appObject);\n this.assetRepoAO = appObjects.getOrCreate(\"Asset Repository\");\n this.appAssetsAO = appObjects.getOrCreate(\"App Assets\");\n }\n\n /**\n * Sets up all entities required for the Assets system\n */\n setupEntities(): void {\n // Initialize entities\n const assetRepo = makeAssetRepo(this.assetRepoAO);\n assetRepo.assetFactory = this.makeAssetFactory();\n makeAppAssets(this.appAssetsAO);\n }\n\n /**\n * Sets up all use cases for the Assets system\n */\n setupUCs(): void {\n // Asset Repository UCs\n makeEditAppAsset(this.assetRepoAO);\n makeGetAssetBlobURLUC(this.assetRepoAO);\n makeGetAssetFileUC(this.assetRepoAO);\n makeGetAssetUC(this.assetRepoAO);\n makePrefetchAssets(this.assetRepoAO);\n makeNewAssetUC(this.assetRepoAO);\n\n // App Assets UCs\n makeNewAppAssetUC(this.appAssetsAO);\n makeGetAppAssetUC(this.appAssetsAO);\n }\n\n /**\n * Sets up all presentation managers for the Assets system\n */\n setupPMs(): void {\n // App Assets PMs\n makeAppAssetListPM(this.appAssetsAO);\n makeShowArchivedAppAssetPM(this.appAssetsAO);\n makeEditingAppAssetPM(this.appAssetsAO);\n }\n\n /**\n * Performs any final setup operations after all components are initialized\n */\n finalSetup(): void {\n // No additional setup required for Assets\n }\n\n /**\n * Creates the asset factory function for creating individual assets\n */\n private makeAssetFactory() {\n return (id: string): AssetEntity => {\n const ao = this.appObjects.getOrCreate(id);\n\n // Entities\n const entity = makeAssetEntity(ao);\n\n // UCs\n makeArchiveAssetUC(ao);\n makeDeleteAssetUC(ao);\n makeDownloadAssetFileUC(ao);\n makeUpdateAssetFileUC(ao);\n makeUpdateAppAssetMetaUC(ao);\n\n // PMs\n makeAssetPM(ao);\n makeAssetFilePM(ao);\n\n return entity;\n };\n }\n}\n\nexport function makeSandboxAssetsFactory(\n appObjects: AppObjectRepo\n): SandboxAssetsFactory {\n const ao = appObjects.getOrCreate(\"SandboxAssets\");\n return new SandboxAssetsFactory(ao, appObjects);\n}\n"]}
1
+ {"version":3,"file":"SandboxAssetsFactory.js","sourceRoot":"","sources":["../../../../src/Assets/Factories/SandboxAssetsFactory.ts"],"names":[],"mappings":";;;AAuHA,4DAKC;AA5HD,sCAAsE;AACtE,0CAMqB;AACrB,gCAMgB;AAChB,gCAcgB;AAEhB;;;;GAIG;AACH,MAAa,oBAAqB,SAAQ,oBAAa;IAOrD,YAAY,SAAoB,EAAE,UAAyB;QACzD,KAAK,CAAC,SAAS,CAAC,CAAC;QAPnB,+BAA+B;QACtB,gBAAW,GAAG,sBAAsB,CAAC;QAO5C,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;QAC9D,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,aAAa;QACX,sBAAsB;QACtB,MAAM,SAAS,GAAG,IAAA,wBAAa,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAClD,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACjD,IAAA,wBAAa,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,uBAAuB;QACvB,IAAA,sBAAgB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACnC,IAAA,2BAAqB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxC,IAAA,wBAAkB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACrC,IAAA,oBAAc,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjC,IAAA,wBAAkB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACrC,IAAA,oBAAc,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAEjC,iBAAiB;QACjB,IAAA,uBAAiB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpC,IAAA,uBAAiB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,iBAAiB;QACjB,IAAA,wBAAkB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACrC,IAAA,gCAA0B,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAA,2BAAqB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,UAAU;QACR,0CAA0C;IAC5C,CAAC;IAED;;OAEG;IACK,gBAAgB;QACtB,OAAO,CAAC,EAAU,EAAe,EAAE;YACjC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAE3C,WAAW;YACX,MAAM,MAAM,GAAG,IAAA,0BAAe,EAAC,EAAE,CAAC,CAAC;YAEnC,MAAM;YACN,IAAA,wBAAkB,EAAC,EAAE,CAAC,CAAC;YACvB,IAAA,uBAAiB,EAAC,EAAE,CAAC,CAAC;YACtB,IAAA,6BAAuB,EAAC,EAAE,CAAC,CAAC;YAC5B,IAAA,2BAAqB,EAAC,EAAE,CAAC,CAAC;YAC1B,IAAA,8BAAwB,EAAC,EAAE,CAAC,CAAC;YAE7B,MAAM;YACN,IAAA,iBAAW,EAAC,EAAE,CAAC,CAAC;YAChB,IAAA,qBAAe,EAAC,EAAE,CAAC,CAAC;YAEpB,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;IACJ,CAAC;CACF;AAjFD,oDAiFC;AAED,SAAgB,wBAAwB,CACtC,UAAyB;IAEzB,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IACnD,OAAO,IAAI,oBAAoB,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;AAClD,CAAC","sourcesContent":["import { AppObject, AppObjectRepo, DomainFactory } from \"@vived/core\";\r\nimport {\r\n AssetEntity,\r\n AssetRepo,\r\n makeAppAssets,\r\n makeAssetEntity,\r\n makeAssetRepo\r\n} from \"../Entities\";\r\nimport {\r\n makeAppAssetListPM,\r\n makeAssetFilePM,\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\n/**\r\n * Factory responsible for setting up the Assets domain components for sandbox.\r\n * This factory initializes all entities, use cases, and presentation models\r\n * required for the Assets functionality.\r\n */\r\nexport class SandboxAssetsFactory extends DomainFactory {\r\n // Unique name for this factory\r\n readonly factoryName = \"SandboxAssetsFactory\";\r\n\r\n private assetRepoAO: AppObject;\r\n private appAssetsAO: AppObject;\r\n\r\n constructor(appObject: AppObject, appObjects: AppObjectRepo) {\r\n super(appObject);\r\n this.assetRepoAO = appObjects.getOrCreate(\"Asset Repository\");\r\n this.appAssetsAO = appObjects.getOrCreate(\"App Assets\");\r\n }\r\n\r\n /**\r\n * Sets up all entities required for the Assets system\r\n */\r\n setupEntities(): void {\r\n // Initialize entities\r\n const assetRepo = makeAssetRepo(this.assetRepoAO);\r\n assetRepo.assetFactory = this.makeAssetFactory();\r\n makeAppAssets(this.appAssetsAO);\r\n }\r\n\r\n /**\r\n * Sets up all use cases for the Assets system\r\n */\r\n setupUCs(): void {\r\n // Asset Repository UCs\r\n makeEditAppAsset(this.assetRepoAO);\r\n makeGetAssetBlobURLUC(this.assetRepoAO);\r\n makeGetAssetFileUC(this.assetRepoAO);\r\n makeGetAssetUC(this.assetRepoAO);\r\n makePrefetchAssets(this.assetRepoAO);\r\n makeNewAssetUC(this.assetRepoAO);\r\n\r\n // App Assets UCs\r\n makeNewAppAssetUC(this.appAssetsAO);\r\n makeGetAppAssetUC(this.appAssetsAO);\r\n }\r\n\r\n /**\r\n * Sets up all presentation managers for the Assets system\r\n */\r\n setupPMs(): void {\r\n // App Assets PMs\r\n makeAppAssetListPM(this.appAssetsAO);\r\n makeShowArchivedAppAssetPM(this.appAssetsAO);\r\n makeEditingAppAssetPM(this.appAssetsAO);\r\n }\r\n\r\n /**\r\n * Performs any final setup operations after all components are initialized\r\n */\r\n finalSetup(): void {\r\n // No additional setup required for Assets\r\n }\r\n\r\n /**\r\n * Creates the asset factory function for creating individual assets\r\n */\r\n private makeAssetFactory() {\r\n return (id: string): AssetEntity => {\r\n const ao = this.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 makeAssetFilePM(ao);\r\n\r\n return entity;\r\n };\r\n }\r\n}\r\n\r\nexport function makeSandboxAssetsFactory(\r\n appObjects: AppObjectRepo\r\n): SandboxAssetsFactory {\r\n const ao = appObjects.getOrCreate(\"SandboxAssets\");\r\n return new SandboxAssetsFactory(ao, appObjects);\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Assets/Factories/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC;AACvC,0DAAwC;AACxC,kDAAgC","sourcesContent":["export * from \"./SandboxAssetsFactory\";\nexport * from \"./setupAssetsForSandbox\";\nexport * from \"./AssetsFactory\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Assets/Factories/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC;AACvC,0DAAwC;AACxC,kDAAgC","sourcesContent":["export * from \"./SandboxAssetsFactory\";\r\nexport * from \"./setupAssetsForSandbox\";\r\nexport * from \"./AssetsFactory\";\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"setupAssetsForSandbox.js","sourceRoot":"","sources":["../../../../src/Assets/Factories/setupAssetsForSandbox.ts"],"names":[],"mappings":";;AA8BA,sDAuBC;AApDD,0CAKqB;AACrB,gCAMgB;AAChB,gCAcgB;AAEhB,SAAgB,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,IAAA,wBAAa,EAAC,WAAW,CAAC,CAAC;IAC7C,SAAS,CAAC,YAAY,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACtD,IAAA,wBAAa,EAAC,WAAW,CAAC,CAAC;IAE3B,MAAM;IACN,IAAA,sBAAgB,EAAC,WAAW,CAAC,CAAC;IAC9B,IAAA,2BAAqB,EAAC,WAAW,CAAC,CAAC;IACnC,IAAA,wBAAkB,EAAC,WAAW,CAAC,CAAC;IAChC,IAAA,oBAAc,EAAC,WAAW,CAAC,CAAC;IAC5B,IAAA,wBAAkB,EAAC,WAAW,CAAC,CAAC;IAChC,IAAA,oBAAc,EAAC,WAAW,CAAC,CAAC;IAC5B,IAAA,uBAAiB,EAAC,WAAW,CAAC,CAAC;IAC/B,IAAA,uBAAiB,EAAC,WAAW,CAAC,CAAC;IAE/B,MAAM;IACN,IAAA,wBAAkB,EAAC,WAAW,CAAC,CAAC;IAChC,IAAA,gCAA0B,EAAC,WAAW,CAAC,CAAC;IACxC,IAAA,2BAAqB,EAAC,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,IAAA,0BAAe,EAAC,EAAE,CAAC,CAAC;QAEnC,MAAM;QACN,IAAA,wBAAkB,EAAC,EAAE,CAAC,CAAC;QACvB,IAAA,uBAAiB,EAAC,EAAE,CAAC,CAAC;QACtB,IAAA,6BAAuB,EAAC,EAAE,CAAC,CAAC;QAC5B,IAAA,2BAAqB,EAAC,EAAE,CAAC,CAAC;QAC1B,IAAA,8BAAwB,EAAC,EAAE,CAAC,CAAC;QAE7B,MAAM;QACN,IAAA,iBAAW,EAAC,EAAE,CAAC,CAAC;QAChB,IAAA,qBAAe,EAAC,EAAE,CAAC,CAAC,CAAC,+BAA+B;QACpD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC","sourcesContent":["import { AppObjectRepo } from \"@vived/core\";\nimport {\n AssetEntity,\n makeAppAssets,\n makeAssetEntity,\n makeAssetRepo\n} from \"../Entities\";\nimport {\n makeAppAssetListPM,\n makeAssetFilePM,\n makeAssetPM,\n makeEditingAppAssetPM,\n makeShowArchivedAppAssetPM\n} from \"../PMs\";\nimport {\n makeArchiveAssetUC,\n makeDeleteAssetUC,\n makeDownloadAssetFileUC,\n makeEditAppAsset,\n makeGetAppAssetUC,\n makeGetAssetBlobURLUC,\n makeGetAssetFileUC,\n makeGetAssetUC,\n makeNewAppAssetUC,\n makeNewAssetUC,\n makePrefetchAssets,\n makeUpdateAppAssetMetaUC,\n makeUpdateAssetFileUC\n} from \"../UCs\";\n\nexport function setupAssetsForSandbox(appObjects: AppObjectRepo) {\n const assetRepoAO = appObjects.getOrCreate(\"Asset Repository\");\n const appAssetsAO = appObjects.getOrCreate(\"App Assets\");\n\n // Entities\n const assetRepo = makeAssetRepo(assetRepoAO);\n assetRepo.assetFactory = makeAssetFactory(appObjects);\n makeAppAssets(appAssetsAO);\n\n // UCs\n makeEditAppAsset(assetRepoAO);\n makeGetAssetBlobURLUC(assetRepoAO);\n makeGetAssetFileUC(assetRepoAO);\n makeGetAssetUC(assetRepoAO);\n makePrefetchAssets(assetRepoAO);\n makeNewAssetUC(assetRepoAO);\n makeNewAppAssetUC(appAssetsAO);\n makeGetAppAssetUC(appAssetsAO);\n\n // PMs\n makeAppAssetListPM(appAssetsAO);\n makeShowArchivedAppAssetPM(appAssetsAO);\n makeEditingAppAssetPM(appAssetsAO);\n}\n\nfunction makeAssetFactory(appObjects: AppObjectRepo) {\n return function assetFactory(id: string): AssetEntity {\n const ao = appObjects.getOrCreate(id);\n\n // Entities\n const entity = makeAssetEntity(ao);\n\n // UCs\n makeArchiveAssetUC(ao);\n makeDeleteAssetUC(ao);\n makeDownloadAssetFileUC(ao);\n makeUpdateAssetFileUC(ao);\n makeUpdateAppAssetMetaUC(ao);\n\n // PMs\n makeAssetPM(ao);\n makeAssetFilePM(ao); // Add our new PM to each asset\n return entity;\n };\n}\n"]}
1
+ {"version":3,"file":"setupAssetsForSandbox.js","sourceRoot":"","sources":["../../../../src/Assets/Factories/setupAssetsForSandbox.ts"],"names":[],"mappings":";;AA8BA,sDAuBC;AApDD,0CAKqB;AACrB,gCAMgB;AAChB,gCAcgB;AAEhB,SAAgB,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,IAAA,wBAAa,EAAC,WAAW,CAAC,CAAC;IAC7C,SAAS,CAAC,YAAY,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACtD,IAAA,wBAAa,EAAC,WAAW,CAAC,CAAC;IAE3B,MAAM;IACN,IAAA,sBAAgB,EAAC,WAAW,CAAC,CAAC;IAC9B,IAAA,2BAAqB,EAAC,WAAW,CAAC,CAAC;IACnC,IAAA,wBAAkB,EAAC,WAAW,CAAC,CAAC;IAChC,IAAA,oBAAc,EAAC,WAAW,CAAC,CAAC;IAC5B,IAAA,wBAAkB,EAAC,WAAW,CAAC,CAAC;IAChC,IAAA,oBAAc,EAAC,WAAW,CAAC,CAAC;IAC5B,IAAA,uBAAiB,EAAC,WAAW,CAAC,CAAC;IAC/B,IAAA,uBAAiB,EAAC,WAAW,CAAC,CAAC;IAE/B,MAAM;IACN,IAAA,wBAAkB,EAAC,WAAW,CAAC,CAAC;IAChC,IAAA,gCAA0B,EAAC,WAAW,CAAC,CAAC;IACxC,IAAA,2BAAqB,EAAC,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,IAAA,0BAAe,EAAC,EAAE,CAAC,CAAC;QAEnC,MAAM;QACN,IAAA,wBAAkB,EAAC,EAAE,CAAC,CAAC;QACvB,IAAA,uBAAiB,EAAC,EAAE,CAAC,CAAC;QACtB,IAAA,6BAAuB,EAAC,EAAE,CAAC,CAAC;QAC5B,IAAA,2BAAqB,EAAC,EAAE,CAAC,CAAC;QAC1B,IAAA,8BAAwB,EAAC,EAAE,CAAC,CAAC;QAE7B,MAAM;QACN,IAAA,iBAAW,EAAC,EAAE,CAAC,CAAC;QAChB,IAAA,qBAAe,EAAC,EAAE,CAAC,CAAC,CAAC,+BAA+B;QACpD,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 makeAssetFilePM,\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 makeAssetFilePM(ao); // Add our new PM to each asset\r\n return entity;\r\n };\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AppAssetListPMMock.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/AppAssetListPMMock.ts"],"names":[],"mappings":";;;AAWA,wDAEC;AAZD,gCAAwC;AAExC,MAAa,kBAAmB,SAAQ,oBAAc;IAGpD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,oBAAc,CAAC,IAAI,CAAC,CAAC;QAHxC,gBAAW,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAIxB,CAAC;CACF;AAND,gDAMC;AAED,SAAgB,sBAAsB,CAAC,UAAyB;IAC9D,OAAO,IAAI,kBAAkB,CAAC,UAAU,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,CAAC;AAC9E,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\nimport { AppAssetListPM } from \"../PMs\";\n\nexport class AppAssetListPMMock extends AppAssetListPM {\n vmsAreEqual = jest.fn();\n\n constructor(appObject: AppObject) {\n super(appObject, AppAssetListPM.type);\n }\n}\n\nexport function makeAppAssetListPMMock(appObjects: AppObjectRepo) {\n return new AppAssetListPMMock(appObjects.getOrCreate(\"AppAssetListPMMock\"));\n}\n"]}
1
+ {"version":3,"file":"AppAssetListPMMock.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/AppAssetListPMMock.ts"],"names":[],"mappings":";;;AAWA,wDAEC;AAZD,gCAAwC;AAExC,MAAa,kBAAmB,SAAQ,oBAAc;IAGpD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,oBAAc,CAAC,IAAI,CAAC,CAAC;QAHxC,gBAAW,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAIxB,CAAC;CACF;AAND,gDAMC;AAED,SAAgB,sBAAsB,CAAC,UAAyB;IAC9D,OAAO,IAAI,kBAAkB,CAAC,UAAU,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,CAAC;AAC9E,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\r\nimport { AppAssetListPM } from \"../PMs\";\r\n\r\nexport class AppAssetListPMMock extends AppAssetListPM {\r\n vmsAreEqual = jest.fn();\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, AppAssetListPM.type);\r\n }\r\n}\r\n\r\nexport function makeAppAssetListPMMock(appObjects: AppObjectRepo) {\r\n return new AppAssetListPMMock(appObjects.getOrCreate(\"AppAssetListPMMock\"));\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AssetFilePMMock.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/AssetFilePMMock.ts"],"names":[],"mappings":";;;AAEA,oDAAiD;AAEjD;;;GAGG;AACH,MAAa,eAAgB,SAAQ,yBAAW;IAM9C;;;;OAIG;IACH,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,yBAAW,CAAC,IAAI,CAAC,CAAC;QAXrC;;WAEG;QACH,gBAAW,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IASxB,CAAC;CACF;AAdD,0CAcC","sourcesContent":["// filepath: c:\\Users\\amosp\\Documents\\WebGL\\vivedlearning_host\\src\\Assets\\Mocks\\AssetFilePMMock.ts\nimport { AppObject } from \"@vived/core\";\nimport { AssetFilePM } from \"../PMs/AssetFilePM\";\n\n/**\n * Mock implementation of AssetFilePM for testing\n * Provides Jest mock functions for testing adapters and other components\n */\nexport class AssetFilePMMock extends AssetFilePM {\n /**\n * Mock implementation of vmsAreEqual for testing\n */\n vmsAreEqual = jest.fn();\n\n /**\n * Creates a new AssetFilePMMock instance\n *\n * @param appObject - The app object to associate with this mock PM\n */\n constructor(appObject: AppObject) {\n super(appObject, AssetFilePM.type);\n }\n}\n"]}
1
+ {"version":3,"file":"AssetFilePMMock.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/AssetFilePMMock.ts"],"names":[],"mappings":";;;AAEA,oDAAiD;AAEjD;;;GAGG;AACH,MAAa,eAAgB,SAAQ,yBAAW;IAM9C;;;;OAIG;IACH,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,yBAAW,CAAC,IAAI,CAAC,CAAC;QAXrC;;WAEG;QACH,gBAAW,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IASxB,CAAC;CACF;AAdD,0CAcC","sourcesContent":["// filepath: c:\\Users\\amosp\\Documents\\WebGL\\vivedlearning_host\\src\\Assets\\Mocks\\AssetFilePMMock.ts\r\nimport { AppObject } from \"@vived/core\";\r\nimport { AssetFilePM } from \"../PMs/AssetFilePM\";\r\n\r\n/**\r\n * Mock implementation of AssetFilePM for testing\r\n * Provides Jest mock functions for testing adapters and other components\r\n */\r\nexport class AssetFilePMMock extends AssetFilePM {\r\n /**\r\n * Mock implementation of vmsAreEqual for testing\r\n */\r\n vmsAreEqual = jest.fn();\r\n\r\n /**\r\n * Creates a new AssetFilePMMock instance\r\n *\r\n * @param appObject - The app object to associate with this mock PM\r\n */\r\n constructor(appObject: AppObject) {\r\n super(appObject, AssetFilePM.type);\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AssetPMMock.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/AssetPMMock.ts"],"names":[],"mappings":";;;AACA,4CAAyC;AAEzC,MAAa,WAAY,SAAQ,iBAAO;IAGtC,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,iBAAO,CAAC,IAAI,CAAC,CAAC;QAHjC,gBAAW,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAIxB,CAAC;CACF;AAND,kCAMC","sourcesContent":["import { AppObject } from \"@vived/core\";\nimport { AssetPM } from \"../PMs/AssetPM\";\n\nexport class AssetPMMock extends AssetPM {\n vmsAreEqual = jest.fn();\n\n constructor(appObject: AppObject) {\n super(appObject, AssetPM.type);\n }\n}\n"]}
1
+ {"version":3,"file":"AssetPMMock.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/AssetPMMock.ts"],"names":[],"mappings":";;;AACA,4CAAyC;AAEzC,MAAa,WAAY,SAAQ,iBAAO;IAGtC,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,iBAAO,CAAC,IAAI,CAAC,CAAC;QAHjC,gBAAW,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAIxB,CAAC;CACF;AAND,kCAMC","sourcesContent":["import { AppObject } from \"@vived/core\";\r\nimport { AssetPM } from \"../PMs/AssetPM\";\r\n\r\nexport class AssetPMMock extends AssetPM {\r\n vmsAreEqual = jest.fn();\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, AssetPM.type);\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"EditingAppAssetPMMock.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/EditingAppAssetPMMock.ts"],"names":[],"mappings":";;;AAWA,8DAIC;AAdD,gEAA6D;AAE7D,MAAa,qBAAsB,SAAQ,qCAAiB;IAG1D,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,qCAAiB,CAAC,IAAI,CAAC,CAAC;QAH3C,gBAAW,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAIxB,CAAC;CACF;AAND,sDAMC;AAED,SAAgB,yBAAyB,CAAC,UAAyB;IACjE,OAAO,IAAI,qBAAqB,CAC9B,UAAU,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAChD,CAAC;AACJ,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\nimport { EditingAppAssetPM } from \"../PMs/EditingAppAssetPM\";\n\nexport class EditingAppAssetPMMock extends EditingAppAssetPM {\n vmsAreEqual = jest.fn();\n\n constructor(appObject: AppObject) {\n super(appObject, EditingAppAssetPM.type);\n }\n}\n\nexport function makeEditingAppAssetPMMock(appObjects: AppObjectRepo) {\n return new EditingAppAssetPMMock(\n appObjects.getOrCreate(\"EditingAppAssetPMMock\")\n );\n}\n"]}
1
+ {"version":3,"file":"EditingAppAssetPMMock.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/EditingAppAssetPMMock.ts"],"names":[],"mappings":";;;AAWA,8DAIC;AAdD,gEAA6D;AAE7D,MAAa,qBAAsB,SAAQ,qCAAiB;IAG1D,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,qCAAiB,CAAC,IAAI,CAAC,CAAC;QAH3C,gBAAW,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAIxB,CAAC;CACF;AAND,sDAMC;AAED,SAAgB,yBAAyB,CAAC,UAAyB;IACjE,OAAO,IAAI,qBAAqB,CAC9B,UAAU,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAChD,CAAC;AACJ,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\r\nimport { EditingAppAssetPM } from \"../PMs/EditingAppAssetPM\";\r\n\r\nexport class EditingAppAssetPMMock extends EditingAppAssetPM {\r\n vmsAreEqual = jest.fn();\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, EditingAppAssetPM.type);\r\n }\r\n}\r\n\r\nexport function makeEditingAppAssetPMMock(appObjects: AppObjectRepo) {\r\n return new EditingAppAssetPMMock(\r\n appObjects.getOrCreate(\"EditingAppAssetPMMock\")\r\n );\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MockArchiveAsset.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockArchiveAsset.ts"],"names":[],"mappings":";;;AAWA,wDAEC;AAZD,0DAAuD;AAEvD,MAAa,kBAAmB,SAAQ,+BAAc;IAGpD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,+BAAc,CAAC,IAAI,CAAC,CAAC;QAHxC,gBAAW,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAIrD,CAAC;CACF;AAND,gDAMC;AAED,SAAgB,sBAAsB,CAAC,UAAyB;IAC9D,OAAO,IAAI,kBAAkB,CAAC,UAAU,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,CAAC;AAC9E,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\nimport { ArchiveAssetUC } from \"../UCs/ArchiveAssetUC\";\n\nexport class MockArchiveAssetUC extends ArchiveAssetUC {\n setArchived = jest.fn().mockResolvedValue(undefined);\n\n constructor(appObject: AppObject) {\n super(appObject, ArchiveAssetUC.type);\n }\n}\n\nexport function makeMockArchiveAssetUC(appObjects: AppObjectRepo) {\n return new MockArchiveAssetUC(appObjects.getOrCreate(\"MockArchiveAssetUC\"));\n}\n"]}
1
+ {"version":3,"file":"MockArchiveAsset.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockArchiveAsset.ts"],"names":[],"mappings":";;;AAWA,wDAEC;AAZD,0DAAuD;AAEvD,MAAa,kBAAmB,SAAQ,+BAAc;IAGpD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,+BAAc,CAAC,IAAI,CAAC,CAAC;QAHxC,gBAAW,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAIrD,CAAC;CACF;AAND,gDAMC;AAED,SAAgB,sBAAsB,CAAC,UAAyB;IAC9D,OAAO,IAAI,kBAAkB,CAAC,UAAU,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,CAAC;AAC9E,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\r\nimport { ArchiveAssetUC } from \"../UCs/ArchiveAssetUC\";\r\n\r\nexport class MockArchiveAssetUC extends ArchiveAssetUC {\r\n setArchived = jest.fn().mockResolvedValue(undefined);\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, ArchiveAssetUC.type);\r\n }\r\n}\r\n\r\nexport function makeMockArchiveAssetUC(appObjects: AppObjectRepo) {\r\n return new MockArchiveAssetUC(appObjects.getOrCreate(\"MockArchiveAssetUC\"));\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MockDeleteAssetUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockDeleteAssetUC.ts"],"names":[],"mappings":";;;AAYA,sDAEC;AAbD,wDAAqD;AAErD,MAAa,iBAAkB,SAAQ,6BAAa;IAIlD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,6BAAa,CAAC,IAAI,CAAC,CAAC;QAJvC,WAAM,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAChD,sBAAiB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAI9B,CAAC;CACF;AAPD,8CAOC;AAED,SAAgB,qBAAqB,CAAC,UAAyB;IAC7D,OAAO,IAAI,iBAAiB,CAAC,UAAU,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAC5E,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\nimport { DeleteAssetUC } from \"../UCs/DeleteAssetUC\";\n\nexport class MockDeleteAssetUC extends DeleteAssetUC {\n delete = jest.fn().mockResolvedValue(undefined);\n deleteWithConfirm = jest.fn();\n\n constructor(appObject: AppObject) {\n super(appObject, DeleteAssetUC.type);\n }\n}\n\nexport function makeMockDeleteAssetUC(appObjects: AppObjectRepo) {\n return new MockDeleteAssetUC(appObjects.getOrCreate(\"MockDeleteAssetUC\"));\n}\n"]}
1
+ {"version":3,"file":"MockDeleteAssetUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockDeleteAssetUC.ts"],"names":[],"mappings":";;;AAYA,sDAEC;AAbD,wDAAqD;AAErD,MAAa,iBAAkB,SAAQ,6BAAa;IAIlD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,6BAAa,CAAC,IAAI,CAAC,CAAC;QAJvC,WAAM,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAChD,sBAAiB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAI9B,CAAC;CACF;AAPD,8CAOC;AAED,SAAgB,qBAAqB,CAAC,UAAyB;IAC7D,OAAO,IAAI,iBAAiB,CAAC,UAAU,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAC5E,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\r\nimport { DeleteAssetUC } from \"../UCs/DeleteAssetUC\";\r\n\r\nexport class MockDeleteAssetUC extends DeleteAssetUC {\r\n delete = jest.fn().mockResolvedValue(undefined);\r\n deleteWithConfirm = jest.fn();\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, DeleteAssetUC.type);\r\n }\r\n}\r\n\r\nexport function makeMockDeleteAssetUC(appObjects: AppObjectRepo) {\r\n return new MockDeleteAssetUC(appObjects.getOrCreate(\"MockDeleteAssetUC\"));\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MockDownloadAssetFileUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockDownloadAssetFileUC.ts"],"names":[],"mappings":";;;AAYA,kEAIC;AAfD,oEAAiE;AAEjE,MAAa,uBAAwB,SAAQ,yCAAmB;IAI9D,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,yCAAmB,CAAC,IAAI,CAAC,CAAC;QAJ7C,aAAQ,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QACrB,oBAAe,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAI5B,CAAC;CACF;AAPD,0DAOC;AAED,SAAgB,2BAA2B,CAAC,UAAyB;IACnE,OAAO,IAAI,uBAAuB,CAChC,UAAU,CAAC,WAAW,CAAC,yBAAyB,CAAC,CAClD,CAAC;AACJ,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\nimport { DownloadAssetFileUC } from \"../UCs/DownloadAssetFileUC\";\n\nexport class MockDownloadAssetFileUC extends DownloadAssetFileUC {\n download = jest.fn();\n saveFileLocally = jest.fn();\n\n constructor(appObject: AppObject) {\n super(appObject, DownloadAssetFileUC.type);\n }\n}\n\nexport function makeMockDownloadAssetFileUC(appObjects: AppObjectRepo) {\n return new MockDownloadAssetFileUC(\n appObjects.getOrCreate(\"MockDownloadAssetFileUC\")\n );\n}\n"]}
1
+ {"version":3,"file":"MockDownloadAssetFileUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockDownloadAssetFileUC.ts"],"names":[],"mappings":";;;AAYA,kEAIC;AAfD,oEAAiE;AAEjE,MAAa,uBAAwB,SAAQ,yCAAmB;IAI9D,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,yCAAmB,CAAC,IAAI,CAAC,CAAC;QAJ7C,aAAQ,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QACrB,oBAAe,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAI5B,CAAC;CACF;AAPD,0DAOC;AAED,SAAgB,2BAA2B,CAAC,UAAyB;IACnE,OAAO,IAAI,uBAAuB,CAChC,UAAU,CAAC,WAAW,CAAC,yBAAyB,CAAC,CAClD,CAAC;AACJ,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\r\nimport { DownloadAssetFileUC } from \"../UCs/DownloadAssetFileUC\";\r\n\r\nexport class MockDownloadAssetFileUC extends DownloadAssetFileUC {\r\n download = jest.fn();\r\n saveFileLocally = jest.fn();\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, DownloadAssetFileUC.type);\r\n }\r\n}\r\n\r\nexport function makeMockDownloadAssetFileUC(appObjects: AppObjectRepo) {\r\n return new MockDownloadAssetFileUC(\r\n appObjects.getOrCreate(\"MockDownloadAssetFileUC\")\r\n );\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MockEditAppAssetUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockEditAppAssetUC.ts"],"names":[],"mappings":";;;AAWA,wDAEC;AAZD,0DAAuD;AAEvD,MAAa,kBAAmB,SAAQ,+BAAc;IAGpD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,+BAAc,CAAC,IAAI,CAAC,CAAC;QAHxC,cAAS,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAItB,CAAC;CACF;AAND,gDAMC;AAED,SAAgB,sBAAsB,CAAC,UAAyB;IAC9D,OAAO,IAAI,kBAAkB,CAAC,UAAU,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,CAAC;AAC9E,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\nimport { EditAppAssetUC } from \"../UCs/EditAppAssetUC\";\n\nexport class MockEditAppAssetUC extends EditAppAssetUC {\n editAsset = jest.fn();\n\n constructor(appObject: AppObject) {\n super(appObject, EditAppAssetUC.type);\n }\n}\n\nexport function makeMockEditAppAssetUC(appObjects: AppObjectRepo) {\n return new MockEditAppAssetUC(appObjects.getOrCreate(\"MockEditAppAssetUC\"));\n}\n"]}
1
+ {"version":3,"file":"MockEditAppAssetUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockEditAppAssetUC.ts"],"names":[],"mappings":";;;AAWA,wDAEC;AAZD,0DAAuD;AAEvD,MAAa,kBAAmB,SAAQ,+BAAc;IAGpD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,+BAAc,CAAC,IAAI,CAAC,CAAC;QAHxC,cAAS,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAItB,CAAC;CACF;AAND,gDAMC;AAED,SAAgB,sBAAsB,CAAC,UAAyB;IAC9D,OAAO,IAAI,kBAAkB,CAAC,UAAU,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,CAAC;AAC9E,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\r\nimport { EditAppAssetUC } from \"../UCs/EditAppAssetUC\";\r\n\r\nexport class MockEditAppAssetUC extends EditAppAssetUC {\r\n editAsset = jest.fn();\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, EditAppAssetUC.type);\r\n }\r\n}\r\n\r\nexport function makeMockEditAppAssetUC(appObjects: AppObjectRepo) {\r\n return new MockEditAppAssetUC(appObjects.getOrCreate(\"MockEditAppAssetUC\"));\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MockGetAppAssetsUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockGetAppAssetsUC.ts"],"names":[],"mappings":";;;AAWA,wDAEC;AAZD,0DAAuD;AAEvD,MAAa,kBAAmB,SAAQ,+BAAc;IAGpD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,+BAAc,CAAC,IAAI,CAAC,CAAC;QAHxC,iBAAY,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAIzB,CAAC;CACF;AAND,gDAMC;AAED,SAAgB,sBAAsB,CAAC,UAAyB;IAC9D,OAAO,IAAI,kBAAkB,CAAC,UAAU,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,CAAC;AAC9E,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\nimport { GetAppAssetsUC } from \"../UCs/GetAppAssetsUC\";\n\nexport class MockGetAppAssetsUC extends GetAppAssetsUC {\n getAppAssets = jest.fn();\n\n constructor(appObject: AppObject) {\n super(appObject, GetAppAssetsUC.type);\n }\n}\n\nexport function makeMockGetAppAssetsUC(appObjects: AppObjectRepo) {\n return new MockGetAppAssetsUC(appObjects.getOrCreate(\"MockGetAppAssetsUC\"));\n}\n"]}
1
+ {"version":3,"file":"MockGetAppAssetsUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockGetAppAssetsUC.ts"],"names":[],"mappings":";;;AAWA,wDAEC;AAZD,0DAAuD;AAEvD,MAAa,kBAAmB,SAAQ,+BAAc;IAGpD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,+BAAc,CAAC,IAAI,CAAC,CAAC;QAHxC,iBAAY,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAIzB,CAAC;CACF;AAND,gDAMC;AAED,SAAgB,sBAAsB,CAAC,UAAyB;IAC9D,OAAO,IAAI,kBAAkB,CAAC,UAAU,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,CAAC;AAC9E,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\r\nimport { GetAppAssetsUC } from \"../UCs/GetAppAssetsUC\";\r\n\r\nexport class MockGetAppAssetsUC extends GetAppAssetsUC {\r\n getAppAssets = jest.fn();\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, GetAppAssetsUC.type);\r\n }\r\n}\r\n\r\nexport function makeMockGetAppAssetsUC(appObjects: AppObjectRepo) {\r\n return new MockGetAppAssetsUC(appObjects.getOrCreate(\"MockGetAppAssetsUC\"));\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MockGetAssetBlobURLUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockGetAssetBlobURLUC.ts"],"names":[],"mappings":";;;AAWA,8DAEC;AAZD,gEAA6D;AAE7D,MAAa,qBAAsB,SAAQ,qCAAiB;IAG1D,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,qCAAiB,CAAC,IAAI,CAAC,CAAC;QAH3C,oBAAe,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;IAIrE,CAAC;CACF;AAND,sDAMC;AAED,SAAgB,yBAAyB,CAAC,UAAyB;IACjE,OAAO,IAAI,qBAAqB,CAAC,UAAU,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC;AAC7E,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\nimport { GetAssetBlobURLUC } from \"../UCs/GetAssetBlobURLUC\";\n\nexport class MockGetAssetBlobURLUC extends GetAssetBlobURLUC {\n getAssetBlobURL = jest.fn().mockResolvedValue(\"www.someBlobURL.com\");\n\n constructor(appObject: AppObject) {\n super(appObject, GetAssetBlobURLUC.type);\n }\n}\n\nexport function makeMockGetAssetBlobURLUC(appObjects: AppObjectRepo) {\n return new MockGetAssetBlobURLUC(appObjects.getOrCreate(\"MockGetAssetUC\"));\n}\n"]}
1
+ {"version":3,"file":"MockGetAssetBlobURLUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockGetAssetBlobURLUC.ts"],"names":[],"mappings":";;;AAWA,8DAEC;AAZD,gEAA6D;AAE7D,MAAa,qBAAsB,SAAQ,qCAAiB;IAG1D,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,qCAAiB,CAAC,IAAI,CAAC,CAAC;QAH3C,oBAAe,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;IAIrE,CAAC;CACF;AAND,sDAMC;AAED,SAAgB,yBAAyB,CAAC,UAAyB;IACjE,OAAO,IAAI,qBAAqB,CAAC,UAAU,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC;AAC7E,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\r\nimport { GetAssetBlobURLUC } from \"../UCs/GetAssetBlobURLUC\";\r\n\r\nexport class MockGetAssetBlobURLUC extends GetAssetBlobURLUC {\r\n getAssetBlobURL = jest.fn().mockResolvedValue(\"www.someBlobURL.com\");\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, GetAssetBlobURLUC.type);\r\n }\r\n}\r\n\r\nexport function makeMockGetAssetBlobURLUC(appObjects: AppObjectRepo) {\r\n return new MockGetAssetBlobURLUC(appObjects.getOrCreate(\"MockGetAssetUC\"));\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MockGetAssetFileUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockGetAssetFileUC.ts"],"names":[],"mappings":";;;AAWA,wDAEC;AAZD,0DAAuD;AAEvD,MAAa,kBAAmB,SAAQ,+BAAc;IAGpD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,+BAAc,CAAC,IAAI,CAAC,CAAC;QAHxC,iBAAY,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAIzB,CAAC;CACF;AAND,gDAMC;AAED,SAAgB,sBAAsB,CAAC,UAAyB;IAC9D,OAAO,IAAI,kBAAkB,CAAC,UAAU,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,CAAC;AAC9E,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\nimport { GetAssetFileUC } from \"../UCs/GetAssetFileUC\";\n\nexport class MockGetAssetFileUC extends GetAssetFileUC {\n getAssetFile = jest.fn();\n\n constructor(appObject: AppObject) {\n super(appObject, GetAssetFileUC.type);\n }\n}\n\nexport function makeMockGetAssetFileUC(appObjects: AppObjectRepo) {\n return new MockGetAssetFileUC(appObjects.getOrCreate(\"MockGetAssetFileUC\"));\n}\n"]}
1
+ {"version":3,"file":"MockGetAssetFileUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockGetAssetFileUC.ts"],"names":[],"mappings":";;;AAWA,wDAEC;AAZD,0DAAuD;AAEvD,MAAa,kBAAmB,SAAQ,+BAAc;IAGpD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,+BAAc,CAAC,IAAI,CAAC,CAAC;QAHxC,iBAAY,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAIzB,CAAC;CACF;AAND,gDAMC;AAED,SAAgB,sBAAsB,CAAC,UAAyB;IAC9D,OAAO,IAAI,kBAAkB,CAAC,UAAU,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,CAAC;AAC9E,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\r\nimport { GetAssetFileUC } from \"../UCs/GetAssetFileUC\";\r\n\r\nexport class MockGetAssetFileUC extends GetAssetFileUC {\r\n getAssetFile = jest.fn();\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, GetAssetFileUC.type);\r\n }\r\n}\r\n\r\nexport function makeMockGetAssetFileUC(appObjects: AppObjectRepo) {\r\n return new MockGetAssetFileUC(appObjects.getOrCreate(\"MockGetAssetFileUC\"));\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MockGetAssetUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockGetAssetUC.ts"],"names":[],"mappings":";;;AAWA,gDAEC;AAZD,kDAA+C;AAE/C,MAAa,cAAe,SAAQ,uBAAU;IAG5C,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,uBAAU,CAAC,IAAI,CAAC,CAAC;QAHpC,aAAQ,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAIrB,CAAC;CACF;AAND,wCAMC;AAED,SAAgB,kBAAkB,CAAC,UAAyB;IAC1D,OAAO,IAAI,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC;AACtE,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\nimport { GetAssetUC } from \"../UCs/GetAssetUC\";\n\nexport class MockGetAssetUC extends GetAssetUC {\n getAsset = jest.fn();\n\n constructor(appObject: AppObject) {\n super(appObject, GetAssetUC.type);\n }\n}\n\nexport function makeMockGetAssetUC(appObjects: AppObjectRepo) {\n return new MockGetAssetUC(appObjects.getOrCreate(\"MockGetAssetUC\"));\n}\n"]}
1
+ {"version":3,"file":"MockGetAssetUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockGetAssetUC.ts"],"names":[],"mappings":";;;AAWA,gDAEC;AAZD,kDAA+C;AAE/C,MAAa,cAAe,SAAQ,uBAAU;IAG5C,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,uBAAU,CAAC,IAAI,CAAC,CAAC;QAHpC,aAAQ,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAIrB,CAAC;CACF;AAND,wCAMC;AAED,SAAgB,kBAAkB,CAAC,UAAyB;IAC1D,OAAO,IAAI,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC;AACtE,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\r\nimport { GetAssetUC } from \"../UCs/GetAssetUC\";\r\n\r\nexport class MockGetAssetUC extends GetAssetUC {\r\n getAsset = jest.fn();\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, GetAssetUC.type);\r\n }\r\n}\r\n\r\nexport function makeMockGetAssetUC(appObjects: AppObjectRepo) {\r\n return new MockGetAssetUC(appObjects.getOrCreate(\"MockGetAssetUC\"));\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MockNewAppAsset.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockNewAppAsset.ts"],"names":[],"mappings":";;;AAWA,sDAEC;AAZD,wDAAqD;AAErD,MAAa,iBAAkB,SAAQ,6BAAa;IAGlD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,6BAAa,CAAC,IAAI,CAAC,CAAC;QAHvC,WAAM,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAIhD,CAAC;CACF;AAND,8CAMC;AAED,SAAgB,qBAAqB,CAAC,UAAyB;IAC7D,OAAO,IAAI,iBAAiB,CAAC,UAAU,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAC5E,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\nimport { NewAppAssetUC } from \"../UCs/NewAppAssetUC\";\n\nexport class MockNewAppAssetUC extends NewAppAssetUC {\n create = jest.fn().mockResolvedValue(undefined);\n\n constructor(appObject: AppObject) {\n super(appObject, NewAppAssetUC.type);\n }\n}\n\nexport function makeMockNewAppAssetUC(appObjects: AppObjectRepo) {\n return new MockNewAppAssetUC(appObjects.getOrCreate(\"MockNewAppAssetUC\"));\n}\n"]}
1
+ {"version":3,"file":"MockNewAppAsset.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockNewAppAsset.ts"],"names":[],"mappings":";;;AAWA,sDAEC;AAZD,wDAAqD;AAErD,MAAa,iBAAkB,SAAQ,6BAAa;IAGlD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,6BAAa,CAAC,IAAI,CAAC,CAAC;QAHvC,WAAM,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAIhD,CAAC;CACF;AAND,8CAMC;AAED,SAAgB,qBAAqB,CAAC,UAAyB;IAC7D,OAAO,IAAI,iBAAiB,CAAC,UAAU,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAC5E,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\r\nimport { NewAppAssetUC } from \"../UCs/NewAppAssetUC\";\r\n\r\nexport class MockNewAppAssetUC extends NewAppAssetUC {\r\n create = jest.fn().mockResolvedValue(undefined);\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, NewAppAssetUC.type);\r\n }\r\n}\r\n\r\nexport function makeMockNewAppAssetUC(appObjects: AppObjectRepo) {\r\n return new MockNewAppAssetUC(appObjects.getOrCreate(\"MockNewAppAssetUC\"));\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MockNewAssetUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockNewAssetUC.ts"],"names":[],"mappings":";;;AAWA,gDAEC;AAZD,kDAA+C;AAE/C,MAAa,cAAe,SAAQ,uBAAU;IAG5C,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,uBAAU,CAAC,IAAI,CAAC,CAAC;QAHpC,WAAM,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAInD,CAAC;CACF;AAND,wCAMC;AAED,SAAgB,kBAAkB,CAAC,UAAyB;IAC1D,OAAO,IAAI,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC;AACtE,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\nimport { NewAssetUC } from \"../UCs/NewAssetUC\";\n\nexport class MockNewAssetUC extends NewAssetUC {\n create = jest.fn().mockResolvedValue(\"newAssetID\");\n\n constructor(appObject: AppObject) {\n super(appObject, NewAssetUC.type);\n }\n}\n\nexport function makeMockNewAssetUC(appObjects: AppObjectRepo) {\n return new MockNewAssetUC(appObjects.getOrCreate(\"MockNewAssetUC\"));\n}\n"]}
1
+ {"version":3,"file":"MockNewAssetUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockNewAssetUC.ts"],"names":[],"mappings":";;;AAWA,gDAEC;AAZD,kDAA+C;AAE/C,MAAa,cAAe,SAAQ,uBAAU;IAG5C,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,uBAAU,CAAC,IAAI,CAAC,CAAC;QAHpC,WAAM,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAInD,CAAC;CACF;AAND,wCAMC;AAED,SAAgB,kBAAkB,CAAC,UAAyB;IAC1D,OAAO,IAAI,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC;AACtE,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\r\nimport { NewAssetUC } from \"../UCs/NewAssetUC\";\r\n\r\nexport class MockNewAssetUC extends NewAssetUC {\r\n create = jest.fn().mockResolvedValue(\"newAssetID\");\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, NewAssetUC.type);\r\n }\r\n}\r\n\r\nexport function makeMockNewAssetUC(appObjects: AppObjectRepo) {\r\n return new MockNewAssetUC(appObjects.getOrCreate(\"MockNewAssetUC\"));\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MockPrefetchAssets.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockPrefetchAssets.ts"],"names":[],"mappings":";;;AAWA,4DAIC;AAdD,8DAA2D;AAE3D,MAAa,oBAAqB,SAAQ,mCAAgB;IAGxD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,mCAAgB,CAAC,IAAI,CAAC,CAAC;QAH1C,mBAAc,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAIxD,CAAC;CACF;AAND,oDAMC;AAED,SAAgB,wBAAwB,CAAC,UAAyB;IAChE,OAAO,IAAI,oBAAoB,CAC7B,UAAU,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAC/C,CAAC;AACJ,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\nimport { PrefetchAssetsUC } from \"../UCs/PrefetchAssetsUC\";\n\nexport class MockPrefetchAssetsUC extends PrefetchAssetsUC {\n prefetchAssets = jest.fn().mockResolvedValue(undefined);\n\n constructor(appObject: AppObject) {\n super(appObject, PrefetchAssetsUC.type);\n }\n}\n\nexport function makeMockPrefetchAssetsUC(appObjects: AppObjectRepo) {\n return new MockPrefetchAssetsUC(\n appObjects.getOrCreate(\"MockPrefetchAssetsUC\")\n );\n}\n"]}
1
+ {"version":3,"file":"MockPrefetchAssets.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockPrefetchAssets.ts"],"names":[],"mappings":";;;AAWA,4DAIC;AAdD,8DAA2D;AAE3D,MAAa,oBAAqB,SAAQ,mCAAgB;IAGxD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,mCAAgB,CAAC,IAAI,CAAC,CAAC;QAH1C,mBAAc,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAIxD,CAAC;CACF;AAND,oDAMC;AAED,SAAgB,wBAAwB,CAAC,UAAyB;IAChE,OAAO,IAAI,oBAAoB,CAC7B,UAAU,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAC/C,CAAC;AACJ,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\r\nimport { PrefetchAssetsUC } from \"../UCs/PrefetchAssetsUC\";\r\n\r\nexport class MockPrefetchAssetsUC extends PrefetchAssetsUC {\r\n prefetchAssets = jest.fn().mockResolvedValue(undefined);\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, PrefetchAssetsUC.type);\r\n }\r\n}\r\n\r\nexport function makeMockPrefetchAssetsUC(appObjects: AppObjectRepo) {\r\n return new MockPrefetchAssetsUC(\r\n appObjects.getOrCreate(\"MockPrefetchAssetsUC\")\r\n );\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MockUpdateAppAssetMetaUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockUpdateAppAssetMetaUC.ts"],"names":[],"mappings":";;;AAWA,oEAIC;AAdD,sEAAmE;AAEnE,MAAa,wBAAyB,SAAQ,2CAAoB;IAGhE,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,2CAAoB,CAAC,IAAI,CAAC,CAAC;QAH9C,eAAU,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAIpD,CAAC;CACF;AAND,4DAMC;AAED,SAAgB,4BAA4B,CAAC,UAAyB;IACpE,OAAO,IAAI,wBAAwB,CACjC,UAAU,CAAC,WAAW,CAAC,0BAA0B,CAAC,CACnD,CAAC;AACJ,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\nimport { UpdateAppAssetMetaUC } from \"../UCs/UpdateAppAssetMetaUC\";\n\nexport class MockUpdateAppAssetMetaUC extends UpdateAppAssetMetaUC {\n updateMeta = jest.fn().mockResolvedValue(undefined);\n\n constructor(appObject: AppObject) {\n super(appObject, UpdateAppAssetMetaUC.type);\n }\n}\n\nexport function makeMockUpdateAppAssetMetaUC(appObjects: AppObjectRepo) {\n return new MockUpdateAppAssetMetaUC(\n appObjects.getOrCreate(\"MockUpdateAppAssetMetaUC\")\n );\n}\n"]}
1
+ {"version":3,"file":"MockUpdateAppAssetMetaUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockUpdateAppAssetMetaUC.ts"],"names":[],"mappings":";;;AAWA,oEAIC;AAdD,sEAAmE;AAEnE,MAAa,wBAAyB,SAAQ,2CAAoB;IAGhE,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,2CAAoB,CAAC,IAAI,CAAC,CAAC;QAH9C,eAAU,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAIpD,CAAC;CACF;AAND,4DAMC;AAED,SAAgB,4BAA4B,CAAC,UAAyB;IACpE,OAAO,IAAI,wBAAwB,CACjC,UAAU,CAAC,WAAW,CAAC,0BAA0B,CAAC,CACnD,CAAC;AACJ,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\r\nimport { UpdateAppAssetMetaUC } from \"../UCs/UpdateAppAssetMetaUC\";\r\n\r\nexport class MockUpdateAppAssetMetaUC extends UpdateAppAssetMetaUC {\r\n updateMeta = jest.fn().mockResolvedValue(undefined);\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, UpdateAppAssetMetaUC.type);\r\n }\r\n}\r\n\r\nexport function makeMockUpdateAppAssetMetaUC(appObjects: AppObjectRepo) {\r\n return new MockUpdateAppAssetMetaUC(\r\n appObjects.getOrCreate(\"MockUpdateAppAssetMetaUC\")\r\n );\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MockUpdateAssetFileUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockUpdateAssetFileUC.ts"],"names":[],"mappings":";;;AAWA,8DAIC;AAdD,gEAA6D;AAE7D,MAAa,qBAAsB,SAAQ,qCAAiB;IAG1D,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,qCAAiB,CAAC,IAAI,CAAC,CAAC;QAH3C,eAAU,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;IAIzD,CAAC;CACF;AAND,sDAMC;AAED,SAAgB,yBAAyB,CAAC,UAAyB;IACjE,OAAO,IAAI,qBAAqB,CAC9B,UAAU,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAChD,CAAC;AACJ,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\nimport { UpdateAssetFileUC } from \"../UCs/UpdateAssetFileUC\";\n\nexport class MockUpdateAssetFileUC extends UpdateAssetFileUC {\n updateFile = jest.fn().mockResolvedValue(\"newFile.name\");\n\n constructor(appObject: AppObject) {\n super(appObject, UpdateAssetFileUC.type);\n }\n}\n\nexport function makeMockUpdateAssetFileUC(appObjects: AppObjectRepo) {\n return new MockUpdateAssetFileUC(\n appObjects.getOrCreate(\"MockUpdateAssetFileUC\")\n );\n}\n"]}
1
+ {"version":3,"file":"MockUpdateAssetFileUC.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/MockUpdateAssetFileUC.ts"],"names":[],"mappings":";;;AAWA,8DAIC;AAdD,gEAA6D;AAE7D,MAAa,qBAAsB,SAAQ,qCAAiB;IAG1D,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,qCAAiB,CAAC,IAAI,CAAC,CAAC;QAH3C,eAAU,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;IAIzD,CAAC;CACF;AAND,sDAMC;AAED,SAAgB,yBAAyB,CAAC,UAAyB;IACjE,OAAO,IAAI,qBAAqB,CAC9B,UAAU,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAChD,CAAC;AACJ,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\r\nimport { UpdateAssetFileUC } from \"../UCs/UpdateAssetFileUC\";\r\n\r\nexport class MockUpdateAssetFileUC extends UpdateAssetFileUC {\r\n updateFile = jest.fn().mockResolvedValue(\"newFile.name\");\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, UpdateAssetFileUC.type);\r\n }\r\n}\r\n\r\nexport function makeMockUpdateAssetFileUC(appObjects: AppObjectRepo) {\r\n return new MockUpdateAssetFileUC(\r\n appObjects.getOrCreate(\"MockUpdateAssetFileUC\")\r\n );\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ShowArchivedAppAssetPMMock.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/ShowArchivedAppAssetPMMock.ts"],"names":[],"mappings":";;;AAWA,wEAIC;AAdD,0EAAuE;AAEvE,MAAa,0BAA2B,SAAQ,+CAAsB;IAGpE,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,+CAAsB,CAAC,IAAI,CAAC,CAAC;QAHhD,gBAAW,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAIxB,CAAC;CACF;AAND,gEAMC;AAED,SAAgB,8BAA8B,CAAC,UAAyB;IACtE,OAAO,IAAI,0BAA0B,CACnC,UAAU,CAAC,WAAW,CAAC,4BAA4B,CAAC,CACrD,CAAC;AACJ,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\nimport { ShowArchivedAppAssetPM } from \"../PMs/ShowArchivedAppAssetPM\";\n\nexport class ShowArchivedAppAssetPMMock extends ShowArchivedAppAssetPM {\n vmsAreEqual = jest.fn();\n\n constructor(appObject: AppObject) {\n super(appObject, ShowArchivedAppAssetPM.type);\n }\n}\n\nexport function makeShowArchivedAppAssetPMMock(appObjects: AppObjectRepo) {\n return new ShowArchivedAppAssetPMMock(\n appObjects.getOrCreate(\"ShowArchivedAppAssetPMMock\")\n );\n}\n"]}
1
+ {"version":3,"file":"ShowArchivedAppAssetPMMock.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/ShowArchivedAppAssetPMMock.ts"],"names":[],"mappings":";;;AAWA,wEAIC;AAdD,0EAAuE;AAEvE,MAAa,0BAA2B,SAAQ,+CAAsB;IAGpE,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,+CAAsB,CAAC,IAAI,CAAC,CAAC;QAHhD,gBAAW,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAIxB,CAAC;CACF;AAND,gEAMC;AAED,SAAgB,8BAA8B,CAAC,UAAyB;IACtE,OAAO,IAAI,0BAA0B,CACnC,UAAU,CAAC,WAAW,CAAC,4BAA4B,CAAC,CACrD,CAAC;AACJ,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\r\nimport { ShowArchivedAppAssetPM } from \"../PMs/ShowArchivedAppAssetPM\";\r\n\r\nexport class ShowArchivedAppAssetPMMock extends ShowArchivedAppAssetPM {\r\n vmsAreEqual = jest.fn();\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, ShowArchivedAppAssetPM.type);\r\n }\r\n}\r\n\r\nexport function makeShowArchivedAppAssetPMMock(appObjects: AppObjectRepo) {\r\n return new ShowArchivedAppAssetPMMock(\r\n appObjects.getOrCreate(\"ShowArchivedAppAssetPMMock\")\r\n );\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,gDAA8B;AAC9B,oDAAkC;AAClC,0DAAwC;AACxC,qDAAmC;AACnC,sDAAoC;AACpC,4DAA0C;AAC1C,uDAAqC;AACrC,uDAAqC;AACrC,0DAAwC;AACxC,uDAAqC;AACrC,mDAAiC;AACjC,oDAAkC;AAClC,mDAAiC;AACjC,uDAAqC;AACrC,0DAAwC;AACxC,6DAA2C;AAC3C,+DAA6C","sourcesContent":["export * from \"./AppAssetListPMMock\";\nexport * from \"./AssetPMMock\";\nexport * from \"./AssetFilePMMock\";\nexport * from \"./EditingAppAssetPMMock\";\nexport * from \"./MockArchiveAsset\";\nexport * from \"./MockDeleteAssetUC\";\nexport * from \"./MockDownloadAssetFileUC\";\nexport * from \"./MockEditAppAssetUC\";\nexport * from \"./MockGetAppAssetsUC\";\nexport * from \"./MockGetAssetBlobURLUC\";\nexport * from \"./MockGetAssetFileUC\";\nexport * from \"./MockGetAssetUC\";\nexport * from \"./MockNewAppAsset\";\nexport * from \"./MockNewAssetUC\";\nexport * from \"./MockPrefetchAssets\";\nexport * from \"./MockUpdateAssetFileUC\";\nexport * from \"./MockUpdateAppAssetMetaUC\";\nexport * from \"./ShowArchivedAppAssetPMMock\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Assets/Mocks/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,gDAA8B;AAC9B,oDAAkC;AAClC,0DAAwC;AACxC,qDAAmC;AACnC,sDAAoC;AACpC,4DAA0C;AAC1C,uDAAqC;AACrC,uDAAqC;AACrC,0DAAwC;AACxC,uDAAqC;AACrC,mDAAiC;AACjC,oDAAkC;AAClC,mDAAiC;AACjC,uDAAqC;AACrC,0DAAwC;AACxC,6DAA2C;AAC3C,+DAA6C","sourcesContent":["export * from \"./AppAssetListPMMock\";\r\nexport * from \"./AssetPMMock\";\r\nexport * from \"./AssetFilePMMock\";\r\nexport * from \"./EditingAppAssetPMMock\";\r\nexport * from \"./MockArchiveAsset\";\r\nexport * from \"./MockDeleteAssetUC\";\r\nexport * from \"./MockDownloadAssetFileUC\";\r\nexport * from \"./MockEditAppAssetUC\";\r\nexport * from \"./MockGetAppAssetsUC\";\r\nexport * from \"./MockGetAssetBlobURLUC\";\r\nexport * from \"./MockGetAssetFileUC\";\r\nexport * from \"./MockGetAssetUC\";\r\nexport * from \"./MockNewAppAsset\";\r\nexport * from \"./MockNewAssetUC\";\r\nexport * from \"./MockPrefetchAssets\";\r\nexport * from \"./MockUpdateAssetFileUC\";\r\nexport * from \"./MockUpdateAppAssetMetaUC\";\r\nexport * from \"./ShowArchivedAppAssetPMMock\";\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AppAssetListPM.js","sourceRoot":"","sources":["../../../../src/Assets/PMs/AppAssetListPM.ts"],"names":[],"mappings":";;;AAiBA,gDAEC;AAnBD,sCAKqB;AACrB,iEAA8D;AAC9D,qDAAkD;AAElD,MAAsB,cAAe,SAAQ,kBAAqB;IAGhE,MAAM,CAAC,GAAG,CAAC,UAAyB;QAClC,OAAO,IAAA,4BAAqB,EAAC,cAAc,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAChE,CAAC;;AALH,wCAMC;AALQ,mBAAI,GAAG,gBAAgB,CAAC;AAOjC,SAAgB,kBAAkB,CAAC,SAAoB;IACrD,OAAO,IAAI,iBAAiB,CAAC,SAAS,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,iBAAkB,SAAQ,cAAc;IAG5C,IAAY,SAAS;QACnB,OAAO,IAAI,CAAC,kBAAkB,CAAY,qBAAS,CAAC,IAAI,CAAC,CAAC;IAC5D,CAAC;IAED,WAAW,CAAC,CAAW,EAAE,CAAW;QAClC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAExC,IAAI,aAAa,GAAG,IAAI,CAAC;QACzB,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;YACnB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACjB,IAAI,GAAG,KAAK,GAAG,EAAE,CAAC;gBAChB,aAAa,GAAG,KAAK,CAAC;YACxB,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,aAAa,CAAC;IACvB,CAAC;IAuBD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC;QAtBhC,sBAAiB,GAAG,GAAG,EAAE;YAC/B,IAAI,CAAC,IAAI,CAAC,SAAS;gBAAE,OAAO;YAC5B,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;YAE7C,IAAI,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;gBAChC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;gBAChC,OAAO;YACT,CAAC;YAED,MAAM,iBAAiB,GAAa,EAAE,CAAC;YAEvC,YAAY,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC3C,IAAI,KAAK,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;oBACtC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAClC,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;QACvC,CAAC,CAAC;QAKA,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,YAAY,CACrC,iCAAe,CAAC,IAAI,CACrB,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,KAAK,CACR,+DAA+D,CAChE,CAAC;YACF,OAAO;QACT,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAEzD,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAExC,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;CACF","sourcesContent":["import {\n getSingletonComponent,\n AppObject,\n AppObjectPM,\n AppObjectRepo\n} from \"@vived/core\";\nimport { AppAssetsEntity } from \"../Entities/AppAssetsEntity\";\nimport { AssetRepo } from \"../Entities/AssetRepo\";\n\nexport abstract class AppAssetListPM extends AppObjectPM<string[]> {\n static type = \"AppAssetListPM\";\n\n static get(appObjects: AppObjectRepo): AppAssetListPM | undefined {\n return getSingletonComponent(AppAssetListPM.type, appObjects);\n }\n}\n\nexport function makeAppAssetListPM(appObject: AppObject): AppAssetListPM {\n return new AppAssetListPMImp(appObject);\n}\n\nclass AppAssetListPMImp extends AppAssetListPM {\n private appAssets?: AppAssetsEntity;\n\n private get assetRepo() {\n return this.getCachedSingleton<AssetRepo>(AssetRepo.type);\n }\n\n vmsAreEqual(a: string[], b: string[]): boolean {\n if (a.length !== b.length) return false;\n\n let listsAreEqual = true;\n a.forEach((aID, i) => {\n const bID = b[i];\n if (bID !== aID) {\n listsAreEqual = false;\n }\n });\n\n return listsAreEqual;\n }\n\n private onAppAssetsChange = () => {\n if (!this.appAssets) return;\n const allAppAssets = this.appAssets.getAll();\n\n if (this.appAssets.showArchived) {\n this.doUpdateView(allAppAssets);\n return;\n }\n\n const nonArchivedAssets: string[] = [];\n\n allAppAssets.forEach((assetID) => {\n const asset = this.assetRepo?.get(assetID);\n if (asset && asset.archived === false) {\n nonArchivedAssets.push(assetID);\n }\n });\n\n this.doUpdateView(nonArchivedAssets);\n };\n\n constructor(appObject: AppObject) {\n super(appObject, AppAssetListPM.type);\n\n this.appAssets = appObject.getComponent<AppAssetsEntity>(\n AppAssetsEntity.type\n );\n if (!this.appAssets) {\n this.error(\n \"PM has been added to an app object without an AppAssetsEntity\"\n );\n return;\n }\n\n this.appAssets.addChangeObserver(this.onAppAssetsChange);\n\n this.appObjects.registerSingleton(this);\n\n this.onAppAssetsChange();\n }\n}\n"]}
1
+ {"version":3,"file":"AppAssetListPM.js","sourceRoot":"","sources":["../../../../src/Assets/PMs/AppAssetListPM.ts"],"names":[],"mappings":";;;AAiBA,gDAEC;AAnBD,sCAKqB;AACrB,iEAA8D;AAC9D,qDAAkD;AAElD,MAAsB,cAAe,SAAQ,kBAAqB;IAGhE,MAAM,CAAC,GAAG,CAAC,UAAyB;QAClC,OAAO,IAAA,4BAAqB,EAAC,cAAc,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAChE,CAAC;;AALH,wCAMC;AALQ,mBAAI,GAAG,gBAAgB,CAAC;AAOjC,SAAgB,kBAAkB,CAAC,SAAoB;IACrD,OAAO,IAAI,iBAAiB,CAAC,SAAS,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,iBAAkB,SAAQ,cAAc;IAG5C,IAAY,SAAS;QACnB,OAAO,IAAI,CAAC,kBAAkB,CAAY,qBAAS,CAAC,IAAI,CAAC,CAAC;IAC5D,CAAC;IAED,WAAW,CAAC,CAAW,EAAE,CAAW;QAClC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAExC,IAAI,aAAa,GAAG,IAAI,CAAC;QACzB,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;YACnB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACjB,IAAI,GAAG,KAAK,GAAG,EAAE,CAAC;gBAChB,aAAa,GAAG,KAAK,CAAC;YACxB,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,aAAa,CAAC;IACvB,CAAC;IAuBD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC;QAtBhC,sBAAiB,GAAG,GAAG,EAAE;YAC/B,IAAI,CAAC,IAAI,CAAC,SAAS;gBAAE,OAAO;YAC5B,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;YAE7C,IAAI,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;gBAChC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;gBAChC,OAAO;YACT,CAAC;YAED,MAAM,iBAAiB,GAAa,EAAE,CAAC;YAEvC,YAAY,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC3C,IAAI,KAAK,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;oBACtC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAClC,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;QACvC,CAAC,CAAC;QAKA,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,YAAY,CACrC,iCAAe,CAAC,IAAI,CACrB,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,KAAK,CACR,+DAA+D,CAChE,CAAC;YACF,OAAO;QACT,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAEzD,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAExC,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;CACF","sourcesContent":["import {\r\n getSingletonComponent,\r\n AppObject,\r\n AppObjectPM,\r\n AppObjectRepo\r\n} from \"@vived/core\";\r\nimport { AppAssetsEntity } from \"../Entities/AppAssetsEntity\";\r\nimport { AssetRepo } from \"../Entities/AssetRepo\";\r\n\r\nexport abstract class AppAssetListPM extends AppObjectPM<string[]> {\r\n static type = \"AppAssetListPM\";\r\n\r\n static get(appObjects: AppObjectRepo): AppAssetListPM | undefined {\r\n return getSingletonComponent(AppAssetListPM.type, appObjects);\r\n }\r\n}\r\n\r\nexport function makeAppAssetListPM(appObject: AppObject): AppAssetListPM {\r\n return new AppAssetListPMImp(appObject);\r\n}\r\n\r\nclass AppAssetListPMImp extends AppAssetListPM {\r\n private appAssets?: AppAssetsEntity;\r\n\r\n private get assetRepo() {\r\n return this.getCachedSingleton<AssetRepo>(AssetRepo.type);\r\n }\r\n\r\n vmsAreEqual(a: string[], b: string[]): boolean {\r\n if (a.length !== b.length) return false;\r\n\r\n let listsAreEqual = true;\r\n a.forEach((aID, i) => {\r\n const bID = b[i];\r\n if (bID !== aID) {\r\n listsAreEqual = false;\r\n }\r\n });\r\n\r\n return listsAreEqual;\r\n }\r\n\r\n private onAppAssetsChange = () => {\r\n if (!this.appAssets) return;\r\n const allAppAssets = this.appAssets.getAll();\r\n\r\n if (this.appAssets.showArchived) {\r\n this.doUpdateView(allAppAssets);\r\n return;\r\n }\r\n\r\n const nonArchivedAssets: string[] = [];\r\n\r\n allAppAssets.forEach((assetID) => {\r\n const asset = this.assetRepo?.get(assetID);\r\n if (asset && asset.archived === false) {\r\n nonArchivedAssets.push(assetID);\r\n }\r\n });\r\n\r\n this.doUpdateView(nonArchivedAssets);\r\n };\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, AppAssetListPM.type);\r\n\r\n this.appAssets = appObject.getComponent<AppAssetsEntity>(\r\n AppAssetsEntity.type\r\n );\r\n if (!this.appAssets) {\r\n this.error(\r\n \"PM has been added to an app object without an AppAssetsEntity\"\r\n );\r\n return;\r\n }\r\n\r\n this.appAssets.addChangeObserver(this.onAppAssetsChange);\r\n\r\n this.appObjects.registerSingleton(this);\r\n\r\n this.onAppAssetsChange();\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AssetFilePM.js","sourceRoot":"","sources":["../../../../src/Assets/PMs/AssetFilePM.ts"],"names":[],"mappings":"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","sourcesContent":["// filepath: c:\\Users\\amosp\\Documents\\WebGL\\vivedlearning_host\\src\\Assets\\PMs\\AssetFilePM.ts\nimport { AppObject, AppObjectPM, AppObjectRepo } from \"@vived/core\";\nimport { AssetEntity } from \"../Entities/AssetEntity\";\n\n/**\n * View Model for Asset file information\n * Represents the data needed by the view to display asset file status\n */\nexport interface AssetFileVM {\n /** URL to the asset's file blob for direct access */\n blobURL: string | undefined;\n /** Whether the asset file is currently being fetched */\n isFetchingFile: boolean;\n /** Whether the asset file has been successfully fetched */\n fileHasBeenFetched: boolean;\n /** Error that occurred during file fetching, if any */\n fetchError: Error | undefined;\n}\n\n/**\n * Default empty AssetFileVM for initialization\n */\nexport const defaultAssetFileVM: AssetFileVM = {\n blobURL: undefined,\n isFetchingFile: false,\n fileHasBeenFetched: false,\n fetchError: undefined\n};\n\n/**\n * Presentation Manager for Asset file status\n *\n * The AssetFilePM is responsible for:\n * - Converting the file-related properties of AssetEntity into a view-friendly format (AssetFileVM)\n * - Notifying the view when asset file status changes\n * - Providing comparison utilities for view models\n *\n * Usage:\n * 1. Retrieve an instance with `AssetFilePM.getByID(assetId, appObjects)`\n * 2. Subscribe to view updates with `pm.addView(callback)`\n * 3. Access current view data with `pm.lastVM`\n */\nexport abstract class AssetFilePM extends AppObjectPM<AssetFileVM> {\n static type = \"AssetFilePM\";\n\n /**\n * Retrieves an AssetFilePM instance for a specific asset by ID\n *\n * @param assetID - The unique identifier of the asset\n * @param appObjects - The repository of app objects\n * @returns The AssetFilePM instance or undefined if not found\n */\n static getByID(\n assetID: string,\n appObjects: AppObjectRepo\n ): AssetFilePM | undefined {\n const appObject = appObjects.get(assetID);\n if (!appObject) {\n appObjects.submitWarning(\n \"AssetFilePM.getByID\",\n \"Unable to find app object by ID \" + assetID\n );\n return;\n }\n\n const pm = appObject.getComponent<AssetFilePM>(AssetFilePM.type);\n if (!pm) {\n appObjects.submitWarning(\n \"AssetFilePM.getByID\",\n \"App Object does not have a AssetFilePM\"\n );\n return;\n }\n return pm;\n }\n}\n\n/**\n * Creates a new AssetFilePM instance\n *\n * @param appObject - The app object to associate with this PM\n * @returns A new AssetFilePM instance\n */\nexport function makeAssetFilePM(appObject: AppObject): AssetFilePM {\n return new AssetFilePMImp(appObject);\n}\n\n/**\n * Implementation of the AssetFilePM abstract class\n * Handles the connection between AssetEntity file properties and view\n */\nclass AssetFilePMImp extends AssetFilePM {\n private get asset() {\n return this.getCachedLocalComponent<AssetEntity>(AssetEntity.type);\n }\n\n /**\n * Compares two AssetFileVM instances for equality\n * Used to determine if the view needs to update\n *\n * @param a - First AssetFileVM to compare\n * @param b - Second AssetFileVM to compare\n * @returns True if view models are equal, false otherwise\n */\n vmsAreEqual(a: AssetFileVM, b: AssetFileVM): boolean {\n if (a.blobURL !== b.blobURL) return false;\n if (a.isFetchingFile !== b.isFetchingFile) return false;\n if (a.fileHasBeenFetched !== b.fileHasBeenFetched) return false;\n\n // Handle errors comparison (both undefined, or same message)\n if (a.fetchError !== b.fetchError) {\n if (a.fetchError === undefined && b.fetchError !== undefined)\n return false;\n if (a.fetchError !== undefined && b.fetchError === undefined)\n return false;\n if (\n a.fetchError !== undefined &&\n b.fetchError !== undefined &&\n a.fetchError.message !== b.fetchError.message\n )\n return false;\n }\n\n return true;\n }\n\n /**\n * Observer callback that updates the view model when the entity changes\n * Transforms entity data into view model format\n */\n formVM = (): void => {\n if (!this.asset) return;\n\n const vm: AssetFileVM = {\n blobURL: this.asset.blobURL,\n isFetchingFile: this.asset.isFetchingFile,\n fileHasBeenFetched: this.asset.fileHasBeenFetched,\n fetchError: this.asset.fetchError\n };\n\n this.doUpdateView(vm);\n };\n\n /**\n * Creates a new AssetFilePMImp instance\n *\n * @param appObject - The app object to associate with this PM\n */\n constructor(appObject: AppObject) {\n super(appObject, AssetFilePM.type);\n\n if (this.asset) {\n this.observeEntity(this.asset);\n }\n }\n}\n"]}
1
+ {"version":3,"file":"AssetFilePM.js","sourceRoot":"","sources":["../../../../src/Assets/PMs/AssetFilePM.ts"],"names":[],"mappings":"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","sourcesContent":["// filepath: c:\\Users\\amosp\\Documents\\WebGL\\vivedlearning_host\\src\\Assets\\PMs\\AssetFilePM.ts\r\nimport { AppObject, AppObjectPM, AppObjectRepo } from \"@vived/core\";\r\nimport { AssetEntity } from \"../Entities/AssetEntity\";\r\n\r\n/**\r\n * View Model for Asset file information\r\n * Represents the data needed by the view to display asset file status\r\n */\r\nexport interface AssetFileVM {\r\n /** URL to the asset's file blob for direct access */\r\n blobURL: string | undefined;\r\n /** Whether the asset file is currently being fetched */\r\n isFetchingFile: boolean;\r\n /** Whether the asset file has been successfully fetched */\r\n fileHasBeenFetched: boolean;\r\n /** Error that occurred during file fetching, if any */\r\n fetchError: Error | undefined;\r\n}\r\n\r\n/**\r\n * Default empty AssetFileVM for initialization\r\n */\r\nexport const defaultAssetFileVM: AssetFileVM = {\r\n blobURL: undefined,\r\n isFetchingFile: false,\r\n fileHasBeenFetched: false,\r\n fetchError: undefined\r\n};\r\n\r\n/**\r\n * Presentation Manager for Asset file status\r\n *\r\n * The AssetFilePM is responsible for:\r\n * - Converting the file-related properties of AssetEntity into a view-friendly format (AssetFileVM)\r\n * - Notifying the view when asset file status changes\r\n * - Providing comparison utilities for view models\r\n *\r\n * Usage:\r\n * 1. Retrieve an instance with `AssetFilePM.getByID(assetId, appObjects)`\r\n * 2. Subscribe to view updates with `pm.addView(callback)`\r\n * 3. Access current view data with `pm.lastVM`\r\n */\r\nexport abstract class AssetFilePM extends AppObjectPM<AssetFileVM> {\r\n static type = \"AssetFilePM\";\r\n\r\n /**\r\n * Retrieves an AssetFilePM instance for a specific asset by ID\r\n *\r\n * @param assetID - The unique identifier of the asset\r\n * @param appObjects - The repository of app objects\r\n * @returns The AssetFilePM instance or undefined if not found\r\n */\r\n static getByID(\r\n assetID: string,\r\n appObjects: AppObjectRepo\r\n ): AssetFilePM | undefined {\r\n const appObject = appObjects.get(assetID);\r\n if (!appObject) {\r\n appObjects.submitWarning(\r\n \"AssetFilePM.getByID\",\r\n \"Unable to find app object by ID \" + assetID\r\n );\r\n return;\r\n }\r\n\r\n const pm = appObject.getComponent<AssetFilePM>(AssetFilePM.type);\r\n if (!pm) {\r\n appObjects.submitWarning(\r\n \"AssetFilePM.getByID\",\r\n \"App Object does not have a AssetFilePM\"\r\n );\r\n return;\r\n }\r\n return pm;\r\n }\r\n}\r\n\r\n/**\r\n * Creates a new AssetFilePM instance\r\n *\r\n * @param appObject - The app object to associate with this PM\r\n * @returns A new AssetFilePM instance\r\n */\r\nexport function makeAssetFilePM(appObject: AppObject): AssetFilePM {\r\n return new AssetFilePMImp(appObject);\r\n}\r\n\r\n/**\r\n * Implementation of the AssetFilePM abstract class\r\n * Handles the connection between AssetEntity file properties and view\r\n */\r\nclass AssetFilePMImp extends AssetFilePM {\r\n private get asset() {\r\n return this.getCachedLocalComponent<AssetEntity>(AssetEntity.type);\r\n }\r\n\r\n /**\r\n * Compares two AssetFileVM instances for equality\r\n * Used to determine if the view needs to update\r\n *\r\n * @param a - First AssetFileVM to compare\r\n * @param b - Second AssetFileVM to compare\r\n * @returns True if view models are equal, false otherwise\r\n */\r\n vmsAreEqual(a: AssetFileVM, b: AssetFileVM): boolean {\r\n if (a.blobURL !== b.blobURL) return false;\r\n if (a.isFetchingFile !== b.isFetchingFile) return false;\r\n if (a.fileHasBeenFetched !== b.fileHasBeenFetched) return false;\r\n\r\n // Handle errors comparison (both undefined, or same message)\r\n if (a.fetchError !== b.fetchError) {\r\n if (a.fetchError === undefined && b.fetchError !== undefined)\r\n return false;\r\n if (a.fetchError !== undefined && b.fetchError === undefined)\r\n return false;\r\n if (\r\n a.fetchError !== undefined &&\r\n b.fetchError !== undefined &&\r\n a.fetchError.message !== b.fetchError.message\r\n )\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n /**\r\n * Observer callback that updates the view model when the entity changes\r\n * Transforms entity data into view model format\r\n */\r\n formVM = (): void => {\r\n if (!this.asset) return;\r\n\r\n const vm: AssetFileVM = {\r\n blobURL: this.asset.blobURL,\r\n isFetchingFile: this.asset.isFetchingFile,\r\n fileHasBeenFetched: this.asset.fileHasBeenFetched,\r\n fetchError: this.asset.fetchError\r\n };\r\n\r\n this.doUpdateView(vm);\r\n };\r\n\r\n /**\r\n * Creates a new AssetFilePMImp instance\r\n *\r\n * @param appObject - The app object to associate with this PM\r\n */\r\n constructor(appObject: AppObject) {\r\n super(appObject, AssetFilePM.type);\r\n\r\n if (this.asset) {\r\n this.observeEntity(this.asset);\r\n }\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AssetPM.js","sourceRoot":"","sources":["../../../../src/Assets/PMs/AssetPM.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;AAoEH,kCAEC;AApED,sCAAoE;AACpE,yDAAsD;AAiBtD;;;;;GAKG;AACH,MAAsB,OAAQ,SAAQ,kBAAoB;IAIxD;;;;;;OAMG;IACH,MAAM,CAAC,OAAO,CACZ,OAAe,EACf,UAAyB;QAEzB,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,UAAU,CAAC,aAAa,CACtB,iBAAiB,EACjB,kCAAkC,GAAG,OAAO,CAC7C,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,EAAE,GAAG,SAAS,CAAC,YAAY,CAAU,OAAO,CAAC,IAAI,CAAC,CAAC;QACzD,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,UAAU,CAAC,aAAa,CACtB,iBAAiB,EACjB,oCAAoC,CACrC,CAAC;YACF,OAAO;QACT,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;;AAjCH,0BAkCC;AAjCC,wDAAwD;AACjD,YAAI,GAAG,SAAS,CAAC;AAkC1B;;;;;GAKG;AACH,SAAgB,WAAW,CAAC,SAAoB;IAC9C,OAAO,IAAI,UAAU,CAAC,SAAS,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAW,SAAQ,OAAO;IAI9B;;;;;;OAMG;IACH,WAAW,CAAC,CAAU,EAAE,CAAU;QAChC,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QAC5C,IAAI,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,WAAW;YAAE,OAAO,KAAK,CAAC;QAClD,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QACpC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE;YAAE,OAAO,KAAK,CAAC;QAEhC,OAAO,IAAI,CAAC;IACd,CAAC;IAeD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAdzB,kBAAa,GAAG,GAAG,EAAE;YAC3B,IAAI,CAAC,IAAI,CAAC,KAAK;gBAAE,OAAO;YAExB,MAAM,EAAE,GAAY;gBAClB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;gBAC7B,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW;gBACnC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;gBACjB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;aACtB,CAAC;YAEF,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACxB,CAAC,CAAC;QAKA,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,YAAY,CAAc,yBAAW,CAAC,IAAI,CAAC,CAAC;QACnE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;YACvE,OAAO;QACT,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACjD,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;CACF;AAEY,QAAA,cAAc,GAAY;IACrC,QAAQ,EAAE,KAAK;IACf,WAAW,EAAE,EAAE;IACf,EAAE,EAAE,EAAE;IACN,IAAI,EAAE,EAAE;CACT,CAAC","sourcesContent":["/**\n * AssetPM.ts\n *\n * This presentation manager handles the view model generation and change tracking\n * for individual asset entities, providing a clean interface between asset data\n * and UI components.\n *\n * Key Concepts:\n * - Transforms asset entity data into view models for UI consumption\n * - Tracks entity changes and triggers UI updates when needed\n * - Provides efficient comparison methods for view model equality\n * - Manages asset entity lifecycle and observer patterns\n * - Follows the PM pattern for separation of concerns between domain and presentation\n *\n * Usage Patterns:\n * - Created per-asset during factory setup\n * - Accessed through static getByID() method with asset ID\n * - Automatically updates UI components when underlying asset data changes\n * - Used by adapters to connect asset data to React components and other UI frameworks\n */\n\nimport { AppObject, AppObjectPM, AppObjectRepo } from \"@vived/core\";\nimport { AssetEntity } from \"../Entities/AssetEntity\";\n\n/**\n * View model interface representing asset data optimized for UI display.\n * Contains essential asset information formatted for presentation components.\n */\nexport interface AssetVM {\n /** Unique identifier of the asset */\n id: string;\n /** Display name of the asset */\n name: string;\n /** Description of the asset's purpose or content */\n description: string;\n /** Whether the asset is archived (hidden from normal views) */\n archived: boolean;\n}\n\n/**\n * AssetPM manages presentation logic for individual asset entities.\n *\n * This presentation manager bridges the gap between asset domain entities\n * and UI components by providing optimized view models and change tracking.\n */\nexport abstract class AssetPM extends AppObjectPM<AssetVM> {\n /** Static type identifier for component registration */\n static type = \"AssetPM\";\n\n /**\n * Retrieves an AssetPM component for a specific asset.\n *\n * @param assetID - The unique identifier of the asset\n * @param appObjects - Repository for accessing app objects and components\n * @returns AssetPM instance or undefined if not found\n */\n static getByID(\n assetID: string,\n appObjects: AppObjectRepo\n ): AssetPM | undefined {\n const appObject = appObjects.get(assetID);\n if (!appObject) {\n appObjects.submitWarning(\n \"AssetPM.getByID\",\n \"Unable to find app object by ID \" + assetID\n );\n return;\n }\n\n const pm = appObject.getComponent<AssetPM>(AssetPM.type);\n if (!pm) {\n appObjects.submitWarning(\n \"AssetPM.getByID\",\n \"App Object does not have a AssetPM\"\n );\n return;\n }\n return pm;\n }\n}\n\n/**\n * Factory function to create a new AssetPM instance.\n *\n * @param appObject - The AppObject that will host this PM (should contain an AssetEntity)\n * @returns A new AssetPM implementation instance\n */\nexport function makeAssetPM(appObject: AppObject): AssetPM {\n return new AssetPMImp(appObject);\n}\n\n/**\n * Private implementation of AssetPM with entity integration and change tracking.\n *\n * Key Implementation Details:\n * - Observes AssetEntity changes and generates view models accordingly\n * - Implements efficient view model comparison for performance optimization\n * - Handles entity lifecycle management and cleanup\n * - Provides error handling for missing entity dependencies\n */\nclass AssetPMImp extends AssetPM {\n /** The asset entity this PM observes and presents */\n private asset?: AssetEntity;\n\n /**\n * Compares two asset view models for equality to optimize UI updates.\n *\n * @param a - First asset view model to compare\n * @param b - Second asset view model to compare\n * @returns true if view models are equal, false otherwise\n */\n vmsAreEqual(a: AssetVM, b: AssetVM): boolean {\n if (a.archived !== b.archived) return false;\n if (a.description !== b.description) return false;\n if (a.name !== b.name) return false;\n if (a.id !== b.id) return false;\n\n return true;\n }\n\n private onAssetChange = () => {\n if (!this.asset) return;\n\n const vm: AssetVM = {\n archived: this.asset.archived,\n description: this.asset.description,\n id: this.asset.id,\n name: this.asset.name\n };\n\n this.doUpdateView(vm);\n };\n\n constructor(appObject: AppObject) {\n super(appObject, AssetPM.type);\n\n this.asset = appObject.getComponent<AssetEntity>(AssetEntity.type);\n if (!this.asset) {\n this.warn(\"PM has been added to an App Object without an AssetEntity\");\n return;\n }\n\n this.asset.addChangeObserver(this.onAssetChange);\n this.onAssetChange();\n }\n}\n\nexport const defaultAssetVM: AssetVM = {\n archived: false,\n description: \"\",\n id: \"\",\n name: \"\"\n};\n"]}
1
+ {"version":3,"file":"AssetPM.js","sourceRoot":"","sources":["../../../../src/Assets/PMs/AssetPM.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;AAoEH,kCAEC;AApED,sCAAoE;AACpE,yDAAsD;AAiBtD;;;;;GAKG;AACH,MAAsB,OAAQ,SAAQ,kBAAoB;IAIxD;;;;;;OAMG;IACH,MAAM,CAAC,OAAO,CACZ,OAAe,EACf,UAAyB;QAEzB,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,UAAU,CAAC,aAAa,CACtB,iBAAiB,EACjB,kCAAkC,GAAG,OAAO,CAC7C,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,EAAE,GAAG,SAAS,CAAC,YAAY,CAAU,OAAO,CAAC,IAAI,CAAC,CAAC;QACzD,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,UAAU,CAAC,aAAa,CACtB,iBAAiB,EACjB,oCAAoC,CACrC,CAAC;YACF,OAAO;QACT,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;;AAjCH,0BAkCC;AAjCC,wDAAwD;AACjD,YAAI,GAAG,SAAS,CAAC;AAkC1B;;;;;GAKG;AACH,SAAgB,WAAW,CAAC,SAAoB;IAC9C,OAAO,IAAI,UAAU,CAAC,SAAS,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAW,SAAQ,OAAO;IAI9B;;;;;;OAMG;IACH,WAAW,CAAC,CAAU,EAAE,CAAU;QAChC,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QAC5C,IAAI,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,WAAW;YAAE,OAAO,KAAK,CAAC;QAClD,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QACpC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE;YAAE,OAAO,KAAK,CAAC;QAEhC,OAAO,IAAI,CAAC;IACd,CAAC;IAeD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAdzB,kBAAa,GAAG,GAAG,EAAE;YAC3B,IAAI,CAAC,IAAI,CAAC,KAAK;gBAAE,OAAO;YAExB,MAAM,EAAE,GAAY;gBAClB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;gBAC7B,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW;gBACnC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;gBACjB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;aACtB,CAAC;YAEF,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACxB,CAAC,CAAC;QAKA,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,YAAY,CAAc,yBAAW,CAAC,IAAI,CAAC,CAAC;QACnE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;YACvE,OAAO;QACT,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACjD,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;CACF;AAEY,QAAA,cAAc,GAAY;IACrC,QAAQ,EAAE,KAAK;IACf,WAAW,EAAE,EAAE;IACf,EAAE,EAAE,EAAE;IACN,IAAI,EAAE,EAAE;CACT,CAAC","sourcesContent":["/**\r\n * AssetPM.ts\r\n *\r\n * This presentation manager handles the view model generation and change tracking\r\n * for individual asset entities, providing a clean interface between asset data\r\n * and UI components.\r\n *\r\n * Key Concepts:\r\n * - Transforms asset entity data into view models for UI consumption\r\n * - Tracks entity changes and triggers UI updates when needed\r\n * - Provides efficient comparison methods for view model equality\r\n * - Manages asset entity lifecycle and observer patterns\r\n * - Follows the PM pattern for separation of concerns between domain and presentation\r\n *\r\n * Usage Patterns:\r\n * - Created per-asset during factory setup\r\n * - Accessed through static getByID() method with asset ID\r\n * - Automatically updates UI components when underlying asset data changes\r\n * - Used by adapters to connect asset data to React components and other UI frameworks\r\n */\r\n\r\nimport { AppObject, AppObjectPM, AppObjectRepo } from \"@vived/core\";\r\nimport { AssetEntity } from \"../Entities/AssetEntity\";\r\n\r\n/**\r\n * View model interface representing asset data optimized for UI display.\r\n * Contains essential asset information formatted for presentation components.\r\n */\r\nexport interface AssetVM {\r\n /** Unique identifier of the asset */\r\n id: string;\r\n /** Display name of the asset */\r\n name: string;\r\n /** Description of the asset's purpose or content */\r\n description: string;\r\n /** Whether the asset is archived (hidden from normal views) */\r\n archived: boolean;\r\n}\r\n\r\n/**\r\n * AssetPM manages presentation logic for individual asset entities.\r\n *\r\n * This presentation manager bridges the gap between asset domain entities\r\n * and UI components by providing optimized view models and change tracking.\r\n */\r\nexport abstract class AssetPM extends AppObjectPM<AssetVM> {\r\n /** Static type identifier for component registration */\r\n static type = \"AssetPM\";\r\n\r\n /**\r\n * Retrieves an AssetPM component for a specific asset.\r\n *\r\n * @param assetID - The unique identifier of the asset\r\n * @param appObjects - Repository for accessing app objects and components\r\n * @returns AssetPM instance or undefined if not found\r\n */\r\n static getByID(\r\n assetID: string,\r\n appObjects: AppObjectRepo\r\n ): AssetPM | undefined {\r\n const appObject = appObjects.get(assetID);\r\n if (!appObject) {\r\n appObjects.submitWarning(\r\n \"AssetPM.getByID\",\r\n \"Unable to find app object by ID \" + assetID\r\n );\r\n return;\r\n }\r\n\r\n const pm = appObject.getComponent<AssetPM>(AssetPM.type);\r\n if (!pm) {\r\n appObjects.submitWarning(\r\n \"AssetPM.getByID\",\r\n \"App Object does not have a AssetPM\"\r\n );\r\n return;\r\n }\r\n return pm;\r\n }\r\n}\r\n\r\n/**\r\n * Factory function to create a new AssetPM instance.\r\n *\r\n * @param appObject - The AppObject that will host this PM (should contain an AssetEntity)\r\n * @returns A new AssetPM implementation instance\r\n */\r\nexport function makeAssetPM(appObject: AppObject): AssetPM {\r\n return new AssetPMImp(appObject);\r\n}\r\n\r\n/**\r\n * Private implementation of AssetPM with entity integration and change tracking.\r\n *\r\n * Key Implementation Details:\r\n * - Observes AssetEntity changes and generates view models accordingly\r\n * - Implements efficient view model comparison for performance optimization\r\n * - Handles entity lifecycle management and cleanup\r\n * - Provides error handling for missing entity dependencies\r\n */\r\nclass AssetPMImp extends AssetPM {\r\n /** The asset entity this PM observes and presents */\r\n private asset?: AssetEntity;\r\n\r\n /**\r\n * Compares two asset view models for equality to optimize UI updates.\r\n *\r\n * @param a - First asset view model to compare\r\n * @param b - Second asset view model to compare\r\n * @returns true if view models are equal, false otherwise\r\n */\r\n vmsAreEqual(a: AssetVM, b: AssetVM): boolean {\r\n if (a.archived !== b.archived) return false;\r\n if (a.description !== b.description) return false;\r\n if (a.name !== b.name) return false;\r\n if (a.id !== b.id) return false;\r\n\r\n return true;\r\n }\r\n\r\n private onAssetChange = () => {\r\n if (!this.asset) return;\r\n\r\n const vm: AssetVM = {\r\n archived: this.asset.archived,\r\n description: this.asset.description,\r\n id: this.asset.id,\r\n name: this.asset.name\r\n };\r\n\r\n this.doUpdateView(vm);\r\n };\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, AssetPM.type);\r\n\r\n this.asset = appObject.getComponent<AssetEntity>(AssetEntity.type);\r\n if (!this.asset) {\r\n this.warn(\"PM has been added to an App Object without an AssetEntity\");\r\n return;\r\n }\r\n\r\n this.asset.addChangeObserver(this.onAssetChange);\r\n this.onAssetChange();\r\n }\r\n}\r\n\r\nexport const defaultAssetVM: AssetVM = {\r\n archived: false,\r\n description: \"\",\r\n id: \"\",\r\n name: \"\"\r\n};\r\n"]}