@seedprotocol/sdk 0.3.3 → 0.3.5

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 (392) hide show
  1. package/dist/addModel.js +89 -0
  2. package/dist/addModel.js.map +1 -0
  3. package/dist/bin.js +78 -134
  4. package/dist/bin.js.map +1 -1
  5. package/dist/db/configs/browser.app.db.config.ts +1 -0
  6. package/dist/db/configs/node.app.db.config.ts +1 -0
  7. package/dist/main.js +15 -23
  8. package/dist/main.js.map +1 -1
  9. package/dist/node/codegen/templates/model.njk +14 -0
  10. package/dist/scripts/addModel.d.ts +3 -0
  11. package/dist/scripts/addModel.d.ts.map +1 -0
  12. package/dist/scripts/bin.d.ts.map +1 -1
  13. package/dist/src/Item/BaseItem.js +309 -0
  14. package/dist/src/Item/BaseItem.js.map +1 -0
  15. package/dist/src/Item/index.js +4 -0
  16. package/dist/src/Item/index.js.map +1 -0
  17. package/dist/src/Item/queries.js +94 -0
  18. package/dist/src/Item/queries.js.map +1 -0
  19. package/dist/src/Item/service/actors/fetchDataFromEas.js +74 -0
  20. package/dist/src/Item/service/actors/fetchDataFromEas.js.map +1 -0
  21. package/dist/src/Item/service/actors/hydrateExistingItem.js +119 -0
  22. package/dist/src/Item/service/actors/hydrateExistingItem.js.map +1 -0
  23. package/dist/src/Item/service/actors/hydrateNewItem.js +28 -0
  24. package/dist/src/Item/service/actors/hydrateNewItem.js.map +1 -0
  25. package/dist/src/Item/service/actors/initialize.js +39 -0
  26. package/dist/src/Item/service/actors/initialize.js.map +1 -0
  27. package/dist/src/Item/service/actors/reload.js +26 -0
  28. package/dist/src/Item/service/actors/reload.js.map +1 -0
  29. package/dist/src/Item/service/actors/waitForDb.js +22 -0
  30. package/dist/src/Item/service/actors/waitForDb.js.map +1 -0
  31. package/dist/src/Item/service/itemMachineSingle.js +154 -0
  32. package/dist/src/Item/service/itemMachineSingle.js.map +1 -0
  33. package/dist/src/ItemProperty/BaseItemProperty.js +306 -0
  34. package/dist/src/ItemProperty/BaseItemProperty.js.map +1 -0
  35. package/dist/src/ItemProperty/service/actors/hydrateFromDb.js +196 -0
  36. package/dist/src/ItemProperty/service/actors/hydrateFromDb.js.map +1 -0
  37. package/dist/src/ItemProperty/service/actors/initialize.js +60 -0
  38. package/dist/src/ItemProperty/service/actors/initialize.js.map +1 -0
  39. package/dist/src/ItemProperty/service/actors/resolveRelatedValue.js +317 -0
  40. package/dist/src/ItemProperty/service/actors/resolveRelatedValue.js.map +1 -0
  41. package/dist/src/ItemProperty/service/actors/resolveRemoteStorage.js +62 -0
  42. package/dist/src/ItemProperty/service/actors/resolveRemoteStorage.js.map +1 -0
  43. package/dist/src/ItemProperty/service/actors/saveValueToDb/analyzeInput.js +100 -0
  44. package/dist/src/ItemProperty/service/actors/saveValueToDb/analyzeInput.js.map +1 -0
  45. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveImageSrc.js +178 -0
  46. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveImageSrc.js.map +1 -0
  47. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.js +117 -0
  48. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.js.map +1 -0
  49. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveRelation.js +81 -0
  50. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveRelation.js.map +1 -0
  51. package/dist/src/ItemProperty/service/actors/waitForDb.js +22 -0
  52. package/dist/src/ItemProperty/service/actors/waitForDb.js.map +1 -0
  53. package/dist/src/ItemProperty/service/propertyMachine.js +198 -0
  54. package/dist/src/ItemProperty/service/propertyMachine.js.map +1 -0
  55. package/dist/src/browser/Item/Item.js +11 -0
  56. package/dist/src/browser/Item/Item.js.map +1 -0
  57. package/dist/src/browser/Item/index.js +2 -0
  58. package/dist/src/browser/Item/index.js.map +1 -0
  59. package/dist/src/browser/ItemProperty/ItemProperty.js +11 -0
  60. package/dist/src/browser/ItemProperty/ItemProperty.js.map +1 -0
  61. package/dist/src/browser/db/Db.d.ts +10 -5
  62. package/dist/src/browser/db/Db.d.ts.map +1 -1
  63. package/dist/src/browser/db/Db.js +218 -0
  64. package/dist/src/browser/db/Db.js.map +1 -0
  65. package/dist/src/browser/db/sqlWasmClient.d.ts +0 -12
  66. package/dist/src/browser/db/sqlWasmClient.d.ts.map +1 -1
  67. package/dist/{ArweaveClient-2RMCxfNZ.js → src/browser/helpers/ArweaveClient.js} +3 -3
  68. package/dist/{ArweaveClient-COlwyYTF.js.map → src/browser/helpers/ArweaveClient.js.map} +1 -1
  69. package/dist/src/browser/helpers/FileManager.d.ts.map +1 -1
  70. package/dist/src/browser/helpers/FileManager.js +308 -0
  71. package/dist/src/browser/helpers/FileManager.js.map +1 -0
  72. package/dist/src/browser/helpers/QueryClient.d.ts.map +1 -1
  73. package/dist/{QueryClient-W4slRa7O.js → src/browser/helpers/QueryClient.js} +2 -5
  74. package/dist/src/browser/helpers/QueryClient.js.map +1 -0
  75. package/dist/src/browser/index.d.ts +2 -1
  76. package/dist/src/browser/index.d.ts.map +1 -1
  77. package/dist/src/browser/react/db.js +6 -0
  78. package/dist/src/browser/react/db.js.map +1 -0
  79. package/dist/src/browser/react/item.js +260 -0
  80. package/dist/src/browser/react/item.js.map +1 -0
  81. package/dist/src/browser/react/property.js +107 -0
  82. package/dist/src/browser/react/property.js.map +1 -0
  83. package/dist/src/browser/react/services.d.ts.map +1 -1
  84. package/dist/src/browser/react/services.js +299 -0
  85. package/dist/src/browser/react/services.js.map +1 -0
  86. package/dist/src/browser/react/trash.js +25 -0
  87. package/dist/src/browser/react/trash.js.map +1 -0
  88. package/dist/src/browser/workers/FileDownloader.js +49 -0
  89. package/dist/src/browser/workers/FileDownloader.js.map +1 -0
  90. package/dist/src/browser/workers/ImageResizer.js +62 -0
  91. package/dist/src/browser/workers/ImageResizer.js.map +1 -0
  92. package/dist/src/browser/workers/dbWorker.d.ts +1 -0
  93. package/dist/src/browser/workers/dbWorker.d.ts.map +1 -0
  94. package/dist/src/browser/workers/filesDownload.js +241 -0
  95. package/dist/src/browser/workers/filesDownload.js.map +1 -0
  96. package/dist/src/browser/workers/imageResize.js +379 -0
  97. package/dist/src/browser/workers/imageResize.js.map +1 -0
  98. package/dist/src/client/ClientManager.d.ts +18 -2
  99. package/dist/src/client/ClientManager.d.ts.map +1 -1
  100. package/dist/src/client/ClientManager.js +59 -0
  101. package/dist/src/client/ClientManager.js.map +1 -0
  102. package/dist/src/client/actions/setAddresses.js +19 -0
  103. package/dist/src/client/actions/setAddresses.js.map +1 -0
  104. package/dist/src/client/actors/initialize.d.ts.map +1 -1
  105. package/dist/src/client/actors/initialize.js +84 -0
  106. package/dist/src/client/actors/initialize.js.map +1 -0
  107. package/dist/src/client/actors/saveAppState.js +44 -0
  108. package/dist/src/client/actors/saveAppState.js.map +1 -0
  109. package/dist/src/client/clientManagerMachine.js +61 -0
  110. package/dist/src/client/clientManagerMachine.js.map +1 -0
  111. package/dist/src/db/Db/BaseDb.d.ts +1 -2
  112. package/dist/src/db/Db/BaseDb.d.ts.map +1 -1
  113. package/dist/src/db/Db/BaseDb.js +22 -0
  114. package/dist/src/db/Db/BaseDb.js.map +1 -0
  115. package/dist/src/db/configs/browser.app.db.config.d.ts.map +1 -1
  116. package/dist/src/db/configs/node.app.db.config.d.ts.map +1 -1
  117. package/dist/{seed.schema.config-DmTl3a9U.js → src/db/configs/seed.schema.config.js} +3 -24
  118. package/dist/src/db/configs/seed.schema.config.js.map +1 -0
  119. package/dist/src/db/read/getExistingItem.js +29 -0
  120. package/dist/src/db/read/getExistingItem.js.map +1 -0
  121. package/dist/src/db/read/getItem.js +26 -0
  122. package/dist/src/db/read/getItem.js.map +1 -0
  123. package/dist/src/db/read/getItemData.js +84 -0
  124. package/dist/src/db/read/getItemData.js.map +1 -0
  125. package/dist/src/db/read/getItemProperties.js +49 -0
  126. package/dist/src/db/read/getItemProperties.js.map +1 -0
  127. package/dist/src/db/read/getItemProperty.js +30 -0
  128. package/dist/src/db/read/getItemProperty.js.map +1 -0
  129. package/dist/src/db/read/getItems.js +49 -0
  130. package/dist/src/db/read/getItems.js.map +1 -0
  131. package/dist/src/db/read/getMetadata.js +32 -0
  132. package/dist/src/db/read/getMetadata.js.map +1 -0
  133. package/dist/src/db/read/getModelSchemas.js +69 -0
  134. package/dist/src/db/read/getModelSchemas.js.map +1 -0
  135. package/dist/src/db/read/getPropertyData.js +38 -0
  136. package/dist/src/db/read/getPropertyData.js.map +1 -0
  137. package/dist/src/db/read/getPublishPayload.js +213 -0
  138. package/dist/src/db/read/getPublishPayload.js.map +1 -0
  139. package/dist/src/db/read/getPublishUploads.d.ts.map +1 -1
  140. package/dist/src/db/read/getPublishUploads.js +134 -0
  141. package/dist/src/db/read/getPublishUploads.js.map +1 -0
  142. package/dist/src/db/read/getRelationValueData.js +30 -0
  143. package/dist/src/db/read/getRelationValueData.js.map +1 -0
  144. package/dist/src/db/read/getSchemaUidForModel.js +28 -0
  145. package/dist/src/db/read/getSchemaUidForModel.js.map +1 -0
  146. package/dist/src/db/read/getSeedData.js +28 -0
  147. package/dist/src/db/read/getSeedData.js.map +1 -0
  148. package/dist/src/db/read/getStorageTransactionIdForSeedUid.js +30 -0
  149. package/dist/src/db/read/getStorageTransactionIdForSeedUid.js.map +1 -0
  150. package/dist/src/db/read/getVersionData.js +33 -0
  151. package/dist/src/db/read/getVersionData.js.map +1 -0
  152. package/dist/src/db/read/subqueries/metadataLatest.js +35 -0
  153. package/dist/src/db/read/subqueries/metadataLatest.js.map +1 -0
  154. package/dist/src/db/read/subqueries/versionData.js +27 -0
  155. package/dist/src/db/read/subqueries/versionData.js.map +1 -0
  156. package/dist/src/db/write/createMetadata.js +63 -0
  157. package/dist/src/db/write/createMetadata.js.map +1 -0
  158. package/dist/src/db/write/createNewItem.js +38 -0
  159. package/dist/src/db/write/createNewItem.js.map +1 -0
  160. package/dist/src/db/write/createSeed.js +29 -0
  161. package/dist/src/db/write/createSeed.js.map +1 -0
  162. package/dist/src/db/write/createSeeds.js +25 -0
  163. package/dist/src/db/write/createSeeds.js.map +1 -0
  164. package/dist/src/db/write/createVersion.js +25 -0
  165. package/dist/src/db/write/createVersion.js.map +1 -0
  166. package/dist/src/db/write/deleteItem.js +21 -0
  167. package/dist/src/db/write/deleteItem.js.map +1 -0
  168. package/dist/src/db/write/saveAppState.js +26 -0
  169. package/dist/src/db/write/saveAppState.js.map +1 -0
  170. package/dist/src/db/write/saveMetadata.js +22 -0
  171. package/dist/src/db/write/saveMetadata.js.map +1 -0
  172. package/dist/src/db/write/updateItemPropertyValue.js +161 -0
  173. package/dist/src/db/write/updateItemPropertyValue.js.map +1 -0
  174. package/dist/src/db/write/updateMetadata.js +25 -0
  175. package/dist/src/db/write/updateMetadata.js.map +1 -0
  176. package/dist/src/eventBus.js +6 -0
  177. package/dist/src/eventBus.js.map +1 -0
  178. package/dist/src/events/files/download.js +161 -0
  179. package/dist/src/events/files/download.js.map +1 -0
  180. package/dist/src/events/files/index.d.ts.map +1 -1
  181. package/dist/src/events/files/index.js +61 -0
  182. package/dist/src/events/files/index.js.map +1 -0
  183. package/dist/src/events/index.js +28 -0
  184. package/dist/src/events/index.js.map +1 -0
  185. package/dist/src/events/item/index.js +28 -0
  186. package/dist/src/events/item/index.js.map +1 -0
  187. package/dist/src/events/item/publish.js +19 -0
  188. package/dist/src/events/item/publish.js.map +1 -0
  189. package/dist/src/events/item/syncDbWithEas.js +428 -0
  190. package/dist/src/events/item/syncDbWithEas.js.map +1 -0
  191. package/dist/src/events/services/allItems.js +20 -0
  192. package/dist/src/events/services/allItems.js.map +1 -0
  193. package/dist/src/events/services/index.js +9 -0
  194. package/dist/src/events/services/index.js.map +1 -0
  195. package/dist/src/graphql/gql/gql.js +38 -0
  196. package/dist/src/graphql/gql/gql.js.map +1 -0
  197. package/dist/src/graphql/gql/graphql.js +106 -0
  198. package/dist/src/graphql/gql/graphql.js.map +1 -0
  199. package/dist/src/helpers/ArweaveClient/BaseArweaveClient.js +11 -0
  200. package/dist/src/helpers/ArweaveClient/BaseArweaveClient.js.map +1 -0
  201. package/dist/src/helpers/ArweaveClient/index.js +45 -0
  202. package/dist/src/helpers/ArweaveClient/index.js.map +1 -0
  203. package/dist/src/helpers/ArweaveClient/queries.js +16 -0
  204. package/dist/src/helpers/ArweaveClient/queries.js.map +1 -0
  205. package/dist/src/helpers/EasClient/BaseEasClient.js +14 -0
  206. package/dist/src/helpers/EasClient/BaseEasClient.js.map +1 -0
  207. package/dist/src/helpers/FileManager/BaseFileManager.js +55 -0
  208. package/dist/src/helpers/FileManager/BaseFileManager.js.map +1 -0
  209. package/dist/src/helpers/QueryClient/BaseQueryClient.js +11 -0
  210. package/dist/src/helpers/QueryClient/BaseQueryClient.js.map +1 -0
  211. package/dist/src/helpers/constants.d.ts +1 -0
  212. package/dist/src/helpers/constants.d.ts.map +1 -1
  213. package/dist/src/helpers/constants.js +74 -0
  214. package/dist/src/helpers/constants.js.map +1 -0
  215. package/dist/src/helpers/db.js +43 -0
  216. package/dist/src/helpers/db.js.map +1 -0
  217. package/dist/src/helpers/environment.js +24 -0
  218. package/dist/src/helpers/environment.js.map +1 -0
  219. package/dist/src/helpers/getSchemaForItemProperty.js +51 -0
  220. package/dist/src/helpers/getSchemaForItemProperty.js.map +1 -0
  221. package/dist/src/helpers/getSegmentedItemProperties.js +50 -0
  222. package/dist/src/helpers/getSegmentedItemProperties.js.map +1 -0
  223. package/dist/src/helpers/index.js +101 -0
  224. package/dist/src/helpers/index.js.map +1 -0
  225. package/dist/src/helpers/updateMachineContext.js +20 -0
  226. package/dist/src/helpers/updateMachineContext.js.map +1 -0
  227. package/dist/src/index.d.ts +1 -1
  228. package/dist/src/index.d.ts.map +1 -1
  229. package/dist/src/interfaces/IDb.d.ts.map +1 -1
  230. package/dist/src/node/codegen/drizzle.d.ts +4 -1
  231. package/dist/src/node/codegen/drizzle.d.ts.map +1 -1
  232. package/dist/src/node/codegen/drizzle.js +86 -0
  233. package/dist/src/node/codegen/drizzle.js.map +1 -0
  234. package/dist/src/node/constants.d.ts.map +1 -1
  235. package/dist/src/node/constants.js +37 -0
  236. package/dist/src/node/constants.js.map +1 -0
  237. package/dist/src/node/db/Db.d.ts +5 -6
  238. package/dist/src/node/db/Db.d.ts.map +1 -1
  239. package/dist/{ArweaveClient-COlwyYTF.js → src/node/helpers/ArweaveClient.js} +3 -3
  240. package/dist/{ArweaveClient-2RMCxfNZ.js.map → src/node/helpers/ArweaveClient.js.map} +1 -1
  241. package/dist/{EasClient-CFnb5g-r.js → src/node/helpers/EasClient.js} +3 -3
  242. package/dist/{EasClient-CFnb5g-r.js.map → src/node/helpers/EasClient.js.map} +1 -1
  243. package/dist/src/node/helpers/FileManager.d.ts.map +1 -1
  244. package/dist/{QueryClient-ZUsZ1Qxq.js → src/node/helpers/QueryClient.js} +2 -4
  245. package/dist/{QueryClient-ZUsZ1Qxq.js.map → src/node/helpers/QueryClient.js.map} +1 -1
  246. package/dist/src/node/helpers/index.d.ts.map +1 -1
  247. package/dist/src/node/helpers/index.js +39 -0
  248. package/dist/src/node/helpers/index.js.map +1 -0
  249. package/dist/src/node/seed.d.ts +0 -6
  250. package/dist/src/node/seed.d.ts.map +1 -1
  251. package/dist/src/node/webpack/index.d.ts.map +1 -1
  252. package/dist/src/node/webpack/index.js +96 -0
  253. package/dist/src/node/webpack/index.js.map +1 -0
  254. package/dist/src/schema/file/queries.js +48 -0
  255. package/dist/src/schema/file/queries.js.map +1 -0
  256. package/dist/src/schema/index.d.ts.map +1 -1
  257. package/dist/src/schema/model/index.d.ts +8 -8
  258. package/dist/src/schema/model/index.js +44 -0
  259. package/dist/src/schema/model/index.js.map +1 -0
  260. package/dist/src/schema/property/index.d.ts +58 -32
  261. package/dist/src/schema/property/index.d.ts.map +1 -1
  262. package/dist/src/schema/property/index.js +89 -0
  263. package/dist/src/schema/property/index.js.map +1 -0
  264. package/dist/src/seedSchema/AppStateSchema.js +11 -0
  265. package/dist/src/seedSchema/AppStateSchema.js.map +1 -0
  266. package/dist/src/seedSchema/MetadataSchema.js +29 -0
  267. package/dist/src/seedSchema/MetadataSchema.js.map +1 -0
  268. package/dist/src/seedSchema/ModelSchema.js +33 -0
  269. package/dist/src/seedSchema/ModelSchema.js.map +1 -0
  270. package/dist/src/seedSchema/ModelUidSchema.js +18 -0
  271. package/dist/src/seedSchema/ModelUidSchema.js.map +1 -0
  272. package/dist/src/seedSchema/SeedSchema.js +16 -0
  273. package/dist/src/seedSchema/SeedSchema.js.map +1 -0
  274. package/dist/src/seedSchema/VersionSchema.js +17 -0
  275. package/dist/src/seedSchema/VersionSchema.js.map +1 -0
  276. package/dist/src/services/allItems/actors/fetchDbData.js +13 -0
  277. package/dist/src/services/allItems/actors/fetchDbData.js.map +1 -0
  278. package/dist/src/services/allItems/actors/fetchRelatedItems.js +137 -0
  279. package/dist/src/services/allItems/actors/fetchRelatedItems.js.map +1 -0
  280. package/dist/src/services/allItems/actors/fetchSeeds.js +31 -0
  281. package/dist/src/services/allItems/actors/fetchSeeds.js.map +1 -0
  282. package/dist/src/services/allItems/actors/fetchVersions.js +35 -0
  283. package/dist/src/services/allItems/actors/fetchVersions.js.map +1 -0
  284. package/dist/src/services/allItems/actors/initialize.js +144 -0
  285. package/dist/src/services/allItems/actors/initialize.js.map +1 -0
  286. package/dist/src/services/allItems/actors/processItems.js +55 -0
  287. package/dist/src/services/allItems/actors/processItems.js.map +1 -0
  288. package/dist/src/services/allItems/itemMachineAll.js +153 -0
  289. package/dist/src/services/allItems/itemMachineAll.js.map +1 -0
  290. package/dist/src/services/db/actors/checkStatus.d.ts.map +1 -1
  291. package/dist/src/services/db/actors/checkStatus.js +41 -0
  292. package/dist/src/services/db/actors/checkStatus.js.map +1 -0
  293. package/dist/src/services/db/actors/connectToDb.d.ts.map +1 -1
  294. package/dist/src/services/db/actors/connectToDb.js +31 -0
  295. package/dist/src/services/db/actors/connectToDb.js.map +1 -0
  296. package/dist/src/services/db/actors/migrate.js +40 -0
  297. package/dist/src/services/db/actors/migrate.js.map +1 -0
  298. package/dist/src/services/db/actors/validate.d.ts.map +1 -1
  299. package/dist/src/services/db/actors/validate.js +40 -0
  300. package/dist/src/services/db/actors/validate.js.map +1 -0
  301. package/dist/src/services/db/actors/waitForFiles.js +32 -0
  302. package/dist/src/services/db/actors/waitForFiles.js.map +1 -0
  303. package/dist/src/services/db/dbMachine.d.ts.map +1 -1
  304. package/dist/src/services/db/dbMachine.js +156 -0
  305. package/dist/src/services/db/dbMachine.js.map +1 -0
  306. package/dist/src/services/events.js +15 -0
  307. package/dist/src/services/events.js.map +1 -0
  308. package/dist/src/services/global/actors/addModelsToDb.js +115 -0
  309. package/dist/src/services/global/actors/addModelsToDb.js.map +1 -0
  310. package/dist/src/services/global/actors/getSchemaForModel.js +26 -0
  311. package/dist/src/services/global/actors/getSchemaForModel.js.map +1 -0
  312. package/dist/src/services/global/actors/initialize.d.ts.map +1 -1
  313. package/dist/src/services/global/actors/initialize.js +86 -0
  314. package/dist/src/services/global/actors/initialize.js.map +1 -0
  315. package/dist/src/services/global/actors/savePublishService.js +22 -0
  316. package/dist/src/services/global/actors/savePublishService.js.map +1 -0
  317. package/dist/src/services/global/globalMachine.d.ts +90 -90
  318. package/dist/src/services/global/globalMachine.d.ts.map +1 -1
  319. package/dist/src/services/global/globalMachine.js +246 -0
  320. package/dist/src/services/global/globalMachine.js.map +1 -0
  321. package/dist/src/services/internal/actors/configureFs.js +70 -0
  322. package/dist/src/services/internal/actors/configureFs.js.map +1 -0
  323. package/dist/src/services/internal/actors/loadAppDb.d.ts.map +1 -1
  324. package/dist/src/services/internal/actors/loadAppDb.js +22 -0
  325. package/dist/src/services/internal/actors/loadAppDb.js.map +1 -0
  326. package/dist/src/services/internal/actors/prepareDb.d.ts.map +1 -1
  327. package/dist/src/services/internal/actors/saveConfig.js +88 -0
  328. package/dist/src/services/internal/actors/saveConfig.js.map +1 -0
  329. package/dist/src/services/internal/actors/validateInput.js +34 -0
  330. package/dist/src/services/internal/actors/validateInput.js.map +1 -0
  331. package/dist/src/services/internal/actors/waitForFiles.js +33 -0
  332. package/dist/src/services/internal/actors/waitForFiles.js.map +1 -0
  333. package/dist/src/services/internal/constants.js +85 -0
  334. package/dist/src/services/internal/constants.js.map +1 -0
  335. package/dist/src/services/internal/helpers.js +171 -0
  336. package/dist/src/services/internal/helpers.js.map +1 -0
  337. package/dist/src/services/internal/internalMachine.d.ts +0 -10
  338. package/dist/src/services/internal/internalMachine.d.ts.map +1 -1
  339. package/dist/src/services/internal/internalMachine.js +188 -0
  340. package/dist/src/services/internal/internalMachine.js.map +1 -0
  341. package/dist/src/services/publish/actors/createPublishAttempt.js +14 -0
  342. package/dist/src/services/publish/actors/createPublishAttempt.js.map +1 -0
  343. package/dist/src/services/publish/actors/preparePublishRequestData.js +70 -0
  344. package/dist/src/services/publish/actors/preparePublishRequestData.js.map +1 -0
  345. package/dist/src/services/publish/actors/upload.js +55 -0
  346. package/dist/src/services/publish/actors/upload.js.map +1 -0
  347. package/dist/src/services/publish/actors/validateItemData.js +18 -0
  348. package/dist/src/services/publish/actors/validateItemData.js.map +1 -0
  349. package/dist/src/services/publish/publishMachine.js +71 -0
  350. package/dist/src/services/publish/publishMachine.js.map +1 -0
  351. package/dist/src/stores/eas.js +40 -0
  352. package/dist/src/stores/eas.js.map +1 -0
  353. package/dist/src/stores/modelClass.js +16 -0
  354. package/dist/src/stores/modelClass.js.map +1 -0
  355. package/dist/src/types/index.d.ts.map +1 -1
  356. package/package.json +9 -7
  357. package/dist/Db-CRWMiKY9.js +0 -384
  358. package/dist/Db-CRWMiKY9.js.map +0 -1
  359. package/dist/Db-G5dIgZv-.js +0 -81
  360. package/dist/Db-G5dIgZv-.js.map +0 -1
  361. package/dist/EasClient-CO5puCWa.js +0 -10
  362. package/dist/EasClient-CO5puCWa.js.map +0 -1
  363. package/dist/FileManager-BOixZyex.js +0 -50
  364. package/dist/FileManager-BOixZyex.js.map +0 -1
  365. package/dist/FileManager-gKGTTa4s.js +0 -1045
  366. package/dist/FileManager-gKGTTa4s.js.map +0 -1
  367. package/dist/Item-BD2_tuda.js +0 -34
  368. package/dist/Item-BD2_tuda.js.map +0 -1
  369. package/dist/ItemProperty-CjcrzEmg.js +0 -33
  370. package/dist/ItemProperty-CjcrzEmg.js.map +0 -1
  371. package/dist/QueryClient-W4slRa7O.js.map +0 -1
  372. package/dist/constants-C-6Pg8FW.js +0 -235
  373. package/dist/constants-C-6Pg8FW.js.map +0 -1
  374. package/dist/index-BxAVepOO.js +0 -25
  375. package/dist/index-BxAVepOO.js.map +0 -1
  376. package/dist/index-D-O-gmXo.js +0 -7930
  377. package/dist/index-D-O-gmXo.js.map +0 -1
  378. package/dist/seed.schema.config-DmTl3a9U.js.map +0 -1
  379. package/dist/src/browser/db/index.d.ts +0 -2
  380. package/dist/src/browser/db/index.d.ts.map +0 -1
  381. package/dist/src/db/Db/index.d.ts +0 -5
  382. package/dist/src/db/Db/index.d.ts.map +0 -1
  383. package/dist/src/helpers/EasClient/index.d.ts +0 -5
  384. package/dist/src/helpers/EasClient/index.d.ts.map +0 -1
  385. package/dist/src/helpers/FileManager/index.d.ts +0 -5
  386. package/dist/src/helpers/FileManager/index.d.ts.map +0 -1
  387. package/dist/src/helpers/QueryClient/index.d.ts +0 -5
  388. package/dist/src/helpers/QueryClient/index.d.ts.map +0 -1
  389. package/dist/src/node/index.d.ts +0 -2
  390. package/dist/src/node/index.d.ts.map +0 -1
  391. package/dist/src/services/global/index.d.ts +0 -2
  392. package/dist/src/services/global/index.d.ts.map +0 -1
