@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,84 @@
1
+ import { fromCallback, waitFor } from 'xstate';
2
+ import debug from 'debug';
3
+ import { setupFsListeners, areFsListenersReady } from '../../events/files/index.js';
4
+ import { setModel } from '../../stores/modelClass.js';
5
+ import { setArweaveDomain } from '../../helpers/ArweaveClient/index.js';
6
+ import { eventEmitter } from '../../eventBus.js';
7
+ import { setupServicesEventHandlers } from '../../services/events.js';
8
+ import { setupAllItemsEventHandlers } from '../../events/item/index.js';
9
+ import { setupServiceHandlers } from '../../events/services/index.js';
10
+ import { getGlobalService } from '../../services/global/globalMachine.js';
11
+ import { GlobalState } from '../../services/internal/constants.js';
12
+ import { isBrowser } from '../../helpers/environment.js';
13
+ import { BaseFileManager } from '../../helpers/FileManager/BaseFileManager.js';
14
+ import { BaseDb } from '../../db/Db/BaseDb.js';
15
+ import '../../helpers/index.js';
16
+ import { BaseQueryClient } from '../../helpers/QueryClient/BaseQueryClient.js';
17
+ import { BaseArweaveClient } from '../../helpers/ArweaveClient/BaseArweaveClient.js';
18
+
19
+ const logger = debug('seedSdk:ClientManager:initialize');
20
+ const initialize = fromCallback(({ sendBack, input: { context, event } }) => {
21
+ logger('initialize from ClientManager');
22
+ const { isInitialized } = context;
23
+ const { options, } = event;
24
+ if (isInitialized) {
25
+ sendBack({ type: 'initialized' });
26
+ return;
27
+ }
28
+ const _initialize = async () => {
29
+ const { config, addresses } = options;
30
+ if (isBrowser()) {
31
+ const FileManager = (await import('../../browser/helpers/FileManager.js')).FileManager;
32
+ const Db = (await import('../../browser/db/Db.js')).Db;
33
+ const QueryClient = (await import('../../browser/helpers/QueryClient.js')).QueryClient;
34
+ const ArweaveClient = (await import('../../browser/helpers/ArweaveClient.js')).ArweaveClient;
35
+ BaseFileManager.setPlatformClass(FileManager);
36
+ BaseDb.setPlatformClass(Db);
37
+ BaseQueryClient.setPlatformClass(QueryClient);
38
+ BaseArweaveClient.setPlatformClass(ArweaveClient);
39
+ }
40
+ const { models, endpoints, arweaveDomain, } = config;
41
+ const { files } = endpoints;
42
+ await BaseDb.connectToDb(files);
43
+ if (arweaveDomain) {
44
+ setArweaveDomain(arweaveDomain);
45
+ }
46
+ for (const [key, value] of Object.entries(models)) {
47
+ setModel(key, value);
48
+ }
49
+ setupFsListeners();
50
+ setupAllItemsEventHandlers();
51
+ setupServicesEventHandlers();
52
+ setupServiceHandlers();
53
+ if (areFsListenersReady()) {
54
+ eventEmitter.emit('fs.init');
55
+ }
56
+ if (!areFsListenersReady()) {
57
+ console.error('fs listeners not ready during init');
58
+ }
59
+ const globalService = getGlobalService();
60
+ globalService.send({
61
+ type: 'init',
62
+ endpoints,
63
+ models,
64
+ addresses,
65
+ arweaveDomain,
66
+ filesDir: files,
67
+ });
68
+ const { models: internalModels } = await import('../../db/configs/seed.schema.config.js');
69
+ for (const [key, value] of Object.entries(internalModels)) {
70
+ setModel(key, value);
71
+ }
72
+ await waitFor(globalService, (snapshot) => {
73
+ logger('snapshot.value', snapshot.value);
74
+ return snapshot.value === GlobalState.INITIALIZED;
75
+ });
76
+ logger('globalService initialized');
77
+ };
78
+ _initialize().then(() => {
79
+ sendBack({ type: 'initialized' });
80
+ });
81
+ });
82
+
83
+ export { initialize };
84
+ //# sourceMappingURL=initialize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initialize.js","sources":["../../../../../src/client/actors/initialize.ts"],"sourcesContent":["import { ClientManagerContext, FromCallbackInput } from \"@/types\";\nimport { fromCallback, EventObject, waitFor } from \"xstate\";\nimport debug from 'debug'\nimport { areFsListenersReady } from \"@/events/files\";\nimport { setModel } from \"@/stores/modelClass\";\nimport { setArweaveDomain } from \"@/helpers/ArweaveClient\";\nimport { eventEmitter } from \"@/eventBus\";\nimport { setupFsListeners } from \"@/events/files\";\nimport { setupServicesEventHandlers } from \"@/services/events\";\nimport { setupAllItemsEventHandlers } from \"@/events/item\";\nimport { setupServiceHandlers } from \"@/events/services\";\nimport { getGlobalService, } from \"@/services/global/globalMachine\";\nimport { GlobalState } from \"@/services/internal/constants\";\nimport { isBrowser } from \"@/helpers/environment\";\nimport { BaseFileManager } from \"@/helpers/FileManager/BaseFileManager\";\nimport { BaseDb } from \"@/db/Db/BaseDb\";\nimport { BaseArweaveClient, BaseQueryClient } from \"@/helpers\";\n\n\nconst logger = debug('seedSdk:ClientManager:initialize')\n\nexport const initialize = fromCallback<\nEventObject, \nFromCallbackInput<ClientManagerContext>\n>(({sendBack, input: {context, event}}) => {\n logger('initialize from ClientManager')\n const { isInitialized } = context\n const { options, } = event\n\n if (isInitialized) {\n sendBack({type: 'initialized'})\n return\n }\n\n const _initialize = async () => {\n const { config, addresses } = options\n\n if (isBrowser()) {\n const FileManager = (await import('../../browser/helpers/FileManager')).FileManager\n const Db = (await import('../../browser/db/Db')).Db\n const QueryClient = (await import('../../browser/helpers/QueryClient')).QueryClient\n const ArweaveClient = (await import('../../browser/helpers/ArweaveClient')).ArweaveClient\n BaseFileManager.setPlatformClass(FileManager)\n BaseDb.setPlatformClass(Db)\n BaseQueryClient.setPlatformClass(QueryClient)\n BaseArweaveClient.setPlatformClass(ArweaveClient)\n }\n \n const { models, endpoints, arweaveDomain, } = config\n \n const {files} = endpoints\n\n await BaseDb.connectToDb(files,)\n\n if (arweaveDomain) {\n setArweaveDomain(arweaveDomain)\n }\n\n for (const [key, value] of Object.entries(models)) {\n setModel(key, value)\n }\n setupFsListeners()\n setupAllItemsEventHandlers()\n setupServicesEventHandlers()\n setupServiceHandlers()\n if (areFsListenersReady()) {\n eventEmitter.emit('fs.init')\n }\n if (!areFsListenersReady()) {\n console.error('fs listeners not ready during init')\n }\n\n const globalService = getGlobalService()\n\n globalService.send({\n type: 'init',\n endpoints,\n models,\n addresses,\n arweaveDomain,\n filesDir: files,\n })\n\n const { models: internalModels } = await import('@/db/configs/seed.schema.config')\n for (const [key, value] of Object.entries(internalModels)) {\n setModel(key, value)\n }\n\n await waitFor(globalService, (snapshot) => {\n logger('snapshot.value', snapshot.value)\n return snapshot.value === GlobalState.INITIALIZED\n })\n logger('globalService initialized')\n }\n\n _initialize().then(() => {\n sendBack({type: 'initialized'})\n })\n})\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ import { fromCallback } from 'xstate';
2
+ import debug from 'debug';
3
+ import '../../seedSchema/SeedSchema.js';
4
+ import '../../seedSchema/VersionSchema.js';
5
+ import '../../seedSchema/MetadataSchema.js';
6
+ import { appState } from '../../seedSchema/AppStateSchema.js';
7
+ import '../../seedSchema/ModelSchema.js';
8
+ import '../../seedSchema/ModelUidSchema.js';
9
+
10
+ debug('seedSdk:client:writeToDb');
11
+ const saveAppState = fromCallback(({ sendBack, input: { key, value } }) => {
12
+ const _saveAppState = async () => {
13
+ const { BaseDb } = await import('../../db/Db/BaseDb.js');
14
+ if (!BaseDb) {
15
+ throw new Error('BaseDb not found');
16
+ }
17
+ const appDb = BaseDb.getAppDb();
18
+ if (!appDb) {
19
+ throw new Error('App DB not found');
20
+ }
21
+ console.log(`key: ${key} value: ${value}`);
22
+ appDb.insert(appState)
23
+ .values({
24
+ key: key,
25
+ value: JSON.stringify(value),
26
+ })
27
+ .onConflictDoUpdate({
28
+ target: appState.key,
29
+ set: {
30
+ value: JSON.stringify(value),
31
+ },
32
+ });
33
+ };
34
+ _saveAppState().then(() => {
35
+ sendBack({
36
+ type: 'saveAppStateSuccess',
37
+ key,
38
+ value,
39
+ });
40
+ });
41
+ });
42
+
43
+ export { saveAppState };
44
+ //# sourceMappingURL=saveAppState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"saveAppState.js","sources":["../../../../../src/client/actors/saveAppState.ts"],"sourcesContent":["import { FromCallbackInput } from \"@/types\";\nimport { fromCallback } from \"xstate\";\nimport { ClientManagerContext } from \"@/types\";\nimport { EventObject } from \"xstate\";\nimport debug from \"debug\";\nimport { appState } from \"@/seedSchema\";\n\nconst logger = debug('seedSdk:client:writeToDb')\n\nexport const saveAppState = fromCallback<\nEventObject, \nFromCallbackInput<ClientManagerContext>\n>(\n ({sendBack, input: {key, value}}) => {\n\n const _saveAppState = async () => {\n const { BaseDb } = await import('@/db/Db/BaseDb')\n if (!BaseDb) {\n throw new Error('BaseDb not found')\n }\n const appDb = BaseDb.getAppDb()\n if (!appDb) {\n throw new Error('App DB not found')\n }\n\n console.log(`key: ${key} value: ${value}`)\n\n appDb.insert(appState)\n .values({\n key: key,\n value: JSON.stringify(value),\n })\n .onConflictDoUpdate({\n target: appState.key,\n set: {\n value: JSON.stringify(value),\n },\n })\n \n }\n\n _saveAppState().then(() => {\n sendBack({\n type: 'saveAppStateSuccess',\n key,\n value,\n })\n })\n \n })\n"],"names":[],"mappings":";;;;;;;;;AAOe,KAAK,CAAC,0BAA0B;AAElC,MAAA,YAAY,GAAG,YAAY,CAItC,CAAC,EAAC,QAAQ,EAAE,KAAK,EAAE,EAAC,GAAG,EAAE,KAAK,EAAC,EAAC,KAAI;AAElC,IAAA,MAAM,aAAa,GAAG,YAAW;QAC/B,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,OAAO,uBAAgB,CAAC;QACjD,IAAI,CAAC,MAAM,EAAE;AACX,YAAA,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC;;AAErC,QAAA,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE;QAC/B,IAAI,CAAC,KAAK,EAAE;AACV,YAAA,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC;;QAGrC,OAAO,CAAC,GAAG,CAAC,CAAA,KAAA,EAAQ,GAAG,CAAW,QAAA,EAAA,KAAK,CAAE,CAAA,CAAC;AAE1C,QAAA,KAAK,CAAC,MAAM,CAAC,QAAQ;AAClB,aAAA,MAAM,CAAC;AACN,YAAA,GAAG,EAAE,GAAG;AACR,YAAA,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;SAC7B;AACA,aAAA,kBAAkB,CAAC;YAClB,MAAM,EAAE,QAAQ,CAAC,GAAG;AACpB,YAAA,GAAG,EAAE;AACH,gBAAA,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;AAC7B,aAAA;AACF,SAAA,CAAC;AAEN,KAAC;AAED,IAAA,aAAa,EAAE,CAAC,IAAI,CAAC,MAAK;AACxB,QAAA,QAAQ,CAAC;AACP,YAAA,IAAI,EAAE,qBAAqB;YAC3B,GAAG;YACH,KAAK;AACN,SAAA,CAAC;AACJ,KAAC,CAAC;AAEJ,CAAC;;;;"}
@@ -0,0 +1,61 @@
1
+ import { setup, assign } from 'xstate';
2
+ import { initialize } from './actors/initialize.js';
3
+ import { setAddresses } from './actions/setAddresses.js';
4
+
5
+ const clientManagerMachine = setup({
6
+ types: {
7
+ context: {},
8
+ input: {},
9
+ },
10
+ actions: {
11
+ setAddresses,
12
+ },
13
+ actors: {
14
+ initialize,
15
+ },
16
+ }).createMachine({
17
+ id: 'clientManager',
18
+ initial: 'uninitialized',
19
+ context: ({ input }) => input,
20
+ states: {
21
+ uninitialized: {
22
+ on: {
23
+ init: {
24
+ target: 'initializing',
25
+ },
26
+ },
27
+ },
28
+ initializing: {
29
+ on: {
30
+ initialized: {
31
+ target: 'idle',
32
+ },
33
+ },
34
+ invoke: {
35
+ src: 'initialize',
36
+ input: ({ event, context }) => ({ event, context }),
37
+ },
38
+ },
39
+ idle: {
40
+ entry: assign({
41
+ isInitialized: true,
42
+ }),
43
+ on: {
44
+ saveAppStateSuccess: {
45
+ actions: assign(({ event }) => {
46
+ const { key, value } = event;
47
+ return {
48
+ isSaving: false
49
+ };
50
+ }),
51
+ },
52
+ setAddresses: {
53
+ actions: ['setAddresses'],
54
+ },
55
+ },
56
+ },
57
+ },
58
+ });
59
+
60
+ export { clientManagerMachine };
61
+ //# sourceMappingURL=clientManagerMachine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clientManagerMachine.js","sources":["../../../../src/client/clientManagerMachine.ts"],"sourcesContent":["import { ClientManagerContext } from \"@/types\"\nimport { assign, setup } from \"xstate\"\nimport { initialize } from \"./actors/initialize\"\nimport { setAddresses } from \"./actions/setAddresses\"\n\nexport const clientManagerMachine = setup({\n types: {\n context: {} as ClientManagerContext,\n input: {} as ClientManagerContext | undefined,\n },\n actions: {\n setAddresses,\n },\n actors: {\n initialize,\n },\n}).createMachine({\n id: 'clientManager',\n initial: 'uninitialized',\n context: ({ input }) => input as ClientManagerContext,\n states: {\n uninitialized: {\n on: {\n init: {\n target: 'initializing',\n },\n },\n },\n initializing: {\n on: {\n initialized: {\n target: 'idle',\n },\n },\n invoke: {\n src: 'initialize',\n input: ({ event, context }) => ({ event, context }),\n },\n },\n idle: {\n entry: assign({\n isInitialized: true,\n }),\n on: {\n saveAppStateSuccess: {\n actions: assign(({ event }) => {\n const { key, value } = event\n return {\n isSaving: false\n }\n }),\n },\n setAddresses: {\n actions: ['setAddresses'],\n },\n },\n },\n },\n})\n"],"names":[],"mappings":";;;;AAKO,MAAM,oBAAoB,GAAG,KAAK,CAAC;AACxC,IAAA,KAAK,EAAE;AACL,QAAA,OAAO,EAAE,EAA0B;AACnC,QAAA,KAAK,EAAE,EAAsC;AAC9C,KAAA;AACD,IAAA,OAAO,EAAE;QACP,YAAY;AACb,KAAA;AACD,IAAA,MAAM,EAAE;QACN,UAAU;AACX,KAAA;CACF,CAAC,CAAC,aAAa,CAAC;AACf,IAAA,EAAE,EAAE,eAAe;AACnB,IAAA,OAAO,EAAE,eAAe;IACxB,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,KAA6B;AACrD,IAAA,MAAM,EAAE;AACN,QAAA,aAAa,EAAE;AACb,YAAA,EAAE,EAAE;AACF,gBAAA,IAAI,EAAE;AACJ,oBAAA,MAAM,EAAE,cAAc;AACvB,iBAAA;AACF,aAAA;AACF,SAAA;AACD,QAAA,YAAY,EAAE;AACZ,YAAA,EAAE,EAAE;AACF,gBAAA,WAAW,EAAE;AACX,oBAAA,MAAM,EAAE,MAAM;AACf,iBAAA;AACF,aAAA;AACD,YAAA,MAAM,EAAE;AACN,gBAAA,GAAG,EAAE,YAAY;AACjB,gBAAA,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AACpD,aAAA;AACF,SAAA;AACD,QAAA,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM,CAAC;AACZ,gBAAA,aAAa,EAAE,IAAI;aACpB,CAAC;AACF,YAAA,EAAE,EAAE;AACF,gBAAA,mBAAmB,EAAE;oBACnB,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,KAAI;AAC5B,wBAAA,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,KAAK;wBAC5B,OAAO;AACL,4BAAA,QAAQ,EAAE;yBACX;AACH,qBAAC,CAAC;AACH,iBAAA;AACD,gBAAA,YAAY,EAAE;oBACZ,OAAO,EAAE,CAAC,cAAc,CAAC;AAC1B,iBAAA;AACF,aAAA;AACF,SAAA;AACF,KAAA;AACF,CAAA;;;;"}
@@ -6,8 +6,7 @@ export declare abstract class BaseDb implements IDb {
6
6
  static setPlatformClass(platformClass: typeof BaseDb): void;
7
7
  static getAppDb(): BaseSQLiteDatabase;
8
8
  static isAppDbReady(): boolean;
9
- static prepareDb(filesDir: string): Promise<BaseSQLiteDatabase>;
10
- static connectToDb(pathToDir: string, dbName: string): Promise<unknown>;
9
+ static connectToDb(pathToDir: string): Promise<unknown>;
11
10
  static migrate(pathToDbDir: string, dbName: string, dbId: string): Promise<void>;
12
11
  }
