@vexcms/core 0.0.19 → 0.1.0-alpha.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/LICENSE +202 -0
- package/dist/.build +1 -0
- package/dist/access/buildChecks.d.ts +58 -0
- package/dist/access/buildChecks.d.ts.map +1 -0
- package/dist/access/canAccessAdminPanel.d.ts +53 -0
- package/dist/access/canAccessAdminPanel.d.ts.map +1 -0
- package/dist/access/compileConstraints.d.ts +155 -0
- package/dist/access/compileConstraints.d.ts.map +1 -0
- package/dist/access/config.d.ts +62 -0
- package/dist/access/config.d.ts.map +1 -0
- package/dist/access/constants.d.ts +95 -0
- package/dist/access/constants.d.ts.map +1 -0
- package/dist/access/constraintTypes.d.ts +337 -0
- package/dist/access/constraintTypes.d.ts.map +1 -0
- package/dist/access/createAccessQueryBuilder.d.ts +59 -0
- package/dist/access/createAccessQueryBuilder.d.ts.map +1 -0
- package/dist/access/createFilterConstraintBuilder.d.ts +26 -0
- package/dist/access/createFilterConstraintBuilder.d.ts.map +1 -0
- package/dist/access/createIndexConstraintBuilder.d.ts +40 -0
- package/dist/access/createIndexConstraintBuilder.d.ts.map +1 -0
- package/dist/access/hasPermission.d.ts +85 -0
- package/dist/access/hasPermission.d.ts.map +1 -0
- package/dist/access/index.d.ts +13 -0
- package/dist/access/index.d.ts.map +1 -0
- package/dist/access/pickQueryIndex.d.ts +42 -0
- package/dist/access/pickQueryIndex.d.ts.map +1 -0
- package/dist/access/resolveAccessRule.d.ts +85 -0
- package/dist/access/resolveAccessRule.d.ts.map +1 -0
- package/dist/access/types.d.ts +738 -0
- package/dist/access/types.d.ts.map +1 -0
- package/dist/access/validateAccessConstraints.d.ts +57 -0
- package/dist/access/validateAccessConstraints.d.ts.map +1 -0
- package/dist/api/client.d.ts +20 -0
- package/dist/api/client.d.ts.map +1 -0
- package/dist/api/client.js +117 -0
- package/dist/api/client.js.map +1 -0
- package/dist/api/convex.d.ts +296 -0
- package/dist/api/convex.d.ts.map +1 -0
- package/dist/api/create/client.d.ts +50 -0
- package/dist/api/create/client.d.ts.map +1 -0
- package/dist/api/create/server.d.ts +43 -0
- package/dist/api/create/server.d.ts.map +1 -0
- package/dist/api/depth.d.ts +39 -0
- package/dist/api/depth.d.ts.map +1 -0
- package/dist/api/find/client.d.ts +90 -0
- package/dist/api/find/client.d.ts.map +1 -0
- package/dist/api/find/server.d.ts +73 -0
- package/dist/api/find/server.d.ts.map +1 -0
- package/dist/api/get/client.d.ts +56 -0
- package/dist/api/get/client.d.ts.map +1 -0
- package/dist/api/get/server.d.ts +49 -0
- package/dist/api/get/server.d.ts.map +1 -0
- package/dist/api/globals/find.client.d.ts +20 -0
- package/dist/api/globals/find.client.d.ts.map +1 -0
- package/dist/api/globals/find.server.d.ts +29 -0
- package/dist/api/globals/find.server.d.ts.map +1 -0
- package/dist/api/globals/get.client.d.ts +46 -0
- package/dist/api/globals/get.client.d.ts.map +1 -0
- package/dist/api/globals/get.server.d.ts +55 -0
- package/dist/api/globals/get.server.d.ts.map +1 -0
- package/dist/api/globals/types.d.ts +65 -0
- package/dist/api/globals/types.d.ts.map +1 -0
- package/dist/api/globals/upsert.client.d.ts +24 -0
- package/dist/api/globals/upsert.client.d.ts.map +1 -0
- package/dist/api/globals/upsert.server.d.ts +47 -0
- package/dist/api/globals/upsert.server.d.ts.map +1 -0
- package/dist/api/populate.d.ts +23 -0
- package/dist/api/populate.d.ts.map +1 -0
- package/dist/api/remove/client.d.ts +58 -0
- package/dist/api/remove/client.d.ts.map +1 -0
- package/dist/api/remove/server.d.ts +65 -0
- package/dist/api/remove/server.d.ts.map +1 -0
- package/dist/api/search/client.d.ts +58 -0
- package/dist/api/search/client.d.ts.map +1 -0
- package/dist/api/search/server.d.ts +54 -0
- package/dist/api/search/server.d.ts.map +1 -0
- package/dist/api/server.d.ts +370 -0
- package/dist/api/server.d.ts.map +1 -0
- package/dist/api/server.js +33 -0
- package/dist/api/server.js.map +1 -0
- package/dist/api/types.d.ts +525 -0
- package/dist/api/types.d.ts.map +1 -0
- package/dist/api/update/client.d.ts +53 -0
- package/dist/api/update/client.d.ts.map +1 -0
- package/dist/api/update/server.d.ts +47 -0
- package/dist/api/update/server.d.ts.map +1 -0
- package/dist/api/utils.d.ts +57 -0
- package/dist/api/utils.d.ts.map +1 -0
- package/dist/auth/mergeCollections.d.ts +28 -0
- package/dist/auth/mergeCollections.d.ts.map +1 -0
- package/dist/auth/types.d.ts +84 -0
- package/dist/auth/types.d.ts.map +1 -0
- package/dist/chunk-2DU7JDEX.js +1877 -0
- package/dist/chunk-2DU7JDEX.js.map +1 -0
- package/dist/chunk-2IB2DCN7.js +75 -0
- package/dist/chunk-2IB2DCN7.js.map +1 -0
- package/dist/collections/config.d.ts +28 -0
- package/dist/collections/config.d.ts.map +1 -0
- package/dist/collections/constants.d.ts +27 -0
- package/dist/collections/constants.d.ts.map +1 -0
- package/dist/collections/index.d.ts +7 -0
- package/dist/collections/index.d.ts.map +1 -0
- package/dist/collections/indexFields.d.ts +20 -0
- package/dist/collections/indexFields.d.ts.map +1 -0
- package/dist/collections/interfaceGen.d.ts +59 -0
- package/dist/collections/interfaceGen.d.ts.map +1 -0
- package/dist/collections/internal/index.d.ts +2 -0
- package/dist/collections/internal/index.d.ts.map +1 -0
- package/dist/collections/types.d.ts +282 -0
- package/dist/collections/types.d.ts.map +1 -0
- package/dist/collections/utils.d.ts +71 -0
- package/dist/collections/utils.d.ts.map +1 -0
- package/dist/collections/validator.d.ts +73 -0
- package/dist/collections/validator.d.ts.map +1 -0
- package/dist/config/config.d.ts +43 -0
- package/dist/config/config.d.ts.map +1 -0
- package/dist/config/index.d.ts +5 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/sanitizeConfig.d.ts +82 -0
- package/dist/config/sanitizeConfig.d.ts.map +1 -0
- package/dist/config/types.d.ts +316 -0
- package/dist/config/types.d.ts.map +1 -0
- package/dist/fields/array/config.d.ts +57 -0
- package/dist/fields/array/config.d.ts.map +1 -0
- package/dist/fields/array/index.d.ts +5 -0
- package/dist/fields/array/index.d.ts.map +1 -0
- package/dist/fields/array/inputSchema.d.ts +32 -0
- package/dist/fields/array/inputSchema.d.ts.map +1 -0
- package/dist/fields/array/types.d.ts +127 -0
- package/dist/fields/array/types.d.ts.map +1 -0
- package/dist/fields/array/validator.d.ts +30 -0
- package/dist/fields/array/validator.d.ts.map +1 -0
- package/dist/fields/baseTypes.d.ts +251 -0
- package/dist/fields/baseTypes.d.ts.map +1 -0
- package/dist/fields/blocks/config.d.ts +63 -0
- package/dist/fields/blocks/config.d.ts.map +1 -0
- package/dist/fields/blocks/index.d.ts +5 -0
- package/dist/fields/blocks/index.d.ts.map +1 -0
- package/dist/fields/blocks/inputSchema.d.ts +22 -0
- package/dist/fields/blocks/inputSchema.d.ts.map +1 -0
- package/dist/fields/blocks/types.d.ts +253 -0
- package/dist/fields/blocks/types.d.ts.map +1 -0
- package/dist/fields/blocks/validator.d.ts +32 -0
- package/dist/fields/blocks/validator.d.ts.map +1 -0
- package/dist/fields/checkbox/config.d.ts +46 -0
- package/dist/fields/checkbox/config.d.ts.map +1 -0
- package/dist/fields/checkbox/index.d.ts +5 -0
- package/dist/fields/checkbox/index.d.ts.map +1 -0
- package/dist/fields/checkbox/inputSchema.d.ts +27 -0
- package/dist/fields/checkbox/inputSchema.d.ts.map +1 -0
- package/dist/fields/checkbox/types.d.ts +67 -0
- package/dist/fields/checkbox/types.d.ts.map +1 -0
- package/dist/fields/checkbox/validator.d.ts +34 -0
- package/dist/fields/checkbox/validator.d.ts.map +1 -0
- package/dist/fields/color/config.d.ts +49 -0
- package/dist/fields/color/config.d.ts.map +1 -0
- package/dist/fields/color/convert.d.ts +72 -0
- package/dist/fields/color/convert.d.ts.map +1 -0
- package/dist/fields/color/formats.d.ts +38 -0
- package/dist/fields/color/formats.d.ts.map +1 -0
- package/dist/fields/color/index.d.ts +8 -0
- package/dist/fields/color/index.d.ts.map +1 -0
- package/dist/fields/color/inputSchema.d.ts +29 -0
- package/dist/fields/color/inputSchema.d.ts.map +1 -0
- package/dist/fields/color/types.d.ts +100 -0
- package/dist/fields/color/types.d.ts.map +1 -0
- package/dist/fields/color/utils.d.ts +100 -0
- package/dist/fields/color/utils.d.ts.map +1 -0
- package/dist/fields/color/validator.d.ts +27 -0
- package/dist/fields/color/validator.d.ts.map +1 -0
- package/dist/fields/constants.d.ts +108 -0
- package/dist/fields/constants.d.ts.map +1 -0
- package/dist/fields/date/config.d.ts +57 -0
- package/dist/fields/date/config.d.ts.map +1 -0
- package/dist/fields/date/index.d.ts +5 -0
- package/dist/fields/date/index.d.ts.map +1 -0
- package/dist/fields/date/inputSchema.d.ts +29 -0
- package/dist/fields/date/inputSchema.d.ts.map +1 -0
- package/dist/fields/date/types.d.ts +147 -0
- package/dist/fields/date/types.d.ts.map +1 -0
- package/dist/fields/date/validator.d.ts +34 -0
- package/dist/fields/date/validator.d.ts.map +1 -0
- package/dist/fields/group/config.d.ts +47 -0
- package/dist/fields/group/config.d.ts.map +1 -0
- package/dist/fields/group/index.d.ts +5 -0
- package/dist/fields/group/index.d.ts.map +1 -0
- package/dist/fields/group/inputSchema.d.ts +27 -0
- package/dist/fields/group/inputSchema.d.ts.map +1 -0
- package/dist/fields/group/types.d.ts +105 -0
- package/dist/fields/group/types.d.ts.map +1 -0
- package/dist/fields/group/validator.d.ts +41 -0
- package/dist/fields/group/validator.d.ts.map +1 -0
- package/dist/fields/index.d.ts +20 -0
- package/dist/fields/index.d.ts.map +1 -0
- package/dist/fields/inputSchemas/index.d.ts +23 -0
- package/dist/fields/inputSchemas/index.d.ts.map +1 -0
- package/dist/fields/inputSchemas/utils.d.ts +25 -0
- package/dist/fields/inputSchemas/utils.d.ts.map +1 -0
- package/dist/fields/interfaceGen.d.ts +15 -0
- package/dist/fields/interfaceGen.d.ts.map +1 -0
- package/dist/fields/number/config.d.ts +48 -0
- package/dist/fields/number/config.d.ts.map +1 -0
- package/dist/fields/number/index.d.ts +5 -0
- package/dist/fields/number/index.d.ts.map +1 -0
- package/dist/fields/number/inputSchema.d.ts +23 -0
- package/dist/fields/number/inputSchema.d.ts.map +1 -0
- package/dist/fields/number/types.d.ts +100 -0
- package/dist/fields/number/types.d.ts.map +1 -0
- package/dist/fields/number/validator.d.ts +39 -0
- package/dist/fields/number/validator.d.ts.map +1 -0
- package/dist/fields/relationship/config.d.ts +45 -0
- package/dist/fields/relationship/config.d.ts.map +1 -0
- package/dist/fields/relationship/index.d.ts +5 -0
- package/dist/fields/relationship/index.d.ts.map +1 -0
- package/dist/fields/relationship/inputSchema.d.ts +31 -0
- package/dist/fields/relationship/inputSchema.d.ts.map +1 -0
- package/dist/fields/relationship/types.d.ts +126 -0
- package/dist/fields/relationship/types.d.ts.map +1 -0
- package/dist/fields/relationship/validator.d.ts +27 -0
- package/dist/fields/relationship/validator.d.ts.map +1 -0
- package/dist/fields/select/config.d.ts +59 -0
- package/dist/fields/select/config.d.ts.map +1 -0
- package/dist/fields/select/index.d.ts +5 -0
- package/dist/fields/select/index.d.ts.map +1 -0
- package/dist/fields/select/inputSchema.d.ts +28 -0
- package/dist/fields/select/inputSchema.d.ts.map +1 -0
- package/dist/fields/select/types.d.ts +89 -0
- package/dist/fields/select/types.d.ts.map +1 -0
- package/dist/fields/select/validator.d.ts +31 -0
- package/dist/fields/select/validator.d.ts.map +1 -0
- package/dist/fields/text/config.d.ts +48 -0
- package/dist/fields/text/config.d.ts.map +1 -0
- package/dist/fields/text/index.d.ts +5 -0
- package/dist/fields/text/index.d.ts.map +1 -0
- package/dist/fields/text/inputSchema.d.ts +24 -0
- package/dist/fields/text/inputSchema.d.ts.map +1 -0
- package/dist/fields/text/types.d.ts +132 -0
- package/dist/fields/text/types.d.ts.map +1 -0
- package/dist/fields/text/validator.d.ts +39 -0
- package/dist/fields/text/validator.d.ts.map +1 -0
- package/dist/fields/types.d.ts +135 -0
- package/dist/fields/types.d.ts.map +1 -0
- package/dist/fields/upload/config.d.ts +24 -0
- package/dist/fields/upload/config.d.ts.map +1 -0
- package/dist/fields/upload/index.d.ts +5 -0
- package/dist/fields/upload/index.d.ts.map +1 -0
- package/dist/fields/upload/inputSchema.d.ts +17 -0
- package/dist/fields/upload/inputSchema.d.ts.map +1 -0
- package/dist/fields/upload/types.d.ts +78 -0
- package/dist/fields/upload/types.d.ts.map +1 -0
- package/dist/fields/upload/validator.d.ts +16 -0
- package/dist/fields/upload/validator.d.ts.map +1 -0
- package/dist/fields/url/config.d.ts +49 -0
- package/dist/fields/url/config.d.ts.map +1 -0
- package/dist/fields/url/index.d.ts +5 -0
- package/dist/fields/url/index.d.ts.map +1 -0
- package/dist/fields/url/inputSchema.d.ts +31 -0
- package/dist/fields/url/inputSchema.d.ts.map +1 -0
- package/dist/fields/url/types.d.ts +70 -0
- package/dist/fields/url/types.d.ts.map +1 -0
- package/dist/fields/url/validator.d.ts +37 -0
- package/dist/fields/url/validator.d.ts.map +1 -0
- package/dist/fields/utils.d.ts +47 -0
- package/dist/fields/utils.d.ts.map +1 -0
- package/dist/fields/validators/index.d.ts +23 -0
- package/dist/fields/validators/index.d.ts.map +1 -0
- package/dist/fields/validators/utils.d.ts +24 -0
- package/dist/fields/validators/utils.d.ts.map +1 -0
- package/dist/framework.d.ts +227 -0
- package/dist/framework.d.ts.map +1 -0
- package/dist/globals/config/config.d.ts +1 -0
- package/dist/globals/config/config.d.ts.map +1 -0
- package/dist/globals/config/types.d.ts +1 -0
- package/dist/globals/config/types.d.ts.map +1 -0
- package/dist/globals/config.d.ts +47 -0
- package/dist/globals/config.d.ts.map +1 -0
- package/dist/globals/index.d.ts +5 -0
- package/dist/globals/index.d.ts.map +1 -0
- package/dist/globals/interfaceGen.d.ts +33 -0
- package/dist/globals/interfaceGen.d.ts.map +1 -0
- package/dist/globals/types.d.ts +175 -0
- package/dist/globals/types.d.ts.map +1 -0
- package/dist/globals/utils.d.ts +37 -0
- package/dist/globals/utils.d.ts.map +1 -0
- package/dist/index.d.ts +15 -3165
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2101 -3470
- package/dist/index.js.map +1 -1
- package/dist/media/api/index.d.ts +5 -0
- package/dist/media/api/index.d.ts.map +1 -0
- package/dist/media/api/mutations.d.ts +76 -0
- package/dist/media/api/mutations.d.ts.map +1 -0
- package/dist/media/api/queries.d.ts +28 -0
- package/dist/media/api/queries.d.ts.map +1 -0
- package/dist/media/api/server.d.ts +68 -0
- package/dist/media/api/server.d.ts.map +1 -0
- package/dist/media/api/types.d.ts +171 -0
- package/dist/media/api/types.d.ts.map +1 -0
- package/dist/media/config.d.ts +25 -0
- package/dist/media/config.d.ts.map +1 -0
- package/dist/media/index.d.ts +6 -0
- package/dist/media/index.d.ts.map +1 -0
- package/dist/media/types.d.ts +332 -0
- package/dist/media/types.d.ts.map +1 -0
- package/dist/media/utils.d.ts +35 -0
- package/dist/media/utils.d.ts.map +1 -0
- package/dist/media/validators.d.ts +61 -0
- package/dist/media/validators.d.ts.map +1 -0
- package/dist/schema/generateVexSchema.d.ts +36 -0
- package/dist/schema/generateVexSchema.d.ts.map +1 -0
- package/dist/schema/index.d.ts +3 -0
- package/dist/schema/index.d.ts.map +1 -0
- package/dist/schema/migrate.d.ts +73 -0
- package/dist/schema/migrate.d.ts.map +1 -0
- package/dist/types/generateVexTypes.d.ts +41 -0
- package/dist/types/generateVexTypes.d.ts.map +1 -0
- package/dist/types/generated.d.ts +382 -0
- package/dist/types/generated.d.ts.map +1 -0
- package/dist/types/index.d.ts +5 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/utils.d.ts +57 -0
- package/dist/utils.d.ts.map +1 -0
- package/package.json +67 -24
|
@@ -0,0 +1,370 @@
|
|
|
1
|
+
import { type MutationBuilder, type FunctionVisibility, type GenericDataModel, type QueryBuilder, type RegisteredQuery, GenericQueryCtx, GenericMutationCtx } from "convex/server";
|
|
2
|
+
import type { VexConfig } from "../config";
|
|
3
|
+
import type { CollectionSlug, GlobalPopulateShape, GlobalSlug, VexDocumentGlobal } from "../types/generated";
|
|
4
|
+
import type { FindServerArgs } from "./find/server";
|
|
5
|
+
import type { GetServerArgs } from "./get/server";
|
|
6
|
+
import type { SearchServerArgs } from "./search/server";
|
|
7
|
+
import type { CreateServerArgs } from "./create/server";
|
|
8
|
+
import type { UpdateServerArgs } from "./update/server";
|
|
9
|
+
import type { RemoveServerArgs } from "./remove/server";
|
|
10
|
+
import type { GetGlobalReturn, GetGlobalServerArgs } from "./globals/get.server";
|
|
11
|
+
import type { UpsertGlobalServerArgs } from "./globals/upsert.server";
|
|
12
|
+
import type { GenericGlobalsQueryServerArgs } from "./globals/types";
|
|
13
|
+
import type { DocReturnItem, GetReturn, PaginationOptions, PaginationResult, PopulateShape } from "./types";
|
|
14
|
+
import { VexGlobalsGetArgs } from "./convex";
|
|
15
|
+
import { VexApiAuth } from "./types";
|
|
16
|
+
export { buildDepthPopulate } from "./depth";
|
|
17
|
+
export { find } from "./find/server";
|
|
18
|
+
export type { FindServerArgs } from "./find/server";
|
|
19
|
+
export { get } from "./get/server";
|
|
20
|
+
export type { GetServerArgs } from "./get/server";
|
|
21
|
+
export { search } from "./search/server";
|
|
22
|
+
export type { SearchServerArgs } from "./search/server";
|
|
23
|
+
export { create } from "./create/server";
|
|
24
|
+
export type { CreateServerArgs } from "./create/server";
|
|
25
|
+
export { update } from "./update/server";
|
|
26
|
+
export type { UpdateServerArgs } from "./update/server";
|
|
27
|
+
export { remove } from "./remove/server";
|
|
28
|
+
export type { RemoveServerArgs } from "./remove/server";
|
|
29
|
+
export { getGlobal } from "./globals/get.server";
|
|
30
|
+
export type { GetGlobalServerArgs } from "./globals/get.server";
|
|
31
|
+
export { findGlobals } from "./globals/find.server";
|
|
32
|
+
export { upsertGlobal } from "./globals/upsert.server";
|
|
33
|
+
export type { UpsertGlobalServerArgs } from "./globals/upsert.server";
|
|
34
|
+
/**
|
|
35
|
+
* Registers the full collection CRUD surface — `find`, `get`, `search`,
|
|
36
|
+
* `create`, `update`, `remove` — as Convex endpoints, with RBAC enforcement
|
|
37
|
+
* resolved entirely on the server.
|
|
38
|
+
*
|
|
39
|
+
* All query/mutation logic lives in the imported server functions; this
|
|
40
|
+
* factory only provides the arg validators, the `query()`/`mutation()`
|
|
41
|
+
* wrappers Convex needs at the network boundary, and the auth seam.
|
|
42
|
+
*
|
|
43
|
+
* **Identity never crosses the wire as an argument.** Callers (React
|
|
44
|
+
* components, Next.js preloads, raw clients) cannot pass a user or
|
|
45
|
+
* organization — there is deliberately no `auth` arg in any endpoint's
|
|
46
|
+
* validator, so a client cannot impersonate its way past a permission check.
|
|
47
|
+
* Instead, each handler resolves the caller once per request via the
|
|
48
|
+
* server-side `getAuth` callback, which reads the authenticated connection
|
|
49
|
+
* (`ctx.auth`) and returns the current user document and active organization.
|
|
50
|
+
* The resolved {@link VexApiAuth} is forwarded to the underlying server
|
|
51
|
+
* functions, which run {@link hasPermission} against `config.access`:
|
|
52
|
+
* reads filter denied documents out (and `get` returns `null`), writes throw
|
|
53
|
+
* {@link VexAccessError}.
|
|
54
|
+
*
|
|
55
|
+
* Enforcement is strictly opt-in, and misconfiguration fails loudly:
|
|
56
|
+
* - No `config.access` → RBAC is off; `getAuth` is never called and every
|
|
57
|
+
* operation behaves exactly as before the seam existed.
|
|
58
|
+
* - `config.access` set but `getAuth` omitted → {@link VexAccessConfigError}
|
|
59
|
+
* on the first request (see {@link resolveGetAuth}) — a permission matrix
|
|
60
|
+
* with no caller resolver is a project bug, surfaced immediately.
|
|
61
|
+
* - `getAuth` resolving `undefined` (unauthenticated caller) → checks run
|
|
62
|
+
* with no user, so no roles resolve and access is denied, unless access.anonRole
|
|
63
|
+
* is configured, in which case that role will be used.
|
|
64
|
+
*
|
|
65
|
+
* Because identity rides the Convex connection token, the same endpoints work
|
|
66
|
+
* unchanged from every runtime: client subscriptions (`useQuery`) on an
|
|
67
|
+
* authenticated Convex provider, and server preloads by passing the JWT
|
|
68
|
+
* (`preloadQuery(api.vex.find, args, { token })`) — preloaded results come
|
|
69
|
+
* back already permission-filtered. Auth plugins supply the resolver (e.g.
|
|
70
|
+
* `@vexcms/better-auth` exports one that loads the user document and active
|
|
71
|
+
* organization from the session); core only knows the `getAuth` shape.
|
|
72
|
+
*
|
|
73
|
+
* @typeParam DataModel - The project's generated Convex data model.
|
|
74
|
+
* @typeParam Visibility - Function visibility of the supplied builders;
|
|
75
|
+
* defaults to `"public"`.
|
|
76
|
+
* @param props - Factory configuration.
|
|
77
|
+
* @param props.config - The resolved `VexConfig`; `config.access` (when set)
|
|
78
|
+
* is the permission matrix every operation enforces.
|
|
79
|
+
* @param props.query - The project's Convex `query` builder.
|
|
80
|
+
* @param props.mutation - The project's Convex `mutation` builder.
|
|
81
|
+
* @param props.getAuth - Server-side resolver for the current caller: receives
|
|
82
|
+
* the handler's ctx and returns `{ user, organization? }` (or `undefined`
|
|
83
|
+
* when unauthenticated). Called once per request, and only when
|
|
84
|
+
* `config.access` is configured. Never exposed to clients.
|
|
85
|
+
* @returns Registered `find` / `get` / `search` queries and
|
|
86
|
+
* `create` / `update` / `remove` mutations for `convex/vex.ts` to re-export.
|
|
87
|
+
*
|
|
88
|
+
* @example
|
|
89
|
+
* ```ts
|
|
90
|
+
* // apps/test/convex/vex.ts
|
|
91
|
+
* import { collectionsApi } from "@vexcms/core/server";
|
|
92
|
+
* import { createGetAuth } from "@vexcms/better-auth/server";
|
|
93
|
+
* import { mutation, query } from "./_generated/server";
|
|
94
|
+
* import config from "~/vex.config";
|
|
95
|
+
*
|
|
96
|
+
* export const { find, get, search, create, update, remove } = collectionsApi({
|
|
97
|
+
* config,
|
|
98
|
+
* query,
|
|
99
|
+
* mutation,
|
|
100
|
+
* getAuth: createGetAuth(), // resolves user + active org from ctx.auth
|
|
101
|
+
* });
|
|
102
|
+
* ```
|
|
103
|
+
*
|
|
104
|
+
* @see {@link hasPermission} for resolution semantics (roles, wildcards, field maps)
|
|
105
|
+
* @see {@link VexApiAuth} for the resolved caller shape
|
|
106
|
+
*/
|
|
107
|
+
export declare function collectionsApi<DataModel extends GenericDataModel, Visibility extends FunctionVisibility = "public">({ config, query, mutation, getAuth, }: {
|
|
108
|
+
config: VexConfig;
|
|
109
|
+
query: QueryBuilder<DataModel, Visibility>;
|
|
110
|
+
mutation: MutationBuilder<DataModel, Visibility>;
|
|
111
|
+
getAuth?: (ctx: GenericQueryCtx<DataModel> | GenericMutationCtx<DataModel>) => Promise<VexApiAuth | undefined>;
|
|
112
|
+
}): {
|
|
113
|
+
find: RegisteredQuery<Visibility, {
|
|
114
|
+
limit?: number | undefined;
|
|
115
|
+
populate?: any;
|
|
116
|
+
depth?: number | undefined;
|
|
117
|
+
paginationOpts?: {
|
|
118
|
+
id?: number | undefined;
|
|
119
|
+
endCursor?: string | null | undefined;
|
|
120
|
+
maximumRowsRead?: number | undefined;
|
|
121
|
+
maximumBytesRead?: number | undefined;
|
|
122
|
+
numItems: number;
|
|
123
|
+
cursor: string | null;
|
|
124
|
+
totalDocs?: boolean | undefined;
|
|
125
|
+
} | undefined;
|
|
126
|
+
collection: string;
|
|
127
|
+
}, Promise<import("./convex").VexDocument[]>>;
|
|
128
|
+
get: RegisteredQuery<Visibility, {
|
|
129
|
+
populate?: any;
|
|
130
|
+
depth?: number | undefined;
|
|
131
|
+
id: string;
|
|
132
|
+
collection: string;
|
|
133
|
+
}, Promise<import("./convex").VexDocument | null>>;
|
|
134
|
+
search: RegisteredQuery<Visibility, {
|
|
135
|
+
limit?: number | undefined;
|
|
136
|
+
populate?: any;
|
|
137
|
+
depth?: number | undefined;
|
|
138
|
+
paginationOpts?: {
|
|
139
|
+
id?: number | undefined;
|
|
140
|
+
endCursor?: string | null | undefined;
|
|
141
|
+
maximumRowsRead?: number | undefined;
|
|
142
|
+
maximumBytesRead?: number | undefined;
|
|
143
|
+
numItems: number;
|
|
144
|
+
cursor: string | null;
|
|
145
|
+
totalDocs?: boolean | undefined;
|
|
146
|
+
} | undefined;
|
|
147
|
+
collection: string;
|
|
148
|
+
query: string;
|
|
149
|
+
searchField: string;
|
|
150
|
+
searchIndexName: string;
|
|
151
|
+
}, Promise<import("./convex").VexDocument[]>>;
|
|
152
|
+
create: import("convex/server").RegisteredMutation<Visibility, {
|
|
153
|
+
collection: string;
|
|
154
|
+
data: any;
|
|
155
|
+
}, Promise<string>>;
|
|
156
|
+
update: import("convex/server").RegisteredMutation<Visibility, {
|
|
157
|
+
id: string;
|
|
158
|
+
collection: string;
|
|
159
|
+
data: any;
|
|
160
|
+
}, Promise<void>>;
|
|
161
|
+
remove: import("convex/server").RegisteredMutation<Visibility, {
|
|
162
|
+
softDelete?: string | undefined;
|
|
163
|
+
collection: string;
|
|
164
|
+
ids: string[];
|
|
165
|
+
}, Promise<void>>;
|
|
166
|
+
};
|
|
167
|
+
/**
|
|
168
|
+
* Registers `globals.get`, `globals.find`, and `globals.update` as Convex
|
|
169
|
+
* query and mutation endpoints under `api.vex.globals.*`.
|
|
170
|
+
*
|
|
171
|
+
* Call once in `convex/vex.ts` alongside `queryApi` and `mutationApi`.
|
|
172
|
+
*
|
|
173
|
+
* @param props.config - The resolved `VexConfig`.
|
|
174
|
+
* @param props.query - Convex `query` builder. Defaults to `internalQueryGeneric`.
|
|
175
|
+
* @param props.mutation - Convex `mutation` builder. Defaults to `internalMutationGeneric`.
|
|
176
|
+
* @param props.getAuth - Server-side resolver for the current caller: receives
|
|
177
|
+
* the handler's ctx and returns `{ user, organization? }` (or `undefined`
|
|
178
|
+
* when unauthenticated). Called once per request, and only when
|
|
179
|
+
* `config.access` is configured. Never exposed to clients.
|
|
180
|
+
* @returns `{ globals }` with `.get`, `.find`, `.update` registered handlers.
|
|
181
|
+
*
|
|
182
|
+
* @example
|
|
183
|
+
* ```ts
|
|
184
|
+
* // apps/test/convex/vex.ts
|
|
185
|
+
* import { queryApi, mutationApi, globalsApi } from "@vexcms/core/server";
|
|
186
|
+
* import { query, mutation } from "./_generated/server";
|
|
187
|
+
* import config from "../src/vex.config";
|
|
188
|
+
*
|
|
189
|
+
* export const { find, get, search } = queryApi(config, query);
|
|
190
|
+
* export const { create, update, remove } = mutationApi(config, mutation);
|
|
191
|
+
* export const { globals } = globalsApi(config, query, mutation);
|
|
192
|
+
* // → api.vex.globals.get, api.vex.globals.find, api.vex.globals.update
|
|
193
|
+
* ```
|
|
194
|
+
*/
|
|
195
|
+
export declare function globalsApi<DataModel extends GenericDataModel, Visibility extends FunctionVisibility = "public">({ config, query, mutation, getAuth, }: {
|
|
196
|
+
config: VexConfig;
|
|
197
|
+
query: QueryBuilder<DataModel, Visibility>;
|
|
198
|
+
mutation: MutationBuilder<DataModel, Visibility>;
|
|
199
|
+
getAuth?: (ctx: GenericQueryCtx<DataModel> | GenericMutationCtx<DataModel>) => Promise<VexApiAuth | undefined>;
|
|
200
|
+
}): {
|
|
201
|
+
get: RegisteredQuery<Visibility, VexGlobalsGetArgs, VexDocumentGlobal | null>;
|
|
202
|
+
find: RegisteredQuery<Visibility, {}, Promise<VexDocumentGlobal<string>[]>>;
|
|
203
|
+
upsert: import("convex/server").RegisteredMutation<Visibility, {
|
|
204
|
+
slug: string;
|
|
205
|
+
data: any;
|
|
206
|
+
}, Promise<string>>;
|
|
207
|
+
};
|
|
208
|
+
/**
|
|
209
|
+
* Resolves the current caller for RBAC enforcement — the single auth
|
|
210
|
+
* resolution point every `collectionsApi` handler runs before its operation.
|
|
211
|
+
*
|
|
212
|
+
* Behavior by configuration:
|
|
213
|
+
* - No `config.access` → RBAC is off. Returns `undefined` without ever
|
|
214
|
+
* calling `getAuth` — zero auth overhead for projects without access
|
|
215
|
+
* control.
|
|
216
|
+
* - `config.access` set but no `getAuth` supplied → throws
|
|
217
|
+
* {@link VexAccessConfigError}. A permission matrix with no way to resolve
|
|
218
|
+
* callers is a project misconfiguration; failing loudly at the first
|
|
219
|
+
* request beats silently denying (or worse, allowing) everything.
|
|
220
|
+
* - Both configured → returns whatever `getAuth(ctx)` resolves: the caller's
|
|
221
|
+
* user document and active organization, or `undefined` when the request
|
|
222
|
+
* is unauthenticated. Downstream checks treat `undefined` as a user with
|
|
223
|
+
* no roles — deny. If access.anonRole is configured, downstream checks will
|
|
224
|
+
* fallback to that role.
|
|
225
|
+
*
|
|
226
|
+
* Identity always derives from the handler's `ctx` (the authenticated Convex
|
|
227
|
+
* connection), never from client-supplied arguments — see
|
|
228
|
+
* {@link collectionsApi} for the trust-model rationale.
|
|
229
|
+
*
|
|
230
|
+
* @typeParam TDataModel - The project's generated Convex data model.
|
|
231
|
+
* @param props - Resolution inputs.
|
|
232
|
+
* @param props.config - The resolved `VexConfig`; only `config.access`'s
|
|
233
|
+
* presence is consulted here.
|
|
234
|
+
* @param props.ctx - The current handler's query or mutation context.
|
|
235
|
+
* @param props.getAuth - The project's server-side caller resolver (typically
|
|
236
|
+
* supplied by an auth plugin, e.g. `@vexcms/better-auth`).
|
|
237
|
+
* @returns The resolved {@link VexApiAuth}, or `undefined` when RBAC is off
|
|
238
|
+
* or the request is unauthenticated.
|
|
239
|
+
* @throws {VexAccessConfigError} When `config.access` is configured but no
|
|
240
|
+
* `getAuth` resolver was passed to `collectionsApi`.
|
|
241
|
+
*/
|
|
242
|
+
export declare function resolveGetAuth<TDataModel extends GenericDataModel>({ config, ctx, getAuth, }: {
|
|
243
|
+
config: VexConfig;
|
|
244
|
+
ctx: GenericQueryCtx<TDataModel> | GenericMutationCtx<TDataModel>;
|
|
245
|
+
getAuth?: (ctx: GenericQueryCtx<TDataModel> | GenericMutationCtx<TDataModel>) => Promise<VexApiAuth | undefined>;
|
|
246
|
+
}): Promise<VexApiAuth | undefined>;
|
|
247
|
+
/**
|
|
248
|
+
* Args accepted by a bound helper from {@link vexServerApi} — the
|
|
249
|
+
* underlying server args minus `config` and `auth`, which the factory injects.
|
|
250
|
+
*
|
|
251
|
+
* @typeParam TArgs - The wrapped function's original server args.
|
|
252
|
+
*/
|
|
253
|
+
export type BoundServerArgs<TArgs> = Omit<TArgs, "auth" | "config">;
|
|
254
|
+
/**
|
|
255
|
+
* `find`, bound to a config/auth pair. Preserves both server overloads:
|
|
256
|
+
* without `paginationOpts` the result is an array, with it a `PaginationResult`.
|
|
257
|
+
*
|
|
258
|
+
* Return types inline `DocReturnItem<…>[]` rather than naming `FindReturn` so
|
|
259
|
+
* hover resolves to `Doc[]` — see the display note in `./types`.
|
|
260
|
+
*/
|
|
261
|
+
export interface BoundFind<DataModel extends GenericDataModel> {
|
|
262
|
+
<TCollectionSlug extends CollectionSlug, const TPopulate extends PopulateShape<TCollectionSlug> = Record<string, never>, const D extends number = 0>(args: BoundServerArgs<FindServerArgs<DataModel, TCollectionSlug, TPopulate, D>> & {
|
|
263
|
+
paginationOpts?: never;
|
|
264
|
+
}): Promise<DocReturnItem<TCollectionSlug, TPopulate, D>[]>;
|
|
265
|
+
<TCollectionSlug extends CollectionSlug, const TPopulate extends PopulateShape<TCollectionSlug> = Record<string, never>, const D extends number = 0>(args: BoundServerArgs<FindServerArgs<DataModel, TCollectionSlug, TPopulate, D>> & {
|
|
266
|
+
paginationOpts: PaginationOptions;
|
|
267
|
+
}): Promise<PaginationResult<DocReturnItem<TCollectionSlug, TPopulate, D>>>;
|
|
268
|
+
}
|
|
269
|
+
/** `search`, bound to a config/auth pair. Preserves both server overloads. */
|
|
270
|
+
export interface BoundSearch<DataModel extends GenericDataModel> {
|
|
271
|
+
<TCollectionSlug extends CollectionSlug, const TPopulate extends PopulateShape<TCollectionSlug> = Record<string, never>, const D extends number = 0>(args: BoundServerArgs<SearchServerArgs<DataModel, TCollectionSlug, TPopulate, D>> & {
|
|
272
|
+
paginationOpts?: never;
|
|
273
|
+
}): Promise<DocReturnItem<TCollectionSlug, TPopulate, D>[]>;
|
|
274
|
+
<TCollectionSlug extends CollectionSlug, const TPopulate extends PopulateShape<TCollectionSlug> = Record<string, never>, const D extends number = 0>(args: BoundServerArgs<SearchServerArgs<DataModel, TCollectionSlug, TPopulate, D>> & {
|
|
275
|
+
paginationOpts: PaginationOptions;
|
|
276
|
+
}): Promise<PaginationResult<DocReturnItem<TCollectionSlug, TPopulate, D>>>;
|
|
277
|
+
}
|
|
278
|
+
/**
|
|
279
|
+
* The collection and globals surface returned by {@link vexServerApi},
|
|
280
|
+
* with `config` and `auth` already applied. Every member keeps the slug,
|
|
281
|
+
* populate, and depth generics of the function it wraps, so return types narrow
|
|
282
|
+
* exactly as the unbound versions do.
|
|
283
|
+
*/
|
|
284
|
+
export interface VexServerApi<DataModel extends GenericDataModel> {
|
|
285
|
+
/** Fetch one document by id. */
|
|
286
|
+
get: <TCollectionSlug extends CollectionSlug, const TPopulate extends PopulateShape<TCollectionSlug> = Record<string, never>, const D extends number = 0>(args: BoundServerArgs<GetServerArgs<DataModel, TCollectionSlug, TPopulate, D>>) => Promise<GetReturn<TCollectionSlug, TPopulate, D>>;
|
|
287
|
+
/** List documents, optionally paginated. */
|
|
288
|
+
find: BoundFind<DataModel>;
|
|
289
|
+
/** Text-search documents, optionally paginated. */
|
|
290
|
+
search: BoundSearch<DataModel>;
|
|
291
|
+
/** Insert a document; resolves to the new id. */
|
|
292
|
+
create: <TCollectionSlug extends CollectionSlug>(args: BoundServerArgs<CreateServerArgs<DataModel, TCollectionSlug>>) => Promise<string>;
|
|
293
|
+
/** Patch a document. */
|
|
294
|
+
update: <TCollectionSlug extends CollectionSlug>(args: BoundServerArgs<UpdateServerArgs<DataModel, TCollectionSlug>>) => Promise<void>;
|
|
295
|
+
/** Delete (or soft-delete) documents. */
|
|
296
|
+
remove: <TCollectionSlug extends CollectionSlug>(args: BoundServerArgs<RemoveServerArgs<DataModel, TCollectionSlug>>) => Promise<void>;
|
|
297
|
+
globals: {
|
|
298
|
+
/** Fetch one global as a flat document. */
|
|
299
|
+
get: <TSlug extends GlobalSlug, const TPopulate extends GlobalPopulateShape<TSlug> = Record<string, never>, const D extends number = 0>(args: BoundServerArgs<GetGlobalServerArgs<DataModel, TSlug, TPopulate, D>>) => Promise<GetGlobalReturn<TSlug, TPopulate, D>>;
|
|
300
|
+
/** List every saved global. Mixed-slug, so intentionally un-narrowed. */
|
|
301
|
+
find: (args: BoundServerArgs<GenericGlobalsQueryServerArgs<DataModel>>) => Promise<VexDocumentGlobal[]>;
|
|
302
|
+
/** Create or update a global; resolves to its id. */
|
|
303
|
+
upsert: <TSlug extends GlobalSlug = GlobalSlug>(args: BoundServerArgs<UpsertGlobalServerArgs<DataModel, TSlug>>) => Promise<string>;
|
|
304
|
+
};
|
|
305
|
+
}
|
|
306
|
+
/**
|
|
307
|
+
* Binds `config` and a `getAuth` resolver to the whole server API, so callers
|
|
308
|
+
* never pass either again.
|
|
309
|
+
*
|
|
310
|
+
* Without this, every call site must remember `config` *and* `auth`. Forgetting
|
|
311
|
+
* `config` silently disables RBAC for that call; passing `config` without
|
|
312
|
+
* `auth` denies (or throws) on every check. Binding once removes both failure
|
|
313
|
+
* modes by construction.
|
|
314
|
+
*
|
|
315
|
+
* Call it once in the project and re-export the result:
|
|
316
|
+
*
|
|
317
|
+
* @typeParam DataModel - The project's generated Convex data model. Required —
|
|
318
|
+
* it cannot be inferred (`getAuth` is optional, so there is no reliable
|
|
319
|
+
* inference site), and letting it fall back to `GenericDataModel` produces a
|
|
320
|
+
* confusing `ctx` mismatch at every call site rather than an error here.
|
|
321
|
+
* @param options - Binding inputs.
|
|
322
|
+
* @param options.config - The resolved `VexConfig` from `defineConfig`.
|
|
323
|
+
* @param options.getAuth - Resolves the caller from `ctx` on every call
|
|
324
|
+
* (typically `createGetAuth()` from an auth adapter). Required whenever
|
|
325
|
+
* `config.access` is set; {@link resolveGetAuth} throws if it is missing.
|
|
326
|
+
* @returns The full {@link VexServerApi} with `config`/`auth` pre-applied.
|
|
327
|
+
*
|
|
328
|
+
* @example
|
|
329
|
+
* ```ts
|
|
330
|
+
* // convex/vexApi.ts — written once
|
|
331
|
+
* import { vexServerApi } from "@vexcms/core/server";
|
|
332
|
+
* import config from "~/vex.config";
|
|
333
|
+
* import type { DataModel } from "./_generated/dataModel";
|
|
334
|
+
* import { getAuth } from "./vexContext";
|
|
335
|
+
*
|
|
336
|
+
* export const { get, find, search, create, update, remove, globals } =
|
|
337
|
+
* vexServerApi<DataModel>({ config, getAuth });
|
|
338
|
+
* ```
|
|
339
|
+
*
|
|
340
|
+
* ```ts
|
|
341
|
+
* // anywhere else — no config, no auth, RBAC enforced
|
|
342
|
+
* import { find } from "./vexApi";
|
|
343
|
+
*
|
|
344
|
+
* export const list = query({
|
|
345
|
+
* handler: async (ctx) => await find({ ctx, collection: "pages" }),
|
|
346
|
+
* });
|
|
347
|
+
* // ^? Page[]
|
|
348
|
+
*
|
|
349
|
+
* // a genuinely public read, opted out explicitly
|
|
350
|
+
* export const bySlug = query({
|
|
351
|
+
* args: { slug: v.string() },
|
|
352
|
+
* handler: async (ctx, args) =>
|
|
353
|
+
* await find({
|
|
354
|
+
* ctx,
|
|
355
|
+
* collection: "pages",
|
|
356
|
+
* withIndex: { name: "by_slug", range: (q) => q.eq("slug", args.slug) },
|
|
357
|
+
* limit: 1,
|
|
358
|
+
* access: { bypass: true },
|
|
359
|
+
* }),
|
|
360
|
+
* });
|
|
361
|
+
* ```
|
|
362
|
+
*
|
|
363
|
+
* @see {@link collectionsApi} to register the generic CRUD endpoints instead
|
|
364
|
+
* @see {@link resolveGetAuth} for the per-call auth resolution this performs
|
|
365
|
+
*/
|
|
366
|
+
export declare function vexServerApi<DataModel extends GenericDataModel>(options: {
|
|
367
|
+
config: VexConfig;
|
|
368
|
+
getAuth?: (ctx: GenericQueryCtx<DataModel> | GenericMutationCtx<DataModel>) => Promise<VexApiAuth | undefined>;
|
|
369
|
+
}): VexServerApi<DataModel>;
|
|
370
|
+
//# sourceMappingURL=server.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/api/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import {
|
|
2
|
+
buildDepthPopulate,
|
|
3
|
+
collectionsApi,
|
|
4
|
+
create,
|
|
5
|
+
find,
|
|
6
|
+
findGlobals,
|
|
7
|
+
get,
|
|
8
|
+
getGlobal,
|
|
9
|
+
globalsApi,
|
|
10
|
+
remove,
|
|
11
|
+
resolveGetAuth,
|
|
12
|
+
search,
|
|
13
|
+
update,
|
|
14
|
+
upsertGlobal,
|
|
15
|
+
vexServerApi
|
|
16
|
+
} from "../chunk-2DU7JDEX.js";
|
|
17
|
+
export {
|
|
18
|
+
buildDepthPopulate,
|
|
19
|
+
collectionsApi,
|
|
20
|
+
create,
|
|
21
|
+
find,
|
|
22
|
+
findGlobals,
|
|
23
|
+
get,
|
|
24
|
+
getGlobal,
|
|
25
|
+
globalsApi,
|
|
26
|
+
remove,
|
|
27
|
+
resolveGetAuth,
|
|
28
|
+
search,
|
|
29
|
+
update,
|
|
30
|
+
upsertGlobal,
|
|
31
|
+
vexServerApi
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=server.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|