@@ -0,0 +1,85 @@
1
+ const ENV = (typeof process !== 'undefined' && process.env)
2
+ ? process.env
3
+ : (typeof window !== 'undefined' && window.env)
4
+ ? window.env
5
+ : {};
6
+ var MachineIds;
7
+ (function (MachineIds) {
8
+ MachineIds["GLOBAL"] = "@seedSdk/global";
9
+ MachineIds["INTERNAL"] = "@seedSdk/internal";
10
+ MachineIds["DB"] = "@seedSdk/db";
11
+ MachineIds["EAS"] = "@seedSdk/eas";
12
+ MachineIds["ITEM"] = "@seedSdk/item";
13
+ MachineIds["ALL_ITEMS"] = "@seedSdk/allItems";
14
+ MachineIds["MODEL"] = "@seedSdk/model";
15
+ MachineIds["FILE_SYSTEM"] = "@seedSdk/fileSystem";
16
+ })(MachineIds || (MachineIds = {}));
17
+ const { INTERNAL, DB, GLOBAL, EAS, MODEL } = MachineIds;
18
+ var GlobalState;
19
+ (function (GlobalState) {
20
+ GlobalState["UNINITIALIZED"] = "uninitialized";
21
+ GlobalState["INITIALIZING"] = "initializing";
22
+ GlobalState["INITIALIZED"] = "initialized";
23
+ GlobalState["PUBLISHING_ITEM"] = "publishingItem";
24
+ GlobalState["ADDING_MODELS_TO_DB"] = "addingModelsToDb";
25
+ })(GlobalState || (GlobalState = {}));
26
+ const { UNINITIALIZED, INITIALIZING, INITIALIZED, PUBLISHING_ITEM, ADDING_MODELS_TO_DB, } = GlobalState;
27
+ var InternalState;
28
+ (function (InternalState) {
29
+ InternalState["IDLE"] = "idle";
30
+ InternalState["INITIALIZING"] = "initializing";
31
+ InternalState["VALIDATING_INPUT"] = "validatingInput";
32
+ InternalState["CONFIGURING_FS"] = "configuringFs";
33
+ InternalState["LOADING_SEED_DB"] = "loadingSeedDb";
34
+ InternalState["SAVING_CONFIG"] = "savingConfig";
35
+ InternalState["LOADING_APP_DB"] = "loadingAppDb";
36
+ InternalState["LOADING_SDK_DB"] = "loadingSdkDb";
37
+ })(InternalState || (InternalState = {}));
38
+ const { VALIDATING_INPUT, CONFIGURING_FS, LOADING_SEED_DB, LOADING_APP_DB } = InternalState;
39
+ var DbState;
40
+ (function (DbState) {
41
+ DbState["CHECKING_STATUS"] = "checkingStatus";
42
+ DbState["WAITING_FOR_FILES"] = "waitingForFiles";
43
+ DbState["VALIDATING"] = "validating";
44
+ DbState["CONNECTING_TO_DB"] = "connectingToDb";
45
+ // FETCHING_MIGRATIONS = 'fetchingMigrations',
46
+ DbState["MIGRATING"] = "migrating";
47
+ })(DbState || (DbState = {}));
48
+ const { CHECKING_STATUS, VALIDATING, CONNECTING_TO_DB, WAITING_FOR_FILES, MIGRATING, } = DbState;
49
+ var PublishMachineStates;
50
+ (function (PublishMachineStates) {
51
+ PublishMachineStates["VALIDATING_ITEM_DATA"] = "validatingItemData";
52
+ PublishMachineStates["CREATING_PUBLISH_ATTEMPT"] = "creatingPublishAttempt";
53
+ PublishMachineStates["UPLOADING"] = "uploading";
54
+ PublishMachineStates["PREPARING_PUBLISH_REQUEST_DATA"] = "preparingPublishRequestData";
55
+ PublishMachineStates["PUBLISHING"] = "publishing";
56
+ PublishMachineStates["IDLE"] = "idle";
57
+ })(PublishMachineStates || (PublishMachineStates = {}));
58
+ const INTERNAL_VALIDATING_INPUT_SUCCESS = `${INTERNAL}.${VALIDATING_INPUT}.success`;
59
+ const INTERNAL_CONFIGURING_FS_SUCCESS = `${INTERNAL}.${CONFIGURING_FS}.success`;
60
+ const INTERNAL_LOADING_APP_DB_SUCCESS = `${INTERNAL}.${LOADING_APP_DB}.success`;
61
+ const INTERNAL_SAVING_CONFIG_SUCCESS = `${INTERNAL}.savingConfig.success`;
62
+ const GLOBAL_INITIALIZING_SEND_CONFIG = `${GLOBAL}.${INITIALIZING}.sendConfig`;
63
+ const GLOBAL_INITIALIZING_INTERNAL_SERVICE_READY = `${GLOBAL}.${INITIALIZING}.internalServiceReady`;
64
+ const GLOBAL_INITIALIZING_CREATE_ALL_ITEMS_SERVICES = `${GLOBAL}.${INITIALIZING}.createAllItemsServices`;
65
+ const GLOBAL_ADDING_MODELS_TO_DB_SUCCESS = `${GLOBAL}.${ADDING_MODELS_TO_DB}.success`;
66
+ const DB_CHECK_STATUS_UPDATE_PATHS = `${DB}.${CHECKING_STATUS}.updatePaths`;
67
+ const DB_CHECK_STATUS_EXISTS = `${DB}.${CHECKING_STATUS}.exists`;
68
+ const DB_CHECK_STATUS_DOES_NOT_EXIST = `${DB}.${CHECKING_STATUS}.doesNotExist`;
69
+ const DB_VALIDATING_SUCCESS = `${DB}.${VALIDATING}.success`;
70
+ const DB_VALIDATING_WAIT = `${DB}.${VALIDATING}.wait`;
71
+ const DB_MIGRATING_WAIT = `${DB}.${MIGRATING}.wait`;
72
+ const DB_MIGRATING_SUCCESS = `${DB}.${MIGRATING}.success`;
73
+ const DB_CREATING_SUCCESS = `${DB}.${CONNECTING_TO_DB}.success`;
74
+ const DB_WAITING_FOR_FILES_RECEIVED = `${DB}.${WAITING_FOR_FILES}.filesReceived`;
75
+ const DB_ON_SNAPSHOT = `${DB}.onSnapshot`;
76
+ const DB_NAME_APP = 'app_db';
77
+ const BROWSER_FS_TOP_DIR = 'app-files';
78
+ const EAS_ENDPOINT = ENV.NEXT_PUBLIC_EAS_ENDPOINT ||
79
+ ENV.EAS_ENDPOINT ||
80
+ 'https://optimism-sepolia.easscan.org/graphql';
81
+ const ARWEAVE_HOST = ENV.NEXT_PUBLIC_ARWEAVE_HOST || 'arweave.net';
82
+ const ARWEAVE_ENDPOINT = `https://${ARWEAVE_HOST}/graphql`;
83
+
84
+ export { ARWEAVE_ENDPOINT, ARWEAVE_HOST, BROWSER_FS_TOP_DIR, DB_CHECK_STATUS_DOES_NOT_EXIST, DB_CHECK_STATUS_EXISTS, DB_CHECK_STATUS_UPDATE_PATHS, DB_CREATING_SUCCESS, DB_MIGRATING_SUCCESS, DB_MIGRATING_WAIT, DB_NAME_APP, DB_ON_SNAPSHOT, DB_VALIDATING_SUCCESS, DB_VALIDATING_WAIT, DB_WAITING_FOR_FILES_RECEIVED, DbState, EAS_ENDPOINT, GLOBAL_ADDING_MODELS_TO_DB_SUCCESS, GLOBAL_INITIALIZING_CREATE_ALL_ITEMS_SERVICES, GLOBAL_INITIALIZING_INTERNAL_SERVICE_READY, GLOBAL_INITIALIZING_SEND_CONFIG, GlobalState, INTERNAL_CONFIGURING_FS_SUCCESS, INTERNAL_LOADING_APP_DB_SUCCESS, INTERNAL_SAVING_CONFIG_SUCCESS, INTERNAL_VALIDATING_INPUT_SUCCESS, InternalState, MachineIds, PublishMachineStates };
85
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sources":["../../../../../src/services/internal/constants.ts"],"sourcesContent":["const ENV = (typeof process !== 'undefined' && process.env) \n ? process.env \n : (typeof window !== 'undefined' && (window as any).env) \n ? (window as any).env \n : {};\n\n\nconst MACHINE_ID_SCOPE = '@seedSdk'\n\nexport enum MachineIds {\n GLOBAL = `${MACHINE_ID_SCOPE}/global`,\n INTERNAL = `${MACHINE_ID_SCOPE}/internal`,\n DB = `${MACHINE_ID_SCOPE}/db`,\n EAS = `${MACHINE_ID_SCOPE}/eas`,\n ITEM = `${MACHINE_ID_SCOPE}/item`,\n ALL_ITEMS = `${MACHINE_ID_SCOPE}/allItems`,\n MODEL = `${MACHINE_ID_SCOPE}/model`,\n FILE_SYSTEM = `${MACHINE_ID_SCOPE}/fileSystem`,\n}\n\nconst { INTERNAL, DB, GLOBAL, EAS, MODEL } = MachineIds\n\nexport enum GlobalState {\n UNINITIALIZED = 'uninitialized',\n INITIALIZING = 'initializing',\n INITIALIZED = 'initialized',\n PUBLISHING_ITEM = 'publishingItem',\n ADDING_MODELS_TO_DB = 'addingModelsToDb',\n}\n\nconst {\n UNINITIALIZED,\n INITIALIZING,\n INITIALIZED,\n PUBLISHING_ITEM,\n ADDING_MODELS_TO_DB,\n } = GlobalState\n\nexport enum InternalState {\n IDLE = 'idle',\n INITIALIZING = 'initializing',\n VALIDATING_INPUT = 'validatingInput',\n CONFIGURING_FS = 'configuringFs',\n LOADING_SEED_DB = 'loadingSeedDb',\n SAVING_CONFIG = 'savingConfig',\n LOADING_APP_DB = 'loadingAppDb',\n LOADING_SDK_DB = 'loadingSdkDb',\n}\n\nconst { VALIDATING_INPUT, CONFIGURING_FS, LOADING_SEED_DB, LOADING_APP_DB } =\n InternalState\n\nexport enum DbState {\n CHECKING_STATUS = 'checkingStatus',\n WAITING_FOR_FILES = 'waitingForFiles',\n VALIDATING = 'validating',\n CONNECTING_TO_DB = 'connectingToDb',\n // FETCHING_MIGRATIONS = 'fetchingMigrations',\n MIGRATING = 'migrating',\n}\n\nconst {\n CHECKING_STATUS,\n VALIDATING,\n CONNECTING_TO_DB,\n WAITING_FOR_FILES,\n MIGRATING,\n } = DbState\n\nexport enum PublishMachineStates {\n VALIDATING_ITEM_DATA = 'validatingItemData',\n CREATING_PUBLISH_ATTEMPT = 'creatingPublishAttempt',\n UPLOADING = 'uploading',\n PREPARING_PUBLISH_REQUEST_DATA = 'preparingPublishRequestData',\n PUBLISHING = 'publishing',\n IDLE = 'idle',\n}\n\nexport const INTERNAL_VALIDATING_INPUT_SUCCESS = `${INTERNAL}.${VALIDATING_INPUT}.success`\n\nexport const INTERNAL_CONFIGURING_FS_SUCCESS = `${INTERNAL}.${CONFIGURING_FS}.success`\nexport const INTERNAL_CONFIGURING_FS_FAILURE = `${INTERNAL}.${CONFIGURING_FS}.failure`\n\nexport const INTERNAL_LOADING_SEED_DB_SUCCESS = `${INTERNAL}.${LOADING_SEED_DB}.success`\nexport const INTERNAL_LOADING_SEED_DB_FAILURE = `${INTERNAL}.${LOADING_SEED_DB}.failure`\n\nexport const INTERNAL_LOADING_APP_DB_SUCCESS = `${INTERNAL}.${LOADING_APP_DB}.success`\nexport const INTERNAL_LOADING_APP_DB_FAILURE = `${INTERNAL}.${LOADING_APP_DB}.failure`\n\nexport const INTERNAL_SAVING_CONFIG_SUCCESS = `${INTERNAL}.savingConfig.success`\nexport const INTERNAL_SAVING_CONFIG_FAILURE = `${INTERNAL}.savingConfig.failure`\n\nexport const GLOBAL_GETTING_SEED_CLASS_SUCCESS = `${GLOBAL}.${PUBLISHING_ITEM}.success`\nexport const GLOBAL_INITIALIZING_SEND_CONFIG = `${GLOBAL}.${INITIALIZING}.sendConfig`\nexport const GLOBAL_INITIALIZING_INTERNAL_SERVICE_READY = `${GLOBAL}.${INITIALIZING}.internalServiceReady`\nexport const GLOBAL_INITIALIZING_CREATE_ALL_ITEMS_SERVICES = `${GLOBAL}.${INITIALIZING}.createAllItemsServices`\nexport const GLOBAL_ADDING_MODELS_TO_DB_SUCCESS = `${GLOBAL}.${ADDING_MODELS_TO_DB}.success`\n\nexport const DB_CHECK_STATUS_UPDATE_PATHS = `${DB}.${CHECKING_STATUS}.updatePaths`\nexport const DB_CHECK_STATUS_EXISTS = `${DB}.${CHECKING_STATUS}.exists`\nexport const DB_CHECK_STATUS_DOES_NOT_EXIST = `${DB}.${CHECKING_STATUS}.doesNotExist`\nexport const DB_CHECK_STATUS_FAILURE = `${DB}.${CHECKING_STATUS}.failure`\n\nexport const DB_VALIDATING_SUCCESS = `${DB}.${VALIDATING}.success`\nexport const DB_VALIDATING_WAIT = `${DB}.${VALIDATING}.wait`\nexport const DB_MIGRATING_WAIT = `${DB}.${MIGRATING}.wait`\nexport const DB_MIGRATING_SUCCESS = `${DB}.${MIGRATING}.success`\nexport const DB_CREATING_SUCCESS = `${DB}.${CONNECTING_TO_DB}.success`\nexport const DB_WAITING_FOR_FILES_RECEIVED = `${DB}.${WAITING_FOR_FILES}.filesReceived`\nexport const DB_ON_SNAPSHOT = `${DB}.onSnapshot`\nexport const CHILD_SNAPSHOT = 'childSnapshot'\n\nexport const INTERNAL_SERVICE_SNAPSHOT = 'internalServiceSnapshot'\n\nexport const DB_NAME_APP = 'app_db'\nexport const BROWSER_FS_TOP_DIR = 'app-files'\n\nexport const EAS_ENDPOINT =\n ENV.NEXT_PUBLIC_EAS_ENDPOINT ||\n ENV.EAS_ENDPOINT ||\n 'https://optimism-sepolia.easscan.org/graphql'\n\nexport const ARWEAVE_HOST =\n ENV.NEXT_PUBLIC_ARWEAVE_HOST || 'arweave.net'\nexport const ARWEAVE_ENDPOINT = `https://${ARWEAVE_HOST}/graphql`\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,171 @@
1
+ import path from 'path';
2
+ import debug from 'debug';
3
+ import { BaseFileManager } from '../../helpers/FileManager/BaseFileManager.js';
4
+
5
+ const logger = debug('seedSdk:services:internal:helpers');
6
+ /**
7
+ * Recursively create directories if they don't exist.
8
+ * @param {string} dirPath - The directory path to create.
9
+ */
10
+ const createDirectories = async (dirPath) => {
11
+ const dirPathExists = await BaseFileManager.pathExists(dirPath);
12
+ if (dirPathExists) {
13
+ return;
14
+ }
15
+ const parentDir = path.dirname(dirPath);
16
+ let parentDirExists = await BaseFileManager.pathExists(parentDir);
17
+ if (!parentDirExists) {
18
+ await createDirectories(parentDir);
19
+ }
20
+ parentDirExists = await BaseFileManager.pathExists(parentDir);
21
+ if (parentDirExists) {
22
+ await BaseFileManager.createDirIfNotExists(dirPath);
23
+ }
24
+ };
25
+ class FileDownloadManager {
26
+ constructor(fileUrls, maxRetries) {
27
+ this.isDownloading = false;
28
+ this.filesToDownload = new Map(fileUrls.map(url => [url, 0]));
29
+ this.maxRetries = maxRetries;
30
+ }
31
+ async downloadFile(url, localFilePath) {
32
+ const response = await fetch(url);
33
+ const fileData = await response.text().catch((error) => {
34
+ console.error(`Failed to parse text from ${url}:`, error);
35
+ });
36
+ if (!fileData) {
37
+ console.error(`No file data from ${url}`);
38
+ return;
39
+ }
40
+ const localDirPath = path.dirname(localFilePath);
41
+ await createDirectories(localDirPath);
42
+ const filename = path.basename(localFilePath);
43
+ const regex = /(\d+)[\w_]+\.(sql|json)$/;
44
+ const match = filename.match(regex);
45
+ let migrationNumber;
46
+ if (match && match.length > 1) {
47
+ migrationNumber = match[1];
48
+ }
49
+ if (migrationNumber) {
50
+ const fs = await BaseFileManager.getFs();
51
+ const filesInDir = await fs.promises.readdir(localDirPath);
52
+ for (const file of filesInDir) {
53
+ if (file === filename) {
54
+ continue;
55
+ }
56
+ const innerMatch = file.match(regex);
57
+ let existingFileMigrationNumber;
58
+ if (innerMatch && innerMatch.length > 1) {
59
+ existingFileMigrationNumber = innerMatch[1];
60
+ }
61
+ if (migrationNumber &&
62
+ existingFileMigrationNumber &&
63
+ existingFileMigrationNumber === migrationNumber) {
64
+ await fs.promises.unlink(path.join(localDirPath, file));
65
+ }
66
+ }
67
+ }
68
+ try {
69
+ const fs = await BaseFileManager.getFs();
70
+ await fs.promises.writeFile(localFilePath, fileData);
71
+ logger(`[downloadFile] Wrote file async to ${localFilePath}`);
72
+ }
73
+ catch (error) {
74
+ const fs = await BaseFileManager.getFs();
75
+ fs.writeFileSync(localFilePath, fileData);
76
+ logger(`[downloadFile] Wrote file sync to ${localFilePath}`);
77
+ }
78
+ }
79
+ async start() {
80
+ if (this.isDownloading) {
81
+ console.warn("Download process is already running.");
82
+ return;
83
+ }
84
+ this.isDownloading = true;
85
+ for (const [fileUrl, attempts] of this.filesToDownload.entries()) {
86
+ let success = false;
87
+ while (attempts < this.maxRetries) {
88
+ try {
89
+ console.log(`Starting download: ${fileUrl}`);
90
+ await this.downloadFile(fileUrl, fileUrl);
91
+ console.log(`Download successful: ${fileUrl}`);
92
+ this.filesToDownload.delete(fileUrl);
93
+ success = true;
94
+ break; // Move to next file
95
+ }
96
+ catch (error) {
97
+ logger(`Error downloading ${fileUrl}:`, error);
98
+ this.filesToDownload.set(fileUrl, attempts + 1);
99
+ }
100
+ }
101
+ if (!success) {
102
+ console.error(`Failed to download after ${this.maxRetries} attempts: ${fileUrl}`);
103
+ }
104
+ }
105
+ this.isDownloading = false;
106
+ console.log("All downloads completed.");
107
+ }
108
+ addFile(fileUrl) {
109
+ if (!this.filesToDownload.has(fileUrl)) {
110
+ this.filesToDownload.set(fileUrl, 0);
111
+ console.log(`Added file to download queue: ${fileUrl}`);
112
+ }
113
+ else {
114
+ console.warn(`File already in queue: ${fileUrl}`);
115
+ }
116
+ }
117
+ getPendingFiles() {
118
+ return Array.from(this.filesToDownload.keys());
119
+ }
120
+ clear() {
121
+ this.filesToDownload.clear();
122
+ console.log("Cleared all files from the download queue.");
123
+ }
124
+ }
125
+ const fetchDirectory = async (url) => {
126
+ const response = await fetch(url);
127
+ return response.json();
128
+ };
129
+ // export const fetchFilesRecursively = async (
130
+ // url: string,
131
+ // localPath: string,
132
+ // fileList: string[],
133
+ // ) => {
134
+ // for (const file of fileList) {
135
+ // try {
136
+ // const fileUrl = `${url}/${file}`
137
+ // const fileLocalPath = path.join(localPath, file)
138
+ // // logger(`[fetchFilesRecursively] fileUrl: ${fileUrl}`)
139
+ // // logger(`[fetchFilesRecursively] fileLocalPath: ${fileLocalPath}`)
140
+ // await downloadFile(fileUrl, fileLocalPath)
141
+ // } catch (error) {
142
+ // console.error(`Failed to fetch files from ${url}:`, error)
143
+ // }
144
+ // }
145
+ // }
146
+ const confirmFilesExist = async (filePaths) => {
147
+ let everythingDownloaded = false;
148
+ for (const filePath of filePaths) {
149
+ const fs = await BaseFileManager.getFs();
150
+ everythingDownloaded = await fs.promises.exists(filePath);
151
+ }
152
+ if (!everythingDownloaded) {
153
+ setTimeout(async () => {
154
+ await confirmFilesExist(filePaths);
155
+ }, 500);
156
+ }
157
+ };
158
+ const filesToExclude = ['.DS_Store'];
159
+ const syncDbFiles = async ({ filePaths, files }) => {
160
+ let fileList = await fetchDirectory(filePaths);
161
+ fileList = fileList.filter((file) => !filesToExclude.includes(file));
162
+ fileList = fileList.map((file) => `${files}/${file}`);
163
+ const downloadManager = new FileDownloadManager(fileList, 5);
164
+ await downloadManager.start();
165
+ // await fetchFilesRecursively(files, BROWSER_FS_TOP_DIR, fileList)
166
+ await confirmFilesExist(fileList);
167
+ logger('[syncDbFiles] Files synced!');
168
+ };
169
+
170
+ export { confirmFilesExist, createDirectories, fetchDirectory, syncDbFiles };
171
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sources":["../../../../../src/services/internal/helpers.ts"],"sourcesContent":["import path from 'path'\nimport { Endpoints } from '@/types'\nimport debug from 'debug'\nimport { BaseFileManager } from '@/helpers/FileManager/BaseFileManager'\n\nconst logger = debug('seedSdk:services:internal:helpers')\n\n/**\n * Recursively create directories if they don't exist.\n * @param {string} dirPath - The directory path to create.\n */\nexport const createDirectories = async (dirPath: string) => {\n const dirPathExists = await BaseFileManager.pathExists(dirPath)\n if (dirPathExists) {\n return\n }\n\n const parentDir = path.dirname(dirPath)\n let parentDirExists = await BaseFileManager.pathExists(parentDir)\n if (!parentDirExists) {\n await createDirectories(parentDir)\n }\n\n parentDirExists = await BaseFileManager.pathExists(parentDir)\n if (parentDirExists) {\n await BaseFileManager.createDirIfNotExists(dirPath)\n }\n}\n\n// export const downloadFile = async (url: string, localFilePath: string) => {\n// try {\n// const response = await fetch(url)\n// const fileData = await response.text().catch((error) => {\n// console.error(`Failed to parse text from ${url}:`, error)\n// })\n// if (!fileData) {\n// console.error(`No file data from ${url}`)\n// return\n// }\n// const localDirPath = path.dirname(localFilePath)\n\n// if (busy) {\n// return\n// }\n\n// busy = true\n\n// await createDirectories(localDirPath)\n\n// const filename = path.basename(localFilePath)\n\n// const regex = /(\\d+)[\\w_]+\\.(sql|json)$/\n\n// const match = filename.match(regex)\n\n// let migrationNumber\n\n// if (match && match.length > 1) {\n// migrationNumber = match[1]\n// }\n\n// if (migrationNumber) {\n// const filesInDir = await fs.promises.readdir(localDirPath)\n// for (const file of filesInDir) {\n// if (file === filename) {\n// continue\n// }\n// const innerMatch = file.match(regex)\n// let existingFileMigrationNumber\n// if (innerMatch && innerMatch.length > 1) {\n// existingFileMigrationNumber = innerMatch[1]\n// }\n// if (\n// migrationNumber &&\n// existingFileMigrationNumber &&\n// existingFileMigrationNumber === migrationNumber\n// ) {\n// await fs.promises.unlink(path.join(localDirPath, file))\n// }\n// }\n// }\n\n// try {\n\n// await fs.promises.writeFile(localFilePath, fileData)\n// logger(`[downloadFile] Wrote file async to ${localFilePath}`)\n// } catch (error) {\n// fs.writeFileSync(localFilePath, fileData)\n// logger(`[downloadFile] Wrote file sync to ${localFilePath}`)\n// }\n// } catch (error) {\n// logger(`[Error] Failed to download file from ${url}:`, error)\n// }\n\n// busy = false\n// }\n\ntype DownloadFunction = (fileUrl: string) => Promise<void>;\n\nclass FileDownloadManager {\n private filesToDownload: Map<string, number>;\n private maxRetries: number;\n private isDownloading: boolean = false;\n\n constructor(fileUrls: string[], maxRetries: number) {\n this.filesToDownload = new Map(fileUrls.map(url => [url, 0]));\n this.maxRetries = maxRetries;\n }\n\n async downloadFile(url: string, localFilePath: string): Promise<void> {\n const response = await fetch(url)\n const fileData = await response.text().catch((error) => {\n console.error(`Failed to parse text from ${url}:`, error)\n })\n if (!fileData) {\n console.error(`No file data from ${url}`)\n return\n }\n const localDirPath = path.dirname(localFilePath)\n \n await createDirectories(localDirPath)\n \n const filename = path.basename(localFilePath)\n \n const regex = /(\\d+)[\\w_]+\\.(sql|json)$/\n \n const match = filename.match(regex)\n \n let migrationNumber\n \n if (match && match.length > 1) {\n migrationNumber = match[1]\n }\n \n if (migrationNumber) {\n const fs = await BaseFileManager.getFs()\n const filesInDir = await fs.promises.readdir(localDirPath)\n for (const file of filesInDir) {\n if (file === filename) {\n continue\n }\n const innerMatch = file.match(regex)\n let existingFileMigrationNumber\n if (innerMatch && innerMatch.length > 1) {\n existingFileMigrationNumber = innerMatch[1]\n }\n if (\n migrationNumber &&\n existingFileMigrationNumber &&\n existingFileMigrationNumber === migrationNumber\n ) {\n await fs.promises.unlink(path.join(localDirPath, file))\n }\n }\n }\n \n try {\n const fs = await BaseFileManager.getFs()\n await fs.promises.writeFile(localFilePath, fileData)\n logger(`[downloadFile] Wrote file async to ${localFilePath}`)\n } catch (error) {\n const fs = await BaseFileManager.getFs()\n fs.writeFileSync(localFilePath, fileData)\n logger(`[downloadFile] Wrote file sync to ${localFilePath}`)\n }\n \n }\n\n async start(): Promise<void> {\n if (this.isDownloading) {\n console.warn(\"Download process is already running.\");\n return;\n }\n\n this.isDownloading = true;\n\n for (const [fileUrl, attempts] of this.filesToDownload.entries()) {\n let success = false;\n\n while (attempts < this.maxRetries) {\n try {\n console.log(`Starting download: ${fileUrl}`);\n await this.downloadFile(fileUrl, fileUrl);\n console.log(`Download successful: ${fileUrl}`);\n this.filesToDownload.delete(fileUrl);\n success = true;\n break; // Move to next file\n } catch (error) {\n logger(`Error downloading ${fileUrl}:`, error);\n this.filesToDownload.set(fileUrl, attempts + 1);\n }\n }\n\n if (!success) {\n console.error(`Failed to download after ${this.maxRetries} attempts: ${fileUrl}`);\n }\n }\n\n this.isDownloading = false;\n console.log(\"All downloads completed.\");\n }\n\n addFile(fileUrl: string): void {\n if (!this.filesToDownload.has(fileUrl)) {\n this.filesToDownload.set(fileUrl, 0);\n console.log(`Added file to download queue: ${fileUrl}`);\n } else {\n console.warn(`File already in queue: ${fileUrl}`);\n }\n }\n\n getPendingFiles(): string[] {\n return Array.from(this.filesToDownload.keys());\n }\n\n clear(): void {\n this.filesToDownload.clear();\n console.log(\"Cleared all files from the download queue.\");\n }\n}\n\n\nexport const fetchDirectory = async (url: string) => {\n const response = await fetch(url)\n return response.json()\n}\n\n// export const fetchFilesRecursively = async (\n// url: string,\n// localPath: string,\n// fileList: string[],\n// ) => {\n// for (const file of fileList) {\n// try {\n// const fileUrl = `${url}/${file}`\n// const fileLocalPath = path.join(localPath, file)\n\n// // logger(`[fetchFilesRecursively] fileUrl: ${fileUrl}`)\n// // logger(`[fetchFilesRecursively] fileLocalPath: ${fileLocalPath}`)\n\n// await downloadFile(fileUrl, fileLocalPath)\n// } catch (error) {\n// console.error(`Failed to fetch files from ${url}:`, error)\n// }\n// }\n// }\n\nexport const confirmFilesExist = async (filePaths: string[]) => {\n let everythingDownloaded = false\n\n for (const filePath of filePaths) {\n const fs = await BaseFileManager.getFs()\n everythingDownloaded = await fs.promises.exists(filePath)\n }\n\n if (!everythingDownloaded) {\n setTimeout(async () => {\n await confirmFilesExist(filePaths)\n }, 500)\n }\n}\n\nconst filesToExclude = ['.DS_Store']\n\nexport const syncDbFiles = async ({ filePaths, files }: Endpoints) => {\n let fileList = await fetchDirectory(filePaths)\n fileList = fileList.filter((file: string) => !filesToExclude.includes(file))\n fileList = fileList.map((file: string) => `${files}/${file}`)\n const downloadManager = new FileDownloadManager(fileList, 5)\n await downloadManager.start()\n // await fetchFilesRecursively(files, BROWSER_FS_TOP_DIR, fileList)\n await confirmFilesExist(fileList)\n logger('[syncDbFiles] Files synced!')\n}\n"],"names":[],"mappings":"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"}
@@ -7,11 +7,6 @@ export declare const internalMachine: import("xstate").StateMachine<Partial<Inte
7
7
  logic: import("xstate").CallbackActorLogic<import("xstate").EventObject, import("@/types").FromCallbackInput<InternalMachineContext>, import("xstate").EventObject>;
8
8
  id: string | undefined;
9
9
  };