13
12
  //# sourceMappingURL=BaseDb.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseDb.d.ts","sourceRoot":"","sources":["../../../../src/db/Db/BaseDb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE5D,8BAAsB,MAAO,YAAW,GAAG;;IAKzC,MAAM,CAAC,aAAa,EAAE,OAAO,MAAM,CAAA;IAEnC,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,OAAO,MAAM;IAIpD,MAAM,CAAC,QAAQ,IAAI,kBAAkB;IAIrC,MAAM,CAAC,YAAY,IAAI,OAAO;IAI9B,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAI/D,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;WAI1D,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAIvF"}
1
+ {"version":3,"file":"BaseDb.d.ts","sourceRoot":"","sources":["../../../../src/db/Db/BaseDb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE5D,8BAAsB,MAAO,YAAW,GAAG;;IAKzC,MAAM,CAAC,aAAa,EAAE,OAAO,MAAM,CAAA;IAEnC,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,OAAO,MAAM;IAIpD,MAAM,CAAC,QAAQ,IAAI,kBAAkB;IAIrC,MAAM,CAAC,YAAY,IAAI,OAAO;IAI9B,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,GAAI,OAAO,CAAC,OAAO,CAAC;WAI3C,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAIvF"}
@@ -0,0 +1,22 @@
1
+ class BaseDb {
2
+ constructor() {
3
+ }
4
+ static setPlatformClass(platformClass) {
5
+ this.PlatformClass = platformClass;
6
+ }
7
+ static getAppDb() {
8
+ return this.PlatformClass.getAppDb();
9
+ }
10
+ static isAppDbReady() {
11
+ return this.PlatformClass.isAppDbReady();
12
+ }
13
+ static connectToDb(pathToDir) {
14
+ return this.PlatformClass.connectToDb(pathToDir);
15
+ }
16
+ static async migrate(pathToDbDir, dbName, dbId) {
17
+ return this.PlatformClass.migrate(pathToDbDir, dbName, dbId);
18
+ }
19
+ }
20
+
21
+ export { BaseDb };
22
+ //# sourceMappingURL=BaseDb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseDb.js","sources":["../../../../../src/db/Db/BaseDb.ts"],"sourcesContent":["import { IDb } from '@/interfaces/IDb'\nimport { BaseSQLiteDatabase } from 'drizzle-orm/sqlite-core'\n\nexport abstract class BaseDb implements IDb {\n\n constructor() {\n }\n\n static PlatformClass: typeof BaseDb\n\n static setPlatformClass(platformClass: typeof BaseDb) {\n this.PlatformClass = platformClass\n }\n\n static getAppDb(): BaseSQLiteDatabase {\n return this.PlatformClass.getAppDb()\n }\n\n static isAppDbReady(): boolean {\n return this.PlatformClass.isAppDbReady()\n }\n\n static connectToDb(pathToDir: string,): Promise<unknown> {\n return this.PlatformClass.connectToDb(pathToDir,)\n }\n\n static async migrate(pathToDbDir: string, dbName: string, dbId: string): Promise<void> {\n return this.PlatformClass.migrate(pathToDbDir, dbName, dbId)\n }\n\n}"],"names":[],"mappings":"MAGsB,MAAM,CAAA;AAE1B,IAAA,WAAA,GAAA;;IAKA,OAAO,gBAAgB,CAAC,aAA4B,EAAA;AAClD,QAAA,IAAI,CAAC,aAAa,GAAG,aAAa;;AAGpC,IAAA,OAAO,QAAQ,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;;AAGtC,IAAA,OAAO,YAAY,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE;;IAG1C,OAAO,WAAW,CAAC,SAAiB,EAAA;QAClC,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,SAAS,CAAE;;IAGnD,aAAa,OAAO,CAAC,WAAmB,EAAE,MAAc,EAAE,IAAY,EAAA;AACpE,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC;;AAG/D;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"browser.app.db.config.d.ts","sourceRoot":"","sources":["../../../../src/db/configs/browser.app.db.config.ts"],"names":[],"mappings":";AAmBA,wBAOE"}
1
+ {"version":3,"file":"browser.app.db.config.d.ts","sourceRoot":"","sources":["../../../../src/db/configs/browser.app.db.config.ts"],"names":[],"mappings":";AAoBA,wBAOE"}
@@ -1 +1 @@
1
- {"version":3,"file":"node.app.db.config.d.ts","sourceRoot":"","sources":["../../../../src/db/configs/node.app.db.config.ts"],"names":[],"mappings":";AAmBA,wBAOE"}
1
+ {"version":3,"file":"node.app.db.config.d.ts","sourceRoot":"","sources":["../../../../src/db/configs/node.app.db.config.ts"],"names":[],"mappings":";AAoBA,wBAOE"}
@@ -1,28 +1,7 @@
1
1
  import { __decorate, __metadata } from 'tslib';
2
2
  import 'reflect-metadata';
3
- import { T as Text, M as Model } from './index-D-O-gmXo.js';
4
- import 'immer';
5
- import '@sinclair/typebox';
6
- import 'xstate';
7
- import './constants-C-6Pg8FW.js';
8
- import 'graphql-request';
9
- import '@ethereum-attestation-service/eas-sdk';
10
- import 'debug';
11
- import 'pluralize';
12
- import 'drizzle-orm/sqlite-core';
13
- import 'drizzle-orm';
14
- import 'eventemitter3';
15
- import 'nanoid';
16
- import 'nanoid-dictionary';
17
- import 'lodash-es';
18
- import '@statelyai/inspect';
19
- import 'path';
20
- import 'arweave';
21
- import 'rxjs';
22
- import 'drizzle-orm/casing';
23
- import 'react';
24
- import 'use-immer';
25
- import '@xstate/react';
3
+ import { Model } from '../../schema/model/index.js';
4
+ import { Text } from '../../schema/property/index.js';
26
5
 
27
6
  let Seed = class Seed {
28
7
  };
@@ -70,4 +49,4 @@ const models = {
70
49
  };
71
50
 
72
51
  export { models };
73
- //# sourceMappingURL=seed.schema.config-DmTl3a9U.js.map
52
+ //# sourceMappingURL=seed.schema.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seed.schema.config.js","sources":["../../../../../src/db/configs/seed.schema.config.ts"],"sourcesContent":["import { Model, Text } from '@/schema'\n\n@Model\nclass Seed {\n @Text() uid!: string\n @Text() type!: string\n}\n\n@Model\nclass Version {\n @Text() seedUid!: string\n @Text() note!: string\n}\n\n@Model\nclass Metadata {\n @Text() key!: string\n @Text() value!: string\n}\n\nexport const models = {\n Seed,\n Version,\n Metadata,\n}\n"],"names":[],"mappings":";;;;;AAGA,IAAM,IAAI,GAAV,MAAM,IAAI,CAAA;CAGT;AAFS,UAAA,CAAA;AAAP,IAAA,IAAI,EAAE;;AAAa,CAAA,EAAA,IAAA,CAAA,SAAA,EAAA,KAAA,EAAA,MAAA,CAAA;AACZ,UAAA,CAAA;AAAP,IAAA,IAAI,EAAE;;AAAc,CAAA,EAAA,IAAA,CAAA,SAAA,EAAA,MAAA,EAAA,MAAA,CAAA;AAFjB,IAAI,GAAA,UAAA,CAAA;IADT;AACK,CAAA,EAAA,IAAI,CAGT;AAGD,IAAM,OAAO,GAAb,MAAM,OAAO,CAAA;CAGZ;AAFS,UAAA,CAAA;AAAP,IAAA,IAAI,EAAE;;AAAiB,CAAA,EAAA,OAAA,CAAA,SAAA,EAAA,SAAA,EAAA,MAAA,CAAA;AAChB,UAAA,CAAA;AAAP,IAAA,IAAI,EAAE;;AAAc,CAAA,EAAA,OAAA,CAAA,SAAA,EAAA,MAAA,EAAA,MAAA,CAAA;AAFjB,OAAO,GAAA,UAAA,CAAA;IADZ;AACK,CAAA,EAAA,OAAO,CAGZ;AAGD,IAAM,QAAQ,GAAd,MAAM,QAAQ,CAAA;CAGb;AAFS,UAAA,CAAA;AAAP,IAAA,IAAI,EAAE;;AAAa,CAAA,EAAA,QAAA,CAAA,SAAA,EAAA,KAAA,EAAA,MAAA,CAAA;AACZ,UAAA,CAAA;AAAP,IAAA,IAAI,EAAE;;AAAe,CAAA,EAAA,QAAA,CAAA,SAAA,EAAA,OAAA,EAAA,MAAA,CAAA;AAFlB,QAAQ,GAAA,UAAA,CAAA;IADb;AACK,CAAA,EAAA,QAAQ,CAGb;AAEY,MAAA,MAAM,GAAG;IACpB,IAAI;IACJ,OAAO;IACP,QAAQ;;;;;"}
@@ -0,0 +1,29 @@
1
+ import { BaseDb } from '../Db/BaseDb.js';
2
+ import { seeds } from '../../seedSchema/SeedSchema.js';
3
+ import '../../seedSchema/VersionSchema.js';
4
+ import '../../seedSchema/MetadataSchema.js';
5
+ import '../../seedSchema/AppStateSchema.js';
6
+ import '../../seedSchema/ModelSchema.js';
7
+ import '../../seedSchema/ModelUidSchema.js';
8
+ import { or, and, isNotNull, not, eq } from 'drizzle-orm';
9
+
10
+ const getExistingItem = async ({ seedLocalId, seedUid, }) => {
11
+ const appDb = BaseDb.getAppDb();
12
+ const rows = await appDb
13
+ .select({
14
+ seedLocalId: seeds.localId,
15
+ seedUid: seeds.uid,
16
+ createdAt: seeds.createdAt,
17
+ })
18
+ .from(seeds)
19
+ .where(or(and(isNotNull(seeds.uid), not(eq(seeds.uid, '')), not(eq(seeds.uid, 'undefined')), not(eq(seeds.uid, 'null')), not(eq(seeds.uid, 'false')), not(eq(seeds.uid, '0')), eq(seeds.uid, seedUid)), and(isNotNull(seeds.localId), not(eq(seeds.localId, '')), not(eq(seeds.localId, 'undefined')), not(eq(seeds.localId, 'null')), not(eq(seeds.localId, 'false')), not(eq(seeds.localId, '0')), eq(seeds.localId, seedLocalId))));
20
+ if (!rows || rows.length === 0) {
21
+ return undefined;
22
+ }
23
+ const matchingRow = rows.find(row => row.seedUid === seedUid) ||
24
+ rows.find(row => row.seedLocalId === seedLocalId);
25
+ return matchingRow;
26
+ };
27
+
28
+ export { getExistingItem };
29
+ //# sourceMappingURL=getExistingItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getExistingItem.js","sources":["../../../../../src/db/read/getExistingItem.ts"],"sourcesContent":["import { BaseDb } from '@/db/Db/BaseDb'\nimport { seeds } from '@/seedSchema'\nimport { and, eq, isNotNull, not, or } from 'drizzle-orm'\n\ntype GetExistingItemProps = {\n seedLocalId: string\n seedUid: string\n}\n\ntype GetExistingItemReturn = {\n seedLocalId: string\n seedUid: string\n createdAt: string\n}\n\nexport const getExistingItem = async ({\n seedLocalId,\n seedUid,\n}: GetExistingItemProps): Promise<GetExistingItemReturn | undefined> => {\n const appDb = BaseDb.getAppDb()\n\n const rows = await appDb\n .select({\n seedLocalId: seeds.localId,\n seedUid: seeds.uid,\n createdAt: seeds.createdAt,\n })\n .from(seeds)\n .where(\n or(\n and(\n isNotNull(seeds.uid),\n not(eq(seeds.uid, '')),\n not(eq(seeds.uid, 'undefined')),\n not(eq(seeds.uid, 'null')),\n not(eq(seeds.uid, 'false')),\n not(eq(seeds.uid, '0')),\n eq(seeds.uid, seedUid)\n ),\n and(\n isNotNull(seeds.localId),\n not(eq(seeds.localId, '')),\n not(eq(seeds.localId, 'undefined')),\n not(eq(seeds.localId, 'null')),\n not(eq(seeds.localId, 'false')),\n not(eq(seeds.localId, '0')),\n eq(seeds.localId, seedLocalId)\n )\n )\n )\n\n if (!rows || rows.length === 0) {\n return undefined\n }\n\n const matchingRow = rows.find(row => row.seedUid === seedUid) ||\n rows.find(row => row.seedLocalId === seedLocalId)\n\n return matchingRow\n} "],"names":[],"mappings":";;;;;;;;;AAeO,MAAM,eAAe,GAAG,OAAO,EACpC,WAAW,EACX,OAAO,GACc,KAAgD;AACrE,IAAA,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE;IAE/B,MAAM,IAAI,GAAG,MAAM;AAChB,SAAA,MAAM,CAAC;QACN,WAAW,EAAE,KAAK,CAAC,OAAO;QAC1B,OAAO,EAAE,KAAK,CAAC,GAAG;QAClB,SAAS,EAAE,KAAK,CAAC,SAAS;KAC3B;SACA,IAAI,CAAC,KAAK;AACV,SAAA,KAAK,CACJ,EAAE,CACA,GAAG,CACD,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,EACpB,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EACtB,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,EAC/B,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,EAC1B,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,EAC3B,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EACvB,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CACvB,EACD,GAAG,CACD,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,EACxB,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAC1B,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,EACnC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,EAC9B,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,EAC/B,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,EAC3B,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,CAC/B,CACF,CACF;IAEH,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;AAC9B,QAAA,OAAO,SAAS;;AAGlB,IAAA,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,KAAK,OAAO,CAAC;AAC3D,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,WAAW,KAAK,WAAW,CAAC;AAEnD,IAAA,OAAO,WAAW;AACpB;;;;"}
@@ -0,0 +1,26 @@
1
+ import { getItemData } from './getItemData.js';
2
+ import { BaseItem } from '../../Item/BaseItem.js';
3
+ import { startCase } from 'lodash-es';
4
+
5
+ const getItem = async ({ modelName, seedLocalId, seedUid }) => {
6
+ const itemInitObj = await getItemData({
7
+ modelName,
8
+ seedLocalId,
9
+ seedUid,
10
+ });
11
+ if (!itemInitObj) {
12
+ console.error(`[db/queries] [getItem] no itemInitObj modelName: ${modelName} seedLocalId: ${seedLocalId} seedUid: ${seedUid}`);
13
+ return;
14
+ }
15
+ if (!itemInitObj.seedLocalId) {
16
+ console.error(`[db/queries] [getItem] no itemInitObj.seedLocalId modelName: ${modelName} seedLocalId: ${seedLocalId} seedUid: ${seedUid}`);
17
+ return;
18
+ }
19
+ if (!itemInitObj.modelName && itemInitObj.type) {
20
+ itemInitObj.modelName = startCase(itemInitObj.type);
21
+ }
22
+ return BaseItem.create(itemInitObj);
23
+ };
24
+
25
+ export { getItem };
26
+ //# sourceMappingURL=getItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getItem.js","sources":["../../../../../src/db/read/getItem.ts"],"sourcesContent":["import { getItemData } from './getItemData'\nimport { GetItem } from '@/types'\nimport { BaseItem } from '@/Item/BaseItem'\nimport { startCase } from 'lodash-es'\n\nexport const getItem: GetItem = async ({ modelName, seedLocalId, seedUid }) => {\n const itemInitObj = await getItemData({\n modelName,\n seedLocalId,\n seedUid,\n })\n\n if (!itemInitObj) {\n console.error(\n `[db/queries] [getItem] no itemInitObj modelName: ${modelName} seedLocalId: ${seedLocalId} seedUid: ${seedUid}`,\n )\n return\n }\n\n if (!itemInitObj.seedLocalId) {\n console.error(\n `[db/queries] [getItem] no itemInitObj.seedLocalId modelName: ${modelName} seedLocalId: ${seedLocalId} seedUid: ${seedUid}`,\n )\n return\n }\n\n if (!itemInitObj.modelName && itemInitObj.type) {\n itemInitObj.modelName = startCase(itemInitObj.type)\n }\n\n return BaseItem.create(itemInitObj)\n}\n"],"names":[],"mappings":";;;;AAKO,MAAM,OAAO,GAAY,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,KAAI;AAC5E,IAAA,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC;QACpC,SAAS;QACT,WAAW;QACX,OAAO;AACR,KAAA,CAAC;IAEF,IAAI,CAAC,WAAW,EAAE;QAChB,OAAO,CAAC,KAAK,CACX,CAAoD,iDAAA,EAAA,SAAS,CAAiB,cAAA,EAAA,WAAW,CAAa,UAAA,EAAA,OAAO,CAAE,CAAA,CAChH;QACD;;AAGF,IAAA,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE;QAC5B,OAAO,CAAC,KAAK,CACX,CAAgE,6DAAA,EAAA,SAAS,CAAiB,cAAA,EAAA,WAAW,CAAa,UAAA,EAAA,OAAO,CAAE,CAAA,CAC5H;QACD;;IAGF,IAAI,CAAC,WAAW,CAAC,SAAS,IAAI,WAAW,CAAC,IAAI,EAAE;QAC9C,WAAW,CAAC,SAAS,GAAG,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC;;AAGrD,IAAA,OAAO,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC;AACrC;;;;"}
@@ -0,0 +1,84 @@
1
+ import debug from 'debug';
2
+ import { BaseDb } from '../Db/BaseDb.js';
3
+ import { getTableColumns, eq, and, gt, sql } from 'drizzle-orm';
4
+ import { getItemProperties } from './getItemProperties.js';
5
+ import { getVersionData } from './subqueries/versionData.js';
6
+ import { seeds } from '../../seedSchema/SeedSchema.js';
7
+ import '../../seedSchema/VersionSchema.js';
8
+ import '../../seedSchema/MetadataSchema.js';
9
+ import '../../seedSchema/AppStateSchema.js';
10
+ import '../../seedSchema/ModelSchema.js';
11
+ import '../../seedSchema/ModelUidSchema.js';
12
+ import { getSeedData } from './getSeedData.js';
13
+
14
+ const logger = debug('seedSdk:db:read:getItemData');
15
+ const getItemData = async ({ modelName, seedLocalId, seedUid, }) => {
16
+ if (!seedLocalId && !seedUid) {
17
+ throw new Error('[db/queries] [getItem] no seedLocalId or seedUid');
18
+ }
19
+ if (seedUid && !seedLocalId) {
20
+ const seedData = await getSeedData({ seedUid });
21
+ if (!seedData) {
22
+ logger('[db/queries] [getItem] no seedData seedUid', seedUid);
23
+ return;
24
+ }
25
+ seedLocalId = seedData.localId;
26
+ }
27
+ const appDb = BaseDb.getAppDb();
28
+ const { localId, uid, ...rest } = getTableColumns(seeds);
29
+ const whereClauses = [];
30
+ if (modelName) {
31
+ whereClauses.push(eq(seeds.type, modelName.toLowerCase()));
32
+ }
33
+ if (seedUid) {
34
+ whereClauses.push(eq(seeds.uid, seedUid));
35
+ }
36
+ if (seedLocalId && !seedUid) {
37
+ whereClauses.push(eq(seeds.localId, seedLocalId));
38
+ }
39
+ const versionData = getVersionData();
40
+ const itemDataRows = await appDb
41
+ .with(versionData)
42
+ .select({
43
+ ...rest,
44
+ seedLocalId: seeds.localId,
45
+ seedUid: seeds.uid,
46
+ versionsCount: versionData.versionsCount,
47
+ lastVersionPublishedAt: versionData.lastVersionPublishedAt,
48
+ latestVersionUid: versionData.latestVersionUid,
49
+ latestVersionLocalId: versionData.latestVersionLocalId,
50
+ })
51
+ .from(seeds)
52
+ .leftJoin(versionData, eq(seeds.localId, versionData.seedLocalId))
53
+ .where(and(...whereClauses, gt(versionData.versionsCount, 0)))
54
+ .orderBy(sql.raw('COALESCE(attestation_created_at, created_at) DESC'))
55
+ .groupBy(seeds.localId);
56
+ if (!itemDataRows || itemDataRows.length === 0) {
57
+ logger('[db/queries] [getItemDataFromDb] no itemDataRows');
58
+ return;
59
+ }
60
+ let itemData = itemDataRows[0];
61
+ const propertiesData = await getItemProperties({
62
+ seedLocalId,
63
+ seedUid: itemData.seedUid || undefined,
64
+ });
65
+ if (!propertiesData || propertiesData.length === 0) {
66
+ return itemData;
67
+ }
68
+ for (const propertyData of propertiesData) {
69
+ const propertyName = propertyData.propertyName;
70
+ let propertyValue = propertyData.propertyValue;
71
+ if (propertyName.endsWith('Id') || propertyName.endsWith('Ids')) {
72
+ if (propertyData.refSeedType) {
73
+ const propertyNameVariant = propertyName.replace(/Ids?$/, '');
74
+ itemData[propertyNameVariant] = propertyValue;
75
+ }
76
+ }
77
+ itemData[propertyName] = propertyValue;
78
+ }
79
+ if (itemData)
80
+ return itemData;
81
+ };
82
+
83
+ export { getItemData };
84
+ //# sourceMappingURL=getItemData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getItemData.js","sources":["../../../../../src/db/read/getItemData.ts"],"sourcesContent":["import { GetItemData, ItemData } from \"@/types\"\nimport debug from \"debug\"\nimport { BaseDb } from \"../Db/BaseDb\"\nimport { and, eq, getTableColumns, gt, SQL, sql } from \"drizzle-orm\"\nimport { getItemProperties } from \"./getItemProperties\"\nimport { getVersionData } from \"./subqueries/versionData\"\nimport { seeds } from \"@/seedSchema\"\nimport { getSeedData } from \"./getSeedData\"\n\nconst logger = debug('seedSdk:db:read:getItemData')\n\nexport const getItemData: GetItemData = async ({\n modelName,\n seedLocalId,\n seedUid,\n}) => {\n if (!seedLocalId && !seedUid) {\n throw new Error('[db/queries] [getItem] no seedLocalId or seedUid')\n }\n\n if (seedUid && !seedLocalId) {\n const seedData = await getSeedData({ seedUid })\n if (!seedData) {\n logger('[db/queries] [getItem] no seedData seedUid', seedUid)\n return\n }\n seedLocalId = seedData.localId\n }\n\n const appDb = BaseDb.getAppDb()\n\n const { localId, uid, ...rest } = getTableColumns(seeds)\n\n const whereClauses: SQL[] = []\n\n if (modelName) {\n whereClauses.push(eq(seeds.type, modelName.toLowerCase()))\n }\n\n if (seedUid) {\n whereClauses.push(eq(seeds.uid, seedUid))\n }\n\n if (seedLocalId && !seedUid) {\n whereClauses.push(eq(seeds.localId, seedLocalId))\n }\n\n const versionData = getVersionData()\n\n const itemDataRows = await appDb\n .with(versionData)\n .select({\n ...rest,\n seedLocalId: seeds.localId,\n seedUid: seeds.uid,\n versionsCount: versionData.versionsCount,\n lastVersionPublishedAt: versionData.lastVersionPublishedAt,\n latestVersionUid: versionData.latestVersionUid,\n latestVersionLocalId: versionData.latestVersionLocalId,\n })\n .from(seeds)\n .leftJoin(versionData, eq(seeds.localId, versionData.seedLocalId))\n .where(and(...whereClauses, gt(versionData.versionsCount, 0)))\n .orderBy(sql.raw('COALESCE(attestation_created_at, created_at) DESC'))\n .groupBy(seeds.localId) as ItemData[]\n\n if (!itemDataRows || itemDataRows.length === 0) {\n logger('[db/queries] [getItemDataFromDb] no itemDataRows')\n return\n }\n\n let itemData = itemDataRows[0] as ItemData & { [key: string]: any }\n\n const propertiesData = await getItemProperties({\n seedLocalId,\n seedUid: itemData.seedUid || undefined,\n })\n\n if (!propertiesData || propertiesData.length === 0) {\n return itemData\n }\n\n for (const propertyData of propertiesData) {\n const propertyName = propertyData.propertyName\n\n let propertyValue = propertyData.propertyValue\n\n if (propertyName.endsWith('Id') || propertyName.endsWith('Ids')) {\n if (propertyData.refSeedType) {\n const propertyNameVariant = propertyName.replace(/Ids?$/, '')\n itemData[propertyNameVariant] = propertyValue\n }\n }\n\n itemData[propertyName] = propertyValue\n }\n\n if (itemData) return itemData\n}"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ import { seeds } from '../../seedSchema/SeedSchema.js';
2
+ import '../../seedSchema/VersionSchema.js';
3
+ import { metadata } from '../../seedSchema/MetadataSchema.js';
4
+ import '../../seedSchema/AppStateSchema.js';
5
+ import '../../seedSchema/ModelSchema.js';
6
+ import '../../seedSchema/ModelUidSchema.js';
7
+ import { isNotNull, eq, isNull } from 'drizzle-orm';
8
+ import { BaseDb } from '../Db/BaseDb.js';
9
+ import { getMetadataLatest } from './subqueries/metadataLatest.js';
10
+
11
+ const getItemProperties = async ({ seedLocalId, seedUid, edited, }) => {
12
+ const appDb = BaseDb.getAppDb();
13
+ const whereClauses = [isNotNull(metadata.propertyName)];
14
+ if (seedUid) {
15
+ whereClauses.push(eq(seeds.uid, seedUid));
16
+ }
17
+ if (seedLocalId) {
18
+ whereClauses.push(eq(seeds.localId, seedLocalId));
19
+ }
20
+ whereClauses.push(isNotNull(metadata.propertyName));
21
+ if (typeof edited !== 'undefined') {
22
+ if (edited) {
23
+ whereClauses.push(isNull(metadata.uid));
24
+ }
25
+ if (!edited) {
26
+ whereClauses.push(isNotNull(metadata.uid));
27
+ }
28
+ }
29
+ // const metadataColumns = getTableColumns(metadata)
30
+ const metadataLatest = getMetadataLatest({ seedLocalId, seedUid });
31
+ const propertiesData = await appDb
32
+ .with(metadataLatest)
33
+ .select()
34
+ .from(metadataLatest)
35
+ .where(eq(metadataLatest.rowNum, 1));
36
+ return propertiesData.map(data => ({
37
+ ...data,
38
+ localId: data.localId || '',
39
+ uid: data.uid || '',
40
+ propertyName: data.propertyName || '',
41
+ propertyValue: data.propertyValue || '',
42
+ schemaUid: data.schemaUid || '',
43
+ modelType: data.modelType || '',
44
+ seedLocalId: data.seedLocalId || '',
45
+ }));
46
+ };
47
+
48
+ export { getItemProperties };
49
+ //# sourceMappingURL=getItemProperties.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getItemProperties.js","sources":["../../../../../src/db/read/getItemProperties.ts"],"sourcesContent":["import { GetItemProperties, PropertyData } from '@/types'\nimport { metadata, seeds, versions } from '@/seedSchema'\nimport { and, eq, getTableColumns, isNotNull, isNull, sql, SQL } from 'drizzle-orm'\nimport { BaseDb } from '@/db/Db/BaseDb'\nimport { getMetadataLatest } from './subqueries/metadataLatest'\n\n\nexport const getItemProperties: GetItemProperties = async ({\n seedLocalId,\n seedUid,\n edited,\n}) => {\n const appDb = BaseDb.getAppDb()\n\n const whereClauses: SQL[] = [isNotNull(metadata.propertyName)]\n\n if (seedUid) {\n whereClauses.push(eq(seeds.uid, seedUid))\n }\n\n if (seedLocalId) {\n whereClauses.push(eq(seeds.localId, seedLocalId))\n }\n\n whereClauses.push(isNotNull(metadata.propertyName))\n\n if (typeof edited !== 'undefined') {\n if (edited) {\n whereClauses.push(isNull(metadata.uid))\n }\n if (!edited) {\n whereClauses.push(isNotNull(metadata.uid))\n }\n }\n\n // const metadataColumns = getTableColumns(metadata)\n\n const metadataLatest = getMetadataLatest({seedLocalId, seedUid})\n\n const propertiesData = await appDb\n .with(metadataLatest)\n .select()\n .from(metadataLatest)\n .where(eq(metadataLatest.rowNum, 1))\n\n return propertiesData.map(data => ({\n ...data,\n localId: data.localId || '',\n uid: data.uid || '',\n propertyName: data.propertyName || '',\n propertyValue: data.propertyValue || '',\n schemaUid: data.schemaUid || '',\n modelType: data.modelType || '',\n seedLocalId: data.seedLocalId || '',\n })) as PropertyData[]\n}\n"],"names":[],"mappings":";;;;;;;;;;AAOO,MAAM,iBAAiB,GAAsB,OAAO,EACzD,WAAW,EACX,OAAO,EACP,MAAM,GACP,KAAI;AACH,IAAA,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE;IAE/B,MAAM,YAAY,GAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAE9D,IAAI,OAAO,EAAE;AACX,QAAA,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;;IAG3C,IAAI,WAAW,EAAE;AACf,QAAA,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;;IAGnD,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;AAEnD,IAAA,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;QACjC,IAAI,MAAM,EAAE;YACV,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;;QAEzC,IAAI,CAAC,MAAM,EAAE;YACX,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;;;;IAM9C,MAAM,cAAc,GAAG,iBAAiB,CAAC,EAAC,WAAW,EAAE,OAAO,EAAC,CAAC;IAEhE,MAAM,cAAc,GAAG,MAAM;SAC1B,IAAI,CAAC,cAAc;AACnB,SAAA,MAAM;SACN,IAAI,CAAC,cAAc;SACnB,KAAK,CAAC,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAEtC,OAAO,cAAc,CAAC,GAAG,CAAC,IAAI,KAAK;AACjC,QAAA,GAAG,IAAI;AACP,QAAA,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE;AAC3B,QAAA,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,EAAE;AACnB,QAAA,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,EAAE;AACrC,QAAA,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,EAAE;AACvC,QAAA,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE;AAC/B,QAAA,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE;AAC/B,QAAA,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;AACpC,KAAA,CAAC,CAAmB;AACvB;;;;"}
@@ -0,0 +1,30 @@
1
+ import { BaseDb } from '../Db/BaseDb.js';
2
+ import '../../seedSchema/SeedSchema.js';
3
+ import '../../seedSchema/VersionSchema.js';
4
+ import { metadata } from '../../seedSchema/MetadataSchema.js';
5
+ import '../../seedSchema/AppStateSchema.js';
6
+ import '../../seedSchema/ModelSchema.js';
7
+ import '../../seedSchema/ModelUidSchema.js';
8
+ import { getTableColumns, eq, and } from 'drizzle-orm';
9
+
10
+ const getItemPropertyData = async (props) => {
11
+ const appDb = BaseDb.getAppDb();
12
+ const whereClauses = [];
13
+ const tableColumns = getTableColumns(metadata);
14
+ for (const [propertyName, propertyValue] of Object.entries(props)) {
15
+ if (Object.keys(tableColumns).includes(propertyName)) {
16
+ whereClauses.push(eq(tableColumns[propertyName], propertyValue));
17
+ }
18
+ }
19
+ const queryRows = await appDb
20
+ .select()
21
+ .from(metadata)
22
+ .where(and(...whereClauses));
23
+ if (!queryRows || queryRows.length === 0) {
24
+ return;
25
+ }
26
+ return queryRows[0];
27
+ };
28
+
29
+ export { getItemPropertyData };
30
+ //# sourceMappingURL=getItemProperty.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getItemProperty.js","sources":["../../../../../src/db/read/getItemProperty.ts"],"sourcesContent":["import { BaseDb } from '@/db/Db/BaseDb'\nimport { metadata, MetadataType } from '@/seedSchema'\nimport { and, eq, getTableColumns } from 'drizzle-orm'\n\ntype GetItemPropertyProps = Partial<MetadataType>\n\ntype GetItemPropertyData = (\n props: GetItemPropertyProps,\n) => Promise<Partial<MetadataType>>\n\nexport const getItemPropertyData: GetItemPropertyData = async (props) => {\n const appDb = BaseDb.getAppDb()\n\n const whereClauses = []\n\n const tableColumns = getTableColumns(metadata)\n\n for (const [propertyName, propertyValue] of Object.entries(props)) {\n if (Object.keys(tableColumns).includes(propertyName)) {\n whereClauses.push(eq(tableColumns[propertyName], propertyValue))\n }\n }\n\n const queryRows = await appDb\n .select()\n .from(metadata)\n .where(and(...whereClauses))\n\n if (!queryRows || queryRows.length === 0) {\n return\n }\n\n return queryRows[0]\n}\n"],"names":[],"mappings":";;;;;;;;;MAUa,mBAAmB,GAAwB,OAAO,KAAK,KAAI;AACtE,IAAA,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE;IAE/B,MAAM,YAAY,GAAG,EAAE;AAEvB,IAAA,MAAM,YAAY,GAAG,eAAe,CAAC,QAAQ,CAAC;AAE9C,IAAA,KAAK,MAAM,CAAC,YAAY,EAAE,aAAa,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACjE,QAAA,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;AACpD,YAAA,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,aAAa,CAAC,CAAC;;;IAIpE,MAAM,SAAS,GAAG,MAAM;AACrB,SAAA,MAAM;SACN,IAAI,CAAC,QAAQ;AACb,SAAA,KAAK,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC;IAE9B,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;QACxC;;AAGF,IAAA,OAAO,SAAS,CAAC,CAAC,CAAC;AACrB;;;;"}
@@ -0,0 +1,49 @@
1
+ import { eq, or, isNotNull, isNull, sql, and, gt } from 'drizzle-orm';
2
+ import { seeds } from '../../seedSchema/SeedSchema.js';
3
+ import '../../seedSchema/VersionSchema.js';
4
+ import '../../seedSchema/MetadataSchema.js';
5
+ import '../../seedSchema/AppStateSchema.js';
6
+ import '../../seedSchema/ModelSchema.js';
7
+ import '../../seedSchema/ModelUidSchema.js';
8
+ import { BaseDb } from '../Db/BaseDb.js';
9
+ import { getVersionData } from './subqueries/versionData.js';
10
+
11
+ const getItemsData = async ({ modelName, deleted, }) => {
12
+ const appDb = BaseDb.getAppDb();
13
+ const conditions = [];
14
+ if (modelName) {
15
+ conditions.push(eq(seeds.type, modelName.toLowerCase()));
16
+ }
17
+ if (deleted) {
18
+ conditions.push(or(isNotNull(seeds._markedForDeletion), eq(seeds._markedForDeletion, 1)));
19
+ }
20
+ if (!deleted) {
21
+ conditions.push(or(isNull(seeds._markedForDeletion), eq(seeds._markedForDeletion, 0)));
22
+ }
23
+ const versionData = getVersionData();
24
+ let query = appDb
25
+ .with(versionData)
26
+ .select({
27
+ seedLocalId: seeds.localId,
28
+ seedUid: seeds.uid,
29
+ schemaUid: seeds.schemaUid,
30
+ modelName: sql `${modelName}`,
31
+ attestationCreatedAt: seeds.attestationCreatedAt,
32
+ versionsCount: versionData.versionsCount,
33
+ lastVersionPublishedAt: versionData.lastVersionPublishedAt,
34
+ lastLocalUpdateAt: versionData.lastLocalUpdateAt,
35
+ latestVersionUid: versionData.latestVersionUid,
36
+ latestVersionLocalId: versionData.latestVersionLocalId,
37
+ createdAt: seeds.createdAt,
38
+ })
39
+ .from(seeds)
40
+ .leftJoin(versionData, eq(seeds.localId, versionData.seedLocalId))
41
+ .where(and(gt(versionData.versionsCount, 0), ...conditions))
42
+ .orderBy(sql.raw('COALESCE(attestation_created_at, created_at) DESC'))
43
+ .groupBy(seeds.localId);
44
+ const itemsData = (await query);
45
+ return itemsData;
46
+ };
47
+
48
+ export { getItemsData };
49
+ //# sourceMappingURL=getItems.js.map