@enbox/dwn-sql-store 0.0.1 → 0.0.3

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 (85) hide show
  1. package/README.md +36 -53
  2. package/dist/esm/src/data-store-sql.js +5 -5
  3. package/dist/esm/src/data-store-sql.js.map +1 -1
  4. package/dist/esm/src/dialect/bun-sqlite-adapter.js +46 -0
  5. package/dist/esm/src/dialect/bun-sqlite-adapter.js.map +1 -0
  6. package/dist/esm/src/dialect/mysql-dialect.js +1 -1
  7. package/dist/esm/src/dialect/mysql-dialect.js.map +1 -1
  8. package/dist/esm/src/dialect/postgres-dialect.js +1 -1
  9. package/dist/esm/src/dialect/postgres-dialect.js.map +1 -1
  10. package/dist/esm/src/dialect/sqlite-dialect.js +1 -1
  11. package/dist/esm/src/dialect/sqlite-dialect.js.map +1 -1
  12. package/dist/esm/src/main.js +3 -1
  13. package/dist/esm/src/main.js.map +1 -1
  14. package/dist/esm/src/message-store-sql.js +54 -25
  15. package/dist/esm/src/message-store-sql.js.map +1 -1
  16. package/dist/esm/src/resumable-task-store-sql.js +5 -6
  17. package/dist/esm/src/resumable-task-store-sql.js.map +1 -1
  18. package/dist/esm/src/smt-store-sql.js +151 -0
  19. package/dist/esm/src/smt-store-sql.js.map +1 -0
  20. package/dist/esm/src/state-index-sql.js +234 -0
  21. package/dist/esm/src/state-index-sql.js.map +1 -0
  22. package/dist/esm/src/utils/filter.js +3 -3
  23. package/dist/esm/src/utils/filter.js.map +1 -1
  24. package/dist/esm/src/utils/sanitize.js +7 -8
  25. package/dist/esm/src/utils/sanitize.js.map +1 -1
  26. package/dist/esm/src/utils/tags.js +3 -6
  27. package/dist/esm/src/utils/tags.js.map +1 -1
  28. package/dist/esm/src/utils/transaction.js +3 -21
  29. package/dist/esm/src/utils/transaction.js.map +1 -1
  30. package/dist/types/src/data-store-sql.d.ts +3 -4
  31. package/dist/types/src/data-store-sql.d.ts.map +1 -1
  32. package/dist/types/src/dialect/bun-sqlite-adapter.d.ts +33 -0
  33. package/dist/types/src/dialect/bun-sqlite-adapter.d.ts.map +1 -0
  34. package/dist/types/src/dialect/dialect.d.ts +1 -2
  35. package/dist/types/src/dialect/dialect.d.ts.map +1 -1
  36. package/dist/types/src/dialect/mysql-dialect.d.ts +3 -2
  37. package/dist/types/src/dialect/mysql-dialect.d.ts.map +1 -1
  38. package/dist/types/src/dialect/postgres-dialect.d.ts +3 -2
  39. package/dist/types/src/dialect/postgres-dialect.d.ts.map +1 -1
  40. package/dist/types/src/dialect/sqlite-dialect.d.ts +3 -2
  41. package/dist/types/src/dialect/sqlite-dialect.d.ts.map +1 -1
  42. package/dist/types/src/main.d.ts +3 -1
  43. package/dist/types/src/main.d.ts.map +1 -1
  44. package/dist/types/src/message-store-sql.d.ts +4 -3
  45. package/dist/types/src/message-store-sql.d.ts.map +1 -1
  46. package/dist/types/src/resumable-task-store-sql.d.ts +2 -2
  47. package/dist/types/src/resumable-task-store-sql.d.ts.map +1 -1
  48. package/dist/types/src/smt-store-sql.d.ts +37 -0
  49. package/dist/types/src/smt-store-sql.d.ts.map +1 -0
  50. package/dist/types/src/state-index-sql.d.ts +44 -0
  51. package/dist/types/src/state-index-sql.d.ts.map +1 -0
  52. package/dist/types/src/types.d.ts +24 -42
  53. package/dist/types/src/types.d.ts.map +1 -1
  54. package/dist/types/src/utils/filter.d.ts +3 -3
  55. package/dist/types/src/utils/filter.d.ts.map +1 -1
  56. package/dist/types/src/utils/sanitize.d.ts +2 -2
  57. package/dist/types/src/utils/sanitize.d.ts.map +1 -1
  58. package/dist/types/src/utils/tags.d.ts +3 -5
  59. package/dist/types/src/utils/tags.d.ts.map +1 -1
  60. package/dist/types/src/utils/transaction.d.ts +4 -4
  61. package/dist/types/src/utils/transaction.d.ts.map +1 -1
  62. package/package.json +19 -31
  63. package/src/data-store-sql.ts +11 -9
  64. package/src/dialect/bun-sqlite-adapter.ts +82 -0
  65. package/src/dialect/dialect.ts +4 -5
  66. package/src/dialect/mysql-dialect.ts +8 -6
  67. package/src/dialect/postgres-dialect.ts +11 -6
  68. package/src/dialect/sqlite-dialect.ts +11 -6
  69. package/src/main.ts +4 -2
  70. package/src/message-store-sql.ts +90 -45
  71. package/src/resumable-task-store-sql.ts +9 -7
  72. package/src/smt-store-sql.ts +206 -0
  73. package/src/state-index-sql.ts +283 -0
  74. package/src/types.ts +32 -47
  75. package/src/utils/filter.ts +8 -6
  76. package/src/utils/sanitize.ts +19 -20
  77. package/src/utils/tags.ts +6 -7
  78. package/src/utils/transaction.ts +7 -23
  79. package/dist/cjs/main.js +0 -3784
  80. package/dist/cjs/package.json +0 -1
  81. package/dist/esm/src/event-log-sql.js +0 -169
  82. package/dist/esm/src/event-log-sql.js.map +0 -1
  83. package/dist/types/src/event-log-sql.d.ts +0 -24
  84. package/dist/types/src/event-log-sql.d.ts.map +0 -1
  85. package/src/event-log-sql.ts +0 -227
package/README.md CHANGED
@@ -1,13 +1,15 @@
1
- # DWN SQL Stores <!-- omit in toc -->
1
+ # DWN SQL Stores
2
+
3
+ > **Research Preview** — Enbox is under active development. APIs may change without notice.
2
4
 
