supastash 0.1.62 → 0.2.1

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 (578) hide show
  1. package/README.md +37 -8
  2. package/dist/desktop/adapters/appstate.d.ts +2 -0
  3. package/dist/desktop/adapters/appstate.d.ts.map +1 -0
  4. package/dist/desktop/adapters/appstate.js +10 -0
  5. package/dist/desktop/adapters/crypto.d.ts +3 -0
  6. package/dist/desktop/adapters/crypto.d.ts.map +1 -0
  7. package/dist/desktop/adapters/crypto.js +16 -0
  8. package/dist/{core → desktop/core}/schemaManager/index.d.ts +1 -1
  9. package/dist/desktop/core/schemaManager/index.d.ts.map +1 -0
  10. package/dist/{core → desktop/core}/schemaManager/index.js +3 -3
  11. package/dist/{hooks/supastashData/index.d.ts → desktop/hooks/supastashData.d.ts} +2 -2
  12. package/dist/desktop/hooks/supastashData.d.ts.map +1 -0
  13. package/dist/desktop/hooks/supastashData.js +139 -0
  14. package/dist/{hooks → desktop/hooks}/supastashLogic.d.ts +1 -1
  15. package/dist/desktop/hooks/supastashLogic.d.ts.map +1 -0
  16. package/dist/{hooks → desktop/hooks}/supastashLogic.js +11 -12
  17. package/dist/{hooks/syncEngine/index.d.ts → desktop/hooks/syncEngine.d.ts} +1 -1
  18. package/dist/desktop/hooks/syncEngine.d.ts.map +1 -0
  19. package/dist/desktop/hooks/syncEngine.js +233 -0
  20. package/dist/desktop/index.d.ts +28 -0
  21. package/dist/desktop/index.d.ts.map +1 -0
  22. package/dist/desktop/index.js +21 -0
  23. package/dist/{hooks/supastashData → desktop/utils/fetchData}/eventQueues.d.ts +2 -2
  24. package/dist/desktop/utils/fetchData/eventQueues.d.ts.map +1 -0
  25. package/dist/{hooks/supastashData → desktop/utils/fetchData}/eventQueues.js +3 -3
  26. package/dist/{hooks/supastashData → desktop/utils/fetchData}/fetchCalls.d.ts +1 -1
  27. package/dist/desktop/utils/fetchData/fetchCalls.d.ts.map +1 -0
  28. package/dist/{hooks/supastashData → desktop/utils/fetchData}/fetchCalls.js +5 -5
  29. package/dist/desktop/utils/fetchData/initialFetch.d.ts +3 -0
  30. package/dist/desktop/utils/fetchData/initialFetch.d.ts.map +1 -0
  31. package/dist/{utils → desktop/utils}/fetchData/initialFetch.js +2 -2
  32. package/dist/{utils → desktop/utils}/fetchData/receiveData.d.ts +1 -1
  33. package/dist/desktop/utils/fetchData/receiveData.d.ts.map +1 -0
  34. package/dist/{utils → desktop/utils}/fetchData/receiveData.js +7 -7
  35. package/dist/desktop/utils/query/index.d.ts +73 -0
  36. package/dist/desktop/utils/query/index.d.ts.map +1 -0
  37. package/dist/desktop/utils/query/index.js +139 -0
  38. package/dist/desktop/utils/schema/wipeTables.d.ts.map +1 -0
  39. package/dist/{utils → desktop/utils}/schema/wipeTables.js +4 -4
  40. package/dist/desktop/utils/sync/pullFromRemote/fetchOlder.d.ts +44 -0
  41. package/dist/desktop/utils/sync/pullFromRemote/fetchOlder.d.ts.map +1 -0
  42. package/dist/desktop/utils/sync/pullFromRemote/fetchOlder.js +55 -0
  43. package/dist/desktop/utils/sync/pullFromRemote/fetchOlderHelpers.d.ts +33 -0
  44. package/dist/desktop/utils/sync/pullFromRemote/fetchOlderHelpers.d.ts.map +1 -0
  45. package/dist/desktop/utils/sync/pullFromRemote/fetchOlderHelpers.js +104 -0
  46. package/dist/desktop/utils/sync/pullFromRemote/index.d.ts.map +1 -0
  47. package/dist/{hooks/syncEngine → desktop/utils/sync}/pullFromRemote/index.js +7 -7
  48. package/dist/{utils → desktop/utils}/sync/pullFromRemote/pullData.d.ts +3 -4
  49. package/dist/desktop/utils/sync/pullFromRemote/pullData.d.ts.map +1 -0
  50. package/dist/{utils → desktop/utils}/sync/pullFromRemote/pullData.js +10 -15
  51. package/dist/desktop/utils/sync/pullFromRemote/updateLocalDb.d.ts +46 -0
  52. package/dist/desktop/utils/sync/pullFromRemote/updateLocalDb.d.ts.map +1 -0
  53. package/dist/desktop/utils/sync/pullFromRemote/updateLocalDb.js +284 -0
  54. package/dist/desktop/utils/sync/pushLocal/index.d.ts.map +1 -0
  55. package/dist/{hooks/syncEngine → desktop/utils/sync}/pushLocal/index.js +8 -11
  56. package/dist/desktop/utils/sync/pushLocal/sendUnsyncedToSupabase.d.ts.map +1 -0
  57. package/dist/{utils → desktop/utils}/sync/pushLocal/sendUnsyncedToSupabase.js +5 -8
  58. package/dist/{utils → desktop/utils}/sync/pushLocal/uploadChunk.d.ts +1 -1
  59. package/dist/desktop/utils/sync/pushLocal/uploadChunk.d.ts.map +1 -0
  60. package/dist/{utils → desktop/utils}/sync/pushLocal/uploadChunk.js +8 -12
  61. package/dist/{utils → desktop/utils}/sync/pushLocal/uploadHelpers.d.ts +2 -2
  62. package/dist/desktop/utils/sync/pushLocal/uploadHelpers.d.ts.map +1 -0
  63. package/dist/{utils → desktop/utils}/sync/pushLocal/uploadHelpers.js +7 -7
  64. package/dist/{utils → desktop/utils}/sync/status/filterKey.d.ts +3 -3
  65. package/dist/desktop/utils/sync/status/filterKey.d.ts.map +1 -0
  66. package/dist/desktop/utils/sync/status/filterKey.js +48 -0
  67. package/dist/desktop/utils/sync/status/repo.d.ts +10 -0
  68. package/dist/desktop/utils/sync/status/repo.d.ts.map +1 -0
  69. package/dist/{utils → desktop/utils}/sync/status/repo.js +31 -25
  70. package/dist/{utils → desktop/utils}/sync/status/services.d.ts +6 -7
  71. package/dist/desktop/utils/sync/status/services.d.ts.map +1 -0
  72. package/dist/{utils → desktop/utils}/sync/status/services.js +4 -9
  73. package/dist/{utils → desktop/utils}/sync/status/syncStatus.d.ts +6 -8
  74. package/dist/desktop/utils/sync/status/syncStatus.d.ts.map +1 -0
  75. package/dist/{utils → desktop/utils}/sync/status/syncStatus.js +14 -6
  76. package/dist/index.d.ts +18 -23
  77. package/dist/index.d.ts.map +1 -1
  78. package/dist/index.js +12 -21
  79. package/dist/native/core/schemaManager/index.d.ts +40 -0
  80. package/dist/native/core/schemaManager/index.d.ts.map +1 -0
  81. package/dist/native/core/schemaManager/index.js +141 -0
  82. package/dist/native/hooks/supastashData.d.ts +67 -0
  83. package/dist/native/hooks/supastashData.d.ts.map +1 -0
  84. package/dist/{hooks/supastashData/index.js → native/hooks/supastashData.js} +23 -13
  85. package/dist/native/hooks/supastashLogic.d.ts +19 -0
  86. package/dist/native/hooks/supastashLogic.d.ts.map +1 -0
  87. package/dist/native/hooks/supastashLogic.js +101 -0
  88. package/dist/native/hooks/syncEngine.d.ts +28 -0
  89. package/dist/native/hooks/syncEngine.d.ts.map +1 -0
  90. package/dist/{hooks/syncEngine/index.js → native/hooks/syncEngine.js} +18 -18
  91. package/dist/native/index.d.ts +28 -0
  92. package/dist/native/index.d.ts.map +1 -0
  93. package/dist/native/index.js +21 -0
  94. package/dist/native/utils/fetchData/eventQueues.d.ts +5 -0
  95. package/dist/native/utils/fetchData/eventQueues.d.ts.map +1 -0
  96. package/dist/native/utils/fetchData/eventQueues.js +52 -0
  97. package/dist/native/utils/fetchData/fetchCalls.d.ts +9 -0
  98. package/dist/native/utils/fetchData/fetchCalls.d.ts.map +1 -0
  99. package/dist/native/utils/fetchData/fetchCalls.js +88 -0
  100. package/dist/native/utils/fetchData/initialFetch.d.ts +3 -0
  101. package/dist/native/utils/fetchData/initialFetch.d.ts.map +1 -0
  102. package/dist/native/utils/fetchData/initialFetch.js +21 -0
  103. package/dist/native/utils/fetchData/receiveData.d.ts +3 -0
  104. package/dist/native/utils/fetchData/receiveData.d.ts.map +1 -0
  105. package/dist/native/utils/fetchData/receiveData.js +39 -0
  106. package/dist/native/utils/query/index.d.ts +73 -0
  107. package/dist/native/utils/query/index.d.ts.map +1 -0
  108. package/dist/native/utils/query/index.js +139 -0
  109. package/dist/native/utils/schema/wipeTables.d.ts +98 -0
  110. package/dist/native/utils/schema/wipeTables.d.ts.map +1 -0
  111. package/dist/native/utils/schema/wipeTables.js +188 -0
  112. package/dist/native/utils/sync/pullFromRemote/fetchOlder.d.ts +44 -0
  113. package/dist/native/utils/sync/pullFromRemote/fetchOlder.d.ts.map +1 -0
  114. package/dist/native/utils/sync/pullFromRemote/fetchOlder.js +55 -0
  115. package/dist/native/utils/sync/pullFromRemote/fetchOlderHelpers.d.ts +33 -0
  116. package/dist/native/utils/sync/pullFromRemote/fetchOlderHelpers.d.ts.map +1 -0
  117. package/dist/native/utils/sync/pullFromRemote/fetchOlderHelpers.js +104 -0
  118. package/dist/native/utils/sync/pullFromRemote/index.d.ts +5 -0
  119. package/dist/native/utils/sync/pullFromRemote/index.d.ts.map +1 -0
  120. package/dist/native/utils/sync/pullFromRemote/index.js +73 -0
  121. package/dist/native/utils/sync/pullFromRemote/pullData.d.ts +21 -0
  122. package/dist/native/utils/sync/pullFromRemote/pullData.d.ts.map +1 -0
  123. package/dist/native/utils/sync/pullFromRemote/pullData.js +80 -0
  124. package/dist/native/utils/sync/pullFromRemote/updateLocalDb.d.ts +46 -0
  125. package/dist/native/utils/sync/pullFromRemote/updateLocalDb.d.ts.map +1 -0
  126. package/dist/native/utils/sync/pullFromRemote/updateLocalDb.js +278 -0
  127. package/dist/native/utils/sync/pushLocal/index.d.ts +5 -0
  128. package/dist/native/utils/sync/pushLocal/index.d.ts.map +1 -0
  129. package/dist/native/utils/sync/pushLocal/index.js +101 -0
  130. package/dist/native/utils/sync/pushLocal/sendUnsyncedToSupabase.d.ts +6 -0
  131. package/dist/native/utils/sync/pushLocal/sendUnsyncedToSupabase.d.ts.map +1 -0
  132. package/dist/native/utils/sync/pushLocal/sendUnsyncedToSupabase.js +57 -0
  133. package/dist/native/utils/sync/pushLocal/uploadChunk.d.ts +8 -0
  134. package/dist/native/utils/sync/pushLocal/uploadChunk.d.ts.map +1 -0
  135. package/dist/native/utils/sync/pushLocal/uploadChunk.js +173 -0
  136. package/dist/native/utils/sync/pushLocal/uploadHelpers.d.ts +41 -0
  137. package/dist/native/utils/sync/pushLocal/uploadHelpers.d.ts.map +1 -0
  138. package/dist/native/utils/sync/pushLocal/uploadHelpers.js +243 -0
  139. package/dist/native/utils/sync/status/filterKey.d.ts +15 -0
  140. package/dist/native/utils/sync/status/filterKey.d.ts.map +1 -0
  141. package/dist/{utils → native/utils}/sync/status/filterKey.js +5 -16
  142. package/dist/native/utils/sync/status/repo.d.ts +10 -0
  143. package/dist/native/utils/sync/status/repo.d.ts.map +1 -0
  144. package/dist/native/utils/sync/status/repo.js +97 -0
  145. package/dist/native/utils/sync/status/services.d.ts +31 -0
  146. package/dist/native/utils/sync/status/services.d.ts.map +1 -0
  147. package/dist/native/utils/sync/status/services.js +107 -0
  148. package/dist/native/utils/sync/status/syncStatus.d.ts +109 -0
  149. package/dist/native/utils/sync/status/syncStatus.d.ts.map +1 -0
  150. package/dist/native/utils/sync/status/syncStatus.js +161 -0
  151. package/dist/shared/constants/syncDefaults.d.ts.map +1 -0
  152. package/dist/{core → shared/core}/config/index.d.ts +2 -0
  153. package/dist/shared/core/config/index.d.ts.map +1 -0
  154. package/dist/{core → shared/core}/config/index.js +9 -1
  155. package/dist/shared/core/platform/appState.d.ts +12 -0
  156. package/dist/shared/core/platform/appState.d.ts.map +1 -0
  157. package/dist/shared/core/platform/appState.js +11 -0
  158. package/dist/shared/db/adapters/expo_sqlite.d.ts +3 -0
  159. package/dist/shared/db/adapters/expo_sqlite.d.ts.map +1 -0
  160. package/dist/shared/db/adapters/expo_sqlite.js +72 -0
  161. package/dist/shared/db/adapters/rn_nitro.d.ts +3 -0
  162. package/dist/shared/db/adapters/rn_nitro.d.ts.map +1 -0
  163. package/dist/shared/db/adapters/rn_nitro.js +111 -0
  164. package/dist/shared/db/adapters/rn_sqlite_storage.d.ts +3 -0
  165. package/dist/shared/db/adapters/rn_sqlite_storage.d.ts.map +1 -0
  166. package/dist/shared/db/adapters/rn_sqlite_storage.js +93 -0
  167. package/dist/shared/db/adapters/tauri.d.ts +3 -0
  168. package/dist/shared/db/adapters/tauri.d.ts.map +1 -0
  169. package/dist/shared/db/adapters/tauri.js +100 -0
  170. package/dist/shared/db/dbErrorMsg.d.ts.map +1 -0
  171. package/dist/{db → shared/db}/dbErrorMsg.js +7 -0
  172. package/dist/{db → shared/db}/dbInitializer.d.ts +1 -1
  173. package/dist/shared/db/dbInitializer.d.ts.map +1 -0
  174. package/dist/{db → shared/db}/dbInitializer.js +28 -15
  175. package/dist/shared/db/normalizer.d.ts +6 -0
  176. package/dist/shared/db/normalizer.d.ts.map +1 -0
  177. package/dist/shared/db/normalizer.js +26 -0
  178. package/dist/{hooks → shared/hooks}/supastashFilters/index.d.ts +3 -3
  179. package/dist/shared/hooks/supastashFilters/index.d.ts.map +1 -0
  180. package/dist/{hooks → shared/hooks}/supastashFilters/index.js +6 -4
  181. package/dist/{hooks → shared/hooks}/syncStatus/index.d.ts +1 -1
  182. package/dist/shared/hooks/syncStatus/index.d.ts.map +1 -0
  183. package/dist/shared/store/localCache.d.ts.map +1 -0
  184. package/dist/shared/store/sharedDb.d.ts +6 -0
  185. package/dist/shared/store/sharedDb.d.ts.map +1 -0
  186. package/dist/shared/store/sharedDb.js +17 -0
  187. package/dist/shared/store/syncCalls.d.ts.map +1 -0
  188. package/dist/{store → shared/store}/syncStatus.d.ts +1 -1
  189. package/dist/shared/store/syncStatus.d.ts.map +1 -0
  190. package/dist/shared/store/tableFilters.d.ts +5 -0
  191. package/dist/shared/store/tableFilters.d.ts.map +1 -0
  192. package/dist/shared/store/tableSchemaData.d.ts.map +1 -0
  193. package/dist/shared/store/tx.d.ts +3 -0
  194. package/dist/shared/store/tx.d.ts.map +1 -0
  195. package/dist/shared/store/tx.js +1 -0
  196. package/dist/shared/types/adapters.types.d.ts +8 -0
  197. package/dist/{types → shared/types}/expoSqlite.types.d.ts +3 -13
  198. package/dist/{types → shared/types}/index.d.ts +1 -1
  199. package/dist/shared/types/index.d.ts.map +1 -0
  200. package/dist/{types → shared/types}/liteQuery.types.d.ts +2 -2
  201. package/dist/{types → shared/types}/query.types.d.ts +24 -1
  202. package/dist/{types → shared/types}/realtimeData.types.d.ts +8 -4
  203. package/dist/{types → shared/types}/supastashConfig.types.d.ts +263 -8
  204. package/dist/{types → shared/types}/syncEngine.types.d.ts +49 -7
  205. package/dist/shared/utils/connection.d.ts.map +1 -0
  206. package/dist/{utils → shared/utils}/connection.js +6 -6
  207. package/dist/shared/utils/errorHandler.d.ts +6 -0
  208. package/dist/shared/utils/errorHandler.d.ts.map +1 -0
  209. package/dist/shared/utils/errorHandler.js +8 -0
  210. package/dist/shared/utils/events/eventBus.d.ts.map +1 -0
  211. package/dist/shared/utils/fetchData/addPayloadToUI.d.ts.map +1 -0
  212. package/dist/shared/utils/fetchData/createTable.d.ts.map +1 -0
  213. package/dist/shared/utils/fetchData/createTable.js +38 -0
  214. package/dist/shared/utils/fetchData/dataState.d.ts.map +1 -0
  215. package/dist/{hooks/supastashData → shared/utils/fetchData}/dataState.js +1 -1
  216. package/dist/shared/utils/fetchData/deleteData.d.ts.map +1 -0
  217. package/dist/{utils → shared/utils}/fetchData/deleteData.js +8 -5
  218. package/dist/{utils → shared/utils}/fetchData/fetchLocalData.d.ts +2 -2
  219. package/dist/shared/utils/fetchData/fetchLocalData.d.ts.map +1 -0
  220. package/dist/shared/utils/fetchData/getKeyType.d.ts.map +1 -0
  221. package/dist/shared/utils/fetchData/liteHelpers.d.ts +6 -0
  222. package/dist/shared/utils/fetchData/liteHelpers.d.ts.map +1 -0
  223. package/dist/shared/utils/fetchData/liteHelpers.js +92 -0
  224. package/dist/shared/utils/fetchData/realTimeCall.d.ts.map +1 -0
  225. package/dist/{utils → shared/utils}/fetchData/realTimeCall.js +2 -2
  226. package/dist/shared/utils/fetchData/realTimeManager.d.ts.map +1 -0
  227. package/dist/shared/utils/fetchData/registerSub.d.ts +4 -0
  228. package/dist/shared/utils/fetchData/registerSub.d.ts.map +1 -0
  229. package/dist/{hooks/supastashData → shared/utils/fetchData}/registerSub.js +3 -3
  230. package/dist/shared/utils/fetchData/setDataInBatches.d.ts.map +1 -0
  231. package/dist/shared/utils/fetchData/snapShot.d.ts.map +1 -0
  232. package/dist/shared/utils/fetchData/validatePayload.d.ts.map +1 -0
  233. package/dist/shared/utils/genUUID.d.ts.map +1 -0
  234. package/dist/shared/utils/getSafeValues.d.ts.map +1 -0
  235. package/dist/shared/utils/getTableSchema.d.ts.map +1 -0
  236. package/dist/{utils → shared/utils}/logs.d.ts +1 -0
  237. package/dist/shared/utils/logs.d.ts.map +1 -0
  238. package/dist/{utils → shared/utils}/logs.js +6 -1
  239. package/dist/{utils → shared/utils}/query/builder/crud.d.ts +5 -5
  240. package/dist/shared/utils/query/builder/crud.d.ts.map +1 -0
  241. package/dist/{utils → shared/utils}/query/builder/filters.d.ts +36 -12
  242. package/dist/shared/utils/query/builder/filters.d.ts.map +1 -0
  243. package/dist/{utils → shared/utils}/query/builder/filters.js +33 -1
  244. package/dist/{utils → shared/utils}/query/builder/index.d.ts +29 -1
  245. package/dist/shared/utils/query/builder/index.d.ts.map +1 -0
  246. package/dist/shared/utils/query/builder/index.js +138 -0
  247. package/dist/shared/utils/query/builder/mainQuery.d.ts.map +1 -0
  248. package/dist/{utils → shared/utils}/query/builder/mainQuery.js +17 -2
  249. package/dist/shared/utils/query/helpers/localDb/getLocalMethod.d.ts +15 -0
  250. package/dist/shared/utils/query/helpers/localDb/getLocalMethod.d.ts.map +1 -0
  251. package/dist/{utils → shared/utils}/query/helpers/localDb/getLocalMethod.js +7 -6
  252. package/dist/{utils → shared/utils}/query/helpers/localDb/insertMany.d.ts +3 -0
  253. package/dist/shared/utils/query/helpers/localDb/insertMany.d.ts.map +1 -0
  254. package/dist/{utils → shared/utils}/query/helpers/localDb/insertMany.js +10 -3
  255. package/dist/shared/utils/query/helpers/localDb/localQueryBuilder.d.ts +34 -0
  256. package/dist/shared/utils/query/helpers/localDb/localQueryBuilder.d.ts.map +1 -0
  257. package/dist/{utils → shared/utils}/query/helpers/localDb/localQueryBuilder.js +17 -10
  258. package/dist/{utils → shared/utils}/query/helpers/localDb/upsertMany.d.ts +3 -0
  259. package/dist/shared/utils/query/helpers/localDb/upsertMany.d.ts.map +1 -0
  260. package/dist/{utils → shared/utils}/query/helpers/localDb/upsertMany.js +9 -2
  261. package/dist/shared/utils/query/helpers/mainQueryHelpers.d.ts.map +1 -0
  262. package/dist/{utils → shared/utils}/query/helpers/mainQueryHelpers.js +39 -9
  263. package/dist/shared/utils/query/helpers/queryValidator.d.ts.map +1 -0
  264. package/dist/shared/utils/query/helpers/queueRemote.d.ts.map +1 -0
  265. package/dist/{utils → shared/utils}/query/helpers/queueRemote.js +36 -27
  266. package/dist/shared/utils/query/helpers/remoteDb/queryFilterBuilder.d.ts.map +1 -0
  267. package/dist/shared/utils/query/helpers/remoteDb/queryUtils.d.ts.map +1 -0
  268. package/dist/shared/utils/query/localDbQuery/delete.d.ts +22 -0
  269. package/dist/shared/utils/query/localDbQuery/delete.d.ts.map +1 -0
  270. package/dist/{utils → shared/utils}/query/localDbQuery/delete.js +16 -5
  271. package/dist/shared/utils/query/localDbQuery/index.d.ts.map +1 -0
  272. package/dist/shared/utils/query/localDbQuery/index.js +15 -0
  273. package/dist/shared/utils/query/localDbQuery/insert.d.ts +10 -0
  274. package/dist/shared/utils/query/localDbQuery/insert.d.ts.map +1 -0
  275. package/dist/{utils → shared/utils}/query/localDbQuery/insert.js +8 -5
  276. package/dist/{utils → shared/utils}/query/localDbQuery/select.d.ts +2 -2
  277. package/dist/shared/utils/query/localDbQuery/select.d.ts.map +1 -0
  278. package/dist/{utils → shared/utils}/query/localDbQuery/select.js +5 -2
  279. package/dist/shared/utils/query/localDbQuery/update.d.ts +11 -0
  280. package/dist/shared/utils/query/localDbQuery/update.d.ts.map +1 -0
  281. package/dist/{utils → shared/utils}/query/localDbQuery/update.js +7 -4
  282. package/dist/shared/utils/query/localDbQuery/upsert.d.ts +9 -0
  283. package/dist/shared/utils/query/localDbQuery/upsert.d.ts.map +1 -0
  284. package/dist/{utils → shared/utils}/query/localDbQuery/upsert.js +8 -3
  285. package/dist/shared/utils/query/remoteQuery/supabaseQuery.d.ts.map +1 -0
  286. package/dist/{utils → shared/utils}/query/remoteQuery/supabaseQuery.js +5 -2
  287. package/dist/shared/utils/refreshScreenCalls.d.ts.map +1 -0
  288. package/dist/shared/utils/reusedHelpers.d.ts +8 -0
  289. package/dist/shared/utils/reusedHelpers.d.ts.map +1 -0
  290. package/dist/shared/utils/reusedHelpers.js +162 -0
  291. package/dist/shared/utils/schema/createSyncStatus.d.ts +19 -0
  292. package/dist/shared/utils/schema/createSyncStatus.d.ts.map +1 -0
  293. package/dist/{utils → shared/utils}/schema/createSyncStatus.js +30 -3
  294. package/dist/shared/utils/serializer.d.ts.map +1 -0
  295. package/dist/shared/utils/supabaseClientErr.d.ts.map +1 -0
  296. package/dist/shared/utils/supastashMode.d.ts.map +1 -0
  297. package/dist/shared/utils/sync/getAllTables.d.ts.map +1 -0
  298. package/dist/{utils → shared/utils}/sync/getAllTables.js +1 -1
  299. package/dist/shared/utils/sync/pullFromRemote/getLastCreatedInfo.d.ts.map +1 -0
  300. package/dist/shared/utils/sync/pullFromRemote/getLastDeletedInfo.d.ts.map +1 -0
  301. package/dist/shared/utils/sync/pullFromRemote/getLastPulledInfo.d.ts.map +1 -0
  302. package/dist/{utils → shared/utils}/sync/pullFromRemote/helpers.d.ts +10 -7
  303. package/dist/shared/utils/sync/pullFromRemote/helpers.d.ts.map +1 -0
  304. package/dist/{utils → shared/utils}/sync/pullFromRemote/helpers.js +20 -14
  305. package/dist/shared/utils/sync/pullFromRemote/runLimitedConcurrency.d.ts.map +1 -0
  306. package/dist/{utils → shared/utils}/sync/pullFromRemote/runLimitedConcurrency.js +1 -1
  307. package/dist/shared/utils/sync/pullFromRemote/stringifyFields.d.ts.map +1 -0
  308. package/dist/{utils → shared/utils}/sync/pullFromRemote/updateFilter.d.ts +1 -1
  309. package/dist/shared/utils/sync/pullFromRemote/updateFilter.d.ts.map +1 -0
  310. package/dist/{utils → shared/utils}/sync/pullFromRemote/updateFilter.js +5 -3
  311. package/dist/shared/utils/sync/pullFromRemote/validateFilters.d.ts +3 -0
  312. package/dist/shared/utils/sync/pullFromRemote/validateFilters.d.ts.map +1 -0
  313. package/dist/shared/utils/sync/pullFromRemote/validateFilters.js +49 -0
  314. package/dist/shared/utils/sync/pushLocal/deleteChunks.d.ts.map +1 -0
  315. package/dist/{utils → shared/utils}/sync/pushLocal/deleteChunks.js +7 -5
  316. package/dist/shared/utils/sync/pushLocal/getAllUnsyncedData.d.ts.map +1 -0
  317. package/dist/shared/utils/sync/pushLocal/getAllUnsyncedData.js +53 -0
  318. package/dist/shared/utils/sync/pushLocal/normalize.d.ts.map +1 -0
  319. package/dist/shared/utils/sync/pushLocal/parseFields.d.ts.map +1 -0
  320. package/dist/{utils → shared/utils}/sync/queryStatus.d.ts +1 -1
  321. package/dist/shared/utils/sync/queryStatus.d.ts.map +1 -0
  322. package/dist/shared/utils/sync/refreshTables.d.ts.map +1 -0
  323. package/dist/shared/utils/sync/registration/syncCalls.d.ts.map +1 -0
  324. package/dist/{utils → shared/utils}/sync/registration/syncCalls.js +1 -1
  325. package/dist/shared/utils/sync/status/remoteSchema.d.ts +4 -0
  326. package/dist/shared/utils/sync/status/remoteSchema.d.ts.map +1 -0
  327. package/dist/shared/utils/sync/status/remoteSchema.js +140 -0
  328. package/dist/shared/utils/sync/status/syncUpdate.d.ts.map +1 -0
  329. package/dist/shared/utils/tableValidator.d.ts.map +1 -0
  330. package/package.json +29 -12
  331. package/dist/constants/syncDefaults.d.ts.map +0 -1
  332. package/dist/core/config/index.d.ts.map +0 -1
  333. package/dist/core/schemaManager/index.d.ts.map +0 -1
  334. package/dist/db/adapters/expo_sqlite.d.ts +0 -3
  335. package/dist/db/adapters/expo_sqlite.d.ts.map +0 -1
  336. package/dist/db/adapters/expo_sqlite.js +0 -24
  337. package/dist/db/adapters/rn_nitro.d.ts +0 -3
  338. package/dist/db/adapters/rn_nitro.d.ts.map +0 -1
  339. package/dist/db/adapters/rn_nitro.js +0 -34
  340. package/dist/db/adapters/rn_sqlite_storage.d.ts +0 -3
  341. package/dist/db/adapters/rn_sqlite_storage.d.ts.map +0 -1
  342. package/dist/db/adapters/rn_sqlite_storage.js +0 -25
  343. package/dist/db/dbErrorMsg.d.ts.map +0 -1
  344. package/dist/db/dbInitializer.d.ts.map +0 -1
  345. package/dist/hooks/supastashData/addPayloadToUI.d.ts.map +0 -1
  346. package/dist/hooks/supastashData/dataState.d.ts.map +0 -1
  347. package/dist/hooks/supastashData/eventQueues.d.ts.map +0 -1
  348. package/dist/hooks/supastashData/fetchCalls.d.ts.map +0 -1
  349. package/dist/hooks/supastashData/index.d.ts.map +0 -1
  350. package/dist/hooks/supastashData/realtimeSubscription.d.ts +0 -5
  351. package/dist/hooks/supastashData/realtimeSubscription.d.ts.map +0 -1
  352. package/dist/hooks/supastashData/realtimeSubscription.js +0 -96
  353. package/dist/hooks/supastashData/registerSub.d.ts +0 -4
  354. package/dist/hooks/supastashData/registerSub.d.ts.map +0 -1
  355. package/dist/hooks/supastashFilters/index.d.ts.map +0 -1
  356. package/dist/hooks/supastashLiteQuery/fetchCalls.d.ts +0 -1
  357. package/dist/hooks/supastashLiteQuery/fetchCalls.d.ts.map +0 -1
  358. package/dist/hooks/supastashLiteQuery/fetchCalls.js +0 -122
  359. package/dist/hooks/supastashLiteQuery/index.d.ts +0 -53
  360. package/dist/hooks/supastashLiteQuery/index.d.ts.map +0 -1
  361. package/dist/hooks/supastashLiteQuery/index.js +0 -117
  362. package/dist/hooks/supastashLiteQuery/loadCacheOnMount.d.ts +0 -1
  363. package/dist/hooks/supastashLiteQuery/loadCacheOnMount.d.ts.map +0 -1
  364. package/dist/hooks/supastashLiteQuery/loadCacheOnMount.js +0 -1
  365. package/dist/hooks/supastashLogic.d.ts.map +0 -1
  366. package/dist/hooks/syncEngine/index.d.ts.map +0 -1
  367. package/dist/hooks/syncEngine/pullFromRemote/index.d.ts.map +0 -1
  368. package/dist/hooks/syncEngine/pushLocal/index.d.ts.map +0 -1
  369. package/dist/hooks/syncStatus/index.d.ts.map +0 -1
  370. package/dist/store/localCache.d.ts.map +0 -1
  371. package/dist/store/syncCalls.d.ts.map +0 -1
  372. package/dist/store/syncStatus.d.ts.map +0 -1
  373. package/dist/store/tableFilters.d.ts +0 -5
  374. package/dist/store/tableFilters.d.ts.map +0 -1
  375. package/dist/store/tableSchemaData.d.ts.map +0 -1
  376. package/dist/types/index.d.ts.map +0 -1
  377. package/dist/types/supastashFilters.types.d.ts +0 -3
  378. package/dist/utils/connection.d.ts.map +0 -1
  379. package/dist/utils/createIndexes.d.ts +0 -9
  380. package/dist/utils/createIndexes.d.ts.map +0 -1
  381. package/dist/utils/createIndexes.js +0 -74
  382. package/dist/utils/events/eventBus.d.ts.map +0 -1
  383. package/dist/utils/fetchData/buildFilter.d.ts +0 -4
  384. package/dist/utils/fetchData/buildFilter.d.ts.map +0 -1
  385. package/dist/utils/fetchData/buildFilter.js +0 -58
  386. package/dist/utils/fetchData/createTable.d.ts.map +0 -1
  387. package/dist/utils/fetchData/createTable.js +0 -81
  388. package/dist/utils/fetchData/deleteData.d.ts.map +0 -1
  389. package/dist/utils/fetchData/fetchLocalData.d.ts.map +0 -1
  390. package/dist/utils/fetchData/getKeyType.d.ts.map +0 -1
  391. package/dist/utils/fetchData/initialFetch.d.ts +0 -3
  392. package/dist/utils/fetchData/initialFetch.d.ts.map +0 -1
  393. package/dist/utils/fetchData/liteHelpers.d.ts +0 -6
  394. package/dist/utils/fetchData/liteHelpers.d.ts.map +0 -1
  395. package/dist/utils/fetchData/liteHelpers.js +0 -197
  396. package/dist/utils/fetchData/liteReducer.d.ts +0 -3
  397. package/dist/utils/fetchData/liteReducer.d.ts.map +0 -1
  398. package/dist/utils/fetchData/liteReducer.js +0 -103
  399. package/dist/utils/fetchData/realTimeCall.d.ts.map +0 -1
  400. package/dist/utils/fetchData/realTimeManager.d.ts.map +0 -1
  401. package/dist/utils/fetchData/receiveData.d.ts.map +0 -1
  402. package/dist/utils/fetchData/setDataInBatches.d.ts.map +0 -1
  403. package/dist/utils/fetchData/snapShot.d.ts.map +0 -1
  404. package/dist/utils/fetchData/validatePayload.d.ts.map +0 -1
  405. package/dist/utils/genUUID.d.ts.map +0 -1
  406. package/dist/utils/getSafeValues.d.ts.map +0 -1
  407. package/dist/utils/getTableSchema.d.ts.map +0 -1
  408. package/dist/utils/logs.d.ts.map +0 -1
  409. package/dist/utils/query/builder/crud.d.ts.map +0 -1
  410. package/dist/utils/query/builder/filters.d.ts.map +0 -1
  411. package/dist/utils/query/builder/index.d.ts.map +0 -1
  412. package/dist/utils/query/builder/index.js +0 -62
  413. package/dist/utils/query/builder/mainQuery.d.ts.map +0 -1
  414. package/dist/utils/query/helpers/localDb/getLocalMethod.d.ts +0 -15
  415. package/dist/utils/query/helpers/localDb/getLocalMethod.d.ts.map +0 -1
  416. package/dist/utils/query/helpers/localDb/insertMany.d.ts.map +0 -1
  417. package/dist/utils/query/helpers/localDb/localQueryBuilder.d.ts +0 -34
  418. package/dist/utils/query/helpers/localDb/localQueryBuilder.d.ts.map +0 -1
  419. package/dist/utils/query/helpers/localDb/upsertMany.d.ts.map +0 -1
  420. package/dist/utils/query/helpers/mainQueryHelpers.d.ts.map +0 -1
  421. package/dist/utils/query/helpers/queryValidator.d.ts.map +0 -1
  422. package/dist/utils/query/helpers/queueRemote.d.ts.map +0 -1
  423. package/dist/utils/query/helpers/remoteDb/queryFilterBuilder.d.ts.map +0 -1
  424. package/dist/utils/query/helpers/remoteDb/queryUtils.d.ts.map +0 -1
  425. package/dist/utils/query/localDbQuery/delete.d.ts +0 -16
  426. package/dist/utils/query/localDbQuery/delete.d.ts.map +0 -1
  427. package/dist/utils/query/localDbQuery/index.d.ts.map +0 -1
  428. package/dist/utils/query/localDbQuery/index.js +0 -15
  429. package/dist/utils/query/localDbQuery/insert.d.ts +0 -10
  430. package/dist/utils/query/localDbQuery/insert.d.ts.map +0 -1
  431. package/dist/utils/query/localDbQuery/select.d.ts.map +0 -1
  432. package/dist/utils/query/localDbQuery/update.d.ts +0 -11
  433. package/dist/utils/query/localDbQuery/update.d.ts.map +0 -1
  434. package/dist/utils/query/localDbQuery/upsert.d.ts +0 -9
  435. package/dist/utils/query/localDbQuery/upsert.d.ts.map +0 -1
  436. package/dist/utils/query/remoteQuery/supabaseQuery.d.ts.map +0 -1
  437. package/dist/utils/refreshScreenCalls.d.ts.map +0 -1
  438. package/dist/utils/schema/createSyncStatus.d.ts +0 -17
  439. package/dist/utils/schema/createSyncStatus.d.ts.map +0 -1
  440. package/dist/utils/schema/wipeTables.d.ts.map +0 -1
  441. package/dist/utils/serializer.d.ts.map +0 -1
  442. package/dist/utils/supabaseClientErr.d.ts.map +0 -1
  443. package/dist/utils/supastashMode.d.ts.map +0 -1
  444. package/dist/utils/sync/getAllTables.d.ts.map +0 -1
  445. package/dist/utils/sync/pullFromRemote/getLastCreatedInfo.d.ts.map +0 -1
  446. package/dist/utils/sync/pullFromRemote/getLastDeletedInfo.d.ts.map +0 -1
  447. package/dist/utils/sync/pullFromRemote/getLastPulledInfo.d.ts.map +0 -1
  448. package/dist/utils/sync/pullFromRemote/helpers.d.ts.map +0 -1
  449. package/dist/utils/sync/pullFromRemote/pullData.d.ts.map +0 -1
  450. package/dist/utils/sync/pullFromRemote/pullDeletedData.d.ts +0 -12
  451. package/dist/utils/sync/pullFromRemote/pullDeletedData.d.ts.map +0 -1
  452. package/dist/utils/sync/pullFromRemote/pullDeletedData.js +0 -51
  453. package/dist/utils/sync/pullFromRemote/runLimitedConcurrency.d.ts.map +0 -1
  454. package/dist/utils/sync/pullFromRemote/stringifyFields.d.ts.map +0 -1
  455. package/dist/utils/sync/pullFromRemote/updateFilter.d.ts.map +0 -1
  456. package/dist/utils/sync/pullFromRemote/updateLocalDb.d.ts +0 -14
  457. package/dist/utils/sync/pullFromRemote/updateLocalDb.d.ts.map +0 -1
  458. package/dist/utils/sync/pullFromRemote/updateLocalDb.js +0 -200
  459. package/dist/utils/sync/pullFromRemote/validateFilters.d.ts +0 -5
  460. package/dist/utils/sync/pullFromRemote/validateFilters.d.ts.map +0 -1
  461. package/dist/utils/sync/pullFromRemote/validateFilters.js +0 -103
  462. package/dist/utils/sync/pushLocal/deleteChunks.d.ts.map +0 -1
  463. package/dist/utils/sync/pushLocal/getAllUnsyncedData.d.ts.map +0 -1
  464. package/dist/utils/sync/pushLocal/getAllUnsyncedData.js +0 -85
  465. package/dist/utils/sync/pushLocal/normalize.d.ts.map +0 -1
  466. package/dist/utils/sync/pushLocal/parseFields.d.ts.map +0 -1
  467. package/dist/utils/sync/pushLocal/sendUnsyncedToSupabase.d.ts.map +0 -1
  468. package/dist/utils/sync/pushLocal/uploadChunk.d.ts.map +0 -1
  469. package/dist/utils/sync/pushLocal/uploadHelpers.d.ts.map +0 -1
  470. package/dist/utils/sync/queryStatus.d.ts.map +0 -1
  471. package/dist/utils/sync/refreshTables.d.ts.map +0 -1
  472. package/dist/utils/sync/registration/syncCalls.d.ts.map +0 -1
  473. package/dist/utils/sync/status/filterKey.d.ts.map +0 -1
  474. package/dist/utils/sync/status/repo.d.ts +0 -10
  475. package/dist/utils/sync/status/repo.d.ts.map +0 -1
  476. package/dist/utils/sync/status/services.d.ts.map +0 -1
  477. package/dist/utils/sync/status/syncStatus.d.ts.map +0 -1
  478. package/dist/utils/sync/status/syncUpdate.d.ts.map +0 -1
  479. package/dist/utils/syncStatus.d.ts +0 -69
  480. package/dist/utils/syncStatus.d.ts.map +0 -1
  481. package/dist/utils/syncStatus.js +0 -129
  482. package/dist/utils/syncUpdate.d.ts +0 -7
  483. package/dist/utils/syncUpdate.d.ts.map +0 -1
  484. package/dist/utils/syncUpdate.js +0 -18
  485. package/dist/utils/tableValidator.d.ts.map +0 -1
  486. package/dist/utils/toggleSupastashMode.d.ts +0 -28
  487. package/dist/utils/toggleSupastashMode.d.ts.map +0 -1
  488. package/dist/utils/toggleSupastashMode.js +0 -46
  489. /package/dist/{utils → desktop/utils}/schema/wipeTables.d.ts +0 -0
  490. /package/dist/{hooks/syncEngine → desktop/utils/sync}/pullFromRemote/index.d.ts +0 -0
  491. /package/dist/{hooks/syncEngine → desktop/utils/sync}/pushLocal/index.d.ts +0 -0
  492. /package/dist/{utils → desktop/utils}/sync/pushLocal/sendUnsyncedToSupabase.d.ts +0 -0
  493. /package/dist/{constants → shared/constants}/syncDefaults.d.ts +0 -0
  494. /package/dist/{constants → shared/constants}/syncDefaults.js +0 -0
  495. /package/dist/{db → shared/db}/dbErrorMsg.d.ts +0 -0
  496. /package/dist/{hooks → shared/hooks}/syncStatus/index.js +0 -0
  497. /package/dist/{store → shared/store}/localCache.d.ts +0 -0
  498. /package/dist/{store → shared/store}/localCache.js +0 -0
  499. /package/dist/{store → shared/store}/syncCalls.d.ts +0 -0
  500. /package/dist/{store → shared/store}/syncCalls.js +0 -0
  501. /package/dist/{store → shared/store}/syncStatus.js +0 -0
  502. /package/dist/{store → shared/store}/tableFilters.js +0 -0
  503. /package/dist/{store → shared/store}/tableSchemaData.d.ts +0 -0
  504. /package/dist/{store → shared/store}/tableSchemaData.js +0 -0
  505. /package/dist/{types → shared/types}/index.js +0 -0
  506. /package/dist/{types → shared/types}/rnNitroSqlite.types.d.ts +0 -0
  507. /package/dist/{types → shared/types}/rnSqliteStorage.types.d.ts +0 -0
  508. /package/dist/{types → shared/types}/schemaManager.types.d.ts +0 -0
  509. /package/dist/{utils → shared/utils}/connection.d.ts +0 -0
  510. /package/dist/{utils → shared/utils}/events/eventBus.d.ts +0 -0
  511. /package/dist/{utils → shared/utils}/events/eventBus.js +0 -0
  512. /package/dist/{hooks/supastashData → shared/utils/fetchData}/addPayloadToUI.d.ts +0 -0
  513. /package/dist/{hooks/supastashData → shared/utils/fetchData}/addPayloadToUI.js +0 -0
  514. /package/dist/{utils → shared/utils}/fetchData/createTable.d.ts +0 -0
  515. /package/dist/{hooks/supastashData → shared/utils/fetchData}/dataState.d.ts +0 -0
  516. /package/dist/{utils → shared/utils}/fetchData/deleteData.d.ts +0 -0
  517. /package/dist/{utils → shared/utils}/fetchData/fetchLocalData.js +0 -0
  518. /package/dist/{utils → shared/utils}/fetchData/getKeyType.d.ts +0 -0
  519. /package/dist/{utils → shared/utils}/fetchData/getKeyType.js +0 -0
  520. /package/dist/{utils → shared/utils}/fetchData/realTimeCall.d.ts +0 -0
  521. /package/dist/{utils → shared/utils}/fetchData/realTimeManager.d.ts +0 -0
  522. /package/dist/{utils → shared/utils}/fetchData/realTimeManager.js +0 -0
  523. /package/dist/{utils → shared/utils}/fetchData/setDataInBatches.d.ts +0 -0
  524. /package/dist/{utils → shared/utils}/fetchData/setDataInBatches.js +0 -0
  525. /package/dist/{utils → shared/utils}/fetchData/snapShot.d.ts +0 -0
  526. /package/dist/{utils → shared/utils}/fetchData/snapShot.js +0 -0
  527. /package/dist/{utils → shared/utils}/fetchData/validatePayload.d.ts +0 -0
  528. /package/dist/{utils → shared/utils}/fetchData/validatePayload.js +0 -0
  529. /package/dist/{utils → shared/utils}/genUUID.d.ts +0 -0
  530. /package/dist/{utils → shared/utils}/genUUID.js +0 -0
  531. /package/dist/{utils → shared/utils}/getSafeValues.d.ts +0 -0
  532. /package/dist/{utils → shared/utils}/getSafeValues.js +0 -0
  533. /package/dist/{utils → shared/utils}/getTableSchema.d.ts +0 -0
  534. /package/dist/{utils → shared/utils}/getTableSchema.js +0 -0
  535. /package/dist/{utils → shared/utils}/query/builder/crud.js +0 -0
  536. /package/dist/{utils → shared/utils}/query/builder/mainQuery.d.ts +0 -0
  537. /package/dist/{utils → shared/utils}/query/helpers/mainQueryHelpers.d.ts +0 -0
  538. /package/dist/{utils → shared/utils}/query/helpers/queryValidator.d.ts +0 -0
  539. /package/dist/{utils → shared/utils}/query/helpers/queryValidator.js +0 -0
  540. /package/dist/{utils → shared/utils}/query/helpers/queueRemote.d.ts +0 -0
  541. /package/dist/{utils → shared/utils}/query/helpers/remoteDb/queryFilterBuilder.d.ts +0 -0
  542. /package/dist/{utils → shared/utils}/query/helpers/remoteDb/queryFilterBuilder.js +0 -0
  543. /package/dist/{utils → shared/utils}/query/helpers/remoteDb/queryUtils.d.ts +0 -0
  544. /package/dist/{utils → shared/utils}/query/helpers/remoteDb/queryUtils.js +0 -0
  545. /package/dist/{utils → shared/utils}/query/localDbQuery/index.d.ts +0 -0
  546. /package/dist/{utils → shared/utils}/query/remoteQuery/supabaseQuery.d.ts +0 -0
  547. /package/dist/{utils → shared/utils}/refreshScreenCalls.d.ts +0 -0
  548. /package/dist/{utils → shared/utils}/refreshScreenCalls.js +0 -0
  549. /package/dist/{utils → shared/utils}/serializer.d.ts +0 -0
  550. /package/dist/{utils → shared/utils}/serializer.js +0 -0
  551. /package/dist/{utils → shared/utils}/supabaseClientErr.d.ts +0 -0
  552. /package/dist/{utils → shared/utils}/supabaseClientErr.js +0 -0
  553. /package/dist/{utils → shared/utils}/supastashMode.d.ts +0 -0
  554. /package/dist/{utils → shared/utils}/supastashMode.js +0 -0
  555. /package/dist/{utils → shared/utils}/sync/getAllTables.d.ts +0 -0
  556. /package/dist/{utils → shared/utils}/sync/pullFromRemote/getLastCreatedInfo.d.ts +0 -0
  557. /package/dist/{utils → shared/utils}/sync/pullFromRemote/getLastCreatedInfo.js +0 -0
  558. /package/dist/{utils → shared/utils}/sync/pullFromRemote/getLastDeletedInfo.d.ts +0 -0
  559. /package/dist/{utils → shared/utils}/sync/pullFromRemote/getLastDeletedInfo.js +0 -0
  560. /package/dist/{utils → shared/utils}/sync/pullFromRemote/getLastPulledInfo.d.ts +0 -0
  561. /package/dist/{utils → shared/utils}/sync/pullFromRemote/getLastPulledInfo.js +0 -0
  562. /package/dist/{utils → shared/utils}/sync/pullFromRemote/runLimitedConcurrency.d.ts +0 -0
  563. /package/dist/{utils → shared/utils}/sync/pullFromRemote/stringifyFields.d.ts +0 -0
  564. /package/dist/{utils → shared/utils}/sync/pullFromRemote/stringifyFields.js +0 -0
  565. /package/dist/{utils → shared/utils}/sync/pushLocal/deleteChunks.d.ts +0 -0
  566. /package/dist/{utils → shared/utils}/sync/pushLocal/getAllUnsyncedData.d.ts +0 -0
  567. /package/dist/{utils → shared/utils}/sync/pushLocal/normalize.d.ts +0 -0
  568. /package/dist/{utils → shared/utils}/sync/pushLocal/normalize.js +0 -0
  569. /package/dist/{utils → shared/utils}/sync/pushLocal/parseFields.d.ts +0 -0
  570. /package/dist/{utils → shared/utils}/sync/pushLocal/parseFields.js +0 -0
  571. /package/dist/{utils → shared/utils}/sync/queryStatus.js +0 -0
  572. /package/dist/{utils → shared/utils}/sync/refreshTables.d.ts +0 -0
  573. /package/dist/{utils → shared/utils}/sync/refreshTables.js +0 -0
  574. /package/dist/{utils → shared/utils}/sync/registration/syncCalls.d.ts +0 -0
  575. /package/dist/{utils → shared/utils}/sync/status/syncUpdate.d.ts +0 -0
  576. /package/dist/{utils → shared/utils}/sync/status/syncUpdate.js +0 -0
  577. /package/dist/{utils → shared/utils}/tableValidator.d.ts +0 -0
  578. /package/dist/{utils → shared/utils}/tableValidator.js +0 -0
