@aphexcms/cms-core 9.6.0 → 9.7.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/api/documents.d.ts +28 -0
- package/dist/api/documents.d.ts.map +1 -1
- package/dist/api/documents.js +18 -0
- package/dist/api/schemas/documents.d.ts +19 -0
- package/dist/api/schemas/documents.d.ts.map +1 -1
- package/dist/api/schemas/documents.js +18 -0
- package/dist/client/ui.d.ts +1 -0
- package/dist/client/ui.d.ts.map +1 -1
- package/dist/client/ui.js +2 -0
- package/dist/components/admin/ActivityView.svelte +227 -0
- package/dist/components/admin/ActivityView.svelte.d.ts +4 -0
- package/dist/components/admin/ActivityView.svelte.d.ts.map +1 -0
- package/dist/components/admin/DocumentEditor.svelte +196 -10
- package/dist/components/admin/DocumentEditor.svelte.d.ts.map +1 -1
- package/dist/components/admin/ScheduleDialog.svelte +174 -0
- package/dist/components/admin/ScheduleDialog.svelte.d.ts +20 -0
- package/dist/components/admin/ScheduleDialog.svelte.d.ts.map +1 -0
- package/dist/components/layout/OrganizationSwitcher.svelte +3 -3
- package/dist/components/layout/sidebar/NavUser.svelte +5 -5
- package/dist/db/interfaces/events.d.ts +55 -0
- package/dist/db/interfaces/events.d.ts.map +1 -0
- package/dist/db/interfaces/events.js +1 -0
- package/dist/db/interfaces/index.d.ts +10 -2
- package/dist/db/interfaces/index.d.ts.map +1 -1
- package/dist/db/interfaces/plugin-storage.d.ts +39 -0
- package/dist/db/interfaces/plugin-storage.d.ts.map +1 -0
- package/dist/db/interfaces/plugin-storage.js +1 -0
- package/dist/events/catalog.d.ts +8 -0
- package/dist/events/catalog.d.ts.map +1 -0
- package/dist/events/catalog.js +11 -0
- package/dist/events/consumer.d.ts +79 -0
- package/dist/events/consumer.d.ts.map +1 -0
- package/dist/events/consumer.js +76 -0
- package/dist/events/define-event.d.ts +17 -0
- package/dist/events/define-event.d.ts.map +1 -0
- package/dist/events/define-event.js +7 -0
- package/dist/events/emit.d.ts +11 -0
- package/dist/events/emit.d.ts.map +1 -0
- package/dist/events/emit.js +20 -0
- package/dist/events/index.d.ts +4 -0
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/index.js +3 -0
- package/dist/field-validation/rule.d.ts.map +1 -1
- package/dist/field-validation/rule.js +15 -0
- package/dist/forms/define-form.d.ts +25 -0
- package/dist/forms/define-form.d.ts.map +1 -0
- package/dist/forms/define-form.js +22 -0
- package/dist/forms/index.d.ts +4 -0
- package/dist/forms/index.d.ts.map +1 -0
- package/dist/forms/index.js +5 -0
- package/dist/forms/types.d.ts +49 -0
- package/dist/forms/types.d.ts.map +1 -0
- package/dist/forms/types.js +1 -0
- package/dist/forms/validate.d.ts +9 -0
- package/dist/forms/validate.d.ts.map +1 -0
- package/dist/forms/validate.js +18 -0
- package/dist/hooks.d.ts.map +1 -1
- package/dist/hooks.js +15 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -0
- package/dist/jobs/document-jobs.d.ts +27 -0
- package/dist/jobs/document-jobs.d.ts.map +1 -0
- package/dist/jobs/document-jobs.js +42 -0
- package/dist/jobs/embedded-runner.d.ts +25 -0
- package/dist/jobs/embedded-runner.d.ts.map +1 -0
- package/dist/jobs/embedded-runner.js +46 -0
- package/dist/jobs/index.d.ts +7 -0
- package/dist/jobs/index.d.ts.map +1 -0
- package/dist/jobs/index.js +8 -0
- package/dist/jobs/relay.d.ts +27 -0
- package/dist/jobs/relay.d.ts.map +1 -0
- package/dist/jobs/relay.js +60 -0
- package/dist/jobs/run-batch.d.ts +52 -0
- package/dist/jobs/run-batch.d.ts.map +1 -0
- package/dist/jobs/run-batch.js +61 -0
- package/dist/jobs/run-due-jobs.d.ts +30 -0
- package/dist/jobs/run-due-jobs.d.ts.map +1 -0
- package/dist/jobs/run-due-jobs.js +69 -0
- package/dist/jobs/types.d.ts +18 -0
- package/dist/jobs/types.d.ts.map +1 -0
- package/dist/jobs/types.js +1 -0
- package/dist/lib/api/documents.d.ts +28 -0
- package/dist/lib/api/documents.d.ts.map +1 -1
- package/dist/lib/api/documents.js +18 -0
- package/dist/lib/api/documents.js.map +1 -1
- package/dist/lib/api/schemas/documents.d.ts +19 -0
- package/dist/lib/api/schemas/documents.d.ts.map +1 -1
- package/dist/lib/api/schemas/documents.js +18 -0
- package/dist/lib/api/schemas/documents.js.map +1 -1
- package/dist/lib/client/ui.d.ts +1 -0
- package/dist/lib/client/ui.d.ts.map +1 -1
- package/dist/lib/client/ui.js +2 -0
- package/dist/lib/client/ui.js.map +1 -1
- package/dist/lib/db/interfaces/events.d.ts +55 -0
- package/dist/lib/db/interfaces/events.d.ts.map +1 -0
- package/dist/lib/db/interfaces/events.js +2 -0
- package/dist/lib/db/interfaces/events.js.map +1 -0
- package/dist/lib/db/interfaces/index.d.ts +10 -2
- package/dist/lib/db/interfaces/index.d.ts.map +1 -1
- package/dist/lib/db/interfaces/plugin-storage.d.ts +39 -0
- package/dist/lib/db/interfaces/plugin-storage.d.ts.map +1 -0
- package/dist/lib/db/interfaces/plugin-storage.js +2 -0
- package/dist/lib/db/interfaces/plugin-storage.js.map +1 -0
- package/dist/lib/events/catalog.d.ts +8 -0
- package/dist/lib/events/catalog.d.ts.map +1 -0
- package/dist/lib/events/catalog.js +12 -0
- package/dist/lib/events/catalog.js.map +1 -0
- package/dist/lib/events/consumer.d.ts +79 -0
- package/dist/lib/events/consumer.d.ts.map +1 -0
- package/dist/lib/events/consumer.js +77 -0
- package/dist/lib/events/consumer.js.map +1 -0
- package/dist/lib/events/define-event.d.ts +17 -0
- package/dist/lib/events/define-event.d.ts.map +1 -0
- package/dist/lib/events/define-event.js +8 -0
- package/dist/lib/events/define-event.js.map +1 -0
- package/dist/lib/events/emit.d.ts +11 -0
- package/dist/lib/events/emit.d.ts.map +1 -0
- package/dist/lib/events/emit.js +21 -0
- package/dist/lib/events/emit.js.map +1 -0
- package/dist/lib/events/index.d.ts +4 -0
- package/dist/lib/events/index.d.ts.map +1 -0
- package/dist/lib/events/index.js +4 -0
- package/dist/lib/events/index.js.map +1 -0
- package/dist/lib/field-validation/rule.d.ts.map +1 -1
- package/dist/lib/field-validation/rule.js +15 -0
- package/dist/lib/field-validation/rule.js.map +1 -1
- package/dist/lib/forms/define-form.d.ts +25 -0
- package/dist/lib/forms/define-form.d.ts.map +1 -0
- package/dist/lib/forms/define-form.js +23 -0
- package/dist/lib/forms/define-form.js.map +1 -0
- package/dist/lib/forms/index.d.ts +4 -0
- package/dist/lib/forms/index.d.ts.map +1 -0
- package/dist/lib/forms/index.js +6 -0
- package/dist/lib/forms/index.js.map +1 -0
- package/dist/lib/forms/types.d.ts +49 -0
- package/dist/lib/forms/types.d.ts.map +1 -0
- package/dist/lib/forms/types.js +2 -0
- package/dist/lib/forms/types.js.map +1 -0
- package/dist/lib/forms/validate.d.ts +9 -0
- package/dist/lib/forms/validate.d.ts.map +1 -0
- package/dist/lib/forms/validate.js +19 -0
- package/dist/lib/forms/validate.js.map +1 -0
- package/dist/lib/hooks.d.ts.map +1 -1
- package/dist/lib/hooks.js +15 -0
- package/dist/lib/hooks.js.map +1 -1
- package/dist/lib/index.d.ts +2 -0
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +6 -0
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/jobs/document-jobs.d.ts +27 -0
- package/dist/lib/jobs/document-jobs.d.ts.map +1 -0
- package/dist/lib/jobs/document-jobs.js +43 -0
- package/dist/lib/jobs/document-jobs.js.map +1 -0
- package/dist/lib/jobs/embedded-runner.d.ts +25 -0
- package/dist/lib/jobs/embedded-runner.d.ts.map +1 -0
- package/dist/lib/jobs/embedded-runner.js +47 -0
- package/dist/lib/jobs/embedded-runner.js.map +1 -0
- package/dist/lib/jobs/index.d.ts +7 -0
- package/dist/lib/jobs/index.d.ts.map +1 -0
- package/dist/lib/jobs/index.js +9 -0
- package/dist/lib/jobs/index.js.map +1 -0
- package/dist/lib/jobs/relay.d.ts +27 -0
- package/dist/lib/jobs/relay.d.ts.map +1 -0
- package/dist/lib/jobs/relay.js +61 -0
- package/dist/lib/jobs/relay.js.map +1 -0
- package/dist/lib/jobs/run-batch.d.ts +52 -0
- package/dist/lib/jobs/run-batch.d.ts.map +1 -0
- package/dist/lib/jobs/run-batch.js +62 -0
- package/dist/lib/jobs/run-batch.js.map +1 -0
- package/dist/lib/jobs/run-due-jobs.d.ts +30 -0
- package/dist/lib/jobs/run-due-jobs.d.ts.map +1 -0
- package/dist/lib/jobs/run-due-jobs.js +70 -0
- package/dist/lib/jobs/run-due-jobs.js.map +1 -0
- package/dist/lib/jobs/types.d.ts +18 -0
- package/dist/lib/jobs/types.d.ts.map +1 -0
- package/dist/lib/jobs/types.js +2 -0
- package/dist/lib/jobs/types.js.map +1 -0
- package/dist/lib/local-api/collection-api.d.ts +42 -0
- package/dist/lib/local-api/collection-api.d.ts.map +1 -1
- package/dist/lib/local-api/collection-api.js +179 -20
- package/dist/lib/local-api/collection-api.js.map +1 -1
- package/dist/lib/plugins/resolver.d.ts +12 -1
- package/dist/lib/plugins/resolver.d.ts.map +1 -1
- package/dist/lib/plugins/resolver.js +4 -1
- package/dist/lib/plugins/resolver.js.map +1 -1
- package/dist/lib/plugins/types.d.ts +47 -2
- package/dist/lib/plugins/types.d.ts.map +1 -1
- package/dist/lib/plugins/types.js.map +1 -1
- package/dist/lib/server/api/index.d.ts.map +1 -1
- package/dist/lib/server/api/index.js +8 -0
- package/dist/lib/server/api/index.js.map +1 -1
- package/dist/lib/server/api/routes/documents-publish.d.ts.map +1 -1
- package/dist/lib/server/api/routes/documents-publish.js +110 -0
- package/dist/lib/server/api/routes/documents-publish.js.map +1 -1
- package/dist/lib/server/api/routes/jobs.d.ts +4 -0
- package/dist/lib/server/api/routes/jobs.d.ts.map +1 -0
- package/dist/lib/server/api/routes/jobs.js +93 -0
- package/dist/lib/server/api/routes/jobs.js.map +1 -0
- package/dist/lib/server/api/routes/workers-run.d.ts +4 -0
- package/dist/lib/server/api/routes/workers-run.d.ts.map +1 -0
- package/dist/lib/server/api/routes/workers-run.js +41 -0
- package/dist/lib/server/api/routes/workers-run.js.map +1 -0
- package/dist/lib/server/index.d.ts +1 -0
- package/dist/lib/server/index.d.ts.map +1 -1
- package/dist/lib/server/index.js +2 -0
- package/dist/lib/server/index.js.map +1 -1
- package/dist/lib/services/version-service.d.ts +16 -0
- package/dist/lib/services/version-service.d.ts.map +1 -1
- package/dist/lib/services/version-service.js +68 -66
- package/dist/lib/services/version-service.js.map +1 -1
- package/dist/lib/types/config.d.ts +43 -0
- package/dist/lib/types/config.d.ts.map +1 -1
- package/dist/lib/types/events.d.ts +134 -0
- package/dist/lib/types/events.d.ts.map +1 -0
- package/dist/lib/types/events.js +4 -0
- package/dist/lib/types/events.js.map +1 -0
- package/dist/lib/types/index.d.ts +1 -0
- package/dist/lib/types/index.d.ts.map +1 -1
- package/dist/lib/types/index.js +1 -0
- package/dist/lib/types/index.js.map +1 -1
- package/dist/lib/utils/index.d.ts +1 -1
- package/dist/lib/utils/index.d.ts.map +1 -1
- package/dist/lib/utils/index.js.map +1 -1
- package/dist/local-api/collection-api.d.ts +42 -0
- package/dist/local-api/collection-api.d.ts.map +1 -1
- package/dist/local-api/collection-api.js +179 -20
- package/dist/plugins/resolver.d.ts +12 -1
- package/dist/plugins/resolver.d.ts.map +1 -1
- package/dist/plugins/resolver.js +4 -1
- package/dist/plugins/types.d.ts +47 -2
- package/dist/plugins/types.d.ts.map +1 -1
- package/dist/server/api/index.d.ts.map +1 -1
- package/dist/server/api/index.js +8 -0
- package/dist/server/api/routes/documents-publish.d.ts.map +1 -1
- package/dist/server/api/routes/documents-publish.js +110 -0
- package/dist/server/api/routes/jobs.d.ts +4 -0
- package/dist/server/api/routes/jobs.d.ts.map +1 -0
- package/dist/server/api/routes/jobs.js +92 -0
- package/dist/server/api/routes/workers-run.d.ts +4 -0
- package/dist/server/api/routes/workers-run.d.ts.map +1 -0
- package/dist/server/api/routes/workers-run.js +40 -0
- package/dist/server/index.d.ts +1 -0
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +2 -0
- package/dist/services/version-service.d.ts +16 -0
- package/dist/services/version-service.d.ts.map +1 -1
- package/dist/services/version-service.js +68 -66
- package/dist/types/config.d.ts +43 -0
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/events.d.ts +134 -0
- package/dist/types/events.d.ts.map +1 -0
- package/dist/types/events.js +3 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +1 -0
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/package.json +2 -1
|
@@ -306,6 +306,23 @@ export declare const restoreVersionResponse: z.ZodObject<{
|
|
|
306
306
|
}, z.core.$loose>;
|
|
307
307
|
message: z.ZodOptional<z.ZodString>;
|
|
308
308
|
}, z.core.$strip>;
|
|
309
|
+
export declare const scheduleDocumentRequest: z.ZodObject<{
|
|
310
|
+
action: z.ZodEnum<{
|
|
311
|
+
publish: "publish";
|
|
312
|
+
unpublish: "unpublish";
|
|
313
|
+
}>;
|
|
314
|
+
runAt: z.ZodString;
|
|
315
|
+
}, z.core.$strip>;
|
|
316
|
+
export declare const scheduleDocumentResponse: z.ZodObject<{
|
|
317
|
+
success: z.ZodLiteral<true>;
|
|
318
|
+
data: z.ZodObject<{
|
|
319
|
+
jobId: z.ZodString;
|
|
320
|
+
type: z.ZodString;
|
|
321
|
+
runAt: z.ZodString;
|
|
322
|
+
status: z.ZodString;
|
|
323
|
+
}, z.core.$strip>;
|
|
324
|
+
message: z.ZodOptional<z.ZodString>;
|
|
325
|
+
}, z.core.$strip>;
|
|
309
326
|
export type DocumentDTO = z.infer<typeof documentSchema>;
|
|
310
327
|
export type PaginationMeta = z.infer<typeof paginationMetaSchema>;
|
|
311
328
|
export type ListDocumentsQuery = z.input<typeof listDocumentsQuery>;
|
|
@@ -318,6 +335,8 @@ export type UpdateDocumentResponse = z.infer<typeof updateDocumentResponse>;
|
|
|
318
335
|
export type DeleteDocumentResponse = z.infer<typeof deleteDocumentResponse>;
|
|
319
336
|
export type PublishDocumentResponse = z.infer<typeof publishDocumentResponse>;
|
|
320
337
|
export type UnpublishDocumentResponse = z.infer<typeof unpublishDocumentResponse>;
|
|
338
|
+
export type ScheduleDocumentRequest = z.infer<typeof scheduleDocumentRequest>;
|
|
339
|
+
export type ScheduleDocumentResponse = z.infer<typeof scheduleDocumentResponse>;
|
|
321
340
|
export type DocumentVersion = z.infer<typeof documentVersionSchema>;
|
|
322
341
|
export type ListVersionsQuery = z.input<typeof listVersionsQuery>;
|
|
323
342
|
export type ListVersionsResponse = z.infer<typeof listVersionsResponse>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"documents.d.ts","sourceRoot":"","sources":["../../../../src/lib/api/schemas/documents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,kBAAkB;;;;;;;;;;;iBAShB,CAAC;AAEhB,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;iBAQZ,CAAC;AAEhB,eAAO,MAAM,oBAAoB;;;;;;;iBAO/B,CAAC;AAIH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;iBAc7B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAIhC,CAAC;AAOH,eAAO,MAAM,sBAAsB;;iBAOjC,CAAC;AAIH,eAAO,MAAM,qBAAqB;;;;;iBAS/B,CAAC;AAEJ,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;iBAIjC,CAAC;AAIH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;iBAG9B,CAAC;AAIH,eAAO,MAAM,qBAAqB;;;;iBAQ/B,CAAC;AAEJ,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;iBAIjC,CAAC;AAIH,eAAO,MAAM,sBAAsB;;;iBAGjC,CAAC;AAIH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;iBAIlC,CAAC;AAIH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;iBAIpC,CAAC;AAOH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;iBAYhC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAI1E,eAAO,MAAM,iBAAiB;;;iBAG5B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;iBAYnB,CAAC;AAEhB,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;iBAI/B,CAAC;AAIH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;iBAG7B,CAAC;AAIH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;iBAIjC,CAAC;AAIH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACzD,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AACpE,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAE1E,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAC1E,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAE5E,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEtE,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAC1E,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAE5E,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAC5E,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAC9E,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"documents.d.ts","sourceRoot":"","sources":["../../../../src/lib/api/schemas/documents.ts"],"names":[],"mappings":"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"}
|
|
@@ -165,4 +165,22 @@ export const restoreVersionResponse = z.object({
|
|
|
165
165
|
data: documentSchema,
|
|
166
166
|
message: z.string().optional()
|
|
167
167
|
});
|
|
168
|
+
// ---------- POST /documents/:id/schedule ----------
|
|
169
|
+
export const scheduleDocumentRequest = z.object({
|
|
170
|
+
/** Which action to run at `runAt`. */
|
|
171
|
+
action: z.enum(['publish', 'unpublish']),
|
|
172
|
+
/** ISO-8601 timestamp for when the action should run. */
|
|
173
|
+
runAt: z.string().datetime()
|
|
174
|
+
});
|
|
175
|
+
export const scheduleDocumentResponse = z.object({
|
|
176
|
+
success: z.literal(true),
|
|
177
|
+
// The scheduled job's identity + when it will run (job payload is identifiers only).
|
|
178
|
+
data: z.object({
|
|
179
|
+
jobId: z.string(),
|
|
180
|
+
type: z.string(),
|
|
181
|
+
runAt: z.string(),
|
|
182
|
+
status: z.string()
|
|
183
|
+
}),
|
|
184
|
+
message: z.string().optional()
|
|
185
|
+
});
|
|
168
186
|
//# sourceMappingURL=documents.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"documents.js","sourceRoot":"","sources":["../../../../src/lib/api/schemas/documents.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"documents.js","sourceRoot":"","sources":["../../../../src/lib/api/schemas/documents.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/client/ui.d.ts
CHANGED
|
@@ -14,6 +14,7 @@ export { setBlockPreviews, useBlockPreviews, type BlockPreviewProps, type BlockP
|
|
|
14
14
|
export { default as Sidebar } from '../components/layout/Sidebar.svelte';
|
|
15
15
|
export { default as PermissionsDebug } from '../components/admin/PermissionsDebug.svelte';
|
|
16
16
|
export { default as PluginSettingsPanel } from '../components/admin/PluginSettingsPanel.svelte';
|
|
17
|
+
export { default as ActivityView } from '../components/admin/ActivityView.svelte';
|
|
17
18
|
export * from '../utils/index.js';
|
|
18
19
|
export * from '../api/index.js';
|
|
19
20
|
export type { ApiResponse } from '../api/index.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../../src/lib/client/ui.ts"],"names":[],"mappings":"AAgBA,cAAc,gBAAgB,CAAC;AAC/B,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGlG,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAG1C,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAGjF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG9E,OAAO,EACN,UAAU,EACV,aAAa,EACb,aAAa,EACb,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAGhD,OAAO,EACN,kBAAkB,EAClB,kBAAkB,EAClB,KAAK,oBAAoB,EACzB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,EACN,cAAc,EACd,WAAW,EACX,WAAW,EACX,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,UAAU,EACf,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACN,qBAAqB,EACrB,cAAc,EACd,KAAK,kBAAkB,EACvB,MAAM,+BAA+B,CAAC;AAGvC,cAAc,uBAAuB,CAAC;AAItC,OAAO,EACN,gBAAgB,EAChB,gBAAgB,EAChB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,6CAA6C,CAAC;AAE1F,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;
|
|
1
|
+
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../../src/lib/client/ui.ts"],"names":[],"mappings":"AAgBA,cAAc,gBAAgB,CAAC;AAC/B,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGlG,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAG1C,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAGjF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG9E,OAAO,EACN,UAAU,EACV,aAAa,EACb,aAAa,EACb,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAGhD,OAAO,EACN,kBAAkB,EAClB,kBAAkB,EAClB,KAAK,oBAAoB,EACzB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,EACN,cAAc,EACd,WAAW,EACX,WAAW,EACX,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,UAAU,EACf,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACN,qBAAqB,EACrB,cAAc,EACd,KAAK,kBAAkB,EACvB,MAAM,+BAA+B,CAAC;AAGvC,cAAc,uBAAuB,CAAC;AAItC,OAAO,EACN,gBAAgB,EAChB,gBAAgB,EAChB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,6CAA6C,CAAC;AAE1F,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AAEhG,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,yCAAyC,CAAC;AAGlF,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAGtC,OAAO,EACN,aAAa,EACb,KAAK,oBAAoB,EACzB,MAAM,0DAA0D,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,6DAA6D,CAAC;AAG3G,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC"}
|
package/dist/lib/client/ui.js
CHANGED
|
@@ -39,6 +39,8 @@ export { default as Sidebar } from '../components/layout/Sidebar.svelte';
|
|
|
39
39
|
export { default as PermissionsDebug } from '../components/admin/PermissionsDebug.svelte';
|
|
40
40
|
// Plugin settings panel — renders its own inputs, does not pull the field registry.
|
|
41
41
|
export { default as PluginSettingsPanel } from '../components/admin/PluginSettingsPanel.svelte';
|
|
42
|
+
// Job/event history (read-only observability). Light — plain fetch + tables, no field editor.
|
|
43
|
+
export { default as ActivityView } from '../components/admin/ActivityView.svelte';
|
|
42
44
|
// Browser-safe utilities + API client
|
|
43
45
|
export * from '../utils/index.js';
|
|
44
46
|
export * from '../api/index.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.js","sourceRoot":"","sources":["../../../src/lib/client/ui.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,qCAAqC;AACrC,EAAE;AACF,8EAA8E;AAC9E,+EAA+E;AAC/E,8EAA8E;AAC9E,+EAA+E;AAC/E,8EAA8E;AAC9E,0DAA0D;AAC1D,EAAE;AACF,8EAA8E;AAC9E,8EAA8E;AAC9E,gFAAgF;AAChF,0EAA0E;AAE1E,uBAAuB;AACvB,cAAc,gBAAgB,CAAC;AAG/B,2DAA2D;AAC3D,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAE1C,qCAAqC;AACrC,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAEjF,iBAAiB;AACjB,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE9E,sCAAsC;AACtC,OAAO,EACN,UAAU,EACV,aAAa,EACb,aAAa,EAGb,MAAM,uBAAuB,CAAC;AAG/B,kFAAkF;AAClF,OAAO,EACN,kBAAkB,EAClB,kBAAkB,EAElB,MAAM,kCAAkC,CAAC;AAE1C,uBAAuB;AACvB,OAAO,EACN,cAAc,EACd,WAAW,EACX,WAAW,EAIX,MAAM,qBAAqB,CAAC;AAE7B,mDAAmD;AACnD,OAAO,EACN,qBAAqB,EACrB,cAAc,EAEd,MAAM,+BAA+B,CAAC;AAEvC,mBAAmB;AACnB,cAAc,uBAAuB,CAAC;AAEtC,+EAA+E;AAC/E,mDAAmD;AACnD,OAAO,EACN,gBAAgB,EAChB,gBAAgB,EAGhB,MAAM,gCAAgC,CAAC;AAExC,eAAe;AACf,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,6CAA6C,CAAC;AAC1F,oFAAoF;AACpF,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;
|
|
1
|
+
{"version":3,"file":"ui.js","sourceRoot":"","sources":["../../../src/lib/client/ui.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,qCAAqC;AACrC,EAAE;AACF,8EAA8E;AAC9E,+EAA+E;AAC/E,8EAA8E;AAC9E,+EAA+E;AAC/E,8EAA8E;AAC9E,0DAA0D;AAC1D,EAAE;AACF,8EAA8E;AAC9E,8EAA8E;AAC9E,gFAAgF;AAChF,0EAA0E;AAE1E,uBAAuB;AACvB,cAAc,gBAAgB,CAAC;AAG/B,2DAA2D;AAC3D,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAE1C,qCAAqC;AACrC,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAEjF,iBAAiB;AACjB,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE9E,sCAAsC;AACtC,OAAO,EACN,UAAU,EACV,aAAa,EACb,aAAa,EAGb,MAAM,uBAAuB,CAAC;AAG/B,kFAAkF;AAClF,OAAO,EACN,kBAAkB,EAClB,kBAAkB,EAElB,MAAM,kCAAkC,CAAC;AAE1C,uBAAuB;AACvB,OAAO,EACN,cAAc,EACd,WAAW,EACX,WAAW,EAIX,MAAM,qBAAqB,CAAC;AAE7B,mDAAmD;AACnD,OAAO,EACN,qBAAqB,EACrB,cAAc,EAEd,MAAM,+BAA+B,CAAC;AAEvC,mBAAmB;AACnB,cAAc,uBAAuB,CAAC;AAEtC,+EAA+E;AAC/E,mDAAmD;AACnD,OAAO,EACN,gBAAgB,EAChB,gBAAgB,EAGhB,MAAM,gCAAgC,CAAC;AAExC,eAAe;AACf,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,6CAA6C,CAAC;AAC1F,oFAAoF;AACpF,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AAChG,8FAA8F;AAC9F,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,yCAAyC,CAAC;AAElF,sCAAsC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAG7B,sBAAsB;AACtB,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEtC,yCAAyC;AACzC,OAAO,EACN,aAAa,EAEb,MAAM,0DAA0D,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,6DAA6D,CAAC;AAE3G,oCAAoC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import type { DomainEvent, AppendEventInput, Job, ScheduleJobInput, ClaimJobsOptions, ListEventsOptions, ListJobsOptions, OutboxRow, ListUnprocessedOutboxOptions, Page } from '../../types/events.js';
|
|
2
|
+
/**
|
|
3
|
+
* The durable spine: an append-only domain-event log plus a DB-backed job queue.
|
|
4
|
+
* All rows are organization-scoped. (The event-log read API — `listEvents` — lands
|
|
5
|
+
* with the admin history view in a later slice; there's no reader for it yet.)
|
|
6
|
+
*/
|
|
7
|
+
export interface EventJobAdapter {
|
|
8
|
+
/**
|
|
9
|
+
* Append an immutable domain event AND its outbox worklist row, in one insert path.
|
|
10
|
+
* Call on the tx handle (inside `withTransaction`) so both commit atomically with the
|
|
11
|
+
* state change that caused them — the transactional-outbox guarantee. The outbox row is
|
|
12
|
+
* always written (even with no subscribers today): the relay decides fan-out at run time,
|
|
13
|
+
* so emission can't know whether anyone is listening.
|
|
14
|
+
*/
|
|
15
|
+
appendEvent(input: AppendEventInput): Promise<DomainEvent>;
|
|
16
|
+
/** Read a single event by id (org-scoped). */
|
|
17
|
+
getEvent(organizationId: string, id: string): Promise<DomainEvent | null>;
|
|
18
|
+
/** List domain events for the org, newest first (read-only history / observability). */
|
|
19
|
+
listEvents(options: ListEventsOptions): Promise<Page<DomainEvent>>;
|
|
20
|
+
/**
|
|
21
|
+
* Read pending outbox rows (`processedAt IS NULL`), oldest first — the relay's input.
|
|
22
|
+
* No claim/lease: fan-out is idempotent (per event×consumer job key), so concurrent
|
|
23
|
+
* relays are safe. Omit `organizationId` to read across all orgs (worker context).
|
|
24
|
+
*/
|
|
25
|
+
listUnprocessedOutbox(options: ListUnprocessedOutboxOptions): Promise<OutboxRow[]>;
|
|
26
|
+
/** Stamp `processedAt` once an outbox row has been fanned out to every subscriber. */
|
|
27
|
+
markOutboxProcessed(organizationId: string, id: string): Promise<void>;
|
|
28
|
+
/** Schedule a job. Idempotent when `idempotencyKey` is set: a duplicate key returns the existing job. */
|
|
29
|
+
scheduleJob(input: ScheduleJobInput): Promise<Job>;
|
|
30
|
+
/**
|
|
31
|
+
* Atomically claim up to `limit` due jobs with a lease, incrementing `attempts`.
|
|
32
|
+
* Claims jobs that are `pending` and due, or `leased` with an expired lease (crash recovery).
|
|
33
|
+
*/
|
|
34
|
+
claimDueJobs(options: ClaimJobsOptions): Promise<Job[]>;
|
|
35
|
+
/** Mark a claimed job completed. */
|
|
36
|
+
completeJob(organizationId: string, id: string): Promise<void>;
|
|
37
|
+
/**
|
|
38
|
+
* Reschedule a claimed job for a later retry (backoff). Status → `pending`, `runAt`
|
|
39
|
+
* moves forward, the error is recorded, the lease is cleared. The backoff/max-attempts
|
|
40
|
+
* *policy* lives in the core runner; this is just the state transition.
|
|
41
|
+
*/
|
|
42
|
+
retryJob(organizationId: string, id: string, options: {
|
|
43
|
+
runAt: Date;
|
|
44
|
+
error: string;
|
|
45
|
+
}): Promise<void>;
|
|
46
|
+
/** Dead-letter a claimed job: status → `failed`, record the error, clear the lease. */
|
|
47
|
+
failJob(organizationId: string, id: string, options: {
|
|
48
|
+
error: string;
|
|
49
|
+
}): Promise<void>;
|
|
50
|
+
/** Cancel a job (e.g. a scheduled publish the user called off): status → `cancelled`, clear the lease. */
|
|
51
|
+
cancelJob(organizationId: string, id: string): Promise<void>;
|
|
52
|
+
/** List jobs for the org, newest first (read-only history / observability). */
|
|
53
|
+
listJobs(options: ListJobsOptions): Promise<Page<Job>>;
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../src/lib/db/interfaces/events.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACX,WAAW,EACX,gBAAgB,EAChB,GAAG,EACH,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,SAAS,EACT,4BAA4B,EAC5B,IAAI,EACJ,MAAM,oBAAoB,CAAC;AAE5B;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAE/B;;;;;;OAMG;IACH,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC3D,8CAA8C;IAC9C,QAAQ,CAAC,cAAc,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAC1E,wFAAwF;IACxF,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;IAGnE;;;;OAIG;IACH,qBAAqB,CAAC,OAAO,EAAE,4BAA4B,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IACnF,sFAAsF;IACtF,mBAAmB,CAAC,cAAc,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAGvE,yGAAyG;IACzG,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACnD;;;OAGG;IACH,YAAY,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACxD,oCAAoC;IACpC,WAAW,CAAC,cAAc,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D;;;;OAIG;IACH,QAAQ,CACP,cAAc,EAAE,MAAM,EACtB,EAAE,EAAE,MAAM,EACV,OAAO,EAAE;QAAE,KAAK,EAAE,IAAI,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GACrC,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,uFAAuF;IACvF,OAAO,CAAC,cAAc,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvF,0GAA0G;IAC1G,SAAS,CAAC,cAAc,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,+EAA+E;IAC/E,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;CACvD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../../src/lib/db/interfaces/events.ts"],"names":[],"mappings":""}
|
|
@@ -7,6 +7,8 @@ import type { InstanceAdapter } from './instance.js';
|
|
|
7
7
|
import type { RolesAdapter } from './role.js';
|
|
8
8
|
import type { ReferenceAdapter } from './reference.js';
|
|
9
9
|
import type { PluginSettingsAdapter } from './plugin-settings.js';
|
|
10
|
+
import type { EventJobAdapter } from './events.js';
|
|
11
|
+
import type { PluginStorageAdapter } from './plugin-storage.js';
|
|
10
12
|
export type { DocumentAdapter, DocumentFilters, CreateDocumentData, UpdateDocumentData } from './document.js';
|
|
11
13
|
export type { AssetAdapter, CreateAssetData, UpdateAssetData } from './asset.js';
|
|
12
14
|
export type { UserProfileAdapter, NewUserProfileData } from './user.js';
|
|
@@ -16,11 +18,13 @@ export type { InstanceAdapter, InstanceSettings } from './instance.js';
|
|
|
16
18
|
export type { RolesAdapter } from './role.js';
|
|
17
19
|
export type { ReferenceAdapter, BackReferenceRow, BackReferenceLookup } from './reference.js';
|
|
18
20
|
export type { PluginSettingsAdapter, PluginSettingsRow } from './plugin-settings.js';
|
|
21
|
+
export type { EventJobAdapter } from './events.js';
|
|
22
|
+
export type { PluginStorageAdapter, PluginStorageRecord, CreatePluginRecordInput, ListPluginRecordsOptions } from './plugin-storage.js';
|
|
19
23
|
/**
|
|
20
24
|
* Combined database adapter interface
|
|
21
25
|
* Extends all entity-specific adapters for full database functionality
|
|
22
26
|
*/
|
|
23
|
-
export interface DatabaseAdapter extends DocumentAdapter, AssetAdapter, UserProfileAdapter, SchemaAdapter, OrganizationAdapter, InstanceAdapter, RolesAdapter, ReferenceAdapter, PluginSettingsAdapter {
|
|
27
|
+
export interface DatabaseAdapter extends DocumentAdapter, AssetAdapter, UserProfileAdapter, SchemaAdapter, OrganizationAdapter, InstanceAdapter, RolesAdapter, ReferenceAdapter, PluginSettingsAdapter, EventJobAdapter, PluginStorageAdapter {
|
|
24
28
|
connect?(): Promise<void>;
|
|
25
29
|
disconnect?(): Promise<void>;
|
|
26
30
|
isHealthy(): Promise<boolean>;
|
|
@@ -46,8 +50,12 @@ export interface DatabaseAdapter extends DocumentAdapter, AssetAdapter, UserProf
|
|
|
46
50
|
* Execute multiple adapter operations in a single atomic transaction.
|
|
47
51
|
* The callback receives a transactional version of the adapter — all operations
|
|
48
52
|
* within it share the same DB transaction and commit/rollback together.
|
|
53
|
+
*
|
|
54
|
+
* Required: every first-party adapter implements this. It is the outbox seam —
|
|
55
|
+
* emitting a domain event (`appendEvent`) alongside a state change in one callback
|
|
56
|
+
* is what makes event emission atomic with the write that caused it.
|
|
49
57
|
*/
|
|
50
|
-
withTransaction
|
|
58
|
+
withTransaction<T>(fn: (adapter: DatabaseAdapter) => Promise<T>): Promise<T>;
|
|
51
59
|
}
|
|
52
60
|
/**
|
|
53
61
|
* Database provider factory interface
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/db/interfaces/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/db/interfaces/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { Page } from '../../types/events.js';
|
|
2
|
+
/** A stored plugin record — arbitrary JSON data under a `(plugin, collection)` namespace. */
|
|
3
|
+
export interface PluginStorageRecord {
|
|
4
|
+
id: string;
|
|
5
|
+
organizationId: string;
|
|
6
|
+
/** Owning plugin namespace, e.g. `'forms'`. Package-namespace it to avoid collisions. */
|
|
7
|
+
plugin: string;
|
|
8
|
+
/** Sub-namespace within the plugin, e.g. a form's id `'contact'`. */
|
|
9
|
+
collection: string;
|
|
10
|
+
/** Arbitrary JSON payload the plugin defines. */
|
|
11
|
+
data: Record<string, unknown>;
|
|
12
|
+
createdAt: Date;
|
|
13
|
+
}
|
|
14
|
+
/** Input to persist a record. `id` may be supplied so it can match a related event's id. */
|
|
15
|
+
export interface CreatePluginRecordInput {
|
|
16
|
+
id?: string;
|
|
17
|
+
organizationId: string;
|
|
18
|
+
plugin: string;
|
|
19
|
+
collection: string;
|
|
20
|
+
data: Record<string, unknown>;
|
|
21
|
+
}
|
|
22
|
+
/** Query for a plugin's records (newest first). */
|
|
23
|
+
export interface ListPluginRecordsOptions {
|
|
24
|
+
organizationId: string;
|
|
25
|
+
plugin: string;
|
|
26
|
+
/** Filter to one collection within the plugin. */
|
|
27
|
+
collection?: string;
|
|
28
|
+
limit?: number;
|
|
29
|
+
offset?: number;
|
|
30
|
+
}
|
|
31
|
+
export interface PluginStorageAdapter {
|
|
32
|
+
/** Persist a record. Call on the tx handle to commit it atomically with `appendEvent`. */
|
|
33
|
+
createPluginRecord(input: CreatePluginRecordInput): Promise<PluginStorageRecord>;
|
|
34
|
+
/** Read one record by id (org-scoped) — e.g. a consumer resolving an event's record id. */
|
|
35
|
+
getPluginRecord(organizationId: string, id: string): Promise<PluginStorageRecord | null>;
|
|
36
|
+
/** List a plugin's records (optionally one collection), newest first. */
|
|
37
|
+
listPluginRecords(options: ListPluginRecordsOptions): Promise<Page<PluginStorageRecord>>;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=plugin-storage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-storage.d.ts","sourceRoot":"","sources":["../../../../src/lib/db/interfaces/plugin-storage.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE/C,6FAA6F;AAC7F,MAAM,WAAW,mBAAmB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,EAAE,MAAM,CAAC;IACvB,yFAAyF;IACzF,MAAM,EAAE,MAAM,CAAC;IACf,qEAAqE;IACrE,UAAU,EAAE,MAAM,CAAC;IACnB,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,SAAS,EAAE,IAAI,CAAC;CAChB;AAED,4FAA4F;AAC5F,MAAM,WAAW,uBAAuB;IACvC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC9B;AAED,mDAAmD;AACnD,MAAM,WAAW,wBAAwB;IACxC,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACpC,0FAA0F;IAC1F,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACjF,2FAA2F;IAC3F,eAAe,CAAC,cAAc,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAC;IACzF,yEAAyE;IACzE,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;CACzF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-storage.js","sourceRoot":"","sources":["../../../../src/lib/db/interfaces/plugin-storage.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/** Emitted after a document's draft is copied to published, inside the publish transaction. */
|
|
3
|
+
export declare const documentPublished: import("./define-event.js").EventDefinition<"document.published", z.ZodObject<{
|
|
4
|
+
documentId: z.ZodString;
|
|
5
|
+
documentType: z.ZodString;
|
|
6
|
+
publishedHash: z.ZodNullable<z.ZodString>;
|
|
7
|
+
}, z.core.$strip>>;
|
|
8
|
+
//# sourceMappingURL=catalog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../../src/lib/events/catalog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,+FAA+F;AAC/F,eAAO,MAAM,iBAAiB;;;;kBAO7B,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { defineEvent } from './define-event.js';
|
|
3
|
+
// Built-in event catalog. The payload carries identifiers + intentional metadata only —
|
|
4
|
+
// never secrets or full document copies (the log is not a content mirror). `organizationId`
|
|
5
|
+
// and `createdBy` are columns on the row, so they're not repeated in the payload.
|
|
6
|
+
/** Emitted after a document's draft is copied to published, inside the publish transaction. */
|
|
7
|
+
export const documentPublished = defineEvent('document.published', z.object({
|
|
8
|
+
documentId: z.string(),
|
|
9
|
+
documentType: z.string(),
|
|
10
|
+
publishedHash: z.string().nullable()
|
|
11
|
+
}));
|
|
12
|
+
//# sourceMappingURL=catalog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../../src/lib/events/catalog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,wFAAwF;AACxF,4FAA4F;AAC5F,kFAAkF;AAElF,+FAA+F;AAC/F,MAAM,CAAC,MAAM,iBAAiB,GAAG,WAAW,CAC3C,oBAAoB,EACpB,CAAC,CAAC,MAAM,CAAC;IACR,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC,CACF,CAAC"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import type { DatabaseAdapter } from '../db/interfaces/index.js';
|
|
2
|
+
import type { EmailAdapter } from '../email/interfaces/email.js';
|
|
3
|
+
import type { Logger } from '../utils/logger.js';
|
|
4
|
+
import type { JobHandler } from '../jobs/types.js';
|
|
5
|
+
/**
|
|
6
|
+
* The event as a consumer sees it — the immutable fields of the `cms_domain_events` row that
|
|
7
|
+
* triggered this delivery. `id` is the event's id (stable across retries of the same
|
|
8
|
+
* delivery), so a consumer can dedupe on it if its side effect isn't naturally idempotent.
|
|
9
|
+
*/
|
|
10
|
+
export interface ConsumedEvent {
|
|
11
|
+
id: string;
|
|
12
|
+
type: string;
|
|
13
|
+
organizationId: string;
|
|
14
|
+
payload: Record<string, unknown>;
|
|
15
|
+
correlationId: string | null;
|
|
16
|
+
causationId: string | null;
|
|
17
|
+
createdBy: string | null;
|
|
18
|
+
createdAt: Date;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Reads a plugin's resolved, **decrypted** per-org settings — bound to the triggering event's
|
|
22
|
+
* organization, so a consumer can pull its own config (connection details, `secret` fields like
|
|
23
|
+
* API keys) without threading org ids around. `pluginId` is the settings declaration's id (the
|
|
24
|
+
* plugin's package name); an author reading their own plugin's settings passes their own id.
|
|
25
|
+
* The `.get(orgId, pluginId)` on the host's PluginSettingsService satisfies this structurally.
|
|
26
|
+
*/
|
|
27
|
+
export interface PluginSettingsReader {
|
|
28
|
+
get(organizationId: string, pluginId: string): Promise<Record<string, unknown>>;
|
|
29
|
+
}
|
|
30
|
+
/** The consumer-facing settings accessor — already scoped to the event's org. */
|
|
31
|
+
export interface ConsumerSettingsReader {
|
|
32
|
+
/** Decrypted settings for `pluginId` in the event's organization ({} if never configured). */
|
|
33
|
+
get(pluginId: string): Promise<Record<string, unknown>>;
|
|
34
|
+
}
|
|
35
|
+
/** What an event-consumer handler receives. `databaseAdapter` is the live adapter (org-scoped calls take an org id). */
|
|
36
|
+
export interface EventConsumerContext {
|
|
37
|
+
event: ConsumedEvent;
|
|
38
|
+
databaseAdapter: DatabaseAdapter;
|
|
39
|
+
logger: Logger;
|
|
40
|
+
/** Read this plugin's own decrypted settings for the event's org (e.g. a webhook URL secret). */
|
|
41
|
+
settings: ConsumerSettingsReader;
|
|
42
|
+
/**
|
|
43
|
+
* The configured email adapter, or `null` when the app has no email configured. A consumer that
|
|
44
|
+
* sends notifications (e.g. a form's "new submission" email) must handle `null` — treat it as
|
|
45
|
+
* "email disabled" and skip, never throw, so a missing key doesn't dead-letter the delivery.
|
|
46
|
+
*/
|
|
47
|
+
emailAdapter: EmailAdapter | null;
|
|
48
|
+
}
|
|
49
|
+
/** Runtime services the consumer wrapper injects into each delivery's context. */
|
|
50
|
+
export interface ConsumerHandlerDeps {
|
|
51
|
+
pluginSettingsService: PluginSettingsReader;
|
|
52
|
+
/** The app's email adapter (or `null` if email isn't configured). Passed straight to the consumer. */
|
|
53
|
+
emailAdapter?: EmailAdapter | null;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Runs when a subscribed event fires. Resolve to ack the delivery; throw to retry it (with
|
|
57
|
+
* backoff, until the delivery job's attempts are exhausted, then dead-letter). MUST be
|
|
58
|
+
* idempotent: at-least-once delivery means it can run more than once for the same event.
|
|
59
|
+
*/
|
|
60
|
+
export type EventConsumerHandler = (ctx: EventConsumerContext) => Promise<void>;
|
|
61
|
+
/**
|
|
62
|
+
* Reserved job-type prefix for consumer deliveries. Namespaced so a delivery job can never
|
|
63
|
+
* collide with a document job or a plugin's own `aphex/job/handler` type. The relay enqueues
|
|
64
|
+
* `consumerJobType(id)`; the resolver registers the matching handler under the same key.
|
|
65
|
+
*/
|
|
66
|
+
export declare const CONSUMER_JOB_PREFIX = "aphex/consumer:";
|
|
67
|
+
/** The delivery job type for a consumer id. */
|
|
68
|
+
export declare function consumerJobType(consumerId: string): string;
|
|
69
|
+
/** Build the delivery job payload for an event (the relay's side of the envelope). */
|
|
70
|
+
export declare function toDeliveryPayload(event: ConsumedEvent): Record<string, unknown>;
|
|
71
|
+
/**
|
|
72
|
+
* Adapt an `EventConsumerHandler` into a `JobHandler`. The runner calls the returned function
|
|
73
|
+
* with a claimed delivery job; it reconstructs the `ConsumedEvent` from the job payload, binds
|
|
74
|
+
* a settings reader to the event's org, and invokes the consumer. Throwing propagates to the
|
|
75
|
+
* runner as a retryable failure. `deps` is injected by the runner (`runJobsBatch`), which is
|
|
76
|
+
* where the live services live — the resolver only knows which consumers exist, not how to run them.
|
|
77
|
+
*/
|
|
78
|
+
export declare function toConsumerJobHandler(handler: EventConsumerHandler, deps: ConsumerHandlerDeps): JobHandler;
|
|
79
|
+
//# sourceMappingURL=consumer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consumer.d.ts","sourceRoot":"","sources":["../../../src/lib/events/consumer.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,IAAI,CAAC;CAChB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACpC,GAAG,CAAC,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAChF;AAED,iFAAiF;AACjF,MAAM,WAAW,sBAAsB;IACtC,8FAA8F;IAC9F,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACxD;AAED,wHAAwH;AACxH,MAAM,WAAW,oBAAoB;IACpC,KAAK,EAAE,aAAa,CAAC;IACrB,eAAe,EAAE,eAAe,CAAC;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,iGAAiG;IACjG,QAAQ,EAAE,sBAAsB,CAAC;IACjC;;;;OAIG;IACH,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;CAClC;AAED,kFAAkF;AAClF,MAAM,WAAW,mBAAmB;IACnC,qBAAqB,EAAE,oBAAoB,CAAC;IAC5C,sGAAsG;IACtG,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;CACnC;AAED;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,GAAG,EAAE,oBAAoB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAEhF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,oBAAoB,CAAC;AAErD,+CAA+C;AAC/C,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE1D;AAqBD,sFAAsF;AACtF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAa/E;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CACnC,OAAO,EAAE,oBAAoB,EAC7B,IAAI,EAAE,mBAAmB,GACvB,UAAU,CAcZ"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
// Event consumers — the "react to a fact" surface. A consumer subscribes to one or more
|
|
2
|
+
// domain-event types and runs when they fire. It is NOT called inline at emit time: the
|
|
3
|
+
// relay turns each event into a durable delivery *job* (one per subscribed consumer), and
|
|
4
|
+
// the ordinary job runner executes it — so a consumer inherits retries, backoff, and
|
|
5
|
+
// dead-lettering for free, and a slow/failing consumer never blocks the write that emitted
|
|
6
|
+
// the event.
|
|
7
|
+
//
|
|
8
|
+
// This module is the bridge between the two halves: `EventConsumerHandler` is what a plugin
|
|
9
|
+
// author writes; `toConsumerJobHandler` adapts it to a `JobHandler` the runner understands,
|
|
10
|
+
// and `consumerJobType` is the reserved job-type namespace the relay enqueues under.
|
|
11
|
+
import { z } from 'zod';
|
|
12
|
+
/**
|
|
13
|
+
* Reserved job-type prefix for consumer deliveries. Namespaced so a delivery job can never
|
|
14
|
+
* collide with a document job or a plugin's own `aphex/job/handler` type. The relay enqueues
|
|
15
|
+
* `consumerJobType(id)`; the resolver registers the matching handler under the same key.
|
|
16
|
+
*/
|
|
17
|
+
export const CONSUMER_JOB_PREFIX = 'aphex/consumer:';
|
|
18
|
+
/** The delivery job type for a consumer id. */
|
|
19
|
+
export function consumerJobType(consumerId) {
|
|
20
|
+
return `${CONSUMER_JOB_PREFIX}${consumerId}`;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* The delivery job's payload envelope. The relay serializes the triggering event into this
|
|
24
|
+
* shape; `toConsumerJobHandler` parses it back out — parsing (not casting) so a malformed
|
|
25
|
+
* payload fails loudly at the handler boundary rather than reaching consumer code as `any`.
|
|
26
|
+
* `createdAt` crosses the DB as a JSON string and is coerced back to a `Date`.
|
|
27
|
+
*/
|
|
28
|
+
const deliveryEnvelope = z.object({
|
|
29
|
+
event: z.object({
|
|
30
|
+
id: z.string(),
|
|
31
|
+
type: z.string(),
|
|
32
|
+
organizationId: z.string(),
|
|
33
|
+
payload: z.record(z.string(), z.unknown()).default({}),
|
|
34
|
+
correlationId: z.string().nullable().default(null),
|
|
35
|
+
causationId: z.string().nullable().default(null),
|
|
36
|
+
createdBy: z.string().nullable().default(null),
|
|
37
|
+
createdAt: z.coerce.date()
|
|
38
|
+
})
|
|
39
|
+
});
|
|
40
|
+
/** Build the delivery job payload for an event (the relay's side of the envelope). */
|
|
41
|
+
export function toDeliveryPayload(event) {
|
|
42
|
+
return {
|
|
43
|
+
event: {
|
|
44
|
+
id: event.id,
|
|
45
|
+
type: event.type,
|
|
46
|
+
organizationId: event.organizationId,
|
|
47
|
+
payload: event.payload,
|
|
48
|
+
correlationId: event.correlationId,
|
|
49
|
+
causationId: event.causationId,
|
|
50
|
+
createdBy: event.createdBy,
|
|
51
|
+
createdAt: event.createdAt.toISOString()
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Adapt an `EventConsumerHandler` into a `JobHandler`. The runner calls the returned function
|
|
57
|
+
* with a claimed delivery job; it reconstructs the `ConsumedEvent` from the job payload, binds
|
|
58
|
+
* a settings reader to the event's org, and invokes the consumer. Throwing propagates to the
|
|
59
|
+
* runner as a retryable failure. `deps` is injected by the runner (`runJobsBatch`), which is
|
|
60
|
+
* where the live services live — the resolver only knows which consumers exist, not how to run them.
|
|
61
|
+
*/
|
|
62
|
+
export function toConsumerJobHandler(handler, deps) {
|
|
63
|
+
return async ({ job, databaseAdapter, logger }) => {
|
|
64
|
+
const { event } = deliveryEnvelope.parse(job.payload);
|
|
65
|
+
const settings = {
|
|
66
|
+
get: (pluginId) => deps.pluginSettingsService.get(event.organizationId, pluginId)
|
|
67
|
+
};
|
|
68
|
+
await handler({
|
|
69
|
+
event,
|
|
70
|
+
databaseAdapter,
|
|
71
|
+
logger,
|
|
72
|
+
settings,
|
|
73
|
+
emailAdapter: deps.emailAdapter ?? null
|
|
74
|
+
});
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=consumer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consumer.js","sourceRoot":"","sources":["../../../src/lib/events/consumer.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,wFAAwF;AACxF,0FAA0F;AAC1F,qFAAqF;AACrF,2FAA2F;AAC3F,aAAa;AACb,EAAE;AACF,4FAA4F;AAC5F,4FAA4F;AAC5F,qFAAqF;AACrF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAoExB;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,iBAAiB,CAAC;AAErD,+CAA+C;AAC/C,MAAM,UAAU,eAAe,CAAC,UAAkB;IACjD,OAAO,GAAG,mBAAmB,GAAG,UAAU,EAAE,CAAC;AAC9C,CAAC;AAED;;;;;GAKG;AACH,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;QACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;QAC1B,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;QACtD,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;QAClD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;QAChD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;QAC9C,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE;KAC1B,CAAC;CACF,CAAC,CAAC;AAEH,sFAAsF;AACtF,MAAM,UAAU,iBAAiB,CAAC,KAAoB;IACrD,OAAO;QACN,KAAK,EAAE;YACN,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE;SACxC;KACD,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CACnC,OAA6B,EAC7B,IAAyB;IAEzB,OAAO,KAAK,EAAE,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,EAAE;QACjD,MAAM,EAAE,KAAK,EAAE,GAAG,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtD,MAAM,QAAQ,GAA2B;YACxC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,EAAE,QAAQ,CAAC;SACjF,CAAC;QACF,MAAM,OAAO,CAAC;YACb,KAAK;YACL,eAAe;YACf,MAAM;YACN,QAAQ;YACR,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,IAAI;SACvC,CAAC,CAAC;IACJ,CAAC,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* A typed domain-event definition: a stable `type` name paired with a zod schema for
|
|
4
|
+
* its payload. Mirrors the API-contract pattern (`api/schemas/*`) — one source of truth
|
|
5
|
+
* for the payload shape, with an inferred TS type. Emitters call `parse` so a malformed
|
|
6
|
+
* payload fails loudly at the write site rather than rotting in the log.
|
|
7
|
+
*/
|
|
8
|
+
export interface EventDefinition<TName extends string, TSchema extends z.ZodTypeAny> {
|
|
9
|
+
type: TName;
|
|
10
|
+
schema: TSchema;
|
|
11
|
+
/** Validate + narrow an unknown payload to the event's payload type. Throws on mismatch. */
|
|
12
|
+
parse(payload: unknown): z.infer<TSchema>;
|
|
13
|
+
}
|
|
14
|
+
/** The payload type of an event definition. */
|
|
15
|
+
export type EventPayload<D> = D extends EventDefinition<string, infer S> ? z.infer<S> : never;
|
|
16
|
+
export declare function defineEvent<TName extends string, TSchema extends z.ZodTypeAny>(type: TName, schema: TSchema): EventDefinition<TName, TSchema>;
|
|
17
|
+
//# sourceMappingURL=define-event.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"define-event.d.ts","sourceRoot":"","sources":["../../../src/lib/events/define-event.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;GAKG;AACH,MAAM,WAAW,eAAe,CAAC,KAAK,SAAS,MAAM,EAAE,OAAO,SAAS,CAAC,CAAC,UAAU;IAClF,IAAI,EAAE,KAAK,CAAC;IACZ,MAAM,EAAE,OAAO,CAAC;IAChB,4FAA4F;IAC5F,KAAK,CAAC,OAAO,EAAE,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;CAC1C;AAED,+CAA+C;AAC/C,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;AAE9F,wBAAgB,WAAW,CAAC,KAAK,SAAS,MAAM,EAAE,OAAO,SAAS,CAAC,CAAC,UAAU,EAC7E,IAAI,EAAE,KAAK,EACX,MAAM,EAAE,OAAO,GACb,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CAMjC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"define-event.js","sourceRoot":"","sources":["../../../src/lib/events/define-event.ts"],"names":[],"mappings":"AAkBA,MAAM,UAAU,WAAW,CAC1B,IAAW,EACX,MAAe;IAEf,OAAO;QACN,IAAI;QACJ,MAAM;QACN,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;KACzC,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { DatabaseAdapter } from '../db/interfaces/index.js';
|
|
2
|
+
import type { Document } from '../types/document.js';
|
|
3
|
+
/**
|
|
4
|
+
* Emit `document.published` (and its outbox row) for a freshly published document. MUST be
|
|
5
|
+
* called on a TRANSACTION handle (from `withTransaction`) so the event commits atomically with
|
|
6
|
+
* the publish it describes — the transactional-outbox guarantee. Shared by every publish path,
|
|
7
|
+
* versioned and non-versioned alike, so the fact fires whenever a publish happens regardless of
|
|
8
|
+
* whether a version snapshot was taken.
|
|
9
|
+
*/
|
|
10
|
+
export declare function emitDocumentPublished(tx: DatabaseAdapter, organizationId: string, doc: Document): Promise<void>;
|
|
11
|
+
//# sourceMappingURL=emit.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"emit.d.ts","sourceRoot":"","sources":["../../../src/lib/events/emit.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAGlD;;;;;;GAMG;AACH,wBAAsB,qBAAqB,CAC1C,EAAE,EAAE,eAAe,EACnB,cAAc,EAAE,MAAM,EACtB,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CAWf"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { documentPublished } from './catalog.js';
|
|
2
|
+
/**
|
|
3
|
+
* Emit `document.published` (and its outbox row) for a freshly published document. MUST be
|
|
4
|
+
* called on a TRANSACTION handle (from `withTransaction`) so the event commits atomically with
|
|
5
|
+
* the publish it describes — the transactional-outbox guarantee. Shared by every publish path,
|
|
6
|
+
* versioned and non-versioned alike, so the fact fires whenever a publish happens regardless of
|
|
7
|
+
* whether a version snapshot was taken.
|
|
8
|
+
*/
|
|
9
|
+
export async function emitDocumentPublished(tx, organizationId, doc) {
|
|
10
|
+
await tx.appendEvent({
|
|
11
|
+
organizationId,
|
|
12
|
+
type: documentPublished.type,
|
|
13
|
+
payload: documentPublished.parse({
|
|
14
|
+
documentId: doc.id,
|
|
15
|
+
documentType: doc.type,
|
|
16
|
+
publishedHash: doc.publishedHash ?? null
|
|
17
|
+
}),
|
|
18
|
+
createdBy: doc.updatedBy
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=emit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"emit.js","sourceRoot":"","sources":["../../../src/lib/events/emit.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9C;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAC1C,EAAmB,EACnB,cAAsB,EACtB,GAAa;IAEb,MAAM,EAAE,CAAC,WAAW,CAAC;QACpB,cAAc;QACd,IAAI,EAAE,iBAAiB,CAAC,IAAI;QAC5B,OAAO,EAAE,iBAAiB,CAAC,KAAK,CAAC;YAChC,UAAU,EAAE,GAAG,CAAC,EAAE;YAClB,YAAY,EAAE,GAAG,CAAC,IAAI;YACtB,aAAa,EAAE,GAAG,CAAC,aAAa,IAAI,IAAI;SACxC,CAAC;QACF,SAAS,EAAE,GAAG,CAAC,SAAS;KACxB,CAAC,CAAC;AACJ,CAAC"}
|