@aphexcms/cms-core 7.0.0 → 8.1.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.
Files changed (127) hide show
  1. package/dist/api/documents.d.ts +19 -0
  2. package/dist/api/documents.d.ts.map +1 -1
  3. package/dist/api/documents.js +21 -0
  4. package/dist/api/schemas/documents.d.ts +3 -0
  5. package/dist/api/schemas/documents.d.ts.map +1 -1
  6. package/dist/api/schemas/documents.js +12 -0
  7. package/dist/cli/generate-types.d.ts.map +1 -1
  8. package/dist/cli/generate-types.js +133 -19
  9. package/dist/cli/generate-types.js.map +1 -1
  10. package/dist/components/AdminApp.svelte +106 -52
  11. package/dist/components/AdminApp.svelte.d.ts.map +1 -1
  12. package/dist/components/admin/DocumentEditor.svelte +65 -2
  13. package/dist/components/admin/DocumentEditor.svelte.d.ts.map +1 -1
  14. package/dist/components/admin/confirm-dialog/ConfirmDialogHost.svelte +8 -6
  15. package/dist/components/admin/confirm-dialog/ConfirmDialogHost.svelte.d.ts.map +1 -1
  16. package/dist/components/admin/fields/ArrayField.svelte +149 -2
  17. package/dist/components/admin/fields/ArrayField.svelte.d.ts.map +1 -1
  18. package/dist/components/admin/fields/ReferenceField.svelte +198 -125
  19. package/dist/components/admin/fields/ReferenceField.svelte.d.ts +9 -2
  20. package/dist/components/admin/fields/ReferenceField.svelte.d.ts.map +1 -1
  21. package/dist/components/layout/Sidebar.svelte +1 -1
  22. package/dist/components/layout/sidebar/AppSidebar.svelte +2 -1
  23. package/dist/components/layout/sidebar/AppSidebar.svelte.d.ts.map +1 -1
  24. package/dist/components/layout/sidebar/NavMain.svelte +9 -2
  25. package/dist/components/layout/sidebar/NavMain.svelte.d.ts +2 -0
  26. package/dist/components/layout/sidebar/NavMain.svelte.d.ts.map +1 -1
  27. package/dist/db/interfaces/index.d.ts +3 -1
  28. package/dist/db/interfaces/index.d.ts.map +1 -1
  29. package/dist/db/interfaces/reference.d.ts +43 -0
  30. package/dist/db/interfaces/reference.d.ts.map +1 -0
  31. package/dist/db/interfaces/reference.js +4 -0
  32. package/dist/db/utils/reference-resolver.d.ts +4 -6
  33. package/dist/db/utils/reference-resolver.d.ts.map +1 -1
  34. package/dist/db/utils/reference-resolver.js +33 -31
  35. package/dist/document-refresh.svelte.d.ts +3 -0
  36. package/dist/document-refresh.svelte.d.ts.map +1 -0
  37. package/dist/document-refresh.svelte.js +21 -0
  38. package/dist/graphql/resolvers.d.ts.map +1 -1
  39. package/dist/graphql/resolvers.js +61 -1
  40. package/dist/graphql/schema.d.ts.map +1 -1
  41. package/dist/graphql/schema.js +10 -0
  42. package/dist/lib/api/documents.d.ts +19 -0
  43. package/dist/lib/api/documents.d.ts.map +1 -1
  44. package/dist/lib/api/documents.js +21 -0
  45. package/dist/lib/api/documents.js.map +1 -1
  46. package/dist/lib/api/schemas/documents.d.ts +3 -0
  47. package/dist/lib/api/schemas/documents.d.ts.map +1 -1
  48. package/dist/lib/api/schemas/documents.js +12 -0
  49. package/dist/lib/api/schemas/documents.js.map +1 -1
  50. package/dist/lib/db/interfaces/index.d.ts +3 -1
  51. package/dist/lib/db/interfaces/index.d.ts.map +1 -1
  52. package/dist/lib/db/interfaces/reference.d.ts +43 -0
  53. package/dist/lib/db/interfaces/reference.d.ts.map +1 -0
  54. package/dist/lib/db/interfaces/reference.js +5 -0
  55. package/dist/lib/db/interfaces/reference.js.map +1 -0
  56. package/dist/lib/db/utils/reference-resolver.d.ts +4 -6
  57. package/dist/lib/db/utils/reference-resolver.d.ts.map +1 -1
  58. package/dist/lib/db/utils/reference-resolver.js +33 -31
  59. package/dist/lib/db/utils/reference-resolver.js.map +1 -1
  60. package/dist/lib/document-refresh.svelte.d.ts +3 -0
  61. package/dist/lib/document-refresh.svelte.d.ts.map +1 -0
  62. package/dist/lib/document-refresh.svelte.js +22 -0
  63. package/dist/lib/document-refresh.svelte.js.map +1 -0
  64. package/dist/lib/graphql/resolvers.d.ts.map +1 -1
  65. package/dist/lib/graphql/resolvers.js +61 -1
  66. package/dist/lib/graphql/resolvers.js.map +1 -1
  67. package/dist/lib/graphql/schema.d.ts.map +1 -1
  68. package/dist/lib/graphql/schema.js +10 -0
  69. package/dist/lib/graphql/schema.js.map +1 -1
  70. package/dist/lib/local-api/collection-api.d.ts +10 -1
  71. package/dist/lib/local-api/collection-api.d.ts.map +1 -1
  72. package/dist/lib/local-api/collection-api.js +39 -1
  73. package/dist/lib/local-api/collection-api.js.map +1 -1
  74. package/dist/lib/local-api/index.d.ts +29 -0
  75. package/dist/lib/local-api/index.d.ts.map +1 -1
  76. package/dist/lib/local-api/index.js +66 -2
  77. package/dist/lib/local-api/index.js.map +1 -1
  78. package/dist/lib/schema-utils/validator.js +21 -11
  79. package/dist/lib/schema-utils/validator.js.map +1 -1
  80. package/dist/lib/server/api/index.d.ts.map +1 -1
  81. package/dist/lib/server/api/index.js +3 -1
  82. package/dist/lib/server/api/index.js.map +1 -1
  83. package/dist/lib/server/api/routes/documents-by-id.d.ts.map +1 -1
  84. package/dist/lib/server/api/routes/documents-by-id.js +23 -0
  85. package/dist/lib/server/api/routes/documents-by-id.js.map +1 -1
  86. package/dist/lib/server/api/routes/documents.d.ts.map +1 -1
  87. package/dist/lib/server/api/routes/documents.js +29 -1
  88. package/dist/lib/server/api/routes/documents.js.map +1 -1
  89. package/dist/lib/services/references-service.d.ts +35 -0
  90. package/dist/lib/services/references-service.d.ts.map +1 -0
  91. package/dist/lib/services/references-service.js +60 -0
  92. package/dist/lib/services/references-service.js.map +1 -0
  93. package/dist/lib/types/schemas.d.ts +8 -0
  94. package/dist/lib/types/schemas.d.ts.map +1 -1
  95. package/dist/lib/utils/preview.d.ts +2 -3
  96. package/dist/lib/utils/preview.d.ts.map +1 -1
  97. package/dist/lib/utils/preview.js +35 -8
  98. package/dist/lib/utils/preview.js.map +1 -1
  99. package/dist/lib/utils/reference-walk.d.ts +8 -0
  100. package/dist/lib/utils/reference-walk.d.ts.map +1 -0
  101. package/dist/lib/utils/reference-walk.js +43 -0
  102. package/dist/lib/utils/reference-walk.js.map +1 -0
  103. package/dist/local-api/collection-api.d.ts +10 -1
  104. package/dist/local-api/collection-api.d.ts.map +1 -1
  105. package/dist/local-api/collection-api.js +39 -1
  106. package/dist/local-api/index.d.ts +29 -0
  107. package/dist/local-api/index.d.ts.map +1 -1
  108. package/dist/local-api/index.js +66 -2
  109. package/dist/schema-utils/validator.js +21 -11
  110. package/dist/server/api/index.d.ts.map +1 -1
  111. package/dist/server/api/index.js +3 -1
  112. package/dist/server/api/routes/documents-by-id.d.ts.map +1 -1
  113. package/dist/server/api/routes/documents-by-id.js +23 -0
  114. package/dist/server/api/routes/documents.d.ts.map +1 -1
  115. package/dist/server/api/routes/documents.js +29 -1
  116. package/dist/services/references-service.d.ts +35 -0
  117. package/dist/services/references-service.d.ts.map +1 -0
  118. package/dist/services/references-service.js +59 -0
  119. package/dist/types/schemas.d.ts +8 -0
  120. package/dist/types/schemas.d.ts.map +1 -1
  121. package/dist/utils/preview.d.ts +2 -3
  122. package/dist/utils/preview.d.ts.map +1 -1
  123. package/dist/utils/preview.js +35 -8
  124. package/dist/utils/reference-walk.d.ts +8 -0
  125. package/dist/utils/reference-walk.d.ts.map +1 -0
  126. package/dist/utils/reference-walk.js +42 -0
  127. package/package.json +3 -3
