convex-cms 0.0.16 → 0.0.17
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/admin/dist/types/admin/src/components/ui/field.d.ts +1 -1
- package/admin/dist/types/admin/src/lib/cmsExports.d.ts +6 -6
- package/admin/dist/types/admin/src/lib/cmsExports.d.ts.map +1 -1
- package/admin/src/lib/cmsExports.ts +8 -8
- package/admin-dist/assets/index-DagpgVMo.js +104 -0
- package/admin-dist/embed/favicon.ico +0 -0
- package/admin-dist/embed/index.js +30961 -0
- package/admin-dist/embed/index.js.map +1 -0
- package/admin-dist/index.html +1 -1
- package/package.json +12 -5
- package/admin/dist/types/src/client/admin/bulk.d.ts +0 -79
- package/admin/dist/types/src/client/admin/bulk.d.ts.map +0 -1
- package/admin/dist/types/src/client/admin/contentLock.d.ts +0 -118
- package/admin/dist/types/src/client/admin/contentLock.d.ts.map +0 -1
- package/admin/dist/types/src/client/admin/contentTypes.d.ts +0 -1627
- package/admin/dist/types/src/client/admin/contentTypes.d.ts.map +0 -1
- package/admin/dist/types/src/client/admin/dashboard.d.ts +0 -16
- package/admin/dist/types/src/client/admin/dashboard.d.ts.map +0 -1
- package/admin/dist/types/src/client/admin/entries.d.ts +0 -357
- package/admin/dist/types/src/client/admin/entries.d.ts.map +0 -1
- package/admin/dist/types/src/client/admin/index.d.ts +0 -7502
- package/admin/dist/types/src/client/admin/index.d.ts.map +0 -1
- package/admin/dist/types/src/client/admin/media.d.ts +0 -1038
- package/admin/dist/types/src/client/admin/media.d.ts.map +0 -1
- package/admin/dist/types/src/client/admin/settings.d.ts +0 -50
- package/admin/dist/types/src/client/admin/settings.d.ts.map +0 -1
- package/admin/dist/types/src/client/admin/taxonomies.d.ts +0 -339
- package/admin/dist/types/src/client/admin/taxonomies.d.ts.map +0 -1
- package/admin/dist/types/src/client/admin/trash.d.ts +0 -90
- package/admin/dist/types/src/client/admin/trash.d.ts.map +0 -1
- package/admin/dist/types/src/client/admin/types.d.ts +0 -594
- package/admin/dist/types/src/client/admin/types.d.ts.map +0 -1
- package/admin/dist/types/src/client/admin/users.d.ts +0 -58
- package/admin/dist/types/src/client/admin/users.d.ts.map +0 -1
- package/admin/dist/types/src/client/admin/validators.d.ts +0 -7732
- package/admin/dist/types/src/client/admin/validators.d.ts.map +0 -1
- package/admin/dist/types/src/client/admin/versions.d.ts +0 -106
- package/admin/dist/types/src/client/admin/versions.d.ts.map +0 -1
- package/admin/dist/types/src/client/adminConfig.d.ts +0 -125
- package/admin/dist/types/src/client/adminConfig.d.ts.map +0 -1
- package/admin/dist/types/src/client/config.d.ts +0 -155
- package/admin/dist/types/src/client/config.d.ts.map +0 -1
- package/admin/dist/types/src/client/field-types.d.ts +0 -55
- package/admin/dist/types/src/client/field-types.d.ts.map +0 -1
- package/admin/dist/types/src/client/fields.d.ts +0 -70
- package/admin/dist/types/src/client/fields.d.ts.map +0 -1
- package/admin/dist/types/src/client/registry.d.ts +0 -77
- package/admin/dist/types/src/client/registry.d.ts.map +0 -1
- package/admin/dist/types/src/client/schema/defineContentType.d.ts +0 -233
- package/admin/dist/types/src/client/schema/defineContentType.d.ts.map +0 -1
- package/admin/dist/types/src/client/schema/types.d.ts +0 -540
- package/admin/dist/types/src/client/schema/types.d.ts.map +0 -1
- package/admin/dist/types/src/client/types.d.ts +0 -449
- package/admin/dist/types/src/client/types.d.ts.map +0 -1
- package/admin/dist/types/src/client/utils/toSlug.d.ts +0 -60
- package/admin/dist/types/src/client/utils/toSlug.d.ts.map +0 -1
- package/admin/dist/types/src/client/workflows.d.ts +0 -51
- package/admin/dist/types/src/client/workflows.d.ts.map +0 -1
- package/admin/dist/types/src/component/_generated/component.d.ts +0 -4813
- package/admin/dist/types/src/component/_generated/component.d.ts.map +0 -1
- package/admin/dist/types/src/component/_generated/dataModel.d.ts +0 -46
- package/admin/dist/types/src/component/_generated/dataModel.d.ts.map +0 -1
- package/admin/dist/types/src/component/_generated/server.d.ts +0 -121
- package/admin/dist/types/src/component/_generated/server.d.ts.map +0 -1
- package/admin/dist/types/src/component/contentEntryMutations.d.ts +0 -551
- package/admin/dist/types/src/component/contentEntryMutations.d.ts.map +0 -1
- package/admin/dist/types/src/component/contentLock.d.ts +0 -328
- package/admin/dist/types/src/component/contentLock.d.ts.map +0 -1
- package/admin/dist/types/src/component/contentTypeMutations.d.ts +0 -1253
- package/admin/dist/types/src/component/contentTypeMutations.d.ts.map +0 -1
- package/admin/dist/types/src/component/documentTypes.d.ts +0 -186
- package/admin/dist/types/src/component/documentTypes.d.ts.map +0 -1
- package/admin/dist/types/src/component/eventEmitter.d.ts +0 -309
- package/admin/dist/types/src/component/eventEmitter.d.ts.map +0 -1
- package/admin/dist/types/src/component/lib/errors.d.ts +0 -306
- package/admin/dist/types/src/component/lib/errors.d.ts.map +0 -1
- package/admin/dist/types/src/component/lib/metadataExtractor.d.ts +0 -245
- package/admin/dist/types/src/component/lib/metadataExtractor.d.ts.map +0 -1
- package/admin/dist/types/src/component/lib/mutationAuth.d.ts +0 -95
- package/admin/dist/types/src/component/lib/mutationAuth.d.ts.map +0 -1
- package/admin/dist/types/src/component/lib/slugGenerator.d.ts +0 -71
- package/admin/dist/types/src/component/lib/slugGenerator.d.ts.map +0 -1
- package/admin/dist/types/src/component/lib/slugUniqueness.d.ts +0 -131
- package/admin/dist/types/src/component/lib/slugUniqueness.d.ts.map +0 -1
- package/admin/dist/types/src/component/lib/softDelete.d.ts +0 -18
- package/admin/dist/types/src/component/lib/softDelete.d.ts.map +0 -1
- package/admin/dist/types/src/component/localeFields.d.ts +0 -508
- package/admin/dist/types/src/component/localeFields.d.ts.map +0 -1
- package/admin/dist/types/src/component/mediaAssetMutations.d.ts +0 -282
- package/admin/dist/types/src/component/mediaAssetMutations.d.ts.map +0 -1
- package/admin/dist/types/src/component/schema.d.ts +0 -5248
- package/admin/dist/types/src/component/schema.d.ts.map +0 -1
- package/admin/dist/types/src/component/validation.d.ts +0 -407
- package/admin/dist/types/src/component/validation.d.ts.map +0 -1
- package/admin/dist/types/src/component/validators.d.ts +0 -5722
- package/admin/dist/types/src/component/validators.d.ts.map +0 -1
- package/admin/dist/types/src/react/index.d.ts +0 -493
- package/admin/dist/types/src/react/index.d.ts.map +0 -1
- package/admin-dist/assets/index-DTgANhXL.js +0 -104
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"contentTypeMutations.d.ts","sourceRoot":"","sources":["../../../../../src/component/contentTypeMutations.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAuCH;;GAEG;AACH,UAAU,cAAc;IACtB,uCAAuC;IACvC,IAAI,EACA,eAAe,GACf,oBAAoB,GACpB,qBAAqB,GACrB,wBAAwB,GACxB,4BAA4B,GAC5B,sBAAsB,CAAC;IAC3B,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAmUD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqG5B,CAAC;AAgCH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiK5B,CAAC;AAMH;;;GAGG;AACH,eAAO,MAAM,uBAAuB;;;;;;;IAClC,0CAA0C;;IAE1C,yCAAyC;;IAEzC,sEAAsE;;IAEtE,2FAA2F;;IAE3F,gEAAgE;;0GAEhE,CAAC;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;GAmH5B,CAAC"}
|
|
@@ -1,186 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Derived TypeScript Types for CMS Documents
|
|
3
|
-
*
|
|
4
|
-
* This module provides TypeScript types derived from validators using Convex's `Infer<>`.
|
|
5
|
-
* These types are the single source of truth for document shapes throughout the codebase.
|
|
6
|
-
*
|
|
7
|
-
* Two type variants are provided:
|
|
8
|
-
* 1. **Internal types** (with `Id<TableName>`) - For use within Convex functions
|
|
9
|
-
* 2. **Client types** (with `string` IDs) - For use at API boundaries where IDs are serialized
|
|
10
|
-
*
|
|
11
|
-
* @example
|
|
12
|
-
* ```typescript
|
|
13
|
-
* // Internal use (within Convex functions)
|
|
14
|
-
* import type { ContentTypeInternal } from "./documentTypes.js";
|
|
15
|
-
* const type: ContentTypeInternal = await ctx.db.get(id);
|
|
16
|
-
*
|
|
17
|
-
* // Client use (API boundary)
|
|
18
|
-
* import type { ContentType } from "./documentTypes.js";
|
|
19
|
-
* const type: ContentType = await cms.contentTypes.get(ctx, { id });
|
|
20
|
-
* ```
|
|
21
|
-
*/
|
|
22
|
-
import type { Infer } from "convex/values";
|
|
23
|
-
import type { GenericId } from "convex/values";
|
|
24
|
-
import * as validators from "./validators.js";
|
|
25
|
-
/**
|
|
26
|
-
* Recursively converts all `Id<T>` types to `string` for API boundary serialization.
|
|
27
|
-
* This is used when passing documents from Convex functions to client code,
|
|
28
|
-
* where Convex IDs are serialized as strings.
|
|
29
|
-
*/
|
|
30
|
-
export type StringifyIds<T> = T extends GenericId<infer _TableName> ? string : T extends (infer U)[] ? StringifyIds<U>[] : T extends Record<string, unknown> ? {
|
|
31
|
-
[K in keyof T]: StringifyIds<T[K]>;
|
|
32
|
-
} : T;
|
|
33
|
-
/**
|
|
34
|
-
* Content type document - internal use with typed IDs.
|
|
35
|
-
*/
|
|
36
|
-
export type ContentTypeInternal = Infer<typeof validators.contentTypeDoc>;
|
|
37
|
-
/**
|
|
38
|
-
* Content entry document - internal use with typed IDs.
|
|
39
|
-
*/
|
|
40
|
-
export type ContentEntryInternal = Infer<typeof validators.contentEntryDoc>;
|
|
41
|
-
/**
|
|
42
|
-
* Content version document - internal use with typed IDs.
|
|
43
|
-
*/
|
|
44
|
-
export type ContentVersionInternal = Infer<typeof validators.contentVersionDoc>;
|
|
45
|
-
/**
|
|
46
|
-
* Media item document (unified asset/folder) - internal use with typed IDs.
|
|
47
|
-
*/
|
|
48
|
-
export type MediaItemInternal = Infer<typeof validators.mediaItemDoc>;
|
|
49
|
-
/**
|
|
50
|
-
* Media asset document - internal use with typed IDs.
|
|
51
|
-
* Extracts only the asset variant from the MediaItem union.
|
|
52
|
-
*/
|
|
53
|
-
export type MediaAssetInternal = Extract<MediaItemInternal, {
|
|
54
|
-
kind: "asset";
|
|
55
|
-
}>;
|
|
56
|
-
/**
|
|
57
|
-
* Media folder document - internal use with typed IDs.
|
|
58
|
-
* Extracts only the folder variant from the MediaItem union.
|
|
59
|
-
*/
|
|
60
|
-
export type MediaFolderInternal = Extract<MediaItemInternal, {
|
|
61
|
-
kind: "folder";
|
|
62
|
-
}>;
|
|
63
|
-
/**
|
|
64
|
-
* Media variant document - internal use with typed IDs.
|
|
65
|
-
*/
|
|
66
|
-
export type MediaVariantInternal = Infer<typeof validators.mediaVariantDoc>;
|
|
67
|
-
/**
|
|
68
|
-
* Taxonomy document - internal use with typed IDs.
|
|
69
|
-
*/
|
|
70
|
-
export type TaxonomyInternal = Infer<typeof validators.taxonomyDoc>;
|
|
71
|
-
/**
|
|
72
|
-
* Taxonomy term document - internal use with typed IDs.
|
|
73
|
-
*/
|
|
74
|
-
export type TaxonomyTermInternal = Infer<typeof validators.taxonomyTermDoc>;
|
|
75
|
-
/**
|
|
76
|
-
* Content entry tag junction - internal use with typed IDs.
|
|
77
|
-
*/
|
|
78
|
-
export type ContentEntryTagInternal = Infer<typeof validators.contentEntryTagDoc>;
|
|
79
|
-
/**
|
|
80
|
-
* CMS event document - internal use with typed IDs.
|
|
81
|
-
*/
|
|
82
|
-
export type CmsEventInternal = Infer<typeof validators.cmsEventDoc>;
|
|
83
|
-
/**
|
|
84
|
-
* Trash config document - internal use with typed IDs.
|
|
85
|
-
*/
|
|
86
|
-
export type TrashConfigInternal = Infer<typeof validators.trashConfigDoc>;
|
|
87
|
-
/**
|
|
88
|
-
* Webhook config document - internal use with typed IDs.
|
|
89
|
-
*/
|
|
90
|
-
export type WebhookConfigInternal = Infer<typeof validators.webhookConfigDoc>;
|
|
91
|
-
/**
|
|
92
|
-
* Webhook delivery document - internal use with typed IDs.
|
|
93
|
-
*/
|
|
94
|
-
export type WebhookDeliveryInternal = Infer<typeof validators.webhookDeliveryDoc>;
|
|
95
|
-
/**
|
|
96
|
-
* Content type - client-facing with string IDs.
|
|
97
|
-
*/
|
|
98
|
-
export type ContentType = StringifyIds<ContentTypeInternal>;
|
|
99
|
-
/**
|
|
100
|
-
* Content entry - client-facing with string IDs.
|
|
101
|
-
*/
|
|
102
|
-
export type ContentEntry = StringifyIds<ContentEntryInternal>;
|
|
103
|
-
/**
|
|
104
|
-
* Content version - client-facing with string IDs.
|
|
105
|
-
*/
|
|
106
|
-
export type ContentVersion = StringifyIds<ContentVersionInternal>;
|
|
107
|
-
/**
|
|
108
|
-
* Media item (unified asset/folder) - client-facing with string IDs.
|
|
109
|
-
*/
|
|
110
|
-
export type MediaItem = StringifyIds<MediaItemInternal>;
|
|
111
|
-
/**
|
|
112
|
-
* Media asset - client-facing with string IDs.
|
|
113
|
-
* Extracts only the asset variant from the MediaItem union.
|
|
114
|
-
*/
|
|
115
|
-
export type MediaAsset = Extract<MediaItem, {
|
|
116
|
-
kind: "asset";
|
|
117
|
-
}>;
|
|
118
|
-
/**
|
|
119
|
-
* Media folder - client-facing with string IDs.
|
|
120
|
-
* Extracts only the folder variant from the MediaItem union.
|
|
121
|
-
*/
|
|
122
|
-
export type MediaFolder = Extract<MediaItem, {
|
|
123
|
-
kind: "folder";
|
|
124
|
-
}>;
|
|
125
|
-
/**
|
|
126
|
-
* Media variant - client-facing with string IDs.
|
|
127
|
-
*/
|
|
128
|
-
export type MediaVariant = StringifyIds<MediaVariantInternal>;
|
|
129
|
-
/**
|
|
130
|
-
* Taxonomy - client-facing with string IDs.
|
|
131
|
-
*/
|
|
132
|
-
export type Taxonomy = StringifyIds<TaxonomyInternal>;
|
|
133
|
-
/**
|
|
134
|
-
* Taxonomy term - client-facing with string IDs.
|
|
135
|
-
*/
|
|
136
|
-
export type TaxonomyTerm = StringifyIds<TaxonomyTermInternal>;
|
|
137
|
-
/**
|
|
138
|
-
* Content entry tag - client-facing with string IDs.
|
|
139
|
-
*/
|
|
140
|
-
export type ContentEntryTag = StringifyIds<ContentEntryTagInternal>;
|
|
141
|
-
/**
|
|
142
|
-
* CMS event - client-facing with string IDs.
|
|
143
|
-
*/
|
|
144
|
-
export type CmsEvent = StringifyIds<CmsEventInternal>;
|
|
145
|
-
/**
|
|
146
|
-
* Trash config - client-facing with string IDs.
|
|
147
|
-
*/
|
|
148
|
-
export type TrashConfig = StringifyIds<TrashConfigInternal>;
|
|
149
|
-
/**
|
|
150
|
-
* Webhook config - client-facing with string IDs.
|
|
151
|
-
*/
|
|
152
|
-
export type WebhookConfig = StringifyIds<WebhookConfigInternal>;
|
|
153
|
-
/**
|
|
154
|
-
* Webhook delivery - client-facing with string IDs.
|
|
155
|
-
*/
|
|
156
|
-
export type WebhookDelivery = StringifyIds<WebhookDeliveryInternal>;
|
|
157
|
-
/**
|
|
158
|
-
* Internal field definition type (with typed IDs).
|
|
159
|
-
*/
|
|
160
|
-
export type FieldDefinitionInternal = Infer<typeof validators.fieldDefinitionValidator>;
|
|
161
|
-
/**
|
|
162
|
-
* Client-facing field definition type (IDs as strings).
|
|
163
|
-
* Used at the API boundary where Convex IDs are serialized as strings.
|
|
164
|
-
*/
|
|
165
|
-
export type FieldDefinition = StringifyIds<FieldDefinitionInternal>;
|
|
166
|
-
/**
|
|
167
|
-
* Media variant with resolved URL.
|
|
168
|
-
*/
|
|
169
|
-
export type MediaVariantWithUrl = MediaVariant & {
|
|
170
|
-
url: string | null;
|
|
171
|
-
};
|
|
172
|
-
/**
|
|
173
|
-
* Trash item with deletion metadata.
|
|
174
|
-
*/
|
|
175
|
-
export type TrashItem = ContentEntry & {
|
|
176
|
-
deletedDaysAgo: number;
|
|
177
|
-
expiresAt?: number;
|
|
178
|
-
contentTypeName?: string;
|
|
179
|
-
};
|
|
180
|
-
/**
|
|
181
|
-
* Taxonomy term with children (for hierarchical display).
|
|
182
|
-
*/
|
|
183
|
-
export type TaxonomyTermWithChildren = TaxonomyTerm & {
|
|
184
|
-
children: TaxonomyTermWithChildren[];
|
|
185
|
-
};
|
|
186
|
-
//# sourceMappingURL=documentTypes.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"documentTypes.d.ts","sourceRoot":"","sources":["../../../../../src/component/documentTypes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,309 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Event Emitter Module
|
|
3
|
-
*
|
|
4
|
-
* Internal system to emit events on content changes (created, updated, published, deleted).
|
|
5
|
-
* Events are stored in the cmsEvents table for async processing by external systems,
|
|
6
|
-
* webhooks, audit logging, and other integrations.
|
|
7
|
-
*
|
|
8
|
-
* Design Philosophy:
|
|
9
|
-
* - Events are emitted synchronously within the same transaction as mutations
|
|
10
|
-
* - This ensures atomicity: if the mutation fails, no event is created
|
|
11
|
-
* - Events are stored for later processing (not real-time pub/sub)
|
|
12
|
-
* - Consumers can poll events or use Convex reactivity to process them
|
|
13
|
-
*
|
|
14
|
-
* Usage:
|
|
15
|
-
* ```typescript
|
|
16
|
-
* // In a mutation handler:
|
|
17
|
-
* await emitEvent(ctx, {
|
|
18
|
-
* eventType: "contentEntry.created",
|
|
19
|
-
* resourceType: "contentEntry",
|
|
20
|
-
* resourceId: entry._id.toString(),
|
|
21
|
-
* action: "created",
|
|
22
|
-
* payload: { slug: entry.slug, contentTypeName: "blog_post" },
|
|
23
|
-
* userId: createdBy,
|
|
24
|
-
* });
|
|
25
|
-
* ```
|
|
26
|
-
*/
|
|
27
|
-
import type { MutationCtx } from "./_generated/server.js";
|
|
28
|
-
/**
|
|
29
|
-
* Resource types that can emit events.
|
|
30
|
-
* "custom" allows consumer apps to emit their own application-level events.
|
|
31
|
-
*/
|
|
32
|
-
export type EventResourceType = "contentEntry" | "contentType" | "mediaAsset" | "mediaFolder" | "custom";
|
|
33
|
-
/**
|
|
34
|
-
* Actions that can be performed on resources.
|
|
35
|
-
*/
|
|
36
|
-
export type EventAction = "created" | "updated" | "succeeded" | "failed" | "published" | "unpublished" | "deleted" | "restored" | "duplicated" | "scheduled";
|
|
37
|
-
/**
|
|
38
|
-
* Full event type combining resource and action.
|
|
39
|
-
*/
|
|
40
|
-
export type EventType = `${EventResourceType}.${EventAction}`;
|
|
41
|
-
/**
|
|
42
|
-
* Payload structure for content entry events.
|
|
43
|
-
*/
|
|
44
|
-
export interface ContentEntryEventPayload {
|
|
45
|
-
slug: string;
|
|
46
|
-
contentTypeName: string;
|
|
47
|
-
status: string;
|
|
48
|
-
version: number;
|
|
49
|
-
locale?: string;
|
|
50
|
-
/** For duplicate events, the source entry ID */
|
|
51
|
-
sourceEntryId?: string;
|
|
52
|
-
/** For scheduled events, the scheduled publish time */
|
|
53
|
-
scheduledPublishAt?: number;
|
|
54
|
-
/** Change description if provided */
|
|
55
|
-
changeDescription?: string;
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Payload structure for content type events.
|
|
59
|
-
*/
|
|
60
|
-
export interface ContentTypeEventPayload {
|
|
61
|
-
name: string;
|
|
62
|
-
displayName: string;
|
|
63
|
-
fieldCount: number;
|
|
64
|
-
isActive: boolean;
|
|
65
|
-
/** For update events, list of changed field names */
|
|
66
|
-
changedFields?: string[];
|
|
67
|
-
}
|
|
68
|
-
/**
|
|
69
|
-
* Payload structure for media asset events.
|
|
70
|
-
*/
|
|
71
|
-
export interface MediaAssetEventPayload {
|
|
72
|
-
name: string;
|
|
73
|
-
mimeType: string;
|
|
74
|
-
type: string;
|
|
75
|
-
size: number;
|
|
76
|
-
parentId?: string;
|
|
77
|
-
path?: string;
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* Payload structure for media folder events.
|
|
81
|
-
*/
|
|
82
|
-
export interface MediaFolderEventPayload {
|
|
83
|
-
name: string;
|
|
84
|
-
path: string;
|
|
85
|
-
parentId?: string;
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* Union type for all event payloads.
|
|
89
|
-
*/
|
|
90
|
-
export type EventPayload = ContentEntryEventPayload | ContentTypeEventPayload | MediaAssetEventPayload | MediaFolderEventPayload;
|
|
91
|
-
/**
|
|
92
|
-
* Parameters for emitting an event.
|
|
93
|
-
*/
|
|
94
|
-
export interface EmitEventParams {
|
|
95
|
-
eventType: EventType;
|
|
96
|
-
resourceType: EventResourceType;
|
|
97
|
-
resourceId: string;
|
|
98
|
-
action: EventAction;
|
|
99
|
-
payload: EventPayload;
|
|
100
|
-
userId?: string;
|
|
101
|
-
correlationId?: string;
|
|
102
|
-
metadata?: Record<string, unknown>;
|
|
103
|
-
}
|
|
104
|
-
/**
|
|
105
|
-
* CMS Event document structure (as stored in the database).
|
|
106
|
-
*/
|
|
107
|
-
export interface CMSEvent {
|
|
108
|
-
_id: string;
|
|
109
|
-
_creationTime: number;
|
|
110
|
-
eventType: string;
|
|
111
|
-
resourceType: EventResourceType;
|
|
112
|
-
resourceId: string;
|
|
113
|
-
action: EventAction;
|
|
114
|
-
payload: EventPayload;
|
|
115
|
-
userId?: string;
|
|
116
|
-
processed: boolean;
|
|
117
|
-
processedAt?: number;
|
|
118
|
-
correlationId?: string;
|
|
119
|
-
metadata?: Record<string, unknown>;
|
|
120
|
-
}
|
|
121
|
-
/**
|
|
122
|
-
* Internal helper function to emit events within mutation handlers.
|
|
123
|
-
*
|
|
124
|
-
* This function inserts an event record into the cmsEvents table.
|
|
125
|
-
* It's designed to be called from within other mutations to ensure
|
|
126
|
-
* the event is part of the same atomic transaction.
|
|
127
|
-
*
|
|
128
|
-
* @param ctx - The mutation context from Convex
|
|
129
|
-
* @param params - Event parameters
|
|
130
|
-
* @returns The created event ID as a string
|
|
131
|
-
*/
|
|
132
|
-
export declare function emitEvent(ctx: MutationCtx, params: EmitEventParams): Promise<string>;
|
|
133
|
-
/**
|
|
134
|
-
* Query to list recent events with optional filtering.
|
|
135
|
-
*
|
|
136
|
-
* @param resourceType - Filter by resource type
|
|
137
|
-
* @param action - Filter by action
|
|
138
|
-
* @param processed - Filter by processed status
|
|
139
|
-
* @param limit - Maximum number of events to return
|
|
140
|
-
*
|
|
141
|
-
* @returns Array of recent events
|
|
142
|
-
*/
|
|
143
|
-
export declare const listEvents: import("convex/server").RegisteredQuery<"public", {
|
|
144
|
-
action?: "published" | "scheduled" | "created" | "updated" | "succeeded" | "failed" | "unpublished" | "deleted" | "restored" | "duplicated" | undefined;
|
|
145
|
-
limit?: number | undefined;
|
|
146
|
-
resourceType?: "custom" | "contentEntry" | "contentType" | "mediaAsset" | "mediaFolder" | undefined;
|
|
147
|
-
cursor?: string | undefined;
|
|
148
|
-
processed?: boolean | undefined;
|
|
149
|
-
}, Promise<{
|
|
150
|
-
events: {
|
|
151
|
-
_id: import("convex/values").GenericId<"cmsEvents">;
|
|
152
|
-
_creationTime: number;
|
|
153
|
-
metadata?: any;
|
|
154
|
-
userId?: string | undefined;
|
|
155
|
-
correlationId?: string | undefined;
|
|
156
|
-
processedAt?: number | undefined;
|
|
157
|
-
action: "published" | "scheduled" | "created" | "updated" | "succeeded" | "failed" | "unpublished" | "deleted" | "restored" | "duplicated";
|
|
158
|
-
eventType: string;
|
|
159
|
-
payload: any;
|
|
160
|
-
resourceId: string;
|
|
161
|
-
resourceType: "custom" | "contentEntry" | "contentType" | "mediaAsset" | "mediaFolder";
|
|
162
|
-
processed: boolean;
|
|
163
|
-
}[];
|
|
164
|
-
hasMore: boolean;
|
|
165
|
-
}>>;
|
|
166
|
-
/**
|
|
167
|
-
* Query to get events for a specific resource.
|
|
168
|
-
*
|
|
169
|
-
* @param resourceType - The resource type
|
|
170
|
-
* @param resourceId - The resource ID
|
|
171
|
-
* @param limit - Maximum number of events to return
|
|
172
|
-
*
|
|
173
|
-
* @returns Array of events for the resource
|
|
174
|
-
*/
|
|
175
|
-
export declare const getResourceEvents: import("convex/server").RegisteredQuery<"public", {
|
|
176
|
-
limit?: number | undefined;
|
|
177
|
-
resourceId: string;
|
|
178
|
-
resourceType: "custom" | "contentEntry" | "contentType" | "mediaAsset" | "mediaFolder";
|
|
179
|
-
}, Promise<{
|
|
180
|
-
_id: import("convex/values").GenericId<"cmsEvents">;
|
|
181
|
-
_creationTime: number;
|
|
182
|
-
metadata?: any;
|
|
183
|
-
userId?: string | undefined;
|
|
184
|
-
correlationId?: string | undefined;
|
|
185
|
-
processedAt?: number | undefined;
|
|
186
|
-
action: "published" | "scheduled" | "created" | "updated" | "succeeded" | "failed" | "unpublished" | "deleted" | "restored" | "duplicated";
|
|
187
|
-
eventType: string;
|
|
188
|
-
payload: any;
|
|
189
|
-
resourceId: string;
|
|
190
|
-
resourceType: "custom" | "contentEntry" | "contentType" | "mediaAsset" | "mediaFolder";
|
|
191
|
-
processed: boolean;
|
|
192
|
-
}[]>>;
|
|
193
|
-
/**
|
|
194
|
-
* Query to get unprocessed events for async processing.
|
|
195
|
-
*
|
|
196
|
-
* This is useful for building event processors that handle events
|
|
197
|
-
* asynchronously (e.g., sending webhooks, updating search indexes).
|
|
198
|
-
*
|
|
199
|
-
* @param limit - Maximum number of events to return
|
|
200
|
-
*
|
|
201
|
-
* @returns Array of unprocessed events
|
|
202
|
-
*/
|
|
203
|
-
export declare const getUnprocessedEvents: import("convex/server").RegisteredQuery<"public", {
|
|
204
|
-
limit?: number | undefined;
|
|
205
|
-
}, Promise<{
|
|
206
|
-
_id: import("convex/values").GenericId<"cmsEvents">;
|
|
207
|
-
_creationTime: number;
|
|
208
|
-
metadata?: any;
|
|
209
|
-
userId?: string | undefined;
|
|
210
|
-
correlationId?: string | undefined;
|
|
211
|
-
processedAt?: number | undefined;
|
|
212
|
-
action: "published" | "scheduled" | "created" | "updated" | "succeeded" | "failed" | "unpublished" | "deleted" | "restored" | "duplicated";
|
|
213
|
-
eventType: string;
|
|
214
|
-
payload: any;
|
|
215
|
-
resourceId: string;
|
|
216
|
-
resourceType: "custom" | "contentEntry" | "contentType" | "mediaAsset" | "mediaFolder";
|
|
217
|
-
processed: boolean;
|
|
218
|
-
}[]>>;
|
|
219
|
-
/**
|
|
220
|
-
* Mutation to mark events as processed.
|
|
221
|
-
*
|
|
222
|
-
* This should be called by event processors after successfully
|
|
223
|
-
* handling an event. This enables at-least-once processing semantics.
|
|
224
|
-
*
|
|
225
|
-
* @param eventIds - Array of event IDs to mark as processed
|
|
226
|
-
*
|
|
227
|
-
* @returns Count of events marked as processed
|
|
228
|
-
*/
|
|
229
|
-
export declare const markEventsProcessed: import("convex/server").RegisteredMutation<"public", {
|
|
230
|
-
eventIds: import("convex/values").GenericId<"cmsEvents">[];
|
|
231
|
-
}, Promise<{
|
|
232
|
-
processedCount: number;
|
|
233
|
-
}>>;
|
|
234
|
-
/**
|
|
235
|
-
* Internal mutation to emit an event from scheduled functions.
|
|
236
|
-
*
|
|
237
|
-
* This is used by internal scheduled functions that need to emit events
|
|
238
|
-
* but don't have direct access to the emitEvent helper.
|
|
239
|
-
*/
|
|
240
|
-
export declare const internalEmitEvent: import("convex/server").RegisteredMutation<"internal", {
|
|
241
|
-
metadata?: any;
|
|
242
|
-
userId?: string | undefined;
|
|
243
|
-
correlationId?: string | undefined;
|
|
244
|
-
action: "published" | "scheduled" | "created" | "updated" | "succeeded" | "failed" | "unpublished" | "deleted" | "restored" | "duplicated";
|
|
245
|
-
eventType: string;
|
|
246
|
-
payload: any;
|
|
247
|
-
resourceId: string;
|
|
248
|
-
resourceType: "custom" | "contentEntry" | "contentType" | "mediaAsset" | "mediaFolder";
|
|
249
|
-
}, Promise<import("convex/values").GenericId<"cmsEvents">>>;
|
|
250
|
-
/**
|
|
251
|
-
* Mutation to clean up old processed events.
|
|
252
|
-
*
|
|
253
|
-
* Events older than the retention period are permanently deleted.
|
|
254
|
-
* This helps prevent unbounded growth of the events table.
|
|
255
|
-
*
|
|
256
|
-
* @param retentionDays - Number of days to retain processed events (default: 30)
|
|
257
|
-
*
|
|
258
|
-
* @returns Count of events deleted
|
|
259
|
-
*/
|
|
260
|
-
export declare const cleanupOldEvents: import("convex/server").RegisteredMutation<"public", {
|
|
261
|
-
retentionDays?: number | undefined;
|
|
262
|
-
}, Promise<{
|
|
263
|
-
deletedCount: number;
|
|
264
|
-
}>>;
|
|
265
|
-
/**
|
|
266
|
-
* Helper function to build a content entry event type string.
|
|
267
|
-
*/
|
|
268
|
-
export declare function contentEntryEventType(action: EventAction): EventType;
|
|
269
|
-
/**
|
|
270
|
-
* Helper function to build a content type event type string.
|
|
271
|
-
*/
|
|
272
|
-
export declare function contentTypeEventType(action: EventAction): EventType;
|
|
273
|
-
/**
|
|
274
|
-
* Helper function to build a media asset event type string.
|
|
275
|
-
*/
|
|
276
|
-
export declare function mediaAssetEventType(action: EventAction): EventType;
|
|
277
|
-
/**
|
|
278
|
-
* Helper function to build a media folder event type string.
|
|
279
|
-
*/
|
|
280
|
-
export declare function mediaFolderEventType(action: EventAction): EventType;
|
|
281
|
-
/**
|
|
282
|
-
* Public mutation for consumer apps to emit custom application-level events.
|
|
283
|
-
*
|
|
284
|
-
* This allows consumer apps to use the CMS event bus for their own
|
|
285
|
-
* transactional data (e.g., order lifecycle events, user actions).
|
|
286
|
-
* Custom events flow through the existing webhook infrastructure,
|
|
287
|
-
* appear in the event log, and can be processed asynchronously.
|
|
288
|
-
*
|
|
289
|
-
* @example
|
|
290
|
-
* ```typescript
|
|
291
|
-
* // In consumer app mutation:
|
|
292
|
-
* await ctx.runMutation(components.cms.events.emitCustomEvent, {
|
|
293
|
-
* eventType: "order.created",
|
|
294
|
-
* resourceId: orderId,
|
|
295
|
-
* action: "created",
|
|
296
|
-
* payload: { orderNumber, total, customerName },
|
|
297
|
-
* });
|
|
298
|
-
* ```
|
|
299
|
-
*/
|
|
300
|
-
export declare const emitCustomEvent: import("convex/server").RegisteredMutation<"public", {
|
|
301
|
-
metadata?: any;
|
|
302
|
-
userId?: string | undefined;
|
|
303
|
-
correlationId?: string | undefined;
|
|
304
|
-
payload?: any;
|
|
305
|
-
action: "published" | "scheduled" | "created" | "updated" | "succeeded" | "failed" | "unpublished" | "deleted" | "restored" | "duplicated";
|
|
306
|
-
eventType: string;
|
|
307
|
-
resourceId: string;
|
|
308
|
-
}, Promise<import("convex/values").GenericId<"cmsEvents">>>;
|
|
309
|
-
//# sourceMappingURL=eventEmitter.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"eventEmitter.d.ts","sourceRoot":"","sources":["../../../../../src/component/eventEmitter.ts"],"names":[],"mappings":"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"}
|