@lix-js/sdk 0.0.1 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (359) hide show
  1. package/LICENSE +21 -0
  2. package/dist/account/database-schema.d.ts.map +1 -1
  3. package/dist/account/database-schema.js +2 -6
  4. package/dist/account/database-schema.js.map +1 -1
  5. package/dist/account/database-schema.test.js +4 -8
  6. package/dist/account/database-schema.test.js.map +1 -1
  7. package/dist/change/apply-changes.js +9 -9
  8. package/dist/change/apply-changes.js.map +1 -1
  9. package/dist/change/apply-changes.test.js +5 -5
  10. package/dist/change/apply-changes.test.js.map +1 -1
  11. package/dist/database/apply-schema.d.ts.map +1 -1
  12. package/dist/database/apply-schema.js +20 -72
  13. package/dist/database/apply-schema.js.map +1 -1
  14. package/dist/database/execute-sync.test.js +3 -3
  15. package/dist/database/execute-sync.test.js.map +1 -1
  16. package/dist/database/init-db.d.ts.map +1 -1
  17. package/dist/database/init-db.js +18 -3
  18. package/dist/database/init-db.js.map +1 -1
  19. package/dist/database/init-db.test.js +128 -17
  20. package/dist/database/init-db.test.js.map +1 -1
  21. package/dist/database/kysely-plugin/parse-jsonb-plugin-v1.d.ts.map +1 -1
  22. package/dist/database/kysely-plugin/parse-jsonb-plugin-v1.js +5 -2
  23. package/dist/database/kysely-plugin/parse-jsonb-plugin-v1.js.map +1 -1
  24. package/dist/database/mutation-log/database-schema.d.ts.map +1 -1
  25. package/dist/database/mutation-log/database-schema.js +1 -3
  26. package/dist/database/mutation-log/database-schema.js.map +1 -1
  27. package/dist/database/nano-id.d.ts +21 -0
  28. package/dist/database/nano-id.d.ts.map +1 -0
  29. package/dist/database/nano-id.js +58 -0
  30. package/dist/database/nano-id.js.map +1 -0
  31. package/dist/database/nano-id.test.d.ts +2 -0
  32. package/dist/database/nano-id.test.d.ts.map +1 -0
  33. package/dist/database/nano-id.test.js +13 -0
  34. package/dist/database/nano-id.test.js.map +1 -0
  35. package/dist/database/schema.d.ts +15 -23
  36. package/dist/database/schema.d.ts.map +1 -1
  37. package/dist/discussion/create-comment.d.ts +0 -2
  38. package/dist/discussion/create-comment.d.ts.map +1 -1
  39. package/dist/discussion/create-comment.js +0 -1
  40. package/dist/discussion/create-comment.js.map +1 -1
  41. package/dist/discussion/create-discussion.d.ts +3 -5
  42. package/dist/discussion/create-discussion.d.ts.map +1 -1
  43. package/dist/discussion/create-discussion.js +4 -5
  44. package/dist/discussion/create-discussion.js.map +1 -1
  45. package/dist/discussion/create-discussion.test.js +8 -34
  46. package/dist/discussion/create-discussion.test.js.map +1 -1
  47. package/dist/file-queue/file-handlers.d.ts +24 -0
  48. package/dist/file-queue/file-handlers.d.ts.map +1 -0
  49. package/dist/file-queue/file-handlers.js +209 -0
  50. package/dist/file-queue/file-handlers.js.map +1 -0
  51. package/dist/file-queue/file-queue-process.d.ts +5 -0
  52. package/dist/file-queue/file-queue-process.d.ts.map +1 -0
  53. package/dist/file-queue/file-queue-process.js +88 -0
  54. package/dist/file-queue/file-queue-process.js.map +1 -0
  55. package/dist/file-queue/file-queue-process.test.d.ts +2 -0
  56. package/dist/file-queue/file-queue-process.test.d.ts.map +1 -0
  57. package/dist/file-queue/file-queue-process.test.js +372 -0
  58. package/dist/file-queue/file-queue-process.test.js.map +1 -0
  59. package/dist/file-queue/file-queue-settled.d.ts +13 -0
  60. package/dist/file-queue/file-queue-settled.d.ts.map +1 -0
  61. package/dist/file-queue/file-queue-settled.js +25 -0
  62. package/dist/file-queue/file-queue-settled.js.map +1 -0
  63. package/dist/file-queue/file-queue-settled.test.d.ts +2 -0
  64. package/dist/file-queue/file-queue-settled.test.d.ts.map +1 -0
  65. package/dist/file-queue/file-queue-settled.test.js +47 -0
  66. package/dist/file-queue/file-queue-settled.test.js.map +1 -0
  67. package/dist/file-queue/index.d.ts +2 -0
  68. package/dist/file-queue/index.d.ts.map +1 -0
  69. package/dist/file-queue/index.js +2 -0
  70. package/dist/file-queue/index.js.map +1 -0
  71. package/dist/file-queue/with-skip-file-queue.d.ts +3 -0
  72. package/dist/file-queue/with-skip-file-queue.d.ts.map +1 -0
  73. package/dist/file-queue/with-skip-file-queue.js +26 -0
  74. package/dist/file-queue/with-skip-file-queue.js.map +1 -0
  75. package/dist/file-queue/with-skip-file-queue.test.d.ts +2 -0
  76. package/dist/file-queue/with-skip-file-queue.test.d.ts.map +1 -0
  77. package/dist/file-queue/with-skip-file-queue.test.js +138 -0
  78. package/dist/file-queue/with-skip-file-queue.test.js.map +1 -0
  79. package/dist/index.d.ts +2 -2
  80. package/dist/index.d.ts.map +1 -1
  81. package/dist/index.js +2 -2
  82. package/dist/index.js.map +1 -1
  83. package/dist/key-value/database-schema.d.ts +11 -2
  84. package/dist/key-value/database-schema.d.ts.map +1 -1
  85. package/dist/key-value/database-schema.js +7 -4
  86. package/dist/key-value/database-schema.js.map +1 -1
  87. package/dist/key-value/database-schema.test.js +21 -5
  88. package/dist/key-value/database-schema.test.js.map +1 -1
  89. package/dist/lix/close-lix.d.ts +8 -0
  90. package/dist/lix/close-lix.d.ts.map +1 -0
  91. package/dist/lix/close-lix.js +7 -0
  92. package/dist/lix/close-lix.js.map +1 -0
  93. package/dist/lix/index.d.ts +1 -0
  94. package/dist/lix/index.d.ts.map +1 -1
  95. package/dist/lix/index.js +1 -0
  96. package/dist/lix/index.js.map +1 -1
  97. package/dist/lix/merge.js +3 -3
  98. package/dist/lix/merge.js.map +1 -1
  99. package/dist/lix/merge.test.js +7 -18
  100. package/dist/lix/merge.test.js.map +1 -1
  101. package/dist/lix/new-lix.d.ts.map +1 -1
  102. package/dist/lix/new-lix.js +2 -3
  103. package/dist/lix/new-lix.js.map +1 -1
  104. package/dist/lix/open-lix-in-memory.test.js +2 -1
  105. package/dist/lix/open-lix-in-memory.test.js.map +1 -1
  106. package/dist/lix/open-lix.d.ts +19 -6
  107. package/dist/lix/open-lix.d.ts.map +1 -1
  108. package/dist/lix/open-lix.js +80 -18
  109. package/dist/lix/open-lix.js.map +1 -1
  110. package/dist/lix/open-lix.test.js +70 -7
  111. package/dist/lix/open-lix.test.js.map +1 -1
  112. package/dist/lix/to-blob.d.ts +11 -0
  113. package/dist/lix/to-blob.d.ts.map +1 -0
  114. package/dist/lix/to-blob.js +11 -0
  115. package/dist/lix/to-blob.js.map +1 -0
  116. package/dist/own-change-control/apply-own-change.d.ts +10 -0
  117. package/dist/own-change-control/apply-own-change.d.ts.map +1 -0
  118. package/dist/own-change-control/apply-own-change.js +69 -0
  119. package/dist/own-change-control/apply-own-change.js.map +1 -0
  120. package/dist/own-change-control/apply-own-change.test.d.ts +2 -0
  121. package/dist/own-change-control/apply-own-change.test.d.ts.map +1 -0
  122. package/dist/own-change-control/apply-own-change.test.js +297 -0
  123. package/dist/own-change-control/apply-own-change.test.js.map +1 -0
  124. package/dist/own-change-control/change-controlled-tables.d.ts +60 -0
  125. package/dist/own-change-control/change-controlled-tables.d.ts.map +1 -0
  126. package/dist/own-change-control/change-controlled-tables.js +70 -0
  127. package/dist/own-change-control/change-controlled-tables.js.map +1 -0
  128. package/dist/own-change-control/change-controlled-tables.test.d.ts +2 -0
  129. package/dist/own-change-control/change-controlled-tables.test.d.ts.map +1 -0
  130. package/dist/own-change-control/change-controlled-tables.test.js +48 -0
  131. package/dist/own-change-control/change-controlled-tables.test.js.map +1 -0
  132. package/dist/own-change-control/database-triggers.d.ts +5 -0
  133. package/dist/own-change-control/database-triggers.d.ts.map +1 -0
  134. package/dist/own-change-control/database-triggers.js +135 -0
  135. package/dist/own-change-control/database-triggers.js.map +1 -0
  136. package/dist/own-change-control/database-triggers.test.d.ts +2 -0
  137. package/dist/own-change-control/database-triggers.test.d.ts.map +1 -0
  138. package/dist/own-change-control/database-triggers.test.js +214 -0
  139. package/dist/own-change-control/database-triggers.test.js.map +1 -0
  140. package/dist/own-change-control/index.d.ts +2 -0
  141. package/dist/own-change-control/index.d.ts.map +1 -0
  142. package/dist/own-change-control/index.js +2 -0
  143. package/dist/own-change-control/index.js.map +1 -0
  144. package/dist/own-change-control/with-skip-own-change-control.d.ts +3 -0
  145. package/dist/own-change-control/with-skip-own-change-control.d.ts.map +1 -0
  146. package/dist/own-change-control/with-skip-own-change-control.js +28 -0
  147. package/dist/own-change-control/with-skip-own-change-control.js.map +1 -0
  148. package/dist/own-change-control/with-skip-own-change-control.test.d.ts +2 -0
  149. package/dist/own-change-control/with-skip-own-change-control.test.d.ts.map +1 -0
  150. package/dist/own-change-control/with-skip-own-change-control.test.js +49 -0
  151. package/dist/own-change-control/with-skip-own-change-control.test.js.map +1 -0
  152. package/dist/own-entity-change-control/apply-own-entity-change.js +2 -2
  153. package/dist/own-entity-change-control/apply-own-entity-change.js.map +1 -1
  154. package/dist/own-entity-change-control/apply-own-entity-change.test.js +9 -9
  155. package/dist/own-entity-change-control/apply-own-entity-change.test.js.map +1 -1
  156. package/dist/own-entity-change-control/database-triggers.js +6 -6
  157. package/dist/own-entity-change-control/database-triggers.js.map +1 -1
  158. package/dist/own-entity-change-control/database-triggers.test.js +1 -1
  159. package/dist/own-entity-change-control/database-triggers.test.js.map +1 -1
  160. package/dist/query-filter/version-change-in-difference.test.js +37 -29
  161. package/dist/query-filter/version-change-in-difference.test.js.map +1 -1
  162. package/dist/query-filter/version-change-in-symmetric-difference.test.js +37 -39
  163. package/dist/query-filter/version-change-in-symmetric-difference.test.js.map +1 -1
  164. package/dist/server-api-handler/environment/create-in-memory-environment.d.ts.map +1 -1
  165. package/dist/server-api-handler/environment/create-in-memory-environment.js +7 -3
  166. package/dist/server-api-handler/environment/create-in-memory-environment.js.map +1 -1
  167. package/dist/server-api-handler/environment/create-in-memory-environment.test.js +8 -7
  168. package/dist/server-api-handler/environment/create-in-memory-environment.test.js.map +1 -1
  169. package/dist/server-api-handler/routes/get-v1.d.ts.map +1 -1
  170. package/dist/server-api-handler/routes/get-v1.js +1 -2
  171. package/dist/server-api-handler/routes/get-v1.js.map +1 -1
  172. package/dist/server-api-handler/routes/get-v1.test.js +6 -5
  173. package/dist/server-api-handler/routes/get-v1.test.js.map +1 -1
  174. package/dist/server-api-handler/routes/new-v1.d.ts.map +1 -1
  175. package/dist/server-api-handler/routes/new-v1.js +3 -1
  176. package/dist/server-api-handler/routes/new-v1.js.map +1 -1
  177. package/dist/server-api-handler/routes/new-v1.test.js +2 -1
  178. package/dist/server-api-handler/routes/new-v1.test.js.map +1 -1
  179. package/dist/server-api-handler/routes/pull-v1.test.js +4 -3
  180. package/dist/server-api-handler/routes/pull-v1.test.js.map +1 -1
  181. package/dist/server-api-handler/routes/push-v1.test.js +5 -4
  182. package/dist/server-api-handler/routes/push-v1.test.js.map +1 -1
  183. package/dist/services/env-variables/index.d.ts +5 -0
  184. package/dist/services/env-variables/index.d.ts.map +1 -0
  185. package/dist/services/env-variables/index.js +5 -0
  186. package/dist/services/env-variables/index.js.map +1 -0
  187. package/dist/services/telemetry/capture.d.ts +30 -0
  188. package/dist/services/telemetry/capture.d.ts.map +1 -0
  189. package/dist/services/telemetry/capture.js +71 -0
  190. package/dist/services/telemetry/capture.js.map +1 -0
  191. package/dist/services/telemetry/capture.test.d.ts +2 -0
  192. package/dist/services/telemetry/capture.test.d.ts.map +1 -0
  193. package/dist/services/telemetry/capture.test.js +37 -0
  194. package/dist/services/telemetry/capture.test.js.map +1 -0
  195. package/dist/sync/pull-from-server.d.ts.map +1 -1
  196. package/dist/sync/pull-from-server.js +0 -2
  197. package/dist/sync/pull-from-server.js.map +1 -1
  198. package/dist/sync/pull-from-server.test.js +29 -14
  199. package/dist/sync/pull-from-server.test.js.map +1 -1
  200. package/dist/sync/push-to-server.test.js +17 -13
  201. package/dist/sync/push-to-server.test.js.map +1 -1
  202. package/dist/sync/sync-process.d.ts +2 -4
  203. package/dist/sync/sync-process.d.ts.map +1 -1
  204. package/dist/sync/sync-process.js +14 -13
  205. package/dist/sync/sync-process.js.map +1 -1
  206. package/dist/sync/sync-process.test.js +26 -38
  207. package/dist/sync/sync-process.test.js.map +1 -1
  208. package/dist/version/create-version.d.ts +5 -5
  209. package/dist/version/create-version.d.ts.map +1 -1
  210. package/dist/version/create-version.js +23 -11
  211. package/dist/version/create-version.js.map +1 -1
  212. package/dist/version/create-version.test.js +2 -2
  213. package/dist/version/create-version.test.js.map +1 -1
  214. package/dist/version/merge-version.d.ts.map +1 -1
  215. package/dist/version/merge-version.js +16 -26
  216. package/dist/version/merge-version.js.map +1 -1
  217. package/dist/version/switch-version.js +3 -3
  218. package/dist/version/switch-version.js.map +1 -1
  219. package/dist/version/switch-version.test.js +12 -15
  220. package/dist/version/switch-version.test.js.map +1 -1
  221. package/dist/version/update-changes-in-version.d.ts.map +1 -1
  222. package/dist/version/update-changes-in-version.js +11 -31
  223. package/dist/version/update-changes-in-version.js.map +1 -1
  224. package/package.json +7 -9
  225. package/src/account/database-schema.test.ts +6 -9
  226. package/src/account/database-schema.ts +2 -6
  227. package/src/change/apply-changes.test.ts +7 -7
  228. package/src/change/apply-changes.ts +9 -9
  229. package/src/database/apply-schema.ts +20 -73
  230. package/src/database/execute-sync.test.ts +3 -3
  231. package/src/database/init-db.test.ts +163 -19
  232. package/src/database/init-db.ts +20 -3
  233. package/src/database/kysely-plugin/parse-jsonb-plugin-v1.ts +9 -2
  234. package/src/database/mutation-log/database-schema.ts +1 -3
  235. package/src/database/nano-id.test.ts +15 -0
  236. package/src/database/nano-id.ts +72 -0
  237. package/src/database/schema.ts +15 -24
  238. package/src/discussion/create-comment.ts +0 -3
  239. package/src/discussion/create-discussion.test.ts +8 -39
  240. package/src/discussion/create-discussion.ts +6 -9
  241. package/src/{change-queue → file-queue}/file-handlers.ts +27 -27
  242. package/src/{change-queue/init-change-queue.test.ts → file-queue/file-queue-process.test.ts} +28 -29
  243. package/src/{change-queue/init-change-queue.ts → file-queue/file-queue-process.ts} +21 -16
  244. package/src/{change-queue/change-queue-settled.test.ts → file-queue/file-queue-settled.test.ts} +12 -12
  245. package/src/{change-queue/change-queue-settled.ts → file-queue/file-queue-settled.ts} +4 -4
  246. package/src/file-queue/index.ts +1 -0
  247. package/src/{change-queue/with-skip-change-queue.test.ts → file-queue/with-skip-file-queue.test.ts} +9 -9
  248. package/src/{change-queue/with-skip-change-queue.ts → file-queue/with-skip-file-queue.ts} +3 -3
  249. package/src/index.ts +2 -2
  250. package/src/key-value/database-schema.test.ts +26 -5
  251. package/src/key-value/database-schema.ts +18 -6
  252. package/src/lix/close-lix.ts +8 -0
  253. package/src/lix/index.ts +1 -0
  254. package/src/lix/merge.test.ts +7 -19
  255. package/src/lix/merge.ts +4 -4
  256. package/src/lix/new-lix.ts +2 -3
  257. package/src/lix/open-lix-in-memory.test.ts +5 -1
  258. package/src/lix/open-lix.test.ts +82 -7
  259. package/src/lix/open-lix.ts +104 -24
  260. package/src/lix/to-blob.ts +14 -0
  261. package/src/{own-entity-change-control/apply-own-entity-change.test.ts → own-change-control/apply-own-change.test.ts} +27 -31
  262. package/src/{own-entity-change-control/apply-own-entity-change.ts → own-change-control/apply-own-change.ts} +3 -3
  263. package/src/{own-entity-change-control → own-change-control}/change-controlled-tables.ts +0 -1
  264. package/src/{own-entity-change-control → own-change-control}/database-triggers.test.ts +7 -7
  265. package/src/{own-entity-change-control → own-change-control}/database-triggers.ts +11 -11
  266. package/src/{own-entity-change-control → own-change-control}/with-skip-own-change-control.ts +6 -2
  267. package/src/query-filter/version-change-in-difference.test.ts +41 -32
  268. package/src/query-filter/version-change-in-symmetric-difference.test.ts +41 -42
  269. package/src/server-api-handler/environment/create-in-memory-environment.test.ts +8 -7
  270. package/src/server-api-handler/environment/create-in-memory-environment.ts +7 -3
  271. package/src/server-api-handler/routes/get-v1.test.ts +6 -5
  272. package/src/server-api-handler/routes/get-v1.ts +1 -3
  273. package/src/server-api-handler/routes/new-v1.test.ts +2 -1
  274. package/src/server-api-handler/routes/new-v1.ts +3 -1
  275. package/src/server-api-handler/routes/pull-v1.test.ts +4 -3
  276. package/src/server-api-handler/routes/push-v1.test.ts +5 -4
  277. package/src/services/env-variables/create-index-file.js +35 -0
  278. package/src/services/env-variables/index.d.ts +15 -0
  279. package/src/services/telemetry/capture.test.ts +44 -0
  280. package/src/services/telemetry/capture.ts +99 -0
  281. package/src/sync/pull-from-server.test.ts +29 -14
  282. package/src/sync/pull-from-server.ts +0 -2
  283. package/src/sync/push-to-server.test.ts +19 -15
  284. package/src/sync/sync-process.test.ts +37 -43
  285. package/src/sync/sync-process.ts +16 -23
  286. package/src/version/create-version.test.ts +2 -2
  287. package/src/version/create-version.ts +24 -12
  288. package/src/version/merge-version.ts +18 -26
  289. package/src/version/switch-version.test.ts +12 -15
  290. package/src/version/switch-version.ts +3 -3
  291. package/src/version/update-changes-in-version.ts +11 -30
  292. package/node_modules/@lix-js/server-api-schema/.prettierrc.json +0 -3
  293. package/node_modules/@lix-js/server-api-schema/.vscode/extensions.json +0 -3
  294. package/node_modules/@lix-js/server-api-schema/dist/schema.d.ts +0 -384
  295. package/node_modules/@lix-js/server-api-schema/package.json +0 -21
  296. package/node_modules/@lix-js/server-api-schema/src/schema.yaml +0 -290
  297. package/node_modules/@lix-js/server-api-schema/tsconfig.json +0 -20
  298. package/node_modules/sqlite-wasm-kysely/README.md +0 -11
  299. package/node_modules/sqlite-wasm-kysely/dist/dialect.d.ts +0 -11
  300. package/node_modules/sqlite-wasm-kysely/dist/dialect.js +0 -13
  301. package/node_modules/sqlite-wasm-kysely/dist/dialect.js.map +0 -1
  302. package/node_modules/sqlite-wasm-kysely/dist/index.d.ts +0 -2
  303. package/node_modules/sqlite-wasm-kysely/dist/index.js +0 -3
  304. package/node_modules/sqlite-wasm-kysely/dist/index.js.map +0 -1
  305. package/node_modules/sqlite-wasm-kysely/dist/kysely/ConnectionMutex.d.ts +0 -5
  306. package/node_modules/sqlite-wasm-kysely/dist/kysely/ConnectionMutex.js +0 -34
  307. package/node_modules/sqlite-wasm-kysely/dist/kysely/ConnectionMutex.js.map +0 -1
  308. package/node_modules/sqlite-wasm-kysely/dist/kysely/SqliteWasmConnection.d.ts +0 -8
  309. package/node_modules/sqlite-wasm-kysely/dist/kysely/SqliteWasmConnection.js +0 -57
  310. package/node_modules/sqlite-wasm-kysely/dist/kysely/SqliteWasmConnection.js.map +0 -1
  311. package/node_modules/sqlite-wasm-kysely/dist/kysely/SqliteWasmDialectConfig.d.ts +0 -18
  312. package/node_modules/sqlite-wasm-kysely/dist/kysely/SqliteWasmDialectConfig.js +0 -2
  313. package/node_modules/sqlite-wasm-kysely/dist/kysely/SqliteWasmDialectConfig.js.map +0 -1
  314. package/node_modules/sqlite-wasm-kysely/dist/kysely/SqliteWasmDriver.d.ts +0 -13
  315. package/node_modules/sqlite-wasm-kysely/dist/kysely/SqliteWasmDriver.js +0 -57
  316. package/node_modules/sqlite-wasm-kysely/dist/kysely/SqliteWasmDriver.js.map +0 -1
  317. package/node_modules/sqlite-wasm-kysely/dist/kysely/index.d.ts +0 -4
  318. package/node_modules/sqlite-wasm-kysely/dist/kysely/index.js +0 -4
  319. package/node_modules/sqlite-wasm-kysely/dist/kysely/index.js.map +0 -1
  320. package/node_modules/sqlite-wasm-kysely/dist/kysely/sqliteModule.d.ts +0 -3
  321. package/node_modules/sqlite-wasm-kysely/dist/kysely/sqliteModule.js +0 -5
  322. package/node_modules/sqlite-wasm-kysely/dist/kysely/sqliteModule.js.map +0 -1
  323. package/node_modules/sqlite-wasm-kysely/dist/util/contentFromDatabase.d.ts +0 -9
  324. package/node_modules/sqlite-wasm-kysely/dist/util/contentFromDatabase.js +0 -12
  325. package/node_modules/sqlite-wasm-kysely/dist/util/contentFromDatabase.js.map +0 -1
  326. package/node_modules/sqlite-wasm-kysely/dist/util/createInMemoryDatabase.d.ts +0 -3
  327. package/node_modules/sqlite-wasm-kysely/dist/util/createInMemoryDatabase.js +0 -22
  328. package/node_modules/sqlite-wasm-kysely/dist/util/createInMemoryDatabase.js.map +0 -1
  329. package/node_modules/sqlite-wasm-kysely/dist/util/importDatabase.d.ts +0 -7
  330. package/node_modules/sqlite-wasm-kysely/dist/util/importDatabase.js +0 -15
  331. package/node_modules/sqlite-wasm-kysely/dist/util/importDatabase.js.map +0 -1
  332. package/node_modules/sqlite-wasm-kysely/dist/util/index.d.ts +0 -5
  333. package/node_modules/sqlite-wasm-kysely/dist/util/index.js +0 -5
  334. package/node_modules/sqlite-wasm-kysely/dist/util/index.js.map +0 -1
  335. package/node_modules/sqlite-wasm-kysely/dist/util/loadDatabaseInMemory.d.ts +0 -1
  336. package/node_modules/sqlite-wasm-kysely/dist/util/loadDatabaseInMemory.js +0 -13
  337. package/node_modules/sqlite-wasm-kysely/dist/util/loadDatabaseInMemory.js.map +0 -1
  338. package/node_modules/sqlite-wasm-kysely/dist/util/sqliteWasmBinary.d.ts +0 -7
  339. package/node_modules/sqlite-wasm-kysely/dist/util/sqliteWasmBinary.js +0 -17
  340. package/node_modules/sqlite-wasm-kysely/dist/util/sqliteWasmBinary.js.map +0 -1
  341. package/node_modules/sqlite-wasm-kysely/package.json +0 -34
  342. package/node_modules/sqlite-wasm-kysely/src/dialect.ts +0 -15
  343. package/node_modules/sqlite-wasm-kysely/src/index.ts +0 -2
  344. package/node_modules/sqlite-wasm-kysely/src/kysely/ConnectionMutex.ts +0 -23
  345. package/node_modules/sqlite-wasm-kysely/src/kysely/SqliteWasmConnection.ts +0 -57
  346. package/node_modules/sqlite-wasm-kysely/src/kysely/SqliteWasmDialectConfig.ts +0 -19
  347. package/node_modules/sqlite-wasm-kysely/src/kysely/SqliteWasmDriver.ts +0 -58
  348. package/node_modules/sqlite-wasm-kysely/src/kysely/index.ts +0 -4
  349. package/node_modules/sqlite-wasm-kysely/src/kysely/sqliteModule.ts +0 -7
  350. package/node_modules/sqlite-wasm-kysely/src/util/contentFromDatabase.ts +0 -13
  351. package/node_modules/sqlite-wasm-kysely/src/util/createInMemoryDatabase.ts +0 -30
  352. package/node_modules/sqlite-wasm-kysely/src/util/importDatabase.ts +0 -34
  353. package/node_modules/sqlite-wasm-kysely/src/util/index.ts +0 -5
  354. package/node_modules/sqlite-wasm-kysely/src/util/loadDatabaseInMemory.ts +0 -13
  355. package/node_modules/sqlite-wasm-kysely/src/util/sqliteWasmBinary.ts +0 -20
  356. package/src/change-queue/index.ts +0 -1
  357. /package/src/{own-entity-change-control → own-change-control}/change-controlled-tables.test.ts +0 -0
  358. /package/src/{own-entity-change-control → own-change-control}/index.ts +0 -0
  359. /package/src/{own-entity-change-control → own-change-control}/with-skip-own-change-control.test.ts +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"sqliteWasmBinary.js","sourceRoot":"","sources":["../../src/util/sqliteWasmBinary.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,SAAS,mBAAmB,CAAC,MAAc;IACzC,IAAI,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,KAAK,GAAG,IAAI,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAChD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7C,KAAK,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,CAAC;AACtB,CAAC;AAED,MAAM,gBAAgB,GACpB,sgtsCAAsgtsC,CAAC;AAEzgtsC,MAAM,CAAC,MAAM,UAAU,GAAG,mBAAmB,CAAC,gBAAgB,CAAC,CAAC"}