@@ -11,6 +11,23 @@ export declare class DocumentsApi {
11
11
  * Get document by ID
12
12
  */
13
13
  static getById(id: string): Promise<ApiResponse<DocumentDTO>>;
14
+ /**
15
+ * Find all documents that reference the given document. Used by the
16
+ * unpublish flow to warn the user that taking this doc down will leave
17
+ * dangling references in the published perspective of any back-referrers.
18
+ */
19
+ static getBackReferences(id: string): Promise<ApiResponse<Array<{
20
+ id: string;
21
+ type: string;
22
+ status: string | null;
23
+ }>>>;
24
+ /**
25
+ * Batch fetch — one HTTP call per N IDs. Server fans out and returns the
26
+ * docs that exist (missing/forbidden IDs are silently dropped). Use this
27
+ * when you have a known set of references to hydrate; for filtered or
28
+ * paginated lists use `list()`.
29
+ */
30
+ static getMany(ids: string[]): Promise<ApiResponse<DocumentDTO[]>>;
14
31
  /**
15
32
  * Create new document
16
33
  */
@@ -61,6 +78,8 @@ export declare class DocumentsApi {
61
78
  export declare const documents: {
62
79
  list: typeof DocumentsApi.list;
63
80
  getById: typeof DocumentsApi.getById;
81
+ getMany: typeof DocumentsApi.getMany;
82
+ getBackReferences: typeof DocumentsApi.getBackReferences;
64
83
  create: typeof DocumentsApi.create;
65
84
  updateById: typeof DocumentsApi.updateById;
66
85
  publish: typeof DocumentsApi.publish;
@@ -1 +1 @@
1
- {"version":3,"file":"documents.d.ts","sourceRoot":"","sources":["../../src/lib/api/documents.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,KAAK,EACX,WAAW,EACX,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,eAAe,EACf,iBAAiB,EACjB,MAAM,qBAAqB,CAAC;AAI7B,MAAM,MAAM,kBAAkB,GAAG,kBAAkB,CAAC;AAEpD,qBAAa,YAAY;IACxB;;;OAGG;WACU,IAAI,CAAC,MAAM,GAAE,kBAAuB,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;IAUvF;;OAEG;WACU,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAInE;;OAEG;WACU,MAAM,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAInF;;;;OAIG;WACU,UAAU,CACtB,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,qBAAqB,GACzB,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAIpC;;OAEG;WACU,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAInE;;OAEG;WACU,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAIrE;;OAEG;WACU,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAI/D;;OAEG;WACU,SAAS,CACrB,OAAO,EAAE,MAAM,EACf,MAAM,GAAE,IAAI,CAAC,kBAAkB,EAAE,SAAS,CAAM,GAC9C,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;IAItC;;OAEG;WACU,YAAY,CACxB,MAAM,GAAE,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAM,GAC7C,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;IAItC;;OAEG;WACU,SAAS,CACrB,MAAM,GAAE,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAM,GAC7C,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;IAItC;;OAEG;WACU,YAAY,CACxB,EAAE,EAAE,MAAM,EACV,MAAM,CAAC,EAAE,iBAAiB,GACxB,OAAO,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC,CAAC;IAI1C;;OAEG;WACU,UAAU,CACtB,EAAE,EAAE,MAAM,EACV,aAAa,EAAE,MAAM,GACnB,OAAO,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IAIxC;;OAEG;WACU,cAAc,CAC1B,EAAE,EAAE,MAAM,EACV,aAAa,EAAE,MAAM,GACnB,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;CAGpC;AAGD,eAAO,MAAM,SAAS;;;;;;;;;;;;;;CAcrB,CAAC"}
1
+ {"version":3,"file":"documents.d.ts","sourceRoot":"","sources":["../../src/lib/api/documents.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,KAAK,EACX,WAAW,EACX,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,eAAe,EACf,iBAAiB,EACjB,MAAM,qBAAqB,CAAC;AAI7B,MAAM,MAAM,kBAAkB,GAAG,kBAAkB,CAAC;AAEpD,qBAAa,YAAY;IACxB;;;OAGG;WACU,IAAI,CAAC,MAAM,GAAE,kBAAuB,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;IAUvF;;OAEG;WACU,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAInE;;;;OAIG;WACU,iBAAiB,CAC7B,EAAE,EAAE,MAAM,GACR,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC,CAAC;IAMnF;;;;;OAKG;WACU,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;IAKxE;;OAEG;WACU,MAAM,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAInF;;;;OAIG;WACU,UAAU,CACtB,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,qBAAqB,GACzB,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAIpC;;OAEG;WACU,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAInE;;OAEG;WACU,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAIrE;;OAEG;WACU,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAI/D;;OAEG;WACU,SAAS,CACrB,OAAO,EAAE,MAAM,EACf,MAAM,GAAE,IAAI,CAAC,kBAAkB,EAAE,SAAS,CAAM,GAC9C,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;IAItC;;OAEG;WACU,YAAY,CACxB,MAAM,GAAE,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAM,GAC7C,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;IAItC;;OAEG;WACU,SAAS,CACrB,MAAM,GAAE,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAM,GAC7C,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;IAItC;;OAEG;WACU,YAAY,CACxB,EAAE,EAAE,MAAM,EACV,MAAM,CAAC,EAAE,iBAAiB,GACxB,OAAO,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC,CAAC;IAI1C;;OAEG;WACU,UAAU,CACtB,EAAE,EAAE,MAAM,EACV,aAAa,EAAE,MAAM,GACnB,OAAO,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IAIxC;;OAEG;WACU,cAAc,CAC1B,EAAE,EAAE,MAAM,EACV,aAAa,EAAE,MAAM,GACnB,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;CAGpC;AAGD,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;CAgBrB,CAAC"}
@@ -19,6 +19,25 @@ export class DocumentsApi {
19
19
  static async getById(id) {
20
20
  return apiClient.get(`/documents/${id}`);
21
21
  }
22
+ /**
23
+ * Find all documents that reference the given document. Used by the
24
+ * unpublish flow to warn the user that taking this doc down will leave
25
+ * dangling references in the published perspective of any back-referrers.
26
+ */
27
+ static async getBackReferences(id) {
28
+ return apiClient.get(`/documents/${id}/back-references`);
29
+ }
30
+ /**
31
+ * Batch fetch — one HTTP call per N IDs. Server fans out and returns the
32
+ * docs that exist (missing/forbidden IDs are silently dropped). Use this
33
+ * when you have a known set of references to hydrate; for filtered or
34
+ * paginated lists use `list()`.
35
+ */
36
+ static async getMany(ids) {
37
+ if (ids.length === 0)
38
+ return { success: true, data: [] };
39
+ return apiClient.get('/documents/by-ids', { ids: ids.join(',') });
40
+ }
22
41
  /**
23
42
  * Create new document
24
43
  */
@@ -92,6 +111,8 @@ export class DocumentsApi {
92
111
  export const documents = {
93
112
  list: DocumentsApi.list.bind(DocumentsApi),
94
113
  getById: DocumentsApi.getById.bind(DocumentsApi),
114
+ getMany: DocumentsApi.getMany.bind(DocumentsApi),
115
+ getBackReferences: DocumentsApi.getBackReferences.bind(DocumentsApi),
95
116
  create: DocumentsApi.create.bind(DocumentsApi),
96
117
  updateById: DocumentsApi.updateById.bind(DocumentsApi),
97
118
  publish: DocumentsApi.publish.bind(DocumentsApi),
@@ -85,6 +85,9 @@ export declare const listDocumentsResponse: z.ZodObject<{
85
85
  hasPrevPage: z.ZodBoolean;
86
86
  }, z.core.$strip>;
87
87
  }, z.core.$strip>;
88
+ export declare const getDocumentsByIdsQuery: z.ZodObject<{
89
+ ids: z.ZodPipe<z.ZodString, z.ZodTransform<string[], string>>;
90
+ }, z.core.$strip>;
88
91
  export declare const createDocumentRequest: z.ZodObject<{
89
92
  type: z.ZodString;
90
93
  draftData: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -1 +1 @@
1
- {"version":3,"file":"documents.d.ts","sourceRoot":"","sources":["../../../src/lib/api/schemas/documents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"documents.d.ts","sourceRoot":"","sources":["../../../src/lib/api/schemas/documents.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,18 @@ export const listDocumentsResponse = z.object({
54
54
  data: z.array(documentSchema),
55
55
  pagination: paginationMetaSchema
56
56
  });
57
+ // ---------- GET /documents/by-ids (batch lookup) ----------
58
+ // Fetch many docs in one round-trip. Used by the publish-guard reference
59
+ // check and by ArrayField row hydration so an array of N references costs
60
+ // one HTTP call instead of N. Caller passes ids as a comma-separated list.
61
+ export const getDocumentsByIdsQuery = z.object({
62
+ ids: z
63
+ .string()
64
+ .transform((v) => v.split(',').filter(Boolean))
65
+ .refine((arr) => arr.length > 0 && arr.length <= 100, {
66
+ message: 'ids must contain between 1 and 100 entries'
67
+ })
68
+ });
57
69
  // ---------- POST /documents (create) ----------
58
70
  export const createDocumentRequest = z
59
71
  .object({
@@ -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,EAAS,MAAM,sBAAsB,CAAC;AA+L9D;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,CA4C3D;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAC5C,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CA2Ff"}
1
+ {"version":3,"file":"generate-types.d.ts","sourceRoot":"","sources":["../../src/cli/generate-types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,UAAU,EAAS,MAAM,sBAAsB,CAAC;AA+R9D;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,CAwF3D;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAC5C,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CA2Ff"}
@@ -2,7 +2,8 @@ import { isFieldRequired } from '../lib/field-validation/utils.js';
2
2
  /**
3
3
  * Map Aphex field types to TypeScript types
4
4
  */
5
- function mapFieldTypeToTS(field, schemaMap, inArray = false) {
5
+ function mapFieldTypeToTS(field, schemaMap, opts = {}) {
6
+ const { inArray = false, resolved = false } = opts;
6
7
  switch (field.type) {
7
8
  case 'string':
8
9
  case 'text':
@@ -30,16 +31,41 @@ function mapFieldTypeToTS(field, schemaMap, inArray = false) {
30
31
  // ArrayField for stable DnD ordering; reflect that in the type.
31
32
  const types = field.of
32
33
  .map((item) => {
33
- // Check if it's a reference to a named object schema
34
+ // Reference array item: stored as { _type: 'reference', _ref, _key }.
35
+ // Raw mode → Reference<Target>; resolved mode → Target (the raw
36
+ // target — at depth=1 the resolver doesn't recurse into the
37
+ // fetched docs, so their inner refs stay raw).
38
+ if (item.type === 'reference') {
39
+ const to = item.to;
40
+ const targets = to
41
+ ?.map((t) => {
42
+ const target = schemaMap.get(t.type);
43
+ return target ? pascalCase(t.type) : null;
44
+ })
45
+ .filter((s) => !!s) ?? [];
46
+ if (targets.length === 0) {
47
+ return resolved ? 'unknown' : 'Reference<unknown>';
48
+ }
49
+ const union = targets.join(' | ');
50
+ if (resolved) {
51
+ return targets.length === 1 ? targets[0] : `(${union})`;
52
+ }
53
+ return targets.length === 1
54
+ ? `Reference<${targets[0]}>`
55
+ : `Reference<${union}>`;
56
+ }
57
+ // Named object schema — refs inside it are part of the same
58
+ // document tree, so in resolved mode point at the *Resolved
59
+ // variant (only if it actually has refs; otherwise no Resolved
60
+ // variant was emitted).
34
61
  const refSchema = schemaMap.get(item.type);
35
62
  if (refSchema && refSchema.type === 'object') {
36
- // Named reference already has `_type?` baked into its
37
- // interface, just intersect with `_key?`.
38
- return `(${pascalCase(item.type)} & { _key?: string })`;
63
+ const useResolved = resolved && hasReferences(refSchema, schemaMap);
64
+ const name = pascalCase(item.type) + (useResolved ? 'Resolved' : '');
65
+ return `(${name} & { _key?: string })`;
39
66
  }
40
- // Inline object or primitive — recurse with inArray=true so
41
- // inline object items pick up `_key?` and `_type?`.
42
- return mapFieldTypeToTS(item, schemaMap, true);
67
+ // Inline object or primitive — recurse, propagating resolved.
68
+ return mapFieldTypeToTS(item, schemaMap, { inArray: true, resolved });
43
69
  })
44
70
  .filter((t) => t !== 'unknown');
45
71
  if (types.length === 0) {
@@ -57,7 +83,7 @@ function mapFieldTypeToTS(field, schemaMap, inArray = false) {
57
83
  const arrayMeta = inArray ? ' _key?: string;\n _type?: string;\n' : '';
58
84
  const props = field.fields
59
85
  .map((f) => {
60
- const tsType = mapFieldTypeToTS(f, schemaMap);
86
+ const tsType = mapFieldTypeToTS(f, schemaMap, { resolved });
61
87
  const optional = isFieldOptional(f) ? '?' : '';
62
88
  return ` ${f.name}${optional}: ${tsType};`;
63
89
  })
@@ -65,8 +91,21 @@ function mapFieldTypeToTS(field, schemaMap, inArray = false) {
65
91
  return `{\n${arrayMeta}${props}\n}`;
66
92
  }
67
93
  case 'reference': {
68
- // References store document ID as string
69
- return 'string';
94
+ const to = field.to;
95
+ const targets = to
96
+ ?.map((t) => (schemaMap.get(t.type) ? pascalCase(t.type) : null))
97
+ .filter((s) => !!s) ?? [];
98
+ if (resolved) {
99
+ // At depth=1 the ref is replaced with the full target doc (raw shape).
100
+ if (targets.length === 0)
101
+ return 'unknown';
102
+ return targets.length === 1 ? targets[0] : targets.join(' | ');
103
+ }
104
+ // Raw: stored as { _type: 'reference', _ref } — same shape as array items.
105
+ if (targets.length === 0)
106
+ return 'Reference<unknown>';
107
+ const union = targets.join(' | ');
108
+ return targets.length === 1 ? `Reference<${targets[0]}>` : `Reference<${union}>`;
70
109
  }
71
110
  default:
72
111
  return 'unknown';
@@ -88,17 +127,20 @@ function isFieldOptional(field) {
88
127
  return !isFieldRequired(field);
89
128
  }
90
129
  /**
91
- * Generate TypeScript interface for a schema type
130
+ * Generate TypeScript interface for a schema type. When `resolved` is true,
131
+ * emits the depth=1 shape (refs swapped for their targets) under the name
132
+ * `<Name>Resolved`.
92
133
  */
93
- function generateInterface(schema, schemaMap) {
94
- const interfaceName = pascalCase(schema.name);
134
+ function generateInterface(schema, schemaMap, resolved = false) {
135
+ const interfaceName = pascalCase(schema.name) + (resolved ? 'Resolved' : '');
95
136
  const fields = schema.fields
96
137
  .map((field) => {
97
- const tsType = mapFieldTypeToTS(field, schemaMap);
138
+ const tsType = mapFieldTypeToTS(field, schemaMap, { resolved });
98
139
  const optional = isFieldOptional(field) ? '?' : '';
99
140
  // Build comment with description and format information
100
141
  let comment = '';
101
- if (field.description || field.type === 'date' || field.type === 'datetime') {
142
+ const needsComment = field.description || field.type === 'date' || field.type === 'datetime';
143
+ if (needsComment) {
102
144
  const parts = [];
103
145
  if (field.description) {
104
146
  parts.push(field.description);
@@ -114,7 +156,9 @@ function generateInterface(schema, schemaMap) {
114
156
  const timeFormat = dateTimeField.options?.timeFormat || 'HH:mm';
115
157
  parts.push(`@format ISO datetime string in UTC (YYYY-MM-DDTHH:mm:ssZ) - displays as ${dateFormat} ${timeFormat}`);
116
158
  }
117
- comment = ` /**\n * ${parts.join('\n * ')}\n */\n`;
159
+ if (parts.length > 0) {
160
+ comment = ` /**\n * ${parts.join('\n * ')}\n */\n`;
161
+ }
118
162
  }
119
163
  return `${comment} ${field.name}${optional}: ${tsType};`;
120
164
  })
@@ -147,6 +191,35 @@ ${fields}`;
147
191
  }
148
192
  return `export interface ${interfaceName} {\n${finalFields}\n}`;
149
193
  }
194
+ /**
195
+ * True if the schema (or any object schema reachable from it) contains a
196
+ * reference field. Used to skip emitting `*Resolved` variants for schemas
197
+ * that have nothing to resolve.
198
+ */
199
+ function hasReferences(schema, schemaMap, visited = new Set()) {
200
+ if (visited.has(schema.name))
201
+ return false;
202
+ visited.add(schema.name);
203
+ return schema.fields.some((f) => fieldHasReferences(f, schemaMap, visited));
204
+ }
205
+ function fieldHasReferences(field, schemaMap, visited) {
206
+ if (field.type === 'reference')
207
+ return true;
208
+ if (field.type === 'array' && 'of' in field && field.of) {
209
+ return field.of.some((item) => {
210
+ if (item.type === 'reference')
211
+ return true;
212
+ const named = schemaMap.get(item.type);
213
+ if (named && named.type === 'object')
214
+ return hasReferences(named, schemaMap, visited);
215
+ return fieldHasReferences(item, schemaMap, visited);
216
+ });
217
+ }
218
+ if (field.type === 'object' && 'fields' in field && field.fields) {
219
+ return field.fields.some((f) => fieldHasReferences(f, schemaMap, visited));
220
+ }
221
+ return false;
222
+ }
150
223
  /**
151
224
  * Generate the Collections interface augmentation. Singleton-flagged schemas
152
225
  * are typed as `SingletonCollection<T>` (a narrowed pick exposing only
@@ -179,13 +252,41 @@ export function generateTypes(schemas) {
179
252
  // Separate document and object types
180
253
  const documentSchemas = schemas.filter((s) => s.type === 'document');
181
254
  const objectSchemas = schemas.filter((s) => s.type === 'object');
182
- // Generate interfaces for all schemas
255
+ // Raw shape (storage / depth=0)
183
256
  const objectInterfaces = objectSchemas.map((s) => generateInterface(s, schemaMap)).join('\n\n');
184
257
  const documentInterfaces = documentSchemas
185
258
  .map((s) => generateInterface(s, schemaMap))
186
259
  .join('\n\n');
260
+ // Resolved shape (depth=1) — only for schemas that actually contain refs.
261
+ const objectResolvedInterfaces = objectSchemas
262
+ .filter((s) => hasReferences(s, schemaMap))
263
+ .map((s) => generateInterface(s, schemaMap, true))
264
+ .join('\n\n');
265
+ const documentResolvedInterfaces = documentSchemas
266
+ .filter((s) => hasReferences(s, schemaMap))
267
+ .map((s) => generateInterface(s, schemaMap, true))
268
+ .join('\n\n');
269
+ const hasResolved = !!(objectResolvedInterfaces || documentResolvedInterfaces);
187
270
  // Generate Collections interface augmentation
188
271
  const collectionsAugmentation = generateCollectionsAugmentation(documentSchemas);
272
+ const resolvedSection = hasResolved
273
+ ? `
274
+
275
+ // ============================================================================
276
+ // Resolved Types (depth=1) — refs swapped for their target docs
277
+ // ============================================================================
278
+ //
279
+ // Use these when reading with \`depth: 1\`. The local API and HTTP routes default
280
+ // to depth=0 (raw IDs); pass \`{ depth: 1 }\` to get the resolved shape:
281
+ //
282
+ // const menu = (await cms.collections.menu.get(id, { depth: 1 })) as MenuResolved;
283
+ //
284
+ // At depth=1 only the outer document's refs resolve — refs inside the resolved
285
+ // targets stay raw, which is why \`MenuResolved.items\` is \`MenuItem[]\` (not
286
+ // \`MenuItemResolved[]\`).
287
+
288
+ ${objectResolvedInterfaces ? objectResolvedInterfaces + '\n\n' : ''}${documentResolvedInterfaces}`
289
+ : '';
189
290
  // Build the complete file
190
291
  const output = `/**
191
292
  * Generated types for Aphex CMS
@@ -193,6 +294,19 @@ export function generateTypes(schemas) {
193
294
  */
194
295
  import type { CollectionAPI, SingletonCollection } from '@aphexcms/cms-core/server';
195
296
 
297
+ /**
298
+ * A reference to another document, stored as \`{ _type: 'reference', _ref }\`
299
+ * inside arrays. At depth=0 (default) this is the raw shape; at depth=1 the
300
+ * field is replaced with the target document — see the \`*Resolved\` variants.
301
+ */
302
+ export interface Reference<T = unknown> {
303
+ _type: 'reference';
304
+ _ref: string;
305
+ _key?: string;
306
+ /** Phantom — present only in the type, used for inferring the target. */
307
+ __targetType?: T;
308
+ }
309
+
196
310
  // ============================================================================
197
311
  // Object Types (nested in documents)
198
312
  // ============================================================================
@@ -203,7 +317,7 @@ ${objectInterfaces}
203
317
  // Document Types (collections)
204
318
  // ============================================================================
205
319
 
206
- ${documentInterfaces}
320
+ ${documentInterfaces}${resolvedSection}
207
321
 
208
322
  // ============================================================================
209
323
  // Module Augmentation - Extends Collections interface globally
@@ -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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"}