@@ -0,0 +1,10 @@
1
+ import { CrudMethods, PayloadListResult, PayloadResult, SupastashQuery } from "../../../types/query.types";
2
+ /**
3
+ * Inserts data locally, sets synced_at to null pending update to remote server
4
+ *
5
+ * @param table - The name of the table to insert into
6
+ * @param payload - The payload to insert
7
+ * @returns a data / error object
8
+ */
9
+ export declare function insertData<T extends boolean, R, Z>(state: SupastashQuery<CrudMethods, boolean, R>): Promise<T extends true ? PayloadResult<Z> : PayloadListResult<Z>>;
10
+ //# sourceMappingURL=insert.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"insert.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/query/localDbQuery/insert.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,cAAc,EACf,MAAM,4BAA4B,CAAC;AAKpC;;;;;;GAMG;AACH,wBAAsB,UAAU,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,EAAE,CAAC,EACtD,KAAK,EAAE,cAAc,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,GAC7C,OAAO,CAAC,CAAC,SAAS,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAwCnE"}
@@ -8,17 +8,18 @@ import { insertMany } from "../helpers/localDb/insertMany";
8
8
  * @param payload - The payload to insert
9
9
  * @returns a data / error object
10
10
  */
11
- export async function insertData(table, payload, syncMode, isSingle) {
12
- if (!table)
13
- throw new Error("Table name was not provided for an insert call");
14
- if (!payload)
15
- throw new Error(`Payload data was not provided for an insert call on ${table}`);
11
+ export async function insertData(state) {
12
+ const { table, tx, type: syncMode, isSingle, withTx, payload, } = state;
16
13
  try {
14
+ if (!payload)
15
+ throw new Error(`[Supastash] Payload data was not provided for an insert call on ${table}`);
17
16
  await assertTableExists(table);
18
17
  const inserted = await insertMany(payload, {
19
18
  table,
20
19
  syncMode,
21
20
  returnInsertedRows: true,
21
+ withTx: withTx,
22
+ tx,
22
23
  });
23
24
  return {
24
25
  error: null,
@@ -27,6 +28,8 @@ export async function insertData(table, payload, syncMode, isSingle) {
27
28
  }
28
29
  catch (error) {
29
30
  logError(`[Supastash] ${error}`);
31
+ if (state.throwOnError)
32
+ throw error;
30
33
  return {
31
34
  error: {
32
35
  message: error instanceof Error ? error.message : String(error),
@@ -1,4 +1,4 @@
1
- import { FilterCalls, PayloadListResult, PayloadResult } from "../../../types/query.types";
1
+ import { CrudMethods, PayloadListResult, PayloadResult, SupastashQuery } from "../../../types/query.types";
2
2
  /**
3
3
  * Selects one or many rows from the local database.
4
4
  *
@@ -9,5 +9,5 @@ import { FilterCalls, PayloadListResult, PayloadResult } from "../../../types/qu
9
9
  * @param isSingle - Whether to return a single row or multiple rows
10
10
  * @returns a data / error object
11
11
  */
12
- export declare function selectData<T extends boolean, R, Z>(table: string, select: string, filters: FilterCalls[] | null, limit: number | null, isSingle: T): Promise<T extends true ? PayloadResult<Z> : PayloadListResult<Z>>;
12
+ export declare function selectData<T extends boolean, R, Z>(state: SupastashQuery<CrudMethods, boolean, R>): Promise<T extends true ? PayloadResult<Z> : PayloadListResult<Z>>;
13
13
  //# sourceMappingURL=select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/query/localDbQuery/select.ts"],"names":[],"mappings":"AACA,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,cAAc,EACf,MAAM,4BAA4B,CAAC;AAMpC;;;;;;;;;GASG;AACH,wBAAsB,UAAU,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,EAAE,CAAC,EACtD,KAAK,EAAE,cAAc,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,GAC7C,OAAO,CAAC,CAAC,SAAS,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAuCnE"}
@@ -13,7 +13,8 @@ import { buildWhereClause } from "../helpers/remoteDb/queryFilterBuilder";
13
13
  * @param isSingle - Whether to return a single row or multiple rows
14
14
  * @returns a data / error object
15
15
  */
16
- export async function selectData(table, select, filters, limit, isSingle) {
16
+ export async function selectData(state) {
17
+ const { table, filters, limit, isSingle, tx, select } = state;
17
18
  if (!table)
18
19
  throw new Error("Table name was not provided for a select call");
19
20
  await assertTableExists(table);
@@ -21,7 +22,7 @@ export async function selectData(table, select, filters, limit, isSingle) {
21
22
  const limitClause = limit ? `LIMIT ${limit}` : "";
22
23
  const query = `SELECT ${select} FROM ${table} ${clause} ${limitClause}`;
23
24
  try {
24
- const db = await getSupastashDb();
25
+ const db = tx ?? (await getSupastashDb());
25
26
  let data;
26
27
  if (isSingle) {
27
28
  const result = await db.getFirstAsync(query, filterValues);
@@ -35,6 +36,8 @@ export async function selectData(table, select, filters, limit, isSingle) {
35
36
  }
36
37
  catch (error) {
37
38
  logError(`[Supastash] ${error}`);
39
+ if (state.throwOnError)
40
+ throw error;
38
41
  return {
39
42
  error: {
40
43
  message: error instanceof Error ? error.message : String(error),
@@ -0,0 +1,11 @@
1
+ import { CrudMethods, PayloadListResult, PayloadResult, SupastashQuery } from "../../../types/query.types";
2
+ /**
3
+ * Updates data locally, sets synced_at to null pending update to remote server
4
+ *
5
+ * @param table - The name of the table to update
6
+ * @param payload - The payload to update
7
+ * @param filters - The filters to apply to the update query
8
+ * @returns a data / error object
9
+ */
10
+ export declare function updateData<T extends boolean, R, Z>(state: SupastashQuery<CrudMethods, boolean, R>): Promise<T extends true ? PayloadResult<Z> : PayloadListResult<Z>>;
11
+ //# sourceMappingURL=update.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/query/localDbQuery/update.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,WAAW,EAEX,iBAAiB,EACjB,aAAa,EACb,cAAc,EACf,MAAM,4BAA4B,CAAC;AASpC;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,EAAE,CAAC,EACtD,KAAK,EAAE,cAAc,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,GAC7C,OAAO,CAAC,CAAC,SAAS,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,CA0FnE"}
@@ -1,8 +1,8 @@
1
1
  import { getSupastashConfig } from "../../../core/config";
2
2
  import { getSupastashDb } from "../../../db/dbInitializer";
3
- import { parseStringifiedFields } from "../../../utils/sync/pushLocal/parseFields";
4
3
  import { logError, logWarn } from "../../logs";
5
4
  import { getSafeValue } from "../../serializer";
5
+ import { parseStringifiedFields } from "../../sync/pushLocal/parseFields";
6
6
  import { assertTableExists } from "../../tableValidator";
7
7
  import { buildWhereClause } from "../helpers/remoteDb/queryFilterBuilder";
8
8
  const warned = new Set();
@@ -14,7 +14,8 @@ const warned = new Set();
14
14
  * @param filters - The filters to apply to the update query
15
15
  * @returns a data / error object
16
16
  */
17
- export async function updateData(table, payload, filters, syncMode, isSingle, preserveTimestamp) {
17
+ export async function updateData(state) {
18
+ const { table, payload, filters, type: syncMode, isSingle, preserveTimestamp, tx, } = state;
18
19
  if (!payload)
19
20
  throw new Error(`Payload data was not provided for an update call on ${table}`);
20
21
  if (!table)
@@ -30,7 +31,7 @@ export async function updateData(table, payload, filters, syncMode, isSingle, pr
30
31
  : null,
31
32
  };
32
33
  if (!preserveTimestamp || payload.updated_at === undefined) {
33
- if (!warned.has(table) && !getSupastashConfig().debugMode && __DEV__) {
34
+ if (!warned.has(table) && !getSupastashConfig().debugMode) {
34
35
  warned.add(table);
35
36
  logWarn(`[Supastash] updated_at not provided for update call on ${table} – defaulting to ${timeStamp}`);
36
37
  }
@@ -48,7 +49,7 @@ export async function updateData(table, payload, filters, syncMode, isSingle, pr
48
49
  .map((c) => getSafeValue(newPayload[c]));
49
50
  const { clause, values: filterValues } = buildWhereClause(filters ?? []);
50
51
  try {
51
- const db = await getSupastashDb();
52
+ const db = tx ?? (await getSupastashDb());
52
53
  await db.runAsync(`UPDATE ${table} SET ${cols} ${clause}`, [
53
54
  ...values,
54
55
  ...filterValues,
@@ -68,6 +69,8 @@ export async function updateData(table, payload, filters, syncMode, isSingle, pr
68
69
  }
69
70
  catch (error) {
70
71
  logError(`[Supastash] ${error}`);
72
+ if (state.throwOnError)
73
+ throw error;
71
74
  return {
72
75
  error: {
73
76
  message: error instanceof Error ? error.message : String(error),
@@ -0,0 +1,9 @@
1
+ import { CrudMethods, PayloadListResult, PayloadResult, SupastashQuery } from "../../../types/query.types";
2
+ /**
3
+ * Performs upsert-like logic on local DB:
4
+ * - If a row with the same ID exists, it is updated.
5
+ * - Otherwise, it is inserted.
6
+ * Returns all the rows that were upserted.
7
+ */
8
+ export declare function upsertData<T extends boolean, R, Z>(state: SupastashQuery<CrudMethods, boolean, R>): Promise<T extends true ? PayloadResult<Z> : PayloadListResult<Z>>;
9
+ //# sourceMappingURL=upsert.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upsert.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/query/localDbQuery/upsert.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,cAAc,EACf,MAAM,4BAA4B,CAAC;AAOpC;;;;;GAKG;AACH,wBAAsB,UAAU,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,EAAE,CAAC,EACtD,KAAK,EAAE,cAAc,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,GAC7C,OAAO,CAAC,CAAC,SAAS,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,CA+CnE"}
@@ -8,9 +8,10 @@ const warned = new Set();
8
8
  * - Otherwise, it is inserted.
9
9
  * Returns all the rows that were upserted.
10
10
  */
11
- export async function upsertData(table, payload, state, syncMode, isSingle, onConflictKeys = ["id"], preserveTimestamp) {
12
- if (!payload || !table)
13
- throw new Error("Table and payload are required for upsert.");
11
+ export async function upsertData(state) {
12
+ const { table, payload, type: syncMode, isSingle, onConflictKeys, preserveTimestamp, } = state;
13
+ if (!payload)
14
+ throw new Error(`[Supastash] Payload data was not provided for an upsert call on ${table}`);
14
15
  await assertTableExists(table);
15
16
  const items = Array.isArray(payload) ? payload : [payload];
16
17
  try {
@@ -20,6 +21,8 @@ export async function upsertData(table, payload, state, syncMode, isSingle, onCo
20
21
  returnRows: true,
21
22
  onConflictKeys,
22
23
  preserveTimestamp,
24
+ withTx: state.withTx,
25
+ tx: state.tx,
23
26
  }, state);
24
27
  return {
25
28
  error: null,
@@ -28,6 +31,8 @@ export async function upsertData(table, payload, state, syncMode, isSingle, onCo
28
31
  }
29
32
  catch (error) {
30
33
  logError(`[Supastash] ${error}`);
34
+ if (state.throwOnError)
35
+ throw error;
31
36
  return {
32
37
  error: {
33
38
  message: error instanceof Error ? error.message : String(error),
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supabaseQuery.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/query/remoteQuery/supabaseQuery.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,cAAc,EACf,MAAM,4BAA4B,CAAC;AAWpC;;;;;GAKG;AACH,wBAAsB,aAAa,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,EAAE,CAAC,EACzD,KAAK,EAAE,cAAc,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC,EACxC,SAAS,UAAQ,GAChB,OAAO,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CA0NpC"}
@@ -1,10 +1,10 @@
1
1
  import { getSupastashConfig } from "../../../core/config";
2
2
  import { getSupastashDb } from "../../../db/dbInitializer";
3
- import { getQueryStatusFromDb } from "../../../utils/sync/queryStatus";
4
3
  import { supastashEventBus } from "../../events/eventBus";
5
4
  import { normalizeForSupabase } from "../../getSafeValues";
6
5
  import { refreshScreen } from "../../refreshScreenCalls";
7
6
  import { getSafeValue } from "../../serializer";
7
+ import { getQueryStatusFromDb } from "../../sync/queryStatus";
8
8
  import { updateLocalSyncedAt } from "../../sync/status/syncUpdate";
9
9
  import { buildWhereClause } from "../helpers/remoteDb/queryFilterBuilder";
10
10
  import { operatorMap } from "../helpers/remoteDb/queryUtils";
@@ -125,6 +125,9 @@ export async function querySupabase(state, isBatched = false) {
125
125
  (viewRemoteResult || type === "remoteOnly")) {
126
126
  filterQuery = filterQuery.select();
127
127
  }
128
+ if (state.throwOnError) {
129
+ filterQuery = filterQuery.throwOnError();
130
+ }
128
131
  const result = await filterQuery;
129
132
  const db = await getSupastashDb();
130
133
  if (result.error) {
@@ -162,7 +165,7 @@ export async function querySupabase(state, isBatched = false) {
162
165
  ...filterValues,
163
166
  ]);
164
167
  if (method === "delete") {
165
- await permanentlyDeleteData(table, filters);
168
+ await permanentlyDeleteData({ table, filters, tx: state.tx });
166
169
  }
167
170
  }
168
171
  refreshScreen(table);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"refreshScreenCalls.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/refreshScreenCalls.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAejD"}
@@ -0,0 +1,8 @@
1
+ import { SupastashFilter } from "../types/realtimeData.types";
2
+ export declare const ReusedHelpers: {
3
+ isValidFilter<R = any>(filters: SupastashFilter<R>[]): boolean;
4
+ applyFilters(q: any, filters: SupastashFilter[], table: string): any;
5
+ buildFilterString<R = any>(filter: SupastashFilter<R> | undefined): string | undefined;
6
+ buildFilterForSql<R = any>(filter: SupastashFilter<R> | undefined): string | undefined;
7
+ };
8
+ //# sourceMappingURL=reusedHelpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reusedHelpers.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/reusedHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAa9D,eAAO,MAAM,aAAa;kBACV,CAAC,iBAAiB,eAAe,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO;oBA8C9C,GAAG,WAAW,eAAe,EAAE,SAAS,MAAM;sBAoC5C,CAAC,gBACT,eAAe,CAAC,CAAC,CAAC,GAAG,SAAS,GACrC,MAAM,GAAG,SAAS;sBA4CH,CAAC,gBACT,eAAe,CAAC,CAAC,CAAC,GAAG,SAAS,GACrC,MAAM,GAAG,SAAS;CAkDtB,CAAC"}
@@ -0,0 +1,162 @@
1
+ const validOperators = new Set([
2
+ "eq",
3
+ "neq",
4
+ "gt",
5
+ "lt",
6
+ "gte",
7
+ "lte",
8
+ "is",
9
+ "in",
10
+ ]);
11
+ export const ReusedHelpers = {
12
+ isValidFilter(filters) {
13
+ if (!Array.isArray(filters))
14
+ return false;
15
+ const validateNode = (node) => {
16
+ if (!node || typeof node !== "object")
17
+ return false;
18
+ // OR group
19
+ if ("or" in node) {
20
+ if (!Array.isArray(node.or) || node.or.length === 0) {
21
+ return false;
22
+ }
23
+ return node.or.every(validateNode);
24
+ }
25
+ // Condition
26
+ const { column, operator, value } = node;
27
+ if (typeof column !== "string" || column.trim() === "") {
28
+ return false;
29
+ }
30
+ if (!validOperators.has(operator)) {
31
+ return false;
32
+ }
33
+ switch (operator) {
34
+ case "is":
35
+ return (value === null ||
36
+ value === true ||
37
+ value === false ||
38
+ value === "null" ||
39
+ value === "true" ||
40
+ value === "false");
41
+ case "in":
42
+ return Array.isArray(value) && value.length > 0;
43
+ default:
44
+ return value !== undefined && value !== null;
45
+ }
46
+ };
47
+ return filters.every(validateNode);
48
+ },
49
+ applyFilters(q, filters, table) {
50
+ for (const f of filters) {
51
+ // OR group
52
+ if ("or" in f) {
53
+ if (!Array.isArray(f.or) || f.or.length === 0) {
54
+ throw new Error(`Invalid OR filter for ${table}`);
55
+ }
56
+ const orString = f.or
57
+ .map((sub) => {
58
+ if (!ReusedHelpers.isValidFilter([sub])) {
59
+ throw new Error(`Invalid OR syncFilter: ${JSON.stringify(sub)} for ${table}`);
60
+ }
61
+ return `${String(sub.column)}.${sub.operator}.${sub.value}`;
62
+ })
63
+ .join(",");
64
+ q = q.or(orString);
65
+ continue;
66
+ }
67
+ // Normal AND filter
68
+ if (!ReusedHelpers.isValidFilter([f])) {
69
+ throw new Error(`Invalid syncFilter: ${JSON.stringify(f)} for ${table}`);
70
+ }
71
+ q = q[f.operator](f.column, f.value);
72
+ }
73
+ return q;
74
+ },
75
+ buildFilterString(filter) {
76
+ if (!filter)
77
+ return undefined;
78
+ // OR group
79
+ if ("or" in filter) {
80
+ if (!Array.isArray(filter.or) || filter.or.length === 0) {
81
+ return undefined;
82
+ }
83
+ const inner = filter.or
84
+ .map((f) => {
85
+ if ("and" in f || "or" in f) {
86
+ return undefined; // nested groups not supported here
87
+ }
88
+ if (f.value === null) {
89
+ return `${String(f.column)}.${f.operator}.null`;
90
+ }
91
+ if (f.operator === "in" && Array.isArray(f.value)) {
92
+ return `${String(f.column)}.in.(${f.value.join(",")})`;
93
+ }
94
+ return `${String(f.column)}.${f.operator}.${f.value}`;
95
+ })
96
+ .filter(Boolean)
97
+ .join(",");
98
+ return inner ? `or=(${inner})` : undefined;
99
+ }
100
+ // Condition
101
+ const { column, operator, value } = filter;
102
+ if (value === null) {
103
+ return `${String(column)}=${operator}.null`;
104
+ }
105
+ if (operator === "in" && Array.isArray(value)) {
106
+ return `${String(column)}=in.(${value.join(",")})`;
107
+ }
108
+ return `${String(column)}=${operator}.${value}`;
109
+ },
110
+ buildFilterForSql(filter) {
111
+ if (!filter)
112
+ return undefined;
113
+ // OR group
114
+ if ("or" in filter) {
115
+ const parts = filter.or
116
+ .map(ReusedHelpers.buildFilterForSql)
117
+ .filter(Boolean);
118
+ if (parts.length === 0)
119
+ return undefined;
120
+ return `(${parts.join(" OR ")})`;
121
+ }
122
+ const { column, operator, value } = filter;
123
+ switch (operator) {
124
+ case "eq":
125
+ return value === null
126
+ ? `${String(column)} IS NULL`
127
+ : `${String(column)} = ${sqlValue(value)}`;
128
+ case "neq":
129
+ return value === null
130
+ ? `${String(column)} IS NOT NULL`
131
+ : `${String(column)} != ${sqlValue(value)}`;
132
+ case "gt":
133
+ return `${String(column)} > ${sqlValue(value)}`;
134
+ case "lt":
135
+ return `${String(column)} < ${sqlValue(value)}`;
136
+ case "gte":
137
+ return `${String(column)} >= ${sqlValue(value)}`;
138
+ case "lte":
139
+ return `${String(column)} <= ${sqlValue(value)}`;
140
+ case "in":
141
+ if (!Array.isArray(value))
142
+ return undefined;
143
+ return `${String(column)} IN (${value.map(sqlValue).join(", ")})`;
144
+ case "is":
145
+ return `${String(column)} IS ${sqlValue(value)}`;
146
+ default:
147
+ throw new Error(`Unsupported operator: ${operator}`);
148
+ }
149
+ },
150
+ };
151
+ function sqlValue(val) {
152
+ if (Array.isArray(val)) {
153
+ return val.map(sqlValue).join(", ");
154
+ }
155
+ if (typeof val === "boolean")
156
+ return val ? "1" : "0";
157
+ if (val === null)
158
+ return "NULL";
159
+ if (typeof val === "number")
160
+ return val.toString();
161
+ return `'${val.replace(/'/g, "''")}'`; // Escape single quotes
162
+ }
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Creates the supastash_deleted_status table if it doesn't exist
3
+ *
4
+ * Deprecated table for deleted status
5
+ * @deprecated Use createSyncStatusTable instead
6
+ */
7
+ export declare function createDeletedStatusTable(): Promise<void>;
8
+ export declare const SYNC_STATUS_TABLES_SQL = "\n CREATE TABLE IF NOT EXISTS supastash_sync_marks (\n table_name TEXT NOT NULL,\n filter_key TEXT NOT NULL, \n filter_json TEXT NULL, \n last_synced_at TEXT NULL, \n last_synced_at_pk TEXT NULL, \n last_deleted_at TEXT NULL, \n updated_at TEXT NOT NULL DEFAULT (datetime('now')),\n PRIMARY KEY (table_name, filter_key)\n);";
9
+ export declare const SERVER_SYNC_STATUS_TABLES_SQL = "\n CREATE TABLE IF NOT EXISTS supastash_server_sync_marks (\n table_name TEXT NOT NULL,\n filter_key TEXT NOT NULL,\n filter_json TEXT NULL,\n\n last_deleted_at TEXT NULL,\n\n last_synced_at TEXT NULL, -- represents arrived_at\n last_synced_at_pk TEXT NULL, -- composite cursor safety\n\n updated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\n PRIMARY KEY (table_name, filter_key)\n );\n";
10
+ export declare const ADD_PK_TO_SYNC_MARKS_SQL = "\n ALTER TABLE supastash_sync_marks ADD COLUMN last_synced_at_pk TEXT NULL;\n";
11
+ export declare const INDEX_SYNC_MARKS_SQL = "\n CREATE INDEX IF NOT EXISTS idx_supastash_marks_updated\n ON supastash_sync_marks(updated_at);\n";
12
+ export declare const INDEX_SERVER_SYNC_MARKS_SQL = "\n CREATE INDEX IF NOT EXISTS idx_supastash_server_marks_updated\n ON supastash_server_sync_marks(updated_at);\n";
13
+ /**
14
+ * Creates the supastash_sync_marks table if it doesn't exist
15
+ *
16
+ * New table for sync marks
17
+ */
18
+ export declare function createSyncStatusTable(): Promise<void>;
19
+ //# sourceMappingURL=createSyncStatus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createSyncStatus.d.ts","sourceRoot":"","sources":["../../../../src/shared/utils/schema/createSyncStatus.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,wBAAsB,wBAAwB,kBAE7C;AAED,eAAO,MAAM,sBAAsB,0ZAUhC,CAAC;AAEJ,eAAO,MAAM,6BAA6B,6eAezC,CAAC;AAEF,eAAO,MAAM,wBAAwB,mFAEpC,CAAC;AAEF,eAAO,MAAM,oBAAoB,2GAGhC,CAAC;AAEF,eAAO,MAAM,2BAA2B,yHAGvC,CAAC;AAIF;;;;GAIG;AACH,wBAAsB,qBAAqB,kBAkB1C"}
@@ -1,3 +1,4 @@
1
+ import { getSupastashConfig } from "../../core/config";
1
2
  import { getSupastashDb } from "../../db/dbInitializer";
2
3
  /**
3
4
  * Creates the supastash_deleted_status table if it doesn't exist
@@ -13,13 +14,28 @@ export const SYNC_STATUS_TABLES_SQL = `
13
14
  table_name TEXT NOT NULL,
14
15
  filter_key TEXT NOT NULL,
15
16
  filter_json TEXT NULL,
16
- last_created_at TEXT NULL,
17
17
  last_synced_at TEXT NULL,
18
18
  last_synced_at_pk TEXT NULL,
19
19
  last_deleted_at TEXT NULL,
20
20
  updated_at TEXT NOT NULL DEFAULT (datetime('now')),
21
21
  PRIMARY KEY (table_name, filter_key)
22
22
  );`;
23
+ export const SERVER_SYNC_STATUS_TABLES_SQL = `
24
+ CREATE TABLE IF NOT EXISTS supastash_server_sync_marks (
25
+ table_name TEXT NOT NULL,
26
+ filter_key TEXT NOT NULL,
27
+ filter_json TEXT NULL,
28
+
29
+ last_deleted_at TEXT NULL,
30
+
31
+ last_synced_at TEXT NULL, -- represents arrived_at
32
+ last_synced_at_pk TEXT NULL, -- composite cursor safety
33
+
34
+ updated_at TEXT NOT NULL DEFAULT (datetime('now')),
35
+
36
+ PRIMARY KEY (table_name, filter_key)
37
+ );
38
+ `;
23
39
  export const ADD_PK_TO_SYNC_MARKS_SQL = `
24
40
  ALTER TABLE supastash_sync_marks ADD COLUMN last_synced_at_pk TEXT NULL;
25
41
  `;
@@ -27,6 +43,10 @@ export const INDEX_SYNC_MARKS_SQL = `
27
43
  CREATE INDEX IF NOT EXISTS idx_supastash_marks_updated
28
44
  ON supastash_sync_marks(updated_at);
29
45
  `;
46
+ export const INDEX_SERVER_SYNC_MARKS_SQL = `
47
+ CREATE INDEX IF NOT EXISTS idx_supastash_server_marks_updated
48
+ ON supastash_server_sync_marks(updated_at);
49
+ `;
30
50
  let addedPk = false;
31
51
  /**
32
52
  * Creates the supastash_sync_marks table if it doesn't exist
@@ -35,7 +55,15 @@ let addedPk = false;
35
55
  */
36
56
  export async function createSyncStatusTable() {
37
57
  const db = await getSupastashDb();
38
- await db.execAsync(SYNC_STATUS_TABLES_SQL);
58
+ const cfg = getSupastashConfig();
59
+ if (cfg.replicationMode === "server-side") {
60
+ await db.execAsync(SERVER_SYNC_STATUS_TABLES_SQL);
61
+ await db.execAsync(INDEX_SERVER_SYNC_MARKS_SQL);
62
+ }
63
+ else {
64
+ await db.execAsync(SYNC_STATUS_TABLES_SQL);
65
+ await db.execAsync(INDEX_SYNC_MARKS_SQL);
66
+ }
39
67
  try {
40
68
  if (addedPk)
41
69
  return;
@@ -45,5 +73,4 @@ export async function createSyncStatusTable() {
45
73
  catch (error) {
46
74
  // Ignore error if column already exists
47
75
  }
48
- await db.execAsync(INDEX_SYNC_MARKS_SQL);
49
76
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/serializer.ts"],"names":[],"mappings":"AAAA,wBAAgB,cAAc,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAUlD;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM,CAqClD;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,GAAG,GAAG,GAAG,CAa5C"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supabaseClientErr.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/supabaseClientErr.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,4kBAc7B,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supastashMode.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/supastashMode.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAG/D;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,aAAa,iBAyB9D;AAED,wBAAgB,uBAAuB,IAAI,aAAa,CAEvD"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getAllTables.d.ts","sourceRoot":"","sources":["../../../../src/shared/utils/sync/getAllTables.ts"],"names":[],"mappings":"AAIA,wBAAsB,YAAY,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAS7D"}
@@ -2,6 +2,6 @@ import { getSupastashDb } from "../../db/dbInitializer";
2
2
  const SYNC_STATUS_TABLE = "supastash_%";
3
3
  export async function getAllTables() {
4
4
  const db = await getSupastashDb();
5
- const tables = await db.getAllAsync(`SELECT name FROM sqlite_master WHERE type='table' AND name NOT LIKE 'sqlite_%' AND name NOT LIKE ?`, [SYNC_STATUS_TABLE]);
5
+ const tables = await db.getAllAsync(`SELECT name FROM sqlite_master WHERE type='table' AND name NOT LIKE 'sqlite_%' AND name NOT LIKE ? AND name not like '_sqlx_%' AND name not like 'sqlx_%'`, [SYNC_STATUS_TABLE]);
6
6
  return tables?.map((table) => table.name) ?? null;
7
7
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getLastCreatedInfo.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/sync/pullFromRemote/getLastCreatedInfo.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAEvE;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM,iBAGtB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getLastDeletedInfo.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/sync/pullFromRemote/getLastDeletedInfo.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAEvE;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM,iBAGtB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getLastPulledInfo.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/sync/pullFromRemote/getLastPulledInfo.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAEtE;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,iBAGrB"}
@@ -1,12 +1,12 @@
1
1
  import { PayloadData } from "../../../types/query.types";
2
- import { RealtimeFilter } from "../../../types/realtimeData.types";
2
+ import { SupastashFilter } from "../../../types/realtimeData.types";
3
3
  import { ReceivedDataCompleted } from "../../../types/syncEngine.types";
4
4
  export declare function pageThrough(base: {
5
- tsCol: "created_at" | "updated_at" | "deleted_at";
5
+ tsCol: "arrived_at" | "updated_at";
6
6
  since: string;
7
7
  table: string;
8
8
  select?: string;
9
- filters?: RealtimeFilter[];
9
+ filters?: SupastashFilter[];
10
10
  includeDeleted?: boolean;
11
11
  batchId: string;
12
12
  previousPk?: string | null;
@@ -17,21 +17,24 @@ export declare function returnMaxDate({ row, prevMax, col, }: {
17
17
  value: string;
18
18
  pk: string | null;
19
19
  } | null;
20
- col: "created_at" | "updated_at" | "deleted_at";
20
+ col: "arrived_at" | "updated_at" | "deleted_at";
21
21
  }): {
22
22
  value: string;
23
23
  pk: string | null;
24
24
  } | null;
25
- export declare function getMaxDate(rows: PayloadData[], col: "created_at" | "updated_at" | "deleted_at"): string | null;
25
+ export declare function getMaxDate(rows: PayloadData[], col: "arrived_at" | "updated_at"): string | null;
26
26
  export declare function logNoUpdates(table: string): void;
27
27
  export declare function getReceivedDataCompleted({ batchId, col, }: {
28
28
  batchId: string;
29
- col: "created_at" | "updated_at" | "deleted_at";
29
+ col: "arrived_at" | "updated_at";
30
30
  }): ReceivedDataCompleted;
31
31
  export declare function setReceivedDataCompleted({ batchId, col, completed, }: {
32
32
  batchId: string;
33
- col: "created_at" | "updated_at" | "deleted_at";
33
+ col: "arrived_at" | "updated_at";
34
34
  completed: ReceivedDataCompleted;
35
35
  }): void;
36
36
  export declare function deleteReceivedDataCompleted(batchId: string): void;
37
+ export declare function getMaxSyncLookBack({ table, }: {
38
+ table: string;
39
+ }): string | undefined;
37
40
  //# sourceMappingURL=helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/sync/pullFromRemote/helpers.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAaxE,wBAAsB,WAAW,CAAC,IAAI,EAAE;IACtC,KAAK,EAAE,YAAY,GAAG,YAAY,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B,kBAgFA;AAED,wBAAgB,aAAa,CAAC,EAC5B,GAAG,EACH,OAAO,EACP,GAAG,GACJ,EAAE;IACD,GAAG,EAAE,WAAW,CAAC;IACjB,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;IACrD,GAAG,EAAE,YAAY,GAAG,YAAY,GAAG,YAAY,CAAC;CACjD,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,CAoB9C;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,WAAW,EAAE,EACnB,GAAG,EAAE,YAAY,GAAG,YAAY,GAC/B,MAAM,GAAG,IAAI,CAUf;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,QAczC;AAED,wBAAgB,wBAAwB,CAAC,EACvC,OAAO,EACP,GAAG,GACJ,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,YAAY,GAAG,YAAY,CAAC;CAClC,GAAG,qBAAqB,CAUxB;AAED,wBAAgB,wBAAwB,CAAC,EACvC,OAAO,EACP,GAAG,EACH,SAAS,GACV,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,YAAY,GAAG,YAAY,CAAC;IACjC,SAAS,EAAE,qBAAqB,CAAC;CAClC,QAKA;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,MAAM,QAE1D;AAED,wBAAgB,kBAAkB,CAAC,EACjC,KAAK,GACN,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;CACf,GAAG,MAAM,GAAG,SAAS,CAcrB"}