@uql/core 3.4.0 → 3.4.2
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.
- package/CHANGELOG.md +2 -5
- package/README.md +8 -14
- package/dist/browser/uql-browser.min.js +949 -2085
- package/dist/browser/uql-browser.min.js.map +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,12 +3,9 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
## [3.4.2](https://github.com/rogerpadilla/uql/compare/@uql/core@3.4.1...@uql/core@3.4.2) (2025-12-31)
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
### Features
|
|
10
|
-
|
|
11
|
-
* add support for Neon, LibSQL, and D1 database queriers, including new querier pools, implementations, tests, and updated documentation. ([aad1df0](https://github.com/rogerpadilla/uql/commit/aad1df0f6bab112b2a0eb0fdffee15dcbc6b0824))
|
|
8
|
+
**Note:** Version bump only for package @uql/core
|
|
12
9
|
|
|
13
10
|
|
|
14
11
|
|
package/README.md
CHANGED
|
@@ -205,14 +205,9 @@ export const pool = new PgQuerierPool(
|
|
|
205
205
|
|
|
206
206
|
## 4. Manipulate the data
|
|
207
207
|
|
|
208
|
-
UQL provides multiple ways to interact with your data, from
|
|
209
|
-
|
|
210
|
-
### Using Repositories (Recommended)
|
|
211
|
-
|
|
212
|
-
Repositories provide a clean, Data-Mapper style interface for your entities.
|
|
208
|
+
UQL provides multiple ways to interact with your data, from generic `Queriers` (that works with any entity) to entity-specific `Repositories`.
|
|
213
209
|
|
|
214
210
|
```ts
|
|
215
|
-
import { GenericRepository } from '@uql/core';
|
|
216
211
|
import { User } from './shared/models/index.js';
|
|
217
212
|
import { pool } from './shared/orm.js';
|
|
218
213
|
|
|
@@ -220,10 +215,8 @@ import { pool } from './shared/orm.js';
|
|
|
220
215
|
const querier = await pool.getQuerier();
|
|
221
216
|
|
|
222
217
|
try {
|
|
223
|
-
const userRepository = new GenericRepository(User, querier);
|
|
224
|
-
|
|
225
218
|
// Advanced querying with relations and virtual fields
|
|
226
|
-
const users = await
|
|
219
|
+
const users = await querier.findMany(User, {
|
|
227
220
|
$select: {
|
|
228
221
|
id: true,
|
|
229
222
|
name: true,
|
|
@@ -248,14 +241,13 @@ try {
|
|
|
248
241
|
UQL's query syntax is context-aware. When you query a relation, the available fields and operators are automatically suggested and validated based on that related entity.
|
|
249
242
|
|
|
250
243
|
```ts
|
|
251
|
-
import { GenericRepository } from '@uql/core';
|
|
252
244
|
import { pool } from './shared/orm.js';
|
|
253
245
|
import { User } from './shared/models/index.js';
|
|
254
246
|
|
|
255
|
-
const
|
|
256
|
-
const userRepository = new GenericRepository(User, querier);
|
|
247
|
+
const querier = await pool.getQuerier();
|
|
257
248
|
|
|
258
|
-
|
|
249
|
+
try {
|
|
250
|
+
const authorsWithPopularPosts = await querier.findMany(User, {
|
|
259
251
|
$select: {
|
|
260
252
|
id: true,
|
|
261
253
|
name: true,
|
|
@@ -277,7 +269,9 @@ const authorsWithPopularPosts = await pool.transaction(async (querier) => {
|
|
|
277
269
|
name: { $istartsWith: 'a' }
|
|
278
270
|
}
|
|
279
271
|
});
|
|
280
|
-
}
|
|
272
|
+
} finally {
|
|
273
|
+
await querier.release();
|
|
274
|
+
}
|
|
281
275
|
```
|
|
282
276
|
|
|
283
277
|
### Advanced: Virtual Fields & Raw SQL
|