@aphexcms/cms-core 9.3.0 → 9.4.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.
- package/dist/cli/generate-types.d.ts +9 -1
- package/dist/cli/generate-types.d.ts.map +1 -1
- package/dist/cli/generate-types.js +23 -17
- package/dist/cli/generate-types.js.map +1 -1
- package/dist/cli/index.js +2 -2
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/migrate.d.ts +1 -1
- package/dist/cli/migrate.d.ts.map +1 -1
- package/dist/cli/migrate.js +27 -2
- package/dist/cli/migrate.js.map +1 -1
- package/dist/components/AdminApp.svelte +12 -0
- package/dist/components/AdminApp.svelte.d.ts.map +1 -1
- package/dist/field-validation/utils.d.ts +15 -0
- package/dist/field-validation/utils.d.ts.map +1 -1
- package/dist/field-validation/utils.js +74 -0
- package/dist/graphql/resolvers.d.ts.map +1 -1
- package/dist/graphql/resolvers.js +9 -10
- package/dist/graphql/schema.d.ts.map +1 -1
- package/dist/graphql/schema.js +18 -19
- package/dist/lib/field-validation/utils.d.ts +15 -0
- package/dist/lib/field-validation/utils.d.ts.map +1 -1
- package/dist/lib/field-validation/utils.js +74 -0
- package/dist/lib/field-validation/utils.js.map +1 -1
- package/dist/lib/graphql/resolvers.d.ts.map +1 -1
- package/dist/lib/graphql/resolvers.js +9 -10
- package/dist/lib/graphql/resolvers.js.map +1 -1
- package/dist/lib/graphql/schema.d.ts.map +1 -1
- package/dist/lib/graphql/schema.js +18 -19
- package/dist/lib/graphql/schema.js.map +1 -1
- package/dist/lib/mcp/tools.d.ts.map +1 -1
- package/dist/lib/mcp/tools.js +42 -1
- package/dist/lib/mcp/tools.js.map +1 -1
- package/dist/lib/utils/string-case.d.ts +21 -0
- package/dist/lib/utils/string-case.d.ts.map +1 -0
- package/dist/lib/utils/string-case.js +26 -0
- package/dist/lib/utils/string-case.js.map +1 -0
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +42 -1
- package/dist/utils/string-case.d.ts +21 -0
- package/dist/utils/string-case.d.ts.map +1 -0
- package/dist/utils/string-case.js +25 -0
- package/package.json +2 -2
|
@@ -2,7 +2,15 @@
|
|
|
2
2
|
* Type generator for Aphex CMS
|
|
3
3
|
* Generates TypeScript types from schema definitions with module augmentation
|
|
4
4
|
*/
|
|
5
|
-
import type { SchemaType } from '../lib/types/schemas.js';
|
|
5
|
+
import type { SchemaType, Field } from '../lib/types/schemas.js';
|
|
6
|
+
/**
|
|
7
|
+
* The depth=0 write shape (TypeScript type string) for a single field, e.g.
|
|
8
|
+
* `string` for a slug, `Reference<author>` for a reference, `ImageValue` for an
|
|
9
|
+
* image. Same mapping `generate-types` uses to emit `generated-types.ts`, so
|
|
10
|
+
* agent-facing schema introspection (MCP `get_schema`) can derive value shapes
|
|
11
|
+
* from the one source of truth instead of hand-authoring a parallel list.
|
|
12
|
+
*/
|
|
13
|
+
export declare function fieldWriteShape(field: Field, schemas: SchemaType[]): string;
|
|
6
14
|
/**
|
|
7
15
|
* Generate complete TypeScript types file with module augmentation
|
|
8
16
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-types.d.ts","sourceRoot":"","sources":["../../src/cli/generate-types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"generate-types.d.ts","sourceRoot":"","sources":["../../src/cli/generate-types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAkJ9D;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,CAG3E;AA6VD;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,CA8I3D;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAC5C,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CA8Ff"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { isFieldRequired } from '../lib/field-validation/utils.js';
|
|
2
|
+
import { toPascalCase } from '../lib/utils/string-case.js';
|
|
2
3
|
/**
|
|
3
4
|
* Map Aphex field types to TypeScript types
|
|
4
5
|
*/
|
|
@@ -51,7 +52,7 @@ function mapFieldTypeToTS(field, schemaMap, opts = {}) {
|
|
|
51
52
|
const targets = to
|
|
52
53
|
?.map((t) => {
|
|
53
54
|
const target = schemaMap.get(t.type);
|
|
54
|
-
return target ?
|
|
55
|
+
return target ? toPascalCase(t.type) : null;
|
|
55
56
|
})
|
|
56
57
|
.filter((s) => !!s) ?? [];
|
|
57
58
|
if (targets.length === 0) {
|
|
@@ -70,7 +71,7 @@ function mapFieldTypeToTS(field, schemaMap, opts = {}) {
|
|
|
70
71
|
const refSchema = schemaMap.get(item.type);
|
|
71
72
|
if (refSchema && refSchema.type === 'object') {
|
|
72
73
|
const useResolved = resolved && hasReferences(refSchema, schemaMap);
|
|
73
|
-
const name =
|
|
74
|
+
const name = toPascalCase(item.type) + (useResolved ? 'Resolved' : '');
|
|
74
75
|
return `(${name} & { _key?: string })`;
|
|
75
76
|
}
|
|
76
77
|
// Inline object or primitive — recurse, propagating resolved.
|
|
@@ -102,7 +103,7 @@ function mapFieldTypeToTS(field, schemaMap, opts = {}) {
|
|
|
102
103
|
case 'reference': {
|
|
103
104
|
const to = field.to;
|
|
104
105
|
const targets = to
|
|
105
|
-
?.map((t) => (schemaMap.get(t.type) ?
|
|
106
|
+
?.map((t) => (schemaMap.get(t.type) ? toPascalCase(t.type) : null))
|
|
106
107
|
.filter((s) => !!s) ?? [];
|
|
107
108
|
if (resolved) {
|
|
108
109
|
// At depth=1 the ref is replaced with the full target doc (raw shape).
|
|
@@ -121,13 +122,15 @@ function mapFieldTypeToTS(field, schemaMap, opts = {}) {
|
|
|
121
122
|
}
|
|
122
123
|
}
|
|
123
124
|
/**
|
|
124
|
-
*
|
|
125
|
+
* The depth=0 write shape (TypeScript type string) for a single field, e.g.
|
|
126
|
+
* `string` for a slug, `Reference<author>` for a reference, `ImageValue` for an
|
|
127
|
+
* image. Same mapping `generate-types` uses to emit `generated-types.ts`, so
|
|
128
|
+
* agent-facing schema introspection (MCP `get_schema`) can derive value shapes
|
|
129
|
+
* from the one source of truth instead of hand-authoring a parallel list.
|
|
125
130
|
*/
|
|
126
|
-
function
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
.map((word) => word.charAt(0).toUpperCase() + word.slice(1))
|
|
130
|
-
.join('');
|
|
131
|
+
export function fieldWriteShape(field, schemas) {
|
|
132
|
+
const schemaMap = new Map(schemas.map((s) => [s.name, s]));
|
|
133
|
+
return mapFieldTypeToTS(field, schemaMap, {});
|
|
131
134
|
}
|
|
132
135
|
/**
|
|
133
136
|
* Determine if a field is optional based on validation rules
|
|
@@ -155,7 +158,7 @@ function collectBlockContentFields(schemas, schemaMap) {
|
|
|
155
158
|
const blockDef = field.of.find((item) => item.type === 'block');
|
|
156
159
|
if (!blockDef)
|
|
157
160
|
continue;
|
|
158
|
-
const mapTypeName = `${
|
|
161
|
+
const mapTypeName = `${toPascalCase(schema.name)}${toPascalCase(field.name)}Types`;
|
|
159
162
|
const blockTypes = [];
|
|
160
163
|
const inlineTypes = [];
|
|
161
164
|
const annotations = [];
|
|
@@ -169,7 +172,7 @@ function collectBlockContentFields(schemas, schemaMap) {
|
|
|
169
172
|
}
|
|
170
173
|
const existing = schemaMap.get(item.type);
|
|
171
174
|
const itemFields = item.fields || existing?.fields || [];
|
|
172
|
-
const interfaceName =
|
|
175
|
+
const interfaceName = toPascalCase(item.type) + 'Block';
|
|
173
176
|
const info = {
|
|
174
177
|
name: item.type,
|
|
175
178
|
interfaceName,
|
|
@@ -185,7 +188,7 @@ function collectBlockContentFields(schemas, schemaMap) {
|
|
|
185
188
|
for (const item of blockOfItems) {
|
|
186
189
|
const existing = schemaMap.get(item.type);
|
|
187
190
|
const itemFields = item.fields || existing?.fields || [];
|
|
188
|
-
const interfaceName =
|
|
191
|
+
const interfaceName = toPascalCase(item.type) + 'Inline';
|
|
189
192
|
const info = {
|
|
190
193
|
name: item.type,
|
|
191
194
|
interfaceName,
|
|
@@ -200,7 +203,7 @@ function collectBlockContentFields(schemas, schemaMap) {
|
|
|
200
203
|
const markAnnotations = blockDef.marks?.annotations;
|
|
201
204
|
if (markAnnotations) {
|
|
202
205
|
for (const ann of markAnnotations) {
|
|
203
|
-
const interfaceName =
|
|
206
|
+
const interfaceName = toPascalCase(ann.name) + 'Annotation';
|
|
204
207
|
const info = {
|
|
205
208
|
name: ann.name,
|
|
206
209
|
interfaceName,
|
|
@@ -286,7 +289,7 @@ function getBlockContentArrayType(field) {
|
|
|
286
289
|
* `<Name>Resolved`.
|
|
287
290
|
*/
|
|
288
291
|
function generateInterface(schema, schemaMap, resolved = false, blockContentFields) {
|
|
289
|
-
const interfaceName =
|
|
292
|
+
const interfaceName = toPascalCase(schema.name) + (resolved ? 'Resolved' : '');
|
|
290
293
|
const fields = schema.fields
|
|
291
294
|
.map((field) => {
|
|
292
295
|
const tsType = mapFieldTypeToTS(field, schemaMap, {
|
|
@@ -388,7 +391,7 @@ function fieldHasReferences(field, schemaMap, visited) {
|
|
|
388
391
|
function generateCollectionsAugmentation(documentSchemas) {
|
|
389
392
|
const mappings = documentSchemas
|
|
390
393
|
.map((schema) => {
|
|
391
|
-
const interfaceName =
|
|
394
|
+
const interfaceName = toPascalCase(schema.name);
|
|
392
395
|
const collectionType = schema.singleton
|
|
393
396
|
? `SingletonCollection<${interfaceName}>`
|
|
394
397
|
: `CollectionAPI<${interfaceName}>`;
|
|
@@ -590,8 +593,11 @@ export async function generateTypesFromConfig(schemaPath, outputPath) {
|
|
|
590
593
|
tempFile = tempOutFile;
|
|
591
594
|
}
|
|
592
595
|
// Dynamic import the schema types
|
|
593
|
-
// Use file:// URL for proper ESM import
|
|
594
|
-
|
|
596
|
+
// Use file:// URL for proper ESM import. The path is resolved at CLI runtime
|
|
597
|
+
// (a temp-compiled or the consumer's schema module), so Vite can't statically
|
|
598
|
+
// analyze it — @vite-ignore silences the SSR-graph warning when this file is
|
|
599
|
+
// pulled into a dev bundle.
|
|
600
|
+
const schemaModule = await import(/* @vite-ignore */ pathToFileURL(schemaModulePath).href);
|
|
595
601
|
const schemas = schemaModule.schemaTypes || schemaModule.default;
|
|
596
602
|
// Clean up temp file if created
|
|
597
603
|
if (tempFile) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-types.js","sourceRoot":"","sources":["../../src/cli/generate-types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generate-types.js","sourceRoot":"","sources":["../../src/cli/generate-types.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/index.js
CHANGED
|
@@ -63,10 +63,10 @@ cli
|
|
|
63
63
|
});
|
|
64
64
|
/**
|
|
65
65
|
* aphex migrate [folder]
|
|
66
|
-
* Apply committed Drizzle migrations (Postgres or pglite). Runtime-safe — no drizzle-kit needed.
|
|
66
|
+
* Apply committed Drizzle migrations (Postgres, SQLite, or pglite). Runtime-safe — no drizzle-kit needed.
|
|
67
67
|
*/
|
|
68
68
|
cli
|
|
69
|
-
.command('migrate [folder]', 'Apply database migrations (Postgres or pglite)')
|
|
69
|
+
.command('migrate [folder]', 'Apply database migrations (Postgres, SQLite, or pglite)')
|
|
70
70
|
.action(async (folder) => {
|
|
71
71
|
intro(pc.cyan('⚡ Aphex CMS - Migrate'));
|
|
72
72
|
const s = spinner();
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AAEA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/E,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC;AAEzB,4BAA4B;AAC5B,MAAM,OAAO,GAAG,QAAQ,CAAC;AAEzB,mBAAmB;AACnB,SAAS,WAAW;IACnB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC,CAAC;AACvF,CAAC;AAED;;;GAGG;AACH,GAAG;KACD,OAAO,CAAC,4CAA4C,EAAE,uCAAuC,CAAC;KAC9F,MAAM,CAAC,KAAK,EAAE,UAAmB,EAAE,UAAmB,EAAE,EAAE;IAC1D,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC,CAAC;IAE/C,IAAI,CAAC;QACJ,yCAAyC;QACzC,IAAI,CAAC,UAAU,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC;gBACzB,OAAO,EAAE,mBAAmB;gBAC5B,WAAW,EAAE,gCAAgC;gBAC7C,YAAY,EAAE,gCAAgC;aAC9C,CAAC,CAAC;YAEH,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtB,MAAM,CAAC,sBAAsB,CAAC,CAAC;gBAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACjB,CAAC;YAED,UAAU,GAAG,MAAgB,CAAC;QAC/B,CAAC;QAED,IAAI,CAAC,UAAU,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC;gBACzB,OAAO,EAAE,mBAAmB;gBAC5B,WAAW,EAAE,8BAA8B;gBAC3C,YAAY,EAAE,8BAA8B;aAC5C,CAAC,CAAC;YAEH,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtB,MAAM,CAAC,sBAAsB,CAAC,CAAC;gBAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACjB,CAAC;YAED,UAAU,GAAG,MAAgB,CAAC;QAC/B,CAAC;QAED,MAAM,CAAC,GAAG,OAAO,EAAE,CAAC;QACpB,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAE/B,MAAM,uBAAuB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAEtD,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAC;QACpD,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;IACjD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,CAAC;QAC3C,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;AACF,CAAC,CAAC,CAAC;AAEJ;;;GAGG;AACH,GAAG;KACD,OAAO,CAAC,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/migrate.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ export interface MigrateOptions {
|
|
|
3
3
|
migrationsFolder?: string;
|
|
4
4
|
}
|
|
5
5
|
export interface MigrateResult {
|
|
6
|
-
driver: 'postgresql' | 'pglite';
|
|
6
|
+
driver: 'postgresql' | 'pglite' | 'sqlite';
|
|
7
7
|
target: string;
|
|
8
8
|
}
|
|
9
9
|
export declare function runMigrations(options?: MigrateOptions): Promise<MigrateResult>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../src/cli/migrate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../src/cli/migrate.ts"],"names":[],"mappings":"AAuCA,MAAM,WAAW,cAAc;IAC9B,qFAAqF;IACrF,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAC7B,MAAM,EAAE,YAAY,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC3C,MAAM,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,aAAa,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,CAAC,CA2FxF"}
|
package/dist/cli/migrate.js
CHANGED
|
@@ -10,13 +10,15 @@
|
|
|
10
10
|
*
|
|
11
11
|
* Driver selection:
|
|
12
12
|
* - Postgres (default) when `DATABASE_URL` or `PG_*` vars are set.
|
|
13
|
+
* - SQLite (libsql) when `APHEX_DATABASE=sqlite` or `DATABASE_URL` is a `file:`/`libsql:` URL
|
|
14
|
+
* (the @aphexcms/sqlite-adapter path).
|
|
13
15
|
* - pglite when `APHEX_DATABASE=pglite` (or no Postgres conn is configured but `APHEX_PGLITE_DIR`
|
|
14
16
|
* is). Migrations run as the default role — RLS policies are created here; tenant enforcement
|
|
15
17
|
* (the non-superuser `SET ROLE`) is a runtime concern of the adapter, not migration.
|
|
16
18
|
*/
|
|
17
19
|
import { createRequire } from 'node:module';
|
|
18
20
|
import { pathToFileURL } from 'node:url';
|
|
19
|
-
import { resolve } from 'node:path';
|
|
21
|
+
import { resolve, dirname } from 'node:path';
|
|
20
22
|
import { mkdirSync } from 'node:fs';
|
|
21
23
|
/** Import a package from the *consuming app's* node_modules (cwd), not cms-core's. */
|
|
22
24
|
async function appImport(spec) {
|
|
@@ -46,6 +48,29 @@ export async function runMigrations(options = {}) {
|
|
|
46
48
|
}
|
|
47
49
|
}
|
|
48
50
|
const migrationsFolder = resolve(process.cwd(), options.migrationsFolder ?? './drizzle');
|
|
51
|
+
const rawDbUrl = process.env.DATABASE_URL;
|
|
52
|
+
const useSqlite = process.env.APHEX_DATABASE?.toLowerCase() === 'sqlite' ||
|
|
53
|
+
/^(file:|libsql:)/.test(rawDbUrl ?? '');
|
|
54
|
+
if (useSqlite) {
|
|
55
|
+
const url = rawDbUrl && /^(file:|libsql:)/.test(rawDbUrl) ? rawDbUrl : 'file:.aphex/data.db';
|
|
56
|
+
// libsql only creates the leaf file, not parent dirs — ensure the path exists for file: URLs.
|
|
57
|
+
if (url.startsWith('file:') && !url.startsWith('file::memory:')) {
|
|
58
|
+
const filePath = resolve(process.cwd(), url.slice('file:'.length));
|
|
59
|
+
mkdirSync(dirname(filePath), { recursive: true });
|
|
60
|
+
}
|
|
61
|
+
const { createClient } = (await appImport('@libsql/client'));
|
|
62
|
+
const { drizzle } = (await appImport('drizzle-orm/libsql'));
|
|
63
|
+
const { migrate } = (await appImport('drizzle-orm/libsql/migrator'));
|
|
64
|
+
const client = createClient({ url, authToken: process.env.DATABASE_AUTH_TOKEN });
|
|
65
|
+
try {
|
|
66
|
+
await migrate(drizzle(client), { migrationsFolder });
|
|
67
|
+
}
|
|
68
|
+
finally {
|
|
69
|
+
client.close();
|
|
70
|
+
}
|
|
71
|
+
const safe = url.replace(/authToken=[^&]+/, 'authToken=***');
|
|
72
|
+
return { driver: 'sqlite', target: safe };
|
|
73
|
+
}
|
|
49
74
|
const pgUrl = postgresUrlFromEnv();
|
|
50
75
|
const pgliteDir = process.env.APHEX_PGLITE_DIR;
|
|
51
76
|
const usePglite = process.env.APHEX_DATABASE?.toLowerCase() === 'pglite' || (!pgUrl && !!pgliteDir);
|
|
@@ -62,7 +87,7 @@ export async function runMigrations(options = {}) {
|
|
|
62
87
|
return { driver: 'pglite', target: dir };
|
|
63
88
|
}
|
|
64
89
|
if (!pgUrl) {
|
|
65
|
-
throw new Error('No database configured. Set DATABASE_URL (or PG_HOST/PG_USER/PG_DATABASE), or APHEX_DATABASE=pglite (with optional APHEX_PGLITE_DIR).');
|
|
90
|
+
throw new Error('No database configured. Set DATABASE_URL (or PG_HOST/PG_USER/PG_DATABASE), APHEX_DATABASE=sqlite (with a file:/libsql: DATABASE_URL), or APHEX_DATABASE=pglite (with optional APHEX_PGLITE_DIR).');
|
|
66
91
|
}
|
|
67
92
|
const { default: postgres } = (await appImport('postgres'));
|
|
68
93
|
const { drizzle } = (await appImport('drizzle-orm/postgres-js'));
|
package/dist/cli/migrate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/cli/migrate.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/cli/migrate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,sFAAsF;AACtF,KAAK,UAAU,SAAS,CAAC,IAAY;IACpC,MAAM,UAAU,GAAG,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC7F,OAAO,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AAC7D,CAAC;AAED,oGAAoG;AACpG,SAAS,kBAAkB;IAC1B,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY;QAAE,OAAO,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IAC9D,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IAC5E,IAAI,OAAO,IAAI,OAAO,IAAI,WAAW,EAAE,CAAC;QACvC,OAAO,gBAAgB,OAAO,IAAI,MAAM,IAAI,WAAW,IAAI,kBAAkB,IAAI,OAAO,IAAI,WAAW,IAAI,OAAO,IAAI,MAAM,IAAI,WAAW,IAAI,OAAO,EAAE,CAAC;IAC1J,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAYD,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,UAA0B,EAAE;IAC/D,4FAA4F;IAC5F,6FAA6F;IAC7F,mDAAmD;IACnD,IAAI,OAAO,OAAO,CAAC,WAAW,KAAK,UAAU,EAAE,CAAC;QAC/C,IAAI,CAAC;YACJ,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;QACrD,CAAC;QAAC,MAAM,CAAC;YACR,+CAA+C;QAChD,CAAC;IACF,CAAC;IAED,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,gBAAgB,IAAI,WAAW,CAAC,CAAC;IACzF,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IAC1C,MAAM,SAAS,GACd,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,WAAW,EAAE,KAAK,QAAQ;QACtD,kBAAkB,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IAEzC,IAAI,SAAS,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,QAAQ,IAAI,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC;QAC7F,8FAA8F;QAC9F,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACjE,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;YACnE,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,EAAE,YAAY,EAAE,GAAG,CAAC,MAAM,SAAS,CAAC,gBAAgB,CAAC,CAE1D,CAAC;QACF,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,SAAS,CAAC,oBAAoB,CAAC,CAEzD,CAAC;QACF,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,SAAS,CAAC,6BAA6B,CAAC,CAElE,CAAC;QACF,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,CAAC;QACjF,IAAI,CAAC;YACJ,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAC;QACtD,CAAC;gBAAS,CAAC;YACV,MAAM,CAAC,KAAK,EAAE,CAAC;QAChB,CAAC;QACD,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC;QAC7D,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAC3C,CAAC;IAED,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAC;IACnC,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAC/C,MAAM,SAAS,GACd,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,WAAW,EAAE,KAAK,QAAQ,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;IAEnF,IAAI,SAAS,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,IAAI,eAAe,CAAC,CAAC;QACjE,qFAAqF;QACrF,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACpC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,SAAS,CAAC,sBAAsB,CAAC,CAE1D,CAAC;QACF,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,SAAS,CAAC,oBAAoB,CAAC,CAEzD,CAAC;QACF,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,SAAS,CAAC,6BAA6B,CAAC,CAElE,CAAC;QACF,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/B,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAC;QACrD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IAC1C,CAAC;IAED,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACd,kMAAkM,CAClM,CAAC;IACH,CAAC;IAED,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,SAAS,CAAC,UAAU,CAAC,CAEzD,CAAC;IACF,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,SAAS,CAAC,yBAAyB,CAAC,CAE9D,CAAC;IACF,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,SAAS,CAAC,kCAAkC,CAAC,CAEvE,CAAC;IACF,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IACxC,IAAI,CAAC;QACJ,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAC;IACnD,CAAC;YAAS,CAAC;QACV,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC;IACjB,CAAC;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,YAAY,CAAC,CAAC;IAChE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AAC/C,CAAC"}
|
|
@@ -203,6 +203,18 @@
|
|
|
203
203
|
presentationModeOn = false;
|
|
204
204
|
}
|
|
205
205
|
|
|
206
|
+
// Both modes hide the side panels and only make sense with an editor open.
|
|
207
|
+
// Leaving the editor through anything other than the back button (e.g. the
|
|
208
|
+
// sidebar "Studio" link keeps this component mounted while navigating to the
|
|
209
|
+
// structure view) must also exit them — otherwise the structure view renders
|
|
210
|
+
// with every panel hidden: a blank page.
|
|
211
|
+
$effect(() => {
|
|
212
|
+
if (currentView !== 'editor') {
|
|
213
|
+
if (presentationModeOn) presentationModeOn = false;
|
|
214
|
+
if (focusModeOn) focusModeOn = false;
|
|
215
|
+
}
|
|
216
|
+
});
|
|
217
|
+
|
|
206
218
|
// Esc to exit focus mode.
|
|
207
219
|
$effect(() => {
|
|
208
220
|
if (typeof window === 'undefined') return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdminApp.svelte.d.ts","sourceRoot":"","sources":["../../src/lib/components/AdminApp.svelte.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AA2BnE,UAAU,KAAK;IACd,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,aAAa,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5E,WAAW,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IACvE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,oEAAoE;IACpE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,WAAW,GAAG,QAAQ,GAAG,OAAO,CAAA;KAAE,CAAC;IACxD,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,eAAe,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;CAChD;
|
|
1
|
+
{"version":3,"file":"AdminApp.svelte.d.ts","sourceRoot":"","sources":["../../src/lib/components/AdminApp.svelte.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AA2BnE,UAAU,KAAK;IACd,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,aAAa,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5E,WAAW,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IACvE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,oEAAoE;IACpE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,WAAW,GAAG,QAAQ,GAAG,OAAO,CAAA;KAAE,CAAC;IACxD,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,eAAe,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;CAChD;AAw+CF,QAAA,MAAM,QAAQ,2CAAwC,CAAC;AACvD,KAAK,QAAQ,GAAG,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC;AAC5C,eAAe,QAAQ,CAAC"}
|
|
@@ -15,6 +15,21 @@ export interface DocumentValidationResult {
|
|
|
15
15
|
* Check if a field is required based on its validation rules
|
|
16
16
|
*/
|
|
17
17
|
export declare function isFieldRequired(field: Field): boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Structural (shape) validation for a field's stored value — the depth=0 write
|
|
20
|
+
* shape. This catches a caller (notably an AI agent over MCP) sending the wrong
|
|
21
|
+
* JSON shape that presence/required checks would miss: a slug as `{ current }`
|
|
22
|
+
* (Sanity's convention — AphexCMS stores slugs as plain strings), or a
|
|
23
|
+
* reference/image missing its `_ref`. Runs before the user's Rule validation
|
|
24
|
+
* and only when a value is meaningfully present (absent/empty is a required-ness
|
|
25
|
+
* concern, handled separately), so optional and half-filled fields are left
|
|
26
|
+
* alone. Returns an error message, or null when the shape is acceptable.
|
|
27
|
+
*
|
|
28
|
+
* Intentionally conservative: only unambiguous mismatches error, and empty
|
|
29
|
+
* placeholders (`''`, an image with no `asset`) are treated as absent so the
|
|
30
|
+
* admin's in-progress edit states don't trip it.
|
|
31
|
+
*/
|
|
32
|
+
export declare function validateValueShape(field: Field, value: unknown): string | null;
|
|
18
33
|
/**
|
|
19
34
|
* Validate a field value against its validation rules
|
|
20
35
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/field-validation/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAKxD,MAAM,WAAW,eAAe;IAC/B,KAAK,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACpC,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,wBAAwB;IACxC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACnD,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAUrD;AAED;;GAEG;AACH,wBAAsB,aAAa,CAClC,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,GAAG,EACV,OAAO,GAAE,GAAQ,GACf,OAAO,CAAC;IACV,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,eAAe,EAAE,CAAC;CAC1B,CAAC,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/field-validation/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAKxD,MAAM,WAAW,eAAe;IAC/B,KAAK,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACpC,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,wBAAwB;IACxC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACnD,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAUrD;AAYD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAmC9E;AAED;;GAEG;AACH,wBAAsB,aAAa,CAClC,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,GAAG,EACV,OAAO,GAAE,GAAQ,GACf,OAAO,CAAC;IACV,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,eAAe,EAAE,CAAC;CAC1B,CAAC,CA6ID;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,OAAO,GAAG,MAAM,CAO/D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,oBAAoB,CACzC,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzB,OAAO,GAAE,GAAQ,GACf,OAAO,CAAC,wBAAwB,CAAC,CAqDnC"}
|
|
@@ -18,6 +18,69 @@ export function isFieldRequired(field) {
|
|
|
18
18
|
return false;
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
|
+
function describeValue(value) {
|
|
22
|
+
if (Array.isArray(value))
|
|
23
|
+
return 'an array';
|
|
24
|
+
if (value === null)
|
|
25
|
+
return 'null';
|
|
26
|
+
if (typeof value === 'object')
|
|
27
|
+
return 'an object';
|
|
28
|
+
return `a ${typeof value}`;
|
|
29
|
+
}
|
|
30
|
+
const isPlainObject = (v) => typeof v === 'object' && v !== null && !Array.isArray(v);
|
|
31
|
+
/**
|
|
32
|
+
* Structural (shape) validation for a field's stored value — the depth=0 write
|
|
33
|
+
* shape. This catches a caller (notably an AI agent over MCP) sending the wrong
|
|
34
|
+
* JSON shape that presence/required checks would miss: a slug as `{ current }`
|
|
35
|
+
* (Sanity's convention — AphexCMS stores slugs as plain strings), or a
|
|
36
|
+
* reference/image missing its `_ref`. Runs before the user's Rule validation
|
|
37
|
+
* and only when a value is meaningfully present (absent/empty is a required-ness
|
|
38
|
+
* concern, handled separately), so optional and half-filled fields are left
|
|
39
|
+
* alone. Returns an error message, or null when the shape is acceptable.
|
|
40
|
+
*
|
|
41
|
+
* Intentionally conservative: only unambiguous mismatches error, and empty
|
|
42
|
+
* placeholders (`''`, an image with no `asset`) are treated as absent so the
|
|
43
|
+
* admin's in-progress edit states don't trip it.
|
|
44
|
+
*/
|
|
45
|
+
export function validateValueShape(field, value) {
|
|
46
|
+
// Absent (or an empty-string placeholder for a non-string field) → shape is
|
|
47
|
+
// irrelevant here; presence is enforced by Rule().required().
|
|
48
|
+
if (value === null || value === undefined)
|
|
49
|
+
return null;
|
|
50
|
+
switch (field.type) {
|
|
51
|
+
case 'string':
|
|
52
|
+
case 'text':
|
|
53
|
+
case 'slug':
|
|
54
|
+
case 'url':
|
|
55
|
+
return typeof value === 'string' ? null : `expected a string, got ${describeValue(value)}`;
|
|
56
|
+
case 'reference':
|
|
57
|
+
if (value === '')
|
|
58
|
+
return null;
|
|
59
|
+
return isPlainObject(value) && typeof value._ref === 'string'
|
|
60
|
+
? null
|
|
61
|
+
: `expected a reference object { _type: 'reference', _ref: '<documentId>' }, got ${describeValue(value)}`;
|
|
62
|
+
case 'image':
|
|
63
|
+
case 'file': {
|
|
64
|
+
if (value === '')
|
|
65
|
+
return null;
|
|
66
|
+
if (!isPlainObject(value))
|
|
67
|
+
return `expected an ${field.type} object { _type: '${field.type}', asset: { _type: 'reference', _ref: '<assetId>' } }, got ${describeValue(value)}`;
|
|
68
|
+
// An object with no asset yet is a valid empty/in-progress state.
|
|
69
|
+
if (value.asset === undefined || value.asset === null)
|
|
70
|
+
return null;
|
|
71
|
+
return isPlainObject(value.asset) && typeof value.asset._ref === 'string'
|
|
72
|
+
? null
|
|
73
|
+
: `${field.type} asset must be { _type: 'reference', _ref: '<assetId>' }`;
|
|
74
|
+
}
|
|
75
|
+
case 'array':
|
|
76
|
+
return Array.isArray(value) ? null : `expected an array, got ${describeValue(value)}`;
|
|
77
|
+
case 'object':
|
|
78
|
+
return isPlainObject(value) ? null : `expected an object, got ${describeValue(value)}`;
|
|
79
|
+
default:
|
|
80
|
+
// number/boolean/date/datetime — left to existing auto-rules / user rules.
|
|
81
|
+
return null;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
21
84
|
/**
|
|
22
85
|
* Validate a field value against its validation rules
|
|
23
86
|
*/
|
|
@@ -28,6 +91,17 @@ export async function validateField(field, value, context = {}) {
|
|
|
28
91
|
hasValidation: !!field.validation
|
|
29
92
|
});
|
|
30
93
|
const allErrors = [];
|
|
94
|
+
// Structural shape check first: if the value is the wrong JSON shape (e.g. a
|
|
95
|
+
// slug sent as `{ current }`, or a reference without `_ref`), report that and
|
|
96
|
+
// stop — the type-assuming auto-rules and user rules below expect the correct
|
|
97
|
+
// primitive/shape and would otherwise throw or emit confusing errors.
|
|
98
|
+
const shapeError = validateValueShape(field, value);
|
|
99
|
+
if (shapeError) {
|
|
100
|
+
return {
|
|
101
|
+
isValid: false,
|
|
102
|
+
errors: [{ level: 'error', message: `Field "${field.name}" ${shapeError}` }]
|
|
103
|
+
};
|
|
104
|
+
}
|
|
31
105
|
// Add automatic validation for date/datetime/url fields based on type
|
|
32
106
|
if (field.type === 'date') {
|
|
33
107
|
const dateField = field;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolvers.d.ts","sourceRoot":"","sources":["../../src/lib/graphql/resolvers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAS,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"resolvers.d.ts","sourceRoot":"","sources":["../../src/lib/graphql/resolvers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAS,MAAM,kBAAkB,CAAC;AAyH1D,wBAAgB,eAAe,CAC9B,GAAG,EAAE,YAAY,EACjB,WAAW,EAAE,UAAU,EAAE,EACzB,kBAAkB,GAAE,OAAO,GAAG,WAAyB,uBA4tBvD"}
|
|
@@ -2,9 +2,7 @@ import { GraphQLError } from 'graphql';
|
|
|
2
2
|
import { authToContext } from '../local-api/auth-helpers.js';
|
|
3
3
|
import { getDefaultValueForFieldType } from '../utils/field-defaults.js';
|
|
4
4
|
import { cmsLogger } from '../utils/logger.js';
|
|
5
|
-
|
|
6
|
-
return str.charAt(0).toUpperCase() + str.slice(1);
|
|
7
|
-
}
|
|
5
|
+
import { toPascalCase, toCamelCase } from '../utils/string-case.js';
|
|
8
6
|
// Normalize null/undefined field values to type-appropriate defaults (recursive)
|
|
9
7
|
function normalizeDocumentFields(data, schemaType, allSchemaTypes) {
|
|
10
8
|
if (!data)
|
|
@@ -130,7 +128,7 @@ export function createResolvers(cms, schemaTypes, defaultPerspective = 'publishe
|
|
|
130
128
|
// Generate reference field resolvers for all types
|
|
131
129
|
function generateReferenceFieldResolvers() {
|
|
132
130
|
schemaTypes.forEach((schemaType) => {
|
|
133
|
-
const typeName =
|
|
131
|
+
const typeName = toPascalCase(schemaType.name);
|
|
134
132
|
function processFields(fields, currentTypeName) {
|
|
135
133
|
fields.forEach((field) => {
|
|
136
134
|
// Handle reference fields
|
|
@@ -244,7 +242,7 @@ export function createResolvers(cms, schemaTypes, defaultPerspective = 'publishe
|
|
|
244
242
|
}
|
|
245
243
|
// Handle nested objects
|
|
246
244
|
if (field.type === 'object' && field.fields) {
|
|
247
|
-
const nestedTypeName =
|
|
245
|
+
const nestedTypeName = toPascalCase(`${schemaType.name}${field.name}Object`);
|
|
248
246
|
processFields(field.fields, nestedTypeName);
|
|
249
247
|
}
|
|
250
248
|
});
|
|
@@ -262,11 +260,11 @@ export function createResolvers(cms, schemaTypes, defaultPerspective = 'publishe
|
|
|
262
260
|
if (field.type === 'array' && field.of && field.of.length > 1) {
|
|
263
261
|
const validTypes = field.of.filter((item) => schemaTypes.find((s) => s.name === item.type));
|
|
264
262
|
if (validTypes.length > 1) {
|
|
265
|
-
const unionName = `${
|
|
263
|
+
const unionName = `${toPascalCase(parentName)}${toPascalCase(field.name)}Item`;
|
|
266
264
|
resolvers[unionName] = {
|
|
267
265
|
__resolveType(obj) {
|
|
268
266
|
if (obj._type) {
|
|
269
|
-
return
|
|
267
|
+
return toPascalCase(obj._type);
|
|
270
268
|
}
|
|
271
269
|
return null;
|
|
272
270
|
}
|
|
@@ -286,7 +284,8 @@ export function createResolvers(cms, schemaTypes, defaultPerspective = 'publishe
|
|
|
286
284
|
// Generate resolvers for each document type
|
|
287
285
|
const documentTypes = schemaTypes.filter((type) => type.type === 'document');
|
|
288
286
|
documentTypes.forEach((schemaType) => {
|
|
289
|
-
const typeName =
|
|
287
|
+
const typeName = toPascalCase(schemaType.name);
|
|
288
|
+
const fieldName = toCamelCase(schemaType.name);
|
|
290
289
|
// Singleton resolvers: no-arg query, no-id mutations.
|
|
291
290
|
// Schema/codegen already differs for singletons (see schema.ts) — the
|
|
292
291
|
// resolver just delegates to the singleton-aware CollectionAPI methods.
|
|
@@ -306,7 +305,7 @@ export function createResolvers(cms, schemaTypes, defaultPerspective = 'publishe
|
|
|
306
305
|
...normalizedData
|
|
307
306
|
};
|
|
308
307
|
};
|
|
309
|
-
resolvers.Query[
|
|
308
|
+
resolvers.Query[fieldName] = async (_, args, context) => {
|
|
310
309
|
try {
|
|
311
310
|
const { localAPI, auth } = context;
|
|
312
311
|
const apiContext = authToContext(auth);
|
|
@@ -404,7 +403,7 @@ export function createResolvers(cms, schemaTypes, defaultPerspective = 'publishe
|
|
|
404
403
|
return; // skip the regular per-type resolvers below for singletons
|
|
405
404
|
}
|
|
406
405
|
// Single document resolver: page(id: "123", perspective: "draft")
|
|
407
|
-
resolvers.Query[
|
|
406
|
+
resolvers.Query[fieldName] = async (_, args, context) => {
|
|
408
407
|
try {
|
|
409
408
|
const { localAPI, auth } = context;
|
|
410
409
|
const apiContext = authToContext(auth);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/lib/graphql/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAkD,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/lib/graphql/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAkD,MAAM,kBAAkB,CAAC;AAyYnG,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,MAAM,CA2FvE"}
|