10
- prepareDb: {
11
- src: "prepareDb";
12
- logic: import("xstate").CallbackActorLogic<import("xstate").EventObject, import("@/types").FromCallbackInput<InternalMachineContext>, import("xstate").EventObject>;
13
- id: string | undefined;
14
- };
15
10
  validateInput: {
16
11
  src: "validateInput";
17
12
  logic: import("xstate").CallbackActorLogic<import("xstate").EventObject, import("@/types").FromCallbackInput<InternalMachineContext>, import("xstate").EventObject>;
@@ -38,11 +33,6 @@ export declare const internalMachine: import("xstate").StateMachine<Partial<Inte
38
33
  logic: import("xstate").CallbackActorLogic<import("xstate").EventObject, import("@/types").FromCallbackInput<InternalMachineContext>, import("xstate").EventObject>;
39
34
  id: string | undefined;
40
35
  };
41
- prepareDb: {
42
- src: "prepareDb";
43
- logic: import("xstate").CallbackActorLogic<import("xstate").EventObject, import("@/types").FromCallbackInput<InternalMachineContext>, import("xstate").EventObject>;
44
- id: string | undefined;
45
- };
46
36
  validateInput: {
47
37
  src: "validateInput";
48
38
  logic: import("xstate").CallbackActorLogic<import("xstate").EventObject, import("@/types").FromCallbackInput<InternalMachineContext>, import("xstate").EventObject>;
@@ -1 +1 @@
1
- {"version":3,"file":"internalMachine.d.ts","sourceRoot":"","sources":["../../../../src/services/internal/internalMachine.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAkBhD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mKAwK1B,CAAA"}
1
+ {"version":3,"file":"internalMachine.d.ts","sourceRoot":"","sources":["../../../../src/services/internal/internalMachine.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAkBhD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mKAuK1B,CAAA"}
@@ -0,0 +1,188 @@
1
+ import { setup, assign } from 'xstate';
2
+ import { createBrowserInspector } from '@statelyai/inspect';
3
+ import { InternalState, MachineIds, INTERNAL_SAVING_CONFIG_SUCCESS, INTERNAL_LOADING_APP_DB_SUCCESS, INTERNAL_CONFIGURING_FS_SUCCESS, INTERNAL_VALIDATING_INPUT_SUCCESS, DB_NAME_APP } from './constants.js';
4
+ import { dbMachine } from '../db/dbMachine.js';
5
+ import debug from 'debug';
6
+ import { validateInput } from './actors/validateInput.js';
7
+ import { configureFs } from './actors/configureFs.js';
8
+ import { saveConfig } from './actors/saveConfig.js';
9
+ import { loadAppDb } from './actors/loadAppDb.js';
10
+ import { waitForFiles } from './actors/waitForFiles.js';
11
+
12
+ const logger = debug('seedSdk:services:internal:machine');
13
+ const { inspect } = createBrowserInspector({
14
+ autoStart: false,
15
+ });
16
+ const { IDLE, VALIDATING_INPUT, SAVING_CONFIG, CONFIGURING_FS, LOADING_APP_DB, } = InternalState;
17
+ // Create the state machine
18
+ const internalMachine = setup({
19
+ types: {
20
+ context: {},
21
+ input: {},
22
+ },
23
+ actors: {
24
+ // prepareDb,
25
+ validateInput,
26
+ waitForFiles,
27
+ configureFs,
28
+ loadAppDb,
29
+ saveConfig,
30
+ },
31
+ }).createMachine({
32
+ id: MachineIds.INTERNAL,
33
+ initial: IDLE,
34
+ context: ({ input }) => {
35
+ return {
36
+ ...input,
37
+ error: undefined,
38
+ hasFiles: false,
39
+ };
40
+ },
41
+ states: {
42
+ [IDLE]: {
43
+ on: {
44
+ reValidate: VALIDATING_INPUT,
45
+ init: {
46
+ target: VALIDATING_INPUT,
47
+ actions: [
48
+ assign({
49
+ appDbService: ({ context, spawn }) => {
50
+ return spawn(dbMachine, {
51
+ input: {
52
+ dbName: DB_NAME_APP,
53
+ pathToDir: context?.filesDir,
54
+ },
55
+ });
56
+ },
57
+ }),
58
+ ],
59
+ },
60
+ },
61
+ meta: {
62
+ displayText: 'Waiting for something to happen ...',
63
+ percentComplete: 0,
64
+ },
65
+ },
66
+ [VALIDATING_INPUT]: {
67
+ on: {
68
+ [INTERNAL_VALIDATING_INPUT_SUCCESS]: {
69
+ target: CONFIGURING_FS,
70
+ actions: assign({
71
+ endpoints: ({ event }) => event.endpoints,
72
+ addresses: ({ event }) => event.addresses,
73
+ filesDir: ({ event }) => event.filesDir,
74
+ arweaveDomain: ({ event }) => event.arweaveDomain,
75
+ }),
76
+ },
77
+ },
78
+ invoke: {
79
+ src: 'validateInput',
80
+ input: ({ context, event }) => ({ context, event }),
81
+ },
82
+ meta: {
83
+ displayText: 'Validating input',
84
+ percentComplete: 20,
85
+ },
86
+ tags: ['loading'],
87
+ },
88
+ // preparingDb: {
89
+ // on: {
90
+ // prepareDbSuccess: {
91
+ // target: CONFIGURING_FS,
92
+ // },
93
+ // },
94
+ // invoke: {
95
+ // src: 'prepareDb',
96
+ // input: ({ context, event }) => ({ context, event }),
97
+ // },
98
+ // },
99
+ waitingForFiles: {
100
+ on: {
101
+ filesReceived: {
102
+ target: LOADING_APP_DB,
103
+ },
104
+ },
105
+ invoke: {
106
+ src: 'waitForFiles',
107
+ input: ({ context, event }) => ({ context, event }),
108
+ },
109
+ },
110
+ [CONFIGURING_FS]: {
111
+ on: {
112
+ [INTERNAL_CONFIGURING_FS_SUCCESS]: {
113
+ target: LOADING_APP_DB,
114
+ actions: assign({ hasFiles: true }),
115
+ },
116
+ shouldWaitForFiles: {
117
+ target: 'waitingForFiles',
118
+ },
119
+ },
120
+ invoke: {
121
+ src: 'configureFs',
122
+ input: ({ context, event }) => ({ context, event }),
123
+ },
124
+ meta: {
125
+ displayText: 'Downloading app files',
126
+ percentComplete: 30,
127
+ },
128
+ tags: ['loading'],
129
+ },
130
+ [LOADING_APP_DB]: {
131
+ on: {
132
+ [INTERNAL_LOADING_APP_DB_SUCCESS]: {
133
+ target: SAVING_CONFIG,
134
+ actions: () => {
135
+ logger('[sdk] [internal/index] App DB loaded!');
136
+ },
137
+ },
138
+ },
139
+ invoke: {
140
+ src: 'loadAppDb',
141
+ input: ({ context, event }) => ({ context, event }),
142
+ },
143
+ },
144
+ // Save developer's config to DB
145
+ [SAVING_CONFIG]: {
146
+ on: {
147
+ [INTERNAL_SAVING_CONFIG_SUCCESS]: 'ready',
148
+ },
149
+ invoke: {
150
+ src: 'saveConfig',
151
+ input: ({ context, event }) => ({ context, event }),
152
+ },
153
+ meta: {
154
+ displayText: 'Saving configuration',
155
+ percentComplete: 80,
156
+ },
157
+ tags: ['loading'],
158
+ },
159
+ ready: {
160
+ entry: () => {
161
+ logger('[sdk] [internal/index] Ready!');
162
+ },
163
+ meta: {
164
+ displayText: "Crossing the t's ...",
165
+ percentComplete: 90,
166
+ },
167
+ },
168
+ error: {
169
+ on: {
170
+ retry: {
171
+ target: CONFIGURING_FS,
172
+ actions: assign({ error: undefined }),
173
+ },
174
+ },
175
+ entry: () => {
176
+ logger('[sdk] [internal/index] Error!');
177
+ },
178
+ meta: {
179
+ displayText: 'Whoops! Something went wrong.',
180
+ percentComplete: null,
181
+ },
182
+ tags: ['error'],
183
+ },
184
+ },
185
+ });
186
+
187
+ export { internalMachine };
188
+ //# sourceMappingURL=internalMachine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internalMachine.js","sources":["../../../../../src/services/internal/internalMachine.ts"],"sourcesContent":["import { assign, setup } from 'xstate'\nimport { createBrowserInspector } from '@statelyai/inspect'\nimport {\n DB_NAME_APP,\n INTERNAL_CONFIGURING_FS_SUCCESS,\n INTERNAL_LOADING_APP_DB_SUCCESS,\n INTERNAL_SAVING_CONFIG_SUCCESS,\n INTERNAL_VALIDATING_INPUT_SUCCESS,\n InternalState,\n MachineIds,\n} from './constants'\nimport { dbMachine } from '@/services/db/dbMachine'\nimport debug from 'debug'\nimport { validateInput } from '@/services/internal/actors/validateInput'\n// import { prepareDb } from '@/services/internal/actors/prepareDb'\nimport { configureFs } from '@/services/internal/actors/configureFs'\nimport { saveConfig } from '@/services/internal/actors/saveConfig'\nimport { loadAppDb } from '@/services/internal/actors/loadAppDb'\nimport { InternalMachineContext } from '@/types'\nimport { waitForFiles } from './actors/waitForFiles'\n\nconst logger = debug('seedSdk:services:internal:machine')\n\nconst { inspect } = createBrowserInspector({\n autoStart: false,\n})\n\nconst {\n IDLE,\n VALIDATING_INPUT,\n SAVING_CONFIG,\n CONFIGURING_FS,\n LOADING_APP_DB,\n} = InternalState\n\n// Create the state machine\nexport const internalMachine = setup({\n types: {\n context: {} as Partial<InternalMachineContext>,\n input: {} as Partial<InternalMachineContext> | undefined,\n },\n actors: {\n // prepareDb,\n validateInput,\n waitForFiles,\n configureFs,\n loadAppDb,\n saveConfig,\n },\n}).createMachine({\n id: MachineIds.INTERNAL,\n initial: IDLE,\n context: ({ input }) => {\n return {\n ...input,\n error: undefined,\n hasFiles: false,\n }\n },\n states: {\n [IDLE]: {\n on: {\n reValidate: VALIDATING_INPUT,\n init: {\n target: VALIDATING_INPUT,\n actions: [\n assign({\n appDbService: ({context, spawn }) => {\n return spawn(dbMachine, {\n input: {\n dbName: DB_NAME_APP,\n pathToDir: context?.filesDir,\n },\n })\n },\n }),\n ],\n },\n },\n meta: {\n displayText: 'Waiting for something to happen ...',\n percentComplete: 0,\n },\n },\n [VALIDATING_INPUT]: {\n on: {\n [INTERNAL_VALIDATING_INPUT_SUCCESS]: {\n target: CONFIGURING_FS,\n actions: assign({\n endpoints: ({ event }) => event.endpoints,\n addresses: ({ event }) => event.addresses,\n filesDir: ({ event }) => event.filesDir,\n arweaveDomain: ({ event }) => event.arweaveDomain,\n }),\n },\n },\n invoke: {\n src: 'validateInput',\n input: ({ context, event }) => ({ context, event }),\n },\n meta: {\n displayText: 'Validating input',\n percentComplete: 20,\n },\n tags: ['loading'],\n },\n // preparingDb: {\n // on: {\n // prepareDbSuccess: {\n // target: CONFIGURING_FS,\n // },\n // },\n // invoke: {\n // src: 'prepareDb',\n // input: ({ context, event }) => ({ context, event }),\n // },\n // },\n waitingForFiles: {\n on: {\n filesReceived: {\n target: LOADING_APP_DB,\n },\n },\n invoke: {\n src: 'waitForFiles',\n input: ({ context, event }) => ({ context, event }),\n },\n },\n [CONFIGURING_FS]: {\n on: {\n [INTERNAL_CONFIGURING_FS_SUCCESS]: {\n target: LOADING_APP_DB,\n actions: assign({ hasFiles: true }),\n },\n shouldWaitForFiles: {\n target: 'waitingForFiles',\n },\n },\n invoke: {\n src: 'configureFs',\n input: ({ context, event }) => ({ context, event }),\n },\n meta: {\n displayText: 'Downloading app files',\n percentComplete: 30,\n },\n tags: ['loading'],\n },\n [LOADING_APP_DB]: {\n on: {\n [INTERNAL_LOADING_APP_DB_SUCCESS]: {\n target: SAVING_CONFIG,\n actions: () => {\n logger('[sdk] [internal/index] App DB loaded!')\n },\n },\n },\n invoke: {\n src: 'loadAppDb',\n input: ({ context, event }) => ({ context, event }),\n },\n },\n // Save developer's config to DB\n [SAVING_CONFIG]: {\n on: {\n [INTERNAL_SAVING_CONFIG_SUCCESS]: 'ready',\n },\n invoke: {\n src: 'saveConfig',\n input: ({ context, event }) => ({ context, event }),\n },\n meta: {\n displayText: 'Saving configuration',\n percentComplete: 80,\n },\n tags: ['loading'],\n },\n ready: {\n entry: () => {\n logger('[sdk] [internal/index] Ready!')\n },\n meta: {\n displayText: \"Crossing the t's ...\",\n percentComplete: 90,\n },\n },\n error: {\n on: {\n retry: {\n target: CONFIGURING_FS,\n actions: assign({ error: undefined }),\n },\n },\n entry: () => {\n logger('[sdk] [internal/index] Error!')\n },\n meta: {\n displayText: 'Whoops! Something went wrong.',\n percentComplete: null,\n },\n tags: ['error'],\n },\n },\n})\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { fromCallback } from 'xstate';
2
+
3
+ const createPublishAttempt = fromCallback(({ sendBack, input: { context } }) => {
4
+ const _createPublishAttempt = async () => {
5
+ // Do some stuff
6
+ return true;
7
+ };
8
+ _createPublishAttempt().then(() => {
9
+ sendBack({ type: 'createPublishAttemptSuccess' });
10
+ });
11
+ });
12
+
13
+ export { createPublishAttempt };
14
+ //# sourceMappingURL=createPublishAttempt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createPublishAttempt.js","sources":["../../../../../../src/services/publish/actors/createPublishAttempt.ts"],"sourcesContent":["import { EventObject, fromCallback } from 'xstate'\nimport { FromCallbackInput, PublishMachineContext } from '@/types'\n\nexport const createPublishAttempt = fromCallback<\n EventObject,\n FromCallbackInput<PublishMachineContext>\n>(({ sendBack, input: { context } }) => {\n const _createPublishAttempt = async () => {\n // Do some stuff\n return true\n }\n\n _createPublishAttempt().then(() => {\n sendBack({ type: 'createPublishAttemptSuccess' })\n })\n})\n"],"names":[],"mappings":";;AAGa,MAAA,oBAAoB,GAAG,YAAY,CAG9C,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,KAAI;AACrC,IAAA,MAAM,qBAAqB,GAAG,YAAW;;AAEvC,QAAA,OAAO,IAAI;AACb,KAAC;AAED,IAAA,qBAAqB,EAAE,CAAC,IAAI,CAAC,MAAK;AAChC,QAAA,QAAQ,CAAC,EAAE,IAAI,EAAE,6BAA6B,EAAE,CAAC;AACnD,KAAC,CAAC;AACJ,CAAC;;;;"}
@@ -0,0 +1,70 @@
1
+ import { fromCallback } from 'xstate';
2
+ import '../../../seedSchema/SeedSchema.js';
3
+ import '../../../seedSchema/VersionSchema.js';
4
+ import '../../../seedSchema/MetadataSchema.js';
5
+ import '../../../seedSchema/AppStateSchema.js';
6
+ import { models } from '../../../seedSchema/ModelSchema.js';
7
+ import { modelUids } from '../../../seedSchema/ModelUidSchema.js';
8
+ import { BaseDb } from '../../../db/Db/BaseDb.js';
9
+ import { eq } from 'drizzle-orm';
10
+ import { getModelSchemas } from '../../../db/read/getModelSchemas.js';
11
+ import { BaseItem } from '../../../Item/BaseItem.js';
12
+
13
+ const preparePublishRequestData = fromCallback(({ sendBack, input: { context } }) => {
14
+ const { localId } = context;
15
+ const _preparePublishRequestData = async () => {
16
+ const item = await BaseItem.find({ seedLocalId: localId });
17
+ if (!item) {
18
+ return false;
19
+ }
20
+ const appDb = BaseDb.getAppDb();
21
+ const modelsRows = await appDb
22
+ .select({
23
+ modelName: models.name,
24
+ schemaUid: modelUids.uid,
25
+ })
26
+ .from(models)
27
+ .leftJoin(modelUids, eq(modelUids.modelId, models.id))
28
+ .where(eq(models.name, 'Version'));
29
+ if (!modelsRows || modelsRows.length === 0) {
30
+ sendBack({ type: 'preparePublishRequestDataError' });
31
+ return false;
32
+ }
33
+ const versionSchemaUid = modelsRows[0].schemaUid;
34
+ await item.getEditedProperties();
35
+ const { modelSchemas, schemaStringToModelRecord } = await getModelSchemas();
36
+ // const dataEncoder = new SchemaEncoder(modelProperty.schemaDefinition,)
37
+ // const encodedData = dataEncoder.encodeData(data,)
38
+ //
39
+ // itemData.listOfAttestations.push({
40
+ // schema : modelProperty.schemaUid,
41
+ // data : [
42
+ // {
43
+ // ...defaultAttestationData,
44
+ // data : encodedData,
45
+ // },
46
+ // ],
47
+ // },)
48
+ const publishRequestData = {
49
+ seedIsRevocable: false,
50
+ seedSchemaUid: item.schemaUid,
51
+ seedUid: item.seedUid,
52
+ versionSchemaUid,
53
+ versionUid: item.latestVersionUid,
54
+ listOfAttestations: [],
55
+ };
56
+ sendBack({
57
+ type: 'updateContext',
58
+ ...publishRequestData,
59
+ });
60
+ return true;
61
+ };
62
+ _preparePublishRequestData().then((success) => {
63
+ if (success) {
64
+ sendBack({ type: 'preparePublishRequestDataSuccess' });
65
+ }
66
+ });
67
+ });
68
+
69
+ export { preparePublishRequestData };
70
+ //# sourceMappingURL=preparePublishRequestData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preparePublishRequestData.js","sources":["../../../../../../src/services/publish/actors/preparePublishRequestData.ts"],"sourcesContent":["import { EventObject, fromCallback } from 'xstate'\nimport { FromCallbackInput, PublishMachineContext } from '@/types'\nimport { models as modelsTable, modelUids } from '@/seedSchema'\nimport { BaseDb } from '@/db/Db/BaseDb'\nimport { eq } from 'drizzle-orm'\nimport { getModelSchemas } from '@/db/read/getModelSchemas'\nimport { BaseItem } from '@/Item/BaseItem'\n\nexport const preparePublishRequestData = fromCallback<\n EventObject,\n FromCallbackInput<PublishMachineContext>\n>(({ sendBack, input: { context } }) => {\n const { localId } = context\n\n const _preparePublishRequestData = async () => {\n const item = await BaseItem.find({ seedLocalId: localId })\n\n if (!item) {\n return false\n }\n\n const appDb = BaseDb.getAppDb()\n\n const modelsRows = await appDb\n .select({\n modelName: modelsTable.name,\n schemaUid: modelUids.uid,\n })\n .from(modelsTable)\n .leftJoin(modelUids, eq(modelUids.modelId, modelsTable.id))\n .where(eq(modelsTable.name, 'Version'))\n\n if (!modelsRows || modelsRows.length === 0) {\n sendBack({ type: 'preparePublishRequestDataError' })\n return false\n }\n\n const versionSchemaUid = modelsRows[0].schemaUid\n\n const editedProperties = await item.getEditedProperties()\n\n const { modelSchemas, schemaStringToModelRecord } = await getModelSchemas({\n sdkConfigDb: appDb,\n })\n\n // const dataEncoder = new SchemaEncoder(modelProperty.schemaDefinition,)\n // const encodedData = dataEncoder.encodeData(data,)\n //\n // itemData.listOfAttestations.push({\n // schema : modelProperty.schemaUid,\n // data : [\n // {\n // ...defaultAttestationData,\n // data : encodedData,\n // },\n // ],\n // },)\n\n const publishRequestData = {\n seedIsRevocable: false,\n seedSchemaUid: item.schemaUid,\n seedUid: item.seedUid,\n versionSchemaUid,\n versionUid: item.latestVersionUid,\n listOfAttestations: [],\n }\n\n sendBack({\n type: 'updateContext',\n ...publishRequestData,\n })\n\n return true\n }\n\n _preparePublishRequestData().then((success) => {\n if (success) {\n sendBack({ type: 'preparePublishRequestDataSuccess' })\n }\n })\n})\n"],"names":["modelsTable"],"mappings":";;;;;;;;;;;;AAQa,MAAA,yBAAyB,GAAG,YAAY,CAGnD,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,KAAI;AACrC,IAAA,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO;AAE3B,IAAA,MAAM,0BAA0B,GAAG,YAAW;AAC5C,QAAA,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;QAE1D,IAAI,CAAC,IAAI,EAAE;AACT,YAAA,OAAO,KAAK;;AAGd,QAAA,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE;QAE/B,MAAM,UAAU,GAAG,MAAM;AACtB,aAAA,MAAM,CAAC;YACN,SAAS,EAAEA,MAAW,CAAC,IAAI;YAC3B,SAAS,EAAE,SAAS,CAAC,GAAG;SACzB;aACA,IAAI,CAACA,MAAW;AAChB,aAAA,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,EAAEA,MAAW,CAAC,EAAE,CAAC;aACzD,KAAK,CAAC,EAAE,CAACA,MAAW,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAEzC,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;AAC1C,YAAA,QAAQ,CAAC,EAAE,IAAI,EAAE,gCAAgC,EAAE,CAAC;AACpD,YAAA,OAAO,KAAK;;QAGd,MAAM,gBAAgB,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;AAEhD,QAAyB,MAAM,IAAI,CAAC,mBAAmB;QAEvD,MAAM,EAAE,YAAY,EAAE,yBAAyB,EAAE,GAAG,MAAM,eAAe,CAExE,CAAC;;;;;;;;;;;;;AAeF,QAAA,MAAM,kBAAkB,GAAG;AACzB,YAAA,eAAe,EAAE,KAAK;YACtB,aAAa,EAAE,IAAI,CAAC,SAAS;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,gBAAgB;YAChB,UAAU,EAAE,IAAI,CAAC,gBAAgB;AACjC,YAAA,kBAAkB,EAAE,EAAE;SACvB;AAED,QAAA,QAAQ,CAAC;AACP,YAAA,IAAI,EAAE,eAAe;AACrB,YAAA,GAAG,kBAAkB;AACtB,SAAA,CAAC;AAEF,QAAA,OAAO,IAAI;AACb,KAAC;AAED,IAAA,0BAA0B,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,KAAI;QAC5C,IAAI,OAAO,EAAE;AACX,YAAA,QAAQ,CAAC,EAAE,IAAI,EAAE,kCAAkC,EAAE,CAAC;;AAE1D,KAAC,CAAC;AACJ,CAAC;;;;"}