@@ -1,34 +0,0 @@
1
- {
2
- "private": true,
3
- "name": "sqlite-wasm-kysely",
4
- "version": "0.1.0",
5
- "type": "module",
6
- "exports": {
7
- ".": "./dist/index.js"
8
- },
9
- "files": [
10
- "dist",
11
- "src"
12
- ],
13
- "scripts": {
14
- "build": "tsc",
15
- "test": "tsc --noEmit && vitest run",
16
- "test:watch": "vitest",
17
- "format": "prettier . --write"
18
- },
19
- "dependencies": {
20
- "@eliaspourquoi/sqlite-node-wasm": "^3.46.0-build2"
21
- },
22
- "devDependencies": {
23
- "@vitest/browser": "^1.6.0",
24
- "kysely": "^0.27.4",
25
- "prettier": "^3.3.2",
26
- "typescript": "^5.5.3",
27
- "vite": "^5.3.3",
28
- "vitest": "^1.6.0",
29
- "webdriverio": "^8.39.1"
30
- },
31
- "peerDependencies": {
32
- "kysely": "*"
33
- }
34
- }
@@ -1,15 +0,0 @@
1
- import { SqliteAdapter, SqliteIntrospector, SqliteQueryCompiler } from "kysely";
2
- import { SqliteWasmDriver } from "./kysely/SqliteWasmDriver.js";
3
- import { Database } from "@eliaspourquoi/sqlite-node-wasm";
4
-
5
- export const createDialect = (args: { database: Database }) => {
6
- return {
7
- createAdapter: () => new SqliteAdapter(),
8
- createDriver: () =>
9
- new SqliteWasmDriver({
10
- database: args.database,
11
- }),
12
- createIntrospector: (db: any) => new SqliteIntrospector(db),
13
- createQueryCompiler: () => new SqliteQueryCompiler(),
14
- };
15
- };
@@ -1,2 +0,0 @@
1
- export * from "./util/index.js";
2
- export { createDialect } from "./dialect.js";
@@ -1,23 +0,0 @@
1
- export class ConnectionMutex {
2
- #promise?: Promise<void>;
3
- #resolve?: () => void;
4
-
5
- async lock(): Promise<void> {
6
- while (this.#promise) {
7
- await this.#promise;
8
- }
9
-
10
- this.#promise = new Promise((resolve) => {
11
- this.#resolve = resolve;
12
- });
13
- }
14
-
15
- unlock(): void {
16
- const resolve = this.#resolve;
17
-
18
- this.#promise = undefined;
19
- this.#resolve = undefined;
20
-
21
- resolve?.();
22
- }
23
- }
@@ -1,57 +0,0 @@
1
- import { CompiledQuery, DatabaseConnection, QueryResult } from "kysely";
2
- import { Database } from "@eliaspourquoi/sqlite-node-wasm";
3
- import { sqliteModule } from "./sqliteModule.js";
4
-
5
- export class SqliteWasmConnection implements DatabaseConnection {
6
- readonly #db: Database;
7
-
8
- constructor(db: Database) {
9
- this.#db = db;
10
- }
11
-
12
- executeQuery<O>(compiledQuery: CompiledQuery): Promise<QueryResult<O>> {
13
- const { sql, parameters } = compiledQuery;
14
-
15
- const statementData = {
16
- rows: [],
17
- columns: [],
18
- };
19
-
20
- // we cant know what kind of query we are dealing with at that state - unless we switch to perpared statments
21
- // for now we collect all information required
22
- // save the changes before (total changes seems to be fast and worth the twoe extra round trips inspiration from https://github.com/WiseLibs/better-sqlite3/blob/254b8e93d78b1b03c9a2c777f4d304a0ea1530c6/src/objects/statement.lzz#L159)
23
- const totalChangesBefore = this.#db.changes(true);
24
-
25
- // execute the statement
26
- const rows = this.#db.exec({
27
- sql: sql,
28
- bind: parameters as any,
29
- returnValue: "resultRows",
30
- rowMode: "object",
31
- columnNames: statementData.columns,
32
- });
33
-
34
- const lastInsertId = sqliteModule?.capi.sqlite3_last_insert_rowid(this.#db);
35
-
36
- // check if we had changes in the db at all - if so - collect the number of changes
37
- const changes =
38
- totalChangesBefore === this.#db.changes(true) ? 0 : this.#db.changes();
39
-
40
- // console.log('sql: ' + sql);
41
- // console.log('result: ', rows);
42
- // We don't have knowledge about rather its update/delete/or select - so we return the results
43
- // @ts-expect-error - TODO for @martin-lysk - typescript complains
44
- return Promise.resolve({
45
- numAffectedRows: changes,
46
- insertId: lastInsertId,
47
-
48
- // queries with result
49
- rows: rows as O[],
50
- });
51
- }
52
-
53
- // eslint-disable-next-line require-yield
54
- async *streamQuery() {
55
- throw new Error("not supported for wasm driver yet");
56
- }
57
- }
@@ -1,19 +0,0 @@
1
- import { DatabaseConnection } from "kysely";
2
- import { Database } from "@eliaspourquoi/sqlite-node-wasm";
3
-
4
- export interface SqliteWasmDialectConfig {
5
- /**
6
- * An sqlite Database instance or a function that returns one.
7
- *
8
- * If a function is provided, it's called once when the first query is executed.
9
- *
10
- * https://github.com/JoshuaWise/better-sqlite3/blob/master/docs/api.md#new-databasepath-options
11
- */
12
- database: Database | (() => Promise<Database>);
13
- /**
14
- * Called once when the first query is executed.
15
- *
16
- * This is a Kysely specific feature and does not come from the `better-sqlite3` module.
17
- */
18
- onCreateConnection?: (connection: DatabaseConnection) => Promise<void>;
19
- }
@@ -1,58 +0,0 @@
1
- import { CompiledQuery, DatabaseConnection, Driver } from "kysely";
2
- import { Database } from "@eliaspourquoi/sqlite-node-wasm";
3
- import { SqliteWasmDialectConfig } from "./SqliteWasmDialectConfig.js";
4
- import { ConnectionMutex } from "./ConnectionMutex.js";
5
- import { SqliteWasmConnection } from "./SqliteWasmConnection.js";
6
-
7
- export class SqliteWasmDriver implements Driver {
8
- readonly #config: SqliteWasmDialectConfig;
9
- readonly #connectionMutex = new ConnectionMutex();
10
-
11
- #db?: Database;
12
- #connection?: DatabaseConnection;
13
-
14
- constructor(config: SqliteWasmDialectConfig) {
15
- // this.#config = freeze({ ...config })
16
- this.#config = { ...config };
17
- }
18
-
19
- async init(): Promise<void> {
20
- this.#db =
21
- typeof this.#config.database === "function"
22
- ? await this.#config.database()
23
- : this.#config.database;
24
-
25
- this.#connection = new SqliteWasmConnection(this.#db);
26
-
27
- if (this.#config.onCreateConnection) {
28
- await this.#config.onCreateConnection(this.#connection);
29
- }
30
- }
31
-
32
- async acquireConnection(): Promise<DatabaseConnection> {
33
- // SQLite only has one single connection. We use a mutex here to wait
34
- // until the single connection has been released.
35
- await this.#connectionMutex.lock();
36
- return this.#connection!;
37
- }
38
-
39
- async beginTransaction(connection: DatabaseConnection): Promise<void> {
40
- await connection.executeQuery(CompiledQuery.raw("begin"));
41
- }
42
-
43
- async commitTransaction(connection: DatabaseConnection): Promise<void> {
44
- await connection.executeQuery(CompiledQuery.raw("commit"));
45
- }
46
-
47
- async rollbackTransaction(connection: DatabaseConnection): Promise<void> {
48
- await connection.executeQuery(CompiledQuery.raw("rollback"));
49
- }
50
-
51
- async releaseConnection(): Promise<void> {
52
- this.#connectionMutex.unlock();
53
- }
54
-
55
- async destroy(): Promise<void> {
56
- this.#db?.close();
57
- }
58
- }
@@ -1,4 +0,0 @@
1
- export { SqliteWasmConnection } from "./SqliteWasmConnection.js";
2
- export type { SqliteWasmDialectConfig } from "./SqliteWasmDialectConfig.js";
3
- export { SqliteWasmDriver } from "./SqliteWasmDriver.js";
4
- export { ConnectionMutex } from "./ConnectionMutex.js";
@@ -1,7 +0,0 @@
1
- import { Sqlite3Static } from "@eliaspourquoi/sqlite-node-wasm";
2
-
3
- export let sqliteModule: Sqlite3Static;
4
-
5
- export function setSqliteModule(module: Sqlite3Static) {
6
- sqliteModule = module;
7
- }
@@ -1,13 +0,0 @@
1
- import { Database } from "@eliaspourquoi/sqlite-node-wasm";
2
- import { sqliteModule } from "../kysely/sqliteModule.js";
3
-
4
- /**
5
- * Exports the content of a database as a Uint8Array.
6
- *
7
- * @example
8
- * const db = createInMemoryDatabase({ readOnly: false });
9
- * const content = contentFromDatabase(db);
10
- */
11
- export const contentFromDatabase = (db: Database): Uint8Array => {
12
- return sqliteModule.capi.sqlite3_js_db_export(db);
13
- };
@@ -1,30 +0,0 @@
1
- import sqlite3InitModule from "@eliaspourquoi/sqlite-node-wasm";
2
- import { setSqliteModule, sqliteModule } from "../kysely/sqliteModule.js";
3
- import { wasmBinary } from "./sqliteWasmBinary.js";
4
-
5
- export const createInMemoryDatabase = async ({
6
- readOnly = false,
7
- }: {
8
- readOnly?: boolean;
9
- }) => {
10
- if (!sqliteModule) {
11
- await initSqlite();
12
- }
13
- const flags = [
14
- readOnly ? "r" : "cw", // read and write
15
- "", // non verbose
16
- ].join("");
17
-
18
- return new sqliteModule.oo1.DB(":memory:", flags);
19
- };
20
-
21
- async function initSqlite() {
22
- setSqliteModule(
23
- await sqlite3InitModule({
24
- // @ts-expect-error
25
- wasmBinary: wasmBinary,
26
- // https://github.com/opral/inlang-sdk/issues/170#issuecomment-2334768193
27
- locateFile: () => "sqlite3.wasm",
28
- }),
29
- );
30
- }
@@ -1,34 +0,0 @@
1
- import { sqliteModule } from "../kysely/sqliteModule.js";
2
- import { Database } from "@eliaspourquoi/sqlite-node-wasm";
3
-
4
- export const importDatabase = ({
5
- db,
6
- content,
7
- schema = "main",
8
- readOnly = false,
9
- }: {
10
- db: Database;
11
- content: Uint8Array;
12
- schema?: string;
13
- readOnly?: boolean;
14
- }) => {
15
- const deserializeFlag = readOnly
16
- ? sqliteModule.capi.SQLITE_DESERIALIZE_READONLY
17
- : sqliteModule.capi.SQLITE_DESERIALIZE_FREEONCLOSE |
18
- sqliteModule.capi.SQLITE_DESERIALIZE_RESIZEABLE;
19
-
20
- const contentPointer = sqliteModule.wasm.allocFromTypedArray(content);
21
- const deserializeReturnCode = sqliteModule.capi.sqlite3_deserialize(
22
- db.pointer!,
23
- schema,
24
- contentPointer,
25
- content.byteLength, // db size
26
- content.byteLength, // content size
27
- deserializeFlag,
28
- );
29
-
30
- // check if the deserialization was successfull
31
- db.checkRc(deserializeReturnCode);
32
-
33
- return db;
34
- };
@@ -1,5 +0,0 @@
1
- export { contentFromDatabase } from "./contentFromDatabase.js";
2
- export { createInMemoryDatabase } from "./createInMemoryDatabase.js";
3
- export { importDatabase } from "./importDatabase.js";
4
- export type { Database as SqliteDatabase } from "@eliaspourquoi/sqlite-node-wasm";
5
- export { loadDatabaseInMemory } from "./loadDatabaseInMemory.js";
@@ -1,13 +0,0 @@
1
- import { createInMemoryDatabase } from "./createInMemoryDatabase.js";
2
- import { importDatabase } from "./importDatabase.js";
3
-
4
- export async function loadDatabaseInMemory(data: ArrayBuffer) {
5
- const database = await createInMemoryDatabase({
6
- readOnly: false,
7
- });
8
- importDatabase({
9
- db: database,
10
- content: new Uint8Array(data),
11
- });
12
- return database;
13
- }