feat: PostgREST-style document filtering and ordering

GET /collections/:id/documents accepts filter (field.op.value terms; eq neq
gt gte lt lte like in is; dotted paths index into document data) and order
(field.asc|desc). Whitelisted field/operator parsing with parameterized
values; plain lists keep the sqlc path. CLI gains `documents list
--collection --filter --order`; OpenAPI + generated client updated.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
This commit is contained in:
Tomas DvorakandDevin committed 2026-09-24 18:55:56 +02:00
1 parent f9e7002048
commit 8892c6dc43
11 files changed
+489 -8

No files matched your search

+10
View File
@@ -23,6 +23,16 @@ project interactively.
`orgs`, `projects`, `buckets`, `objects` (list/upload/download/rm), `keys`,
`jobs`, `audit list --follow`. Every command accepts `--json`.
```sh
primora documents list --collection users \
--filter "status.eq.active,age.gt.18" --order "age.desc"
```
`--filter` takes comma-separated `field.op.value` terms — ops `eq neq gt gte lt
lte like in is`; dotted paths index into document data (`meta.city.eq.Prague`),
`id`/`created_at`/`updated_at` are also filterable. `--order` is a
`field.asc|field.desc` list.
## Vault
A local encrypted vault for secrets the CLI holds - API keys, deployment `.env`