3
5
  [![NPM](https://img.shields.io/npm/v/@enbox/dwn-sql-store.svg?style=flat-square&logo=npm&logoColor=FFFFFF&color=FFEC19&santize=true)](https://www.npmjs.com/package/@enbox/dwn-sql-store)
4
- [![Build Status](https://img.shields.io/github/actions/workflow/status/enboxorg/enbox/dwn-sql-store/integrity-checks.yml?branch=main&logo=github&label=ci&logoColor=FFFFFF&style=flat-square)](https://github.com/enboxorg/enbox/dwn-sql-store/actions/workflows/integrity-checks.yml)
5
- [![Coverage](https://img.shields.io/codecov/c/gh/enboxorg/enbox/dwn-sql-store/main?logo=codecov&logoColor=FFFFFF&style=flat-square&token=YI87CKF1LI)](https://codecov.io/github/enboxorg/enbox/dwn-sql-store)
6
- [![License](https://img.shields.io/npm/l/@enbox/dwn-sql-store.svg?style=flat-square&color=24f2ff&logo=apache&logoColor=FFFFFF&santize=true)](https://github.com/enboxorg/enbox/dwn-sql-store/blob/main/LICENSE)
6
+ [![Build Status](https://img.shields.io/github/actions/workflow/status/enboxorg/enbox/ci.yml?branch=main&logo=github&label=ci&logoColor=FFFFFF&style=flat-square)](https://github.com/enboxorg/enbox/actions/workflows/ci.yml)
7
+ [![Coverage](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/LiranCohen/02d15f39a46173a612a8862ec6d7cfcf/raw/dwn-sql-store.json&style=flat-square)](https://github.com/enboxorg/enbox/actions/workflows/ci.yml)
8
+ [![License](https://img.shields.io/npm/l/@enbox/dwn-sql-store.svg?style=flat-square&color=24f2ff&logo=apache&logoColor=FFFFFF&santize=true)](https://github.com/enboxorg/enbox/blob/main/LICENSE)
7
9
  [![Chat](https://img.shields.io/badge/chat-on%20discord-7289da.svg?style=flat-square&color=9a1aff&logo=discord&logoColor=FFFFFF&sanitize=true)](https://discord.com/channels/937858703112155166/969272658501976117)
8
10
 
9
11
 
10
- SQL backed implementations of DWN `MessageStore`, `DataStore`, and `EventLog`.
12
+ SQL backed implementations of DWN `MessageStore`, `DataStore`, and `StateIndex`.
11
13
 
12
14
  - [Supported DBs](#supported-dbs)
13
15
  - [Installation](#installation)
@@ -17,10 +19,10 @@ SQL backed implementations of DWN `MessageStore`, `DataStore`, and `EventLog`.
17
19
  - [PostgreSQL](#postgresql)
18
20
  - [Development](#development)
19
21
  - [Prerequisites](#prerequisites)
20
- - [`node` and `npm`](#node-and-npm)
22
+ - [Bun](#bun)
21
23
  - [Docker](#docker)
22
24
  - [Running Tests](#running-tests)
23
- - [`npm` scripts](#npm-scripts)
25
+ - [Scripts](#scripts)
24
26
 
25
27
 
26
28
  # Supported DBs
@@ -34,7 +36,7 @@ See [SQL Dialect Variations](sql-dialect-variations) for the list of special han
34
36
  # Installation
35
37
 
36
38
  ```bash
37
- npm install @enbox/dwn-sql-store
39
+ bun add @enbox/dwn-sql-store
38
40
  ```
39
41
 
40
42
  # Usage
@@ -42,22 +44,18 @@ npm install @enbox/dwn-sql-store
42
44
  ## SQLite
43
45
 
44
46
  ```typescript
45
- import Database from 'better-sqlite3';
46
-
47
47
  import { Dwn } from '@enbox/dwn-sdk-js'
48
- import { SqliteDialect, MessageStoreSql, DataStoreSql, EventLogSql } from '@enbox/dwn-sql-store';
48
+ import { createBunSqliteDatabase, SqliteDialect, MessageStoreSql, DataStoreSql, StateIndexSql } from '@enbox/dwn-sql-store';
49
49
 
50
50
  const sqliteDialect = new SqliteDialect({
51
- database: async () => new Database('dwn.sqlite', {
52
- fileMustExist: true,
53
- })
51
+ database: async () => createBunSqliteDatabase('dwn.sqlite'),
54
52
  });
55
53
 
56
54
  const messageStore = new MessageStoreSql(sqliteDialect);
57
55
  const dataStore = new DataStoreSql(sqliteDialect);
58
- const eventLog = new EventLogSql(sqliteDialect);
56
+ const stateIndex = new StateIndexSql(sqliteDialect);
59
57
 
60
- const dwn = await Dwn.create({ messageStore, dataStore, eventLog });
58
+ const dwn = await Dwn.create({ messageStore, dataStore, stateIndex });
61
59
  ```
62
60
 
63
61
  ## MySQL
@@ -65,7 +63,7 @@ const dwn = await Dwn.create({ messageStore, dataStore, eventLog });
65
63
  ```typescript
66
64
  import { createPool } from 'mysql2';
67
65
  import { Dwn } from '@enbox/dwn-sdk-js'
68
- import { MysqlDialect, MessageStoreSql, DataStoreSql, EventLogSql } from '@enbox/dwn-sql-store';
66
+ import { MysqlDialect, MessageStoreSql, DataStoreSql, StateIndexSql } from '@enbox/dwn-sql-store';
69
67
 
70
68
  const mysqlDialect = new MysqlDialect({
71
69
  pool: async () => createPool({
@@ -79,9 +77,9 @@ const mysqlDialect = new MysqlDialect({
79
77
 
80
78
  const messageStore = new MessageStoreSql(mysqlDialect);
81
79
  const dataStore = new DataStoreSql(mysqlDialect);
82
- const eventLog = new EventLogSql(mysqlDialect);
80
+ const stateIndex = new StateIndexSql(mysqlDialect);
83
81
 
84
- const dwn = await Dwn.create({ messageStore, dataStore, eventLog });
82
+ const dwn = await Dwn.create({ messageStore, dataStore, stateIndex });
85
83
  ```
86
84
 
87
85
  ## PostgreSQL
@@ -111,7 +109,7 @@ import pg from 'pg';
111
109
  import Cursor from 'pg-cursor';
112
110
 
113
111
  import { Dwn } from '@enbox/dwn-sdk-js'
114
- import { PostgresDialect, MessageStoreSql, DataStoreSql, EventLogSql } from '@enbox/dwn-sql-store';
112
+ import { PostgresDialect, MessageStoreSql, DataStoreSql, StateIndexSql } from '@enbox/dwn-sql-store';
115
113
 
116
114
  const postgresDialect = new PostgresDialect({
117
115
  pool: async () => new pg.Pool({
@@ -126,28 +124,16 @@ const postgresDialect = new PostgresDialect({
126
124
 
127
125
  const messageStore = new MessageStoreSql(postgresDialect);
128
126
  const dataStore = new DataStoreSql(postgresDialect);
129
- const eventLog = new EventLogSql(postgresDialect);
127
+ const stateIndex = new StateIndexSql(postgresDialect);
130
128
 
131
- const dwn = await Dwn.create({ messageStore, dataStore, eventLog });
129
+ const dwn = await Dwn.create({ messageStore, dataStore, stateIndex });
132
130
  ```
133
131
 
134
132
  # Development
135
133
 
136
134
  ## Prerequisites
137
- ### `node` and `npm`
138
- This project is developed and tested with [Node.js](https://nodejs.org/en/about/previous-releases)
139
- `v18` and `v20` and NPM `v9`. You can verify your `node` and `npm` installation via the terminal:
140
-
141
- ```
142
- $ node --version
143
- v20.3.0
144
- $ npm --version
145
- 9.6.7
146
- ```
147
-
148
- If you don't have `node` installed. Feel free to choose whichever approach you feel the most comfortable with. If you don't have a preferred installation method, i'd recommend using `nvm` (aka node version manager). `nvm` allows you to install and use different versions of node. It can be installed by running `brew install nvm` (assuming that you have homebrew)
149
-
150
- Once you have installed `nvm`, install the desired node version with `nvm install vX.Y.Z`.
135
+ ### Bun
136
+ This project uses [Bun](https://bun.sh) >= 1.0 as its runtime and package manager.
151
137
 
152
138
  ### Docker
153
139
  Docker is used to spin up a local containerized DBs for testing purposes. Docker from [here](https://docs.docker.com/engine/install/)
@@ -156,23 +142,20 @@ Docker is used to spin up a local containerized DBs for testing purposes. Docker
156
142
  > 💡 Make sure you have all the [prerequisites](#prerequisites)
157
143
 
158
144
  0. clone the repo and `cd` into the project directory
159
- 1. Install all project dependencies by running `npm install`
145
+ 1. Install all project dependencies by running `bun install`
160
146
  2. Start docker
161
147
  > NOTE: You might need to delete the existing PostgreSQL and MySQL docker containers as well as `dwn.sqlite` file when a breaking change is introduced if you see tests that used to pass is now failing after a `git pull`. You can run `./scripts/delete-databases` to do this.
162
148
  3. start the test databases using `./scripts/start-databases` (requires Docker)
163
- 4. run tests using `npm run test`
164
-
165
- ## `npm` scripts
166
-
167
- | Script | Description |
168
- | ----------------------- | ------------------------------------------- |
169
- | `npm run build:cjs` | compiles typescript into CommonJS |
170
- | `npm run build:esm` | compiles typescript into ESM JS |
171
- | `npm run build` | compiles typescript into ESM JS & CommonJS |
172
- | `npm run clean` | deletes compiled JS |
173
- | `npm run test` | runs tests. |
174
- | `npm run test-coverage` | runs tests and includes coverage |
175
- | `npm run lint` | runs linter |
176
- | `npm run lint:fix` | runs linter and fixes auto-fixable problems |
177
-
178
- [codeowners-link]: https://github.com/enboxorg/enbox/enbox/blob/main/sql-dialect-variations.md
149
+ 4. run tests using `bun run test`
150
+
151
+ ## Scripts
152
+
153
+ | Script | Description |
154
+ | ------------------- | ---------------------------- |
155
+ | `bun run build` | compiles TypeScript |
156
+ | `bun run clean` | deletes compiled JS |
157
+ | `bun run test` | runs tests |
158
+ | `bun run lint` | runs linter |
159
+ | `bun run lint:fix` | auto-fix lint issues |
160
+
161
+ [codeowners-link]: https://github.com/enboxorg/enbox/blob/main/sql-dialect-variations.md
@@ -1,6 +1,5 @@
1
1
  import { DataStream } from '@enbox/dwn-sdk-js';
2
2
  import { Kysely } from 'kysely';
3
- import { Readable } from 'readable-stream';
4
3
  export class DataStoreSql {
5
4
  #dialect;
6
5
  #db = null;
@@ -56,12 +55,13 @@ export class DataStoreSql {
56
55
  if (!result) {
57
56
  return undefined;
58
57
  }
58
+ const dataBytes = new Uint8Array(result.data);
59
59
  return {
60
60
  dataSize: result.data.length,
61
- dataStream: new Readable({
62
- read() {
63
- this.push(Buffer.from(result.data));
64
- this.push(null);
61
+ dataStream: new ReadableStream({
62
+ start(controller) {
63
+ controller.enqueue(dataBytes);
64
+ controller.close();
65
65
  }
66
66
  }),
67
67
  };
@@ -1 +1 @@
1
- {"version":3,"file":"data-store-sql.js","sourceRoot":"","sources":["../../../src/data-store-sql.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data-store-sql.js","sourceRoot":"","sources":["../../../src/data-store-sql.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,OAAO,YAAY;IACvB,QAAQ,CAAU;IAClB,GAAG,GAAmC,IAAI,CAAC;IAE3C,YAAY,OAAgB;QAC1B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,IAAI,CAAC,GAAG,GAAG,IAAI,MAAM,CAAkB,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEnE,wDAAwD;QACxD,MAAM,SAAS,GAAG,WAAW,CAAC;QAC9B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QACtE,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,kDAAkD;QAElD,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM;aACxB,WAAW,CAAC,SAAS,CAAC;aACtB,WAAW,EAAE,CAAA,6HAA6H;aAC1I,SAAS,CAAC,QAAQ,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aAC3D,SAAS,CAAC,UAAU,EAAE,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aAC5D,SAAS,CAAC,SAAS,EAAE,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAE/D,qDAAqD;QACrD,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,yBAAyB,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QACxF,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3E,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;QAEtB,mCAAmC;QACnC,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM;aAClB,WAAW,CAAC,yBAAyB,CAAC;YACvC,uHAAuH;aACtH,EAAE,CAAC,SAAS,CAAC;aACb,OAAO,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;aAC1C,MAAM,EAAE;aACR,OAAO,EAAE,CAAC;IACf,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC;QAC1B,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,GAAG,CACP,MAAc,EACd,QAAgB,EAChB,OAAe;QAEf,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CACb,kEAAkE,CACnE,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG;aAC1B,UAAU,CAAC,WAAW,CAAC;aACvB,SAAS,EAAE;aACX,KAAK,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,CAAC;aAC5B,KAAK,CAAC,UAAU,EAAE,GAAG,EAAE,QAAQ,CAAC;aAChC,KAAK,CAAC,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC;aAC9B,gBAAgB,EAAE,CAAC;QAEtB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9C,OAAO;YACL,QAAQ,EAAK,MAAM,CAAC,IAAI,CAAC,MAAM;YAC/B,UAAU,EAAG,IAAI,cAAc,CAAa;gBAC1C,KAAK,CAAC,UAAU;oBACd,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;oBAC9B,UAAU,CAAC,KAAK,EAAE,CAAC;gBACrB,CAAC;aACF,CAAC;SACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,GAAG,CACP,MAAc,EACd,QAAgB,EAChB,OAAe,EACf,UAAsC;QAEtC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CACb,kEAAkE,CACnE,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACnD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEhC,MAAM,IAAI,CAAC,GAAG;aACX,UAAU,CAAC,WAAW,CAAC;aACvB,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;aAC3C,uBAAuB,EAAE,CAAC;QAE7B,OAAO;YACL,QAAQ,EAAE,KAAK,CAAC,MAAM;SACvB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CACV,MAAc,EACd,QAAgB,EAChB,OAAe;QAEf,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CACb,qEAAqE,CACtE,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,CAAC,GAAG;aACX,UAAU,CAAC,WAAW,CAAC;aACvB,KAAK,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,CAAC;aAC5B,KAAK,CAAC,UAAU,EAAE,GAAG,EAAE,QAAQ,CAAC;aAChC,KAAK,CAAC,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC;aAC9B,OAAO,EAAE,CAAC;IACf,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CACb,oEAAoE,CACrE,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,CAAC,GAAG;aACX,UAAU,CAAC,WAAW,CAAC;aACvB,OAAO,EAAE,CAAC;IACf,CAAC;CAEF"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Adapter that wraps Bun's built-in SQLite (`bun:sqlite`) to conform to Kysely's
3
+ * `SqliteDatabase` / `SqliteStatement` interfaces, enabling it as a drop-in
4
+ * replacement for `better-sqlite3`.
5
+ */
6
+ import { Database as BunDatabase } from 'bun:sqlite';
7
+ /** SQL command prefixes that indicate a read/query operation. */
8
+ const READER_PREFIXES = /^\s*(SELECT|PRAGMA|EXPLAIN|WITH)\b/i;
9
+ /**
10
+ * Detects `RETURNING` clause in DML statements (INSERT/UPDATE/DELETE ... RETURNING).
11
+ * These produce rows like a SELECT, so the statement must use `all()` not `run()`.
12
+ */
13
+ const HAS_RETURNING = /\bRETURNING\b/i;
14
+ /**
15
+ * Creates a Kysely-compatible SQLite database backed by `bun:sqlite`.
16
+ *
17
+ * @param path - File path or `":memory:"` for in-memory database.
18
+ * @param options - Options forwarded to `bun:sqlite`'s Database constructor.
19
+ * - `readonly`: Open in read-only mode.
20
+ * - `create`: Create the file if it doesn't exist (default: true).
21
+ * @returns An object implementing Kysely's `SqliteDatabase` interface.
22
+ */
23
+ export function createBunSqliteDatabase(path, options) {
24
+ const db = new BunDatabase(path, options);
25
+ return {
26
+ close() {
27
+ db.close();
28
+ },
29
+ prepare(sql) {
30
+ const stmt = db.prepare(sql);
31
+ const isReader = READER_PREFIXES.test(sql) || HAS_RETURNING.test(sql);
32
+ return {
33
+ get reader() {
34
+ return isReader;
35
+ },
36
+ all(parameters) {
37
+ return stmt.all(...parameters);
38
+ },
39
+ run(parameters) {
40
+ return stmt.run(...parameters);
41
+ },
42
+ };
43
+ },
44
+ };
45
+ }
46
+ //# sourceMappingURL=bun-sqlite-adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bun-sqlite-adapter.js","sourceRoot":"","sources":["../../../../src/dialect/bun-sqlite-adapter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,QAAQ,IAAI,WAAW,EAAE,MAAM,YAAY,CAAC;AAsBrD,iEAAiE;AACjE,MAAM,eAAe,GAAG,qCAAqC,CAAC;AAE9D;;;GAGG;AACH,MAAM,aAAa,GAAG,gBAAgB,CAAC;AAEvC;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CACrC,IAAY,EACZ,OAAkD;IAElD,MAAM,EAAE,GAAG,IAAI,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAE1C,OAAO;QACL,KAAK;YACH,EAAE,CAAC,KAAK,EAAE,CAAC;QACb,CAAC;QAED,OAAO,CAAC,GAAW;YACjB,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC7B,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAEtE,OAAO;gBACL,IAAI,MAAM;oBACR,OAAO,QAAQ,CAAC;gBAClB,CAAC;gBAED,GAAG,CAAC,UAAkC;oBACpC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAI,UAAoB,CAAC,CAAC;gBAC5C,CAAC;gBAED,GAAG,CAAC,UAAkC;oBAIpC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAI,UAAoB,CAGvC,CAAC;gBACJ,CAAC;aACF,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1,4 +1,4 @@
1
- import { MysqlDialect as KyselyMysqlDialect, } from 'kysely';
1
+ import { MysqlDialect as KyselyMysqlDialect } from 'kysely';
2
2
  export class MysqlDialect extends KyselyMysqlDialect {
3
3
  name = 'MySQL';
4
4
  isStreamingSupported = true;
@@ -1 +1 @@
1
- {"version":3,"file":"mysql-dialect.js","sourceRoot":"","sources":["../../../../src/dialect/mysql-dialect.ts"],"names":[],"mappings":"AACA,OAAO,EAUL,YAAY,IAAI,kBAAkB,GAEnC,MAAM,QAAQ,CAAC;AAEhB,MAAM,OAAO,YAAa,SAAQ,kBAAkB;IAClD,IAAI,GAAG,OAAO,CAAC;IACf,oBAAoB,GAAG,IAAI,CAAC;IAE5B,KAAK,CAAC,QAAQ,CAAC,EAAe,EAAE,SAAiB;QAC/C,MAAM,MAAM,GAAG,MAAM,EAAE;aACpB,UAAU,CAAC,2BAA2B,CAAC;aACvC,MAAM,CAAC,YAAY,CAAC;aACpB,KAAK,CAAC,YAAY,EAAE,GAAG,EAAE,SAAS,CAAC;aACnC,OAAO,EAAE,CAAC;QAEb,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,yBAAyB,CACvB,OAA+B,EAC/B,UAAkB,EAClB,QAAgC;QAEhC,OAAO,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;YACtD,GAAG,GAAG,GAAG,CAAC,aAAa,EAAE,CAAC;YAC1B,IAAI,QAAQ,EAAE;gBACZ,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;aACrB;YACD,OAAO,GAAG,CAAC;QACb,CAAC,CAAC,CAAC;IACL,CAAC;IAED,aAAa,CACX,OAA+B,EAC/B,UAAkB,EAClB,QAAgC;QAEhC,OAAO,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACzD,CAAC;IAED;;;;;OAKG;IACH,mBAAmB,CACjB,OAAwC,EACxC,SAAa,EACb,UAAkB,EAClB,UAA0B,EAC1B,cAAsB,EACtB,mBAA2B,EAC3B,cAAiF;QAEjF,OAAO,OAAO;aACX,SAAS,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aACzD,uBAAuB,CACtB,GAAG,cAAc,IAAI,mBAAmB,KAAK,SAAS,IAAI,UAAU,EAAE,EACtE,CAAC,UAAU,CAAC,EACZ,cAAc,EACd,CAAC,mBAAmB,CAAC,EACrB,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC,CACpD,CAAC;IACN,CAAC;IAED,kBAAkB,CAChB,EAAgC,EAChC,KAAkB,EAClB,MAAqC,EACrC,UAAwC;QAExC,OAAO,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;CACF"}
1
+ {"version":3,"file":"mysql-dialect.js","sourceRoot":"","sources":["../../../../src/dialect/mysql-dialect.ts"],"names":[],"mappings":"AAaA,OAAO,EACL,YAAY,IAAI,kBAAkB,EACnC,MAAM,QAAQ,CAAC;AAEhB,MAAM,OAAO,YAAa,SAAQ,kBAAkB;IAClD,IAAI,GAAG,OAAO,CAAC;IACf,oBAAoB,GAAG,IAAI,CAAC;IAE5B,KAAK,CAAC,QAAQ,CAAC,EAAe,EAAE,SAAiB;QAC/C,MAAM,MAAM,GAAG,MAAM,EAAE;aACpB,UAAU,CAAC,2BAA2B,CAAC;aACvC,MAAM,CAAC,YAAY,CAAC;aACpB,KAAK,CAAC,YAAY,EAAE,GAAG,EAAE,SAAS,CAAC;aACnC,OAAO,EAAE,CAAC;QAEb,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,yBAAyB,CACvB,OAA+B,EAC/B,UAAkB,EAClB,QAAgC;QAEhC,OAAO,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;YACtD,GAAG,GAAG,GAAG,CAAC,aAAa,EAAE,CAAC;YAC1B,IAAI,QAAQ,EAAE,CAAC;gBACb,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;YACtB,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC,CAAC,CAAC;IACL,CAAC;IAED,aAAa,CACX,OAA+B,EAC/B,UAAkB,EAClB,QAAgC;QAEhC,OAAO,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACzD,CAAC;IAED;;;;;OAKG;IACH,mBAAmB,CACjB,OAAwC,EACxC,SAAa,EACb,UAAkB,EAClB,UAA0B,EAC1B,cAAsB,EACtB,mBAA2B,EAC3B,cAAiF;QAEjF,OAAO,OAAO;aACX,SAAS,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aACzD,uBAAuB,CACtB,GAAG,cAAc,IAAI,mBAAmB,KAAK,SAAS,IAAI,UAAU,EAAE,EACtE,CAAC,UAAU,CAAC,EACZ,cAAc,EACd,CAAC,mBAAmB,CAAC,EACrB,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC,CACpD,CAAC;IACN,CAAC;IAED,kBAAkB,CAChB,EAAgC,EAChC,KAAkB,EAClB,MAAqC,EACrC,UAAwC;QAExC,OAAO,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;CACF"}
@@ -1,4 +1,4 @@
1
- import { PostgresDialect as KyselyPostgresDialect, } from 'kysely';
1
+ import { PostgresDialect as KyselyPostgresDialect } from 'kysely';
2
2
  export class PostgresDialect extends KyselyPostgresDialect {
3
3
  name = 'PostgreSQL';
4
4
  isStreamingSupported = true;
@@ -1 +1 @@
1
- {"version":3,"file":"postgres-dialect.js","sourceRoot":"","sources":["../../../../src/dialect/postgres-dialect.ts"],"names":[],"mappings":"AACA,OAAO,EAOL,eAAe,IAAI,qBAAqB,GAIzC,MAAM,QAAQ,CAAC;AAEhB,MAAM,OAAO,eAAgB,SAAQ,qBAAqB;IACxD,IAAI,GAAG,YAAY,CAAC;IACpB,oBAAoB,GAAG,IAAI,CAAC;IAE5B,KAAK,CAAC,QAAQ,CAAC,EAAe,EAAE,SAAiB;QAC/C,MAAM,MAAM,GAAG,MAAM,EAAE;aACpB,UAAU,CAAC,2BAA2B,CAAC;aACvC,MAAM,CAAC,YAAY,CAAC;aACpB,KAAK,CAAC,YAAY,EAAE,GAAG,EAAE,SAAS,CAAC;aACnC,OAAO,EAAE,CAAC;QAEb,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,yBAAyB,CACvB,OAA+B,EAC/B,UAAkB,EAClB,QAAgC;QAEhC,OAAO,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAED,aAAa,CACX,OAA+B,EAC/B,UAAkB,EAClB,QAAgC;QAEhC,OAAO,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC1D,CAAC;IAED,mBAAmB,CACjB,OAAwC,EACxC,UAAc,EACd,UAAkB,EAClB,UAA0B,EAC1B,cAAsB,EACtB,mBAA2B,EAC3B,cAAiF;QAEjF,OAAO,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,GAAG,cAAc,IAAI,mBAAmB,EAAE,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC;IAC3J,CAAC;IAED,kBAAkB,CAChB,EAAgC,EAChC,KAAkB,EAClB,MAAqC,EACrC,SAAuC;QAEvC,OAAO,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAClE,CAAC;CAEF"}
1
+ {"version":3,"file":"postgres-dialect.js","sourceRoot":"","sources":["../../../../src/dialect/postgres-dialect.ts"],"names":[],"mappings":"AAYA,OAAO,EACL,eAAe,IAAI,qBAAqB,EACzC,MAAM,QAAQ,CAAC;AAEhB,MAAM,OAAO,eAAgB,SAAQ,qBAAqB;IACxD,IAAI,GAAG,YAAY,CAAC;IACpB,oBAAoB,GAAG,IAAI,CAAC;IAE5B,KAAK,CAAC,QAAQ,CAAC,EAAe,EAAE,SAAiB;QAC/C,MAAM,MAAM,GAAG,MAAM,EAAE;aACpB,UAAU,CAAC,2BAA2B,CAAC;aACvC,MAAM,CAAC,YAAY,CAAC;aACpB,KAAK,CAAC,YAAY,EAAE,GAAG,EAAE,SAAS,CAAC;aACnC,OAAO,EAAE,CAAC;QAEb,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,yBAAyB,CACvB,OAA+B,EAC/B,UAAkB,EAClB,QAAgC;QAEhC,OAAO,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAED,aAAa,CACX,OAA+B,EAC/B,UAAkB,EAClB,QAAgC;QAEhC,OAAO,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC1D,CAAC;IAED,mBAAmB,CACjB,OAAwC,EACxC,UAAc,EACd,UAAkB,EAClB,UAA0B,EAC1B,cAAsB,EACtB,mBAA2B,EAC3B,cAAiF;QAEjF,OAAO,OAAO,CAAC,SAAS,CACtB,UAAU,EAAE,UAAU,EACtB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,GAAG,cAAc,IAAI,mBAAmB,EAAE,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CACvG,CAAC;IACJ,CAAC;IAED,kBAAkB,CAChB,EAAgC,EAChC,KAAkB,EAClB,MAAqC,EACrC,SAAuC;QAEvC,OAAO,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAClE,CAAC;CAEF"}
@@ -1,4 +1,4 @@
1
- import { SqliteDialect as KyselySqliteDialect, } from 'kysely';
1
+ import { SqliteDialect as KyselySqliteDialect } from 'kysely';
2
2
  export class SqliteDialect extends KyselySqliteDialect {
3
3
  name = 'SQLite';
4
4
  isStreamingSupported = false;
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite-dialect.js","sourceRoot":"","sources":["../../../../src/dialect/sqlite-dialect.ts"],"names":[],"mappings":"AACA,OAAO,EASL,aAAa,IAAI,mBAAmB,GAErC,MAAM,QAAQ,CAAC;AAEhB,MAAM,OAAO,aAAc,SAAQ,mBAAmB;IACpD,IAAI,GAAG,QAAQ,CAAC;IAChB,oBAAoB,GAAG,KAAK,CAAC;IAE7B,KAAK,CAAC,QAAQ,CAAC,EAAe,EAAE,SAAiB;QAC/C,MAAM,MAAM,GAAG,MAAM,EAAE;aACpB,UAAU,CAAC,eAAe,CAAC;aAC3B,MAAM,CAAC,MAAM,CAAC;aACd,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC;aAC3B,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,CAAC;aAC7B,OAAO,EAAE,CAAC;QAEb,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,yBAAyB,CACvB,OAA+B,EAC/B,UAAkB,EAClB,QAAgC;QAEhC,OAAO,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;YACtD,GAAG,GAAG,GAAG,CAAC,aAAa,EAAE,CAAC;YAC1B,IAAI,QAAQ,EAAE;gBACZ,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;aACrB;YACD,OAAO,GAAG,CAAC;QACb,CAAC,CAAC,CAAC;IACL,CAAC;IAED,aAAa,CACX,OAA+B,EAC/B,UAAkB,EAClB,QAAgC;QAEhC,OAAO,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACzD,CAAC;IAED,mBAAmB,CACjB,OAAwC,EACxC,UAAc,EACd,UAAkB,EAClB,UAA0B,EAC1B,cAAsB,EACtB,mBAA2B,EAC3B,cAAiF;QAEjF,OAAO,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,GAAG,cAAc,IAAI,mBAAmB,EAAE,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC;IAC3J,CAAC;IAED,kBAAkB,CAChB,EAAgC,EAChC,KAAkB,EAClB,MAAqC,EACrC,SAAuC;QAEvC,OAAO,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAClE,CAAC;CACF"}
1
+ {"version":3,"file":"sqlite-dialect.js","sourceRoot":"","sources":["../../../../src/dialect/sqlite-dialect.ts"],"names":[],"mappings":"AAYA,OAAO,EACL,aAAa,IAAI,mBAAmB,EACrC,MAAM,QAAQ,CAAC;AAEhB,MAAM,OAAO,aAAc,SAAQ,mBAAmB;IACpD,IAAI,GAAG,QAAQ,CAAC;IAChB,oBAAoB,GAAG,KAAK,CAAC;IAE7B,KAAK,CAAC,QAAQ,CAAC,EAAe,EAAE,SAAiB;QAC/C,MAAM,MAAM,GAAG,MAAM,EAAE;aACpB,UAAU,CAAC,eAAe,CAAC;aAC3B,MAAM,CAAC,MAAM,CAAC;aACd,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC;aAC3B,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,CAAC;aAC7B,OAAO,EAAE,CAAC;QAEb,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,yBAAyB,CACvB,OAA+B,EAC/B,UAAkB,EAClB,QAAgC;QAEhC,OAAO,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;YACtD,GAAG,GAAG,GAAG,CAAC,aAAa,EAAE,CAAC;YAC1B,IAAI,QAAQ,EAAE,CAAC;gBACb,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;YACtB,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC,CAAC,CAAC;IACL,CAAC;IAED,aAAa,CACX,OAA+B,EAC/B,UAAkB,EAClB,QAAgC;QAEhC,OAAO,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACzD,CAAC;IAED,mBAAmB,CACjB,OAAwC,EACxC,UAAc,EACd,UAAkB,EAClB,UAA0B,EAC1B,cAAsB,EACtB,mBAA2B,EAC3B,cAAiF;QAEjF,OAAO,OAAO,CAAC,SAAS,CACtB,UAAU,EAAE,UAAU,EACtB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,GAAG,cAAc,IAAI,mBAAmB,EAAE,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CACvG,CAAC;IACJ,CAAC;IAED,kBAAkB,CAChB,EAAgC,EAChC,KAAkB,EAClB,MAAqC,EACrC,SAAuC;QAEvC,OAAO,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAClE,CAAC;CACF"}
@@ -1,9 +1,11 @@
1
1
  export * from './dialect/dialect.js';
2
+ export * from './dialect/bun-sqlite-adapter.js';
2
3
  export * from './dialect/mysql-dialect.js';
3
4
  export * from './dialect/postgres-dialect.js';
4
5
  export * from './dialect/sqlite-dialect.js';
5
6
  export * from './data-store-sql.js';
6
- export * from './event-log-sql.js';
7
+ export * from './state-index-sql.js';
7
8
  export * from './message-store-sql.js';
8
9
  export * from './resumable-task-store-sql.js';
10
+ export * from './smt-store-sql.js';
9
11
  //# sourceMappingURL=main.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../src/main.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../src/main.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,oBAAoB,CAAC"}
@@ -1,19 +1,19 @@
1
- import { DwnInterfaceName, DwnMethodName, executeUnlessAborted, SortDirection, } from '@enbox/dwn-sdk-js';
2
- import { Kysely } from 'kysely';
3
1
  import * as block from 'multiformats/block';
4
2
  import * as cbor from '@ipld/dag-cbor';
5
- import { executeWithRetryIfDatabaseIsLocked } from './utils/transaction.js';
3
+ import { executeWithTransaction } from './utils/transaction.js';
6
4
  import { extractTagsAndSanitizeIndexes } from './utils/sanitize.js';
7
5
  import { filterSelectQuery } from './utils/filter.js';
8
6
  import { sha256 } from 'multiformats/hashes/sha2';
9
7
  import { TagTables } from './utils/tags.js';
8
+ import { DwnInterfaceName, DwnMethodName, executeUnlessAborted, SortDirection } from '@enbox/dwn-sdk-js';
9
+ import { Kysely, sql } from 'kysely';
10
10
  export class MessageStoreSql {
11
11
  #dialect;
12
12
  #tags;
13
13
  #db = null;
14
14
  constructor(dialect) {
15
15
  this.#dialect = dialect;
16
- this.#tags = new TagTables(dialect, 'messageStoreMessages');
16
+ this.#tags = new TagTables(dialect);
17
17
  }
18
18
  async open() {
19
19
  if (this.#db) {
@@ -36,7 +36,7 @@ export class MessageStoreSql {
36
36
  .addColumn('parentId', 'varchar(60)')
37
37
  .addColumn('protocol', 'varchar(200)')
38
38
  .addColumn('protocolPath', 'varchar(200)')
39
- .addColumn('contextId', 'varchar(500)')
39
+ .addColumn('contextId', 'varchar(600)')
40
40
  .addColumn('schema', 'varchar(200)')
41
41
  .addColumn('author', 'varchar(255)')
42
42
  .addColumn('recipient', 'varchar(255)')
@@ -51,30 +51,45 @@ export class MessageStoreSql {
51
51
  .addColumn('dataSize', 'integer')
52
52
  .addColumn('encodedData', 'text') // we optionally store encoded data if it is below a threshold
53
53
  .addColumn('attester', 'text')
54
- .addColumn('permissionGrantId', 'varchar(60)')
55
- .addColumn('latest', 'text'); // TODO: obsolete, remove once `dwn-sdk-js` tests are updated
54
+ .addColumn('permissionGrantId', 'varchar(60)');
56
55
  // Add columns that have dialect-specific constraints
57
56
  createMessagesTable = this.#dialect.addAutoIncrementingColumn(createMessagesTable, 'id', (col) => col.primaryKey());
58
57
  createMessagesTable = this.#dialect.addBlobColumn(createMessagesTable, 'encodedMessageBytes', (col) => col.notNull());
59
58
  await createMessagesTable.execute();
59
+ // add unique index for get() and delete() by messageCid — the most fundamental lookup path
60
+ await this.#db.schema
61
+ .createIndex('index_tenant_messageCid')
62
+ .on(messagesTableName)
63
+ .columns(['tenant', 'messageCid'])
64
+ .unique()
65
+ .execute();
60
66
  // add indexes to the table
61
67
  await this.createIndexes(this.#db, messagesTableName, [
62
- ['tenant'],
63
- ['tenant', 'recordId'],
64
- ['tenant', 'parentId'],
65
- ['tenant', 'protocol', 'published', 'messageTimestamp'],
66
- ['tenant', 'interface'],
67
- ['tenant', 'contextId', 'messageTimestamp'],
68
- ['tenant', 'permissionGrantId'], // for deleting grant-authorized messages though pending https://github.com/TBD54566975/dwn-sdk-js/issues/716
69
- // other potential indexes
70
- // ['tenant', 'author'],
71
- // ['tenant', 'recipient'],
72
- // ['tenant', 'schema', 'dataFormat'],
73
- // ['tenant', 'dateCreated'],
74
- // ['tenant', 'datePublished'],
75
- // ['tenant', 'messageCid'],
76
- // ['tenant', 'protocolPath'],
68
+ ['tenant', 'recordId'], // multiple uses, notably heavily depended by record chain construction for protocol authorization
69
+ ['tenant', 'entryId'], // used by fetchInitialRecordsWriteMessage in RecordsRead, RecordsQuery, and RecordsDelete
70
+ ['tenant', 'parentId'], // used to walk down hierarchy of records, use cases include purging of records
71
+ ['tenant', 'protocol', 'published', 'messageTimestamp'], // index used for basically every external query
72
+ ['tenant', 'interface'], // mainly for fast fetch of ProtocolsConfigure for authorization, not needed if protocol was a DWN Record
73
+ ['tenant', 'permissionGrantId'], // for deleting grant-authorized messages though pending https://github.com/enboxorg/enbox/issues/716
74
+ ['tenant', 'dateCreated'], // sort optimization for RecordsQuery with DateSort.CreatedAscending/Descending
75
+ ['tenant', 'datePublished'], // sort optimization for RecordsQuery with DateSort.PublishedAscending/Descending
77
76
  ]);
77
+ // contextId index created separately because MySQL requires a prefix length to fit within
78
+ // the 3072-byte InnoDB index key limit. contextId is varchar(600) × 4 bytes (utf8mb4) = 2400 bytes,
79
+ // which combined with tenant (255 × 4 = 1020) and messageTimestamp (30 × 4 = 120) = 3540 bytes,
80
+ // exceeding the limit. A prefix of 480 chars (1920 bytes) brings the total to 3060 bytes.
81
+ // contextId values only contain ASCII chars [a-zA-Z0-9/], so a 480-char prefix is sufficient
82
+ // to distinguish most records (covers ~8 nesting levels of 59-char CID segments).
83
+ if (this.#dialect.name === 'MySQL') {
84
+ await sql `CREATE INDEX index_tenant_contextId_messageTimestamp
85
+ ON ${sql.table(messagesTableName)} (tenant, contextId(480), messageTimestamp)`
86
+ .execute(this.#db);
87
+ }
88
+ else {
89
+ await this.createIndexes(this.#db, messagesTableName, [
90
+ ['tenant', 'contextId', 'messageTimestamp'], // expected to be used for common query pattern
91
+ ]);
92
+ }
78
93
  }
79
94
  // create tags table
80
95
  const tagsTableName = 'messageStoreRecordsTags';
@@ -147,7 +162,7 @@ export class MessageStoreSql {
147
162
  // if any of these inserts would throw, the whole transaction would be rolled back.
148
163
  // otherwise it is committed.
149
164
  const putMessageOperation = this.constructPutMessageOperation({ tenant, messageCid, encodedMessageBytes, encodedData, indexes });
150
- await executeWithRetryIfDatabaseIsLocked(this.#db, putMessageOperation);
165
+ await executeWithTransaction(this.#db, putMessageOperation);
151
166
  }
152
167
  /**
153
168
  * Constructs the transactional operation to insert the given message into the database.
@@ -213,7 +228,7 @@ export class MessageStoreSql {
213
228
  query = filterSelectQuery(filters, query);
214
229
  if (pagination?.cursor !== undefined) {
215
230
  // currently the sort property is explicitly either `dateCreated` | `messageTimestamp` | `datePublished` which are all strings
216
- // TODO: https://github.com/TBD54566975/dwn-sdk-js/issues/664 to handle the edge case
231
+ // TODO: https://github.com/enboxorg/enbox/issues/664 to handle the edge case
217
232
  const cursorValue = pagination.cursor.value;
218
233
  const cursorMessageId = pagination.cursor.messageCid;
219
234
  query = query.where(({ eb, refTuple, tuple }) => {
@@ -236,6 +251,20 @@ export class MessageStoreSql {
236
251
  // also parses the encoded message for each of the returned results.
237
252
  return this.processPaginationResults(results, sortProperty, pagination?.limit, options);
238
253
  }
254
+ async count(tenant, filters, messageSort, options) {
255
+ if (!this.#db) {
256
+ throw new Error('Connection to database not open. Call `open` before using `count`.');
257
+ }
258
+ options?.signal?.throwIfAborted();
259
+ let query = this.#db
260
+ .selectFrom('messageStoreMessages')
261
+ .leftJoin('messageStoreRecordsTags', 'messageStoreRecordsTags.messageInsertId', 'messageStoreMessages.id')
262
+ .select(sql `count(distinct ${sql.ref('messageStoreMessages.messageCid')})`.as('count'))
263
+ .where('tenant', '=', tenant);
264
+ query = filterSelectQuery(filters, query);
265
+ const result = await executeUnlessAborted(query.executeTakeFirstOrThrow(), options?.signal);
266
+ return Number(result.count);
267
+ }
239
268
  async delete(tenant, cid, options) {
240
269
  if (!this.#db) {
241
270
  throw new Error('Connection to database not open. Call `open` before using `delete`.');
@@ -265,7 +294,7 @@ export class MessageStoreSql {
265
294
  const message = decodedBlock.value;
266
295
  // If encodedData is stored within the MessageStore we include it in the response.
267
296
  // We store encodedData when the data is below a certain threshold.
268
- // https://github.com/TBD54566975/dwn-sdk-js/pull/456
297
+ // https://github.com/enboxorg/enbox/pull/456
269
298
  if (message !== undefined && encodedData !== undefined && encodedData !== null) {
270
299
  message.encodedData = encodedData;
271
300
  }
@@ -1 +1 @@
1
- {"version":3,"file":"message-store-sql.js","sourceRoot":"","sources":["../../../src/message-store-sql.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message-store-sql.js","sourceRoot":"","sources":["../../../src/message-store-sql.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { executeWithRetryIfDatabaseIsLocked } from './utils/transaction.js';
2
- import { Kysely } from 'kysely';
3
1
  import { Cid } from '@enbox/dwn-sdk-js';
4
- class ResumableTaskStoreSql {
2
+ import { executeWithTransaction } from './utils/transaction.js';
3
+ import { Kysely } from 'kysely';
4
+ export class ResumableTaskStoreSql {
5
5
  static taskTimeoutInSeconds = 60;
6
6
  #dialect;
7
7
  #db = null;
@@ -20,7 +20,7 @@ class ResumableTaskStoreSql {
20
20
  return;
21
21
  }
22
22
  // else create the table and corresponding indexes
23
- let table = this.#db.schema
23
+ const table = this.#db.schema
24
24
  .createTable(tableName)
25
25
  .ifNotExists() // kept to show supported by all dialects in contrast to ifNotExists() below, though not needed due to hasTable() check above
26
26
  .addColumn('id', 'varchar(255)', (col) => col.primaryKey())
@@ -79,7 +79,7 @@ class ResumableTaskStoreSql {
79
79
  .execute();
80
80
  }
81
81
  };
82
- await executeWithRetryIfDatabaseIsLocked(this.#db, operation);
82
+ await executeWithTransaction(this.#db, operation);
83
83
  const tasksToReturn = tasks.map((task) => {
84
84
  return {
85
85
  id: task.id,
@@ -137,5 +137,4 @@ class ResumableTaskStoreSql {
137
137
  .execute();
138
138
  }
139
139
  }
140
- export { ResumableTaskStoreSql };
141
140
  //# sourceMappingURL=resumable-task-store-sql.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resumable-task-store-sql.js","sourceRoot":"","sources":["../../../src/resumable-task-store-sql.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resumable-task-store-sql.js","sourceRoot":"","sources":["../../../src/resumable-task-store-sql.ts"],"names":[],"mappings":"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"}