@contractspec/lib.jobs 1.57.0 → 1.59.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 (92) hide show
  1. package/dist/contracts/index.d.ts +494 -500
  2. package/dist/contracts/index.d.ts.map +1 -1
  3. package/dist/contracts/index.js +298 -461
  4. package/dist/entities/index.d.ts +117 -122
  5. package/dist/entities/index.d.ts.map +1 -1
  6. package/dist/entities/index.js +170 -193
  7. package/dist/events.d.ts +297 -303
  8. package/dist/events.d.ts.map +1 -1
  9. package/dist/events.js +199 -351
  10. package/dist/handlers/gmail-sync-handler.d.ts +5 -9
  11. package/dist/handlers/gmail-sync-handler.d.ts.map +1 -1
  12. package/dist/handlers/gmail-sync-handler.js +8 -8
  13. package/dist/handlers/index.d.ts +5 -9
  14. package/dist/handlers/index.d.ts.map +1 -1
  15. package/dist/handlers/index.js +53 -10
  16. package/dist/handlers/ping-job.d.ts +6 -10
  17. package/dist/handlers/ping-job.d.ts.map +1 -1
  18. package/dist/handlers/ping-job.js +13 -12
  19. package/dist/handlers/storage-document-handler.d.ts +7 -11
  20. package/dist/handlers/storage-document-handler.d.ts.map +1 -1
  21. package/dist/handlers/storage-document-handler.js +15 -13
  22. package/dist/index.d.ts +7 -24
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +1366 -64
  25. package/dist/jobs.capability.d.ts +2 -7
  26. package/dist/jobs.capability.d.ts.map +1 -1
  27. package/dist/jobs.capability.js +29 -33
  28. package/dist/jobs.feature.d.ts +1 -6
  29. package/dist/jobs.feature.d.ts.map +1 -1
  30. package/dist/jobs.feature.js +45 -108
  31. package/dist/node/contracts/index.js +318 -0
  32. package/dist/node/entities/index.js +174 -0
  33. package/dist/node/events.js +200 -0
  34. package/dist/node/handlers/gmail-sync-handler.js +9 -0
  35. package/dist/node/handlers/index.js +55 -0
  36. package/dist/node/handlers/ping-job.js +14 -0
  37. package/dist/node/handlers/storage-document-handler.js +16 -0
  38. package/dist/node/index.js +1368 -0
  39. package/dist/node/jobs.capability.js +28 -0
  40. package/dist/node/jobs.feature.js +46 -0
  41. package/dist/node/queue/gcp-cloud-tasks.js +66 -0
  42. package/dist/node/queue/gcp-pubsub.js +54 -0
  43. package/dist/node/queue/index.js +478 -0
  44. package/dist/node/queue/memory-queue.js +160 -0
  45. package/dist/node/queue/register-defined-job.js +15 -0
  46. package/dist/node/queue/scaleway-sqs-queue.js +206 -0
  47. package/dist/node/queue/types.js +10 -0
  48. package/dist/node/scheduler/index.js +117 -0
  49. package/dist/queue/gcp-cloud-tasks.d.ts +33 -36
  50. package/dist/queue/gcp-cloud-tasks.d.ts.map +1 -1
  51. package/dist/queue/gcp-cloud-tasks.js +65 -59
  52. package/dist/queue/gcp-pubsub.d.ts +18 -21
  53. package/dist/queue/gcp-pubsub.d.ts.map +1 -1
  54. package/dist/queue/gcp-pubsub.js +53 -45
  55. package/dist/queue/index.d.ts +6 -15
  56. package/dist/queue/index.d.ts.map +1 -1
  57. package/dist/queue/index.js +476 -20
  58. package/dist/queue/memory-queue.d.ts +25 -29
  59. package/dist/queue/memory-queue.d.ts.map +1 -1
  60. package/dist/queue/memory-queue.js +159 -138
  61. package/dist/queue/register-defined-job.d.ts +3 -7
  62. package/dist/queue/register-defined-job.d.ts.map +1 -1
  63. package/dist/queue/register-defined-job.js +14 -14
  64. package/dist/queue/scaleway-sqs-queue.d.ts +31 -35
  65. package/dist/queue/scaleway-sqs-queue.d.ts.map +1 -1
  66. package/dist/queue/scaleway-sqs-queue.js +205 -173
  67. package/dist/queue/types.d.ts +2 -8
  68. package/dist/queue/types.d.ts.map +1 -1
  69. package/dist/queue/types.js +11 -12
  70. package/dist/scheduler/index.d.ts +68 -72
  71. package/dist/scheduler/index.d.ts.map +1 -1
  72. package/dist/scheduler/index.js +113 -141
  73. package/package.json +176 -50
  74. package/dist/_virtual/_rolldown/runtime.js +0 -36
  75. package/dist/contracts/index.js.map +0 -1
  76. package/dist/entities/index.js.map +0 -1
  77. package/dist/events.js.map +0 -1
  78. package/dist/handlers/gmail-sync-handler.js.map +0 -1
  79. package/dist/handlers/index.js.map +0 -1
  80. package/dist/handlers/ping-job.js.map +0 -1
  81. package/dist/handlers/storage-document-handler.js.map +0 -1
  82. package/dist/index.js.map +0 -1
  83. package/dist/jobs.capability.js.map +0 -1
  84. package/dist/jobs.feature.js.map +0 -1
  85. package/dist/queue/gcp-cloud-tasks.js.map +0 -1
  86. package/dist/queue/gcp-pubsub.js.map +0 -1
  87. package/dist/queue/index.js.map +0 -1
  88. package/dist/queue/memory-queue.js.map +0 -1
  89. package/dist/queue/register-defined-job.js.map +0 -1
  90. package/dist/queue/scaleway-sqs-queue.js.map +0 -1
  91. package/dist/queue/types.js.map +0 -1
  92. package/dist/scheduler/index.js.map +0 -1
@@ -1,13 +1,56 @@
1
- import { registerDefinedJob } from "../queue/register-defined-job.js";
2
- import { PING_JOB_TYPE, PingPayloadSchema, pingJob } from "./ping-job.js";
3
- import { createGmailSyncHandler } from "./gmail-sync-handler.js";
4
- import { createStorageDocumentHandler } from "./storage-document-handler.js";
1
+ // @bun
2
+ // src/handlers/gmail-sync-handler.ts
3
+ function createGmailSyncHandler(adapter) {
4
+ return async (job) => {
5
+ await adapter.syncThreads(job.payload);
6
+ };
7
+ }
5
8
 
6
- //#region src/handlers/index.ts
7
- function registerAllJobs(queue) {
8
- registerDefinedJob(queue, pingJob);
9
+ // src/handlers/ping-job.ts
10
+ import * as z from "zod";
11
+ var PING_JOB_TYPE = "core.ping";
12
+ var PingPayloadSchema = z.object({});
13
+ var pingJob = {
14
+ type: PING_JOB_TYPE,
15
+ schema: PingPayloadSchema,
16
+ handler: async (_payload, _job) => {}
17
+ };
18
+
19
+ // src/handlers/storage-document-handler.ts
20
+ function createStorageDocumentHandler(storage, adapter) {
21
+ return async (job) => {
22
+ const object2 = await storage.getObject({
23
+ bucket: job.payload.bucket,
24
+ key: job.payload.key
25
+ });
26
+ if (!object2) {
27
+ throw new Error(`Object ${job.payload.bucket}/${job.payload.key} not found`);
28
+ }
29
+ await adapter.ingestObject(object2);
30
+ };
9
31
  }
10
32
 
11
- //#endregion
12
- export { PING_JOB_TYPE, PingPayloadSchema, createGmailSyncHandler, createStorageDocumentHandler, pingJob, registerAllJobs };
13
- //# sourceMappingURL=index.js.map
33
+ // src/queue/register-defined-job.ts
34
+ function registerDefinedJob(queue, def) {
35
+ const wrapped = async (job) => {
36
+ const payload = def.schema.parse(job.payload);
37
+ const typedJob = {
38
+ ...job,
39
+ payload
40
+ };
41
+ await def.handler(payload, typedJob);
42
+ };
43
+ queue.register(def.type, wrapped);
44
+ }
45
+ // src/handlers/index.ts
46
+ function registerAllJobs(queue) {
47
+ registerDefinedJob(queue, pingJob);
48
+ }
49
+ export {
50
+ registerAllJobs,
51
+ pingJob,
52
+ createStorageDocumentHandler,
53
+ createGmailSyncHandler,
54
+ PingPayloadSchema,
55
+ PING_JOB_TYPE
56
+ };
@@ -1,11 +1,7 @@
1
- import * as z from "zod";
2
- import { DefinedJob } from "@contractspec/lib.contracts/jobs/define-job";
3
-
4
- //#region src/handlers/ping-job.d.ts
5
- declare const PING_JOB_TYPE: "core.ping";
6
- declare const PingPayloadSchema: z.ZodObject<{}, z.core.$strip>;
7
- type PingPayload = z.infer<typeof PingPayloadSchema>;
8
- declare const pingJob: DefinedJob<PingPayload>;
9
- //#endregion
10
- export { PING_JOB_TYPE, PingPayload, PingPayloadSchema, pingJob };
1
+ import * as z from 'zod';
2
+ import type { DefinedJob } from '@contractspec/lib.contracts/jobs/define-job';
3
+ export declare const PING_JOB_TYPE: "core.ping";
4
+ export declare const PingPayloadSchema: z.ZodObject<{}, z.core.$strip>;
5
+ export type PingPayload = z.infer<typeof PingPayloadSchema>;
6
+ export declare const pingJob: DefinedJob<PingPayload>;
11
7
  //# sourceMappingURL=ping-job.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ping-job.d.ts","names":[],"sources":["../../src/handlers/ping-job.ts"],"mappings":";;;;cAIa,aAAA;AAAA,cAEA,iBAAA,EAAiB,CAAA,CAAA,SAAA,KAAA,CAAA,CAAA,IAAA,CAAA,MAAA;AAAA,KAElB,WAAA,GAAc,CAAA,CAAE,KAAA,QAAa,iBAAA;AAAA,cAE5B,OAAA,EAAS,UAAA,CAAW,WAAA"}
1
+ {"version":3,"file":"ping-job.d.ts","sourceRoot":"","sources":["../../src/handlers/ping-job.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AACzB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6CAA6C,CAAC;AAG9E,eAAO,MAAM,aAAa,EAAG,WAAoB,CAAC;AAElD,eAAO,MAAM,iBAAiB,gCAAe,CAAC;AAE9C,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,OAAO,EAAE,UAAU,CAAC,WAAW,CAM3C,CAAC"}
@@ -1,14 +1,15 @@
1
+ // @bun
2
+ // src/handlers/ping-job.ts
1
3
  import * as z from "zod";
2
-
3
- //#region src/handlers/ping-job.ts
4
- const PING_JOB_TYPE = "core.ping";
5
- const PingPayloadSchema = z.object({});
6
- const pingJob = {
7
- type: PING_JOB_TYPE,
8
- schema: PingPayloadSchema,
9
- handler: async (_payload, _job) => {}
4
+ var PING_JOB_TYPE = "core.ping";
5
+ var PingPayloadSchema = z.object({});
6
+ var pingJob = {
7
+ type: PING_JOB_TYPE,
8
+ schema: PingPayloadSchema,
9
+ handler: async (_payload, _job) => {}
10
+ };
11
+ export {
12
+ pingJob,
13
+ PingPayloadSchema,
14
+ PING_JOB_TYPE
10
15
  };
11
-
12
- //#endregion
13
- export { PING_JOB_TYPE, PingPayloadSchema, pingJob };
14
- //# sourceMappingURL=ping-job.js.map
@@ -1,13 +1,9 @@
1
- import { JobHandler } from "@contractspec/lib.contracts/jobs/queue";
2
- import { ObjectStorageProvider } from "@contractspec/lib.contracts/integrations/providers/storage";
3
- import { StorageIngestionAdapter } from "@contractspec/lib.knowledge/ingestion/storage-adapter";
4
-
5
- //#region src/handlers/storage-document-handler.d.ts
6
- interface StorageDocumentJobPayload {
7
- bucket: string;
8
- key: string;
1
+ import type { ObjectStorageProvider } from '@contractspec/lib.contracts/integrations/providers/storage';
2
+ import type { StorageIngestionAdapter } from '@contractspec/lib.knowledge/ingestion/storage-adapter';
3
+ import type { JobHandler } from '@contractspec/lib.contracts/jobs/queue';
4
+ export interface StorageDocumentJobPayload {
5
+ bucket: string;
6
+ key: string;
9
7
  }
10
- declare function createStorageDocumentHandler(storage: ObjectStorageProvider, adapter: StorageIngestionAdapter): JobHandler<StorageDocumentJobPayload>;
11
- //#endregion
12
- export { StorageDocumentJobPayload, createStorageDocumentHandler };
8
+ export declare function createStorageDocumentHandler(storage: ObjectStorageProvider, adapter: StorageIngestionAdapter): JobHandler<StorageDocumentJobPayload>;
13
9
  //# sourceMappingURL=storage-document-handler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"storage-document-handler.d.ts","names":[],"sources":["../../src/handlers/storage-document-handler.ts"],"mappings":";;;;;UAIiB,yBAAA;EACf,MAAA;EACA,GAAA;AAAA;AAAA,iBAGc,4BAAA,CACd,OAAA,EAAS,qBAAA,EACT,OAAA,EAAS,uBAAA,GACR,UAAA,CAAW,yBAAA"}
1
+ {"version":3,"file":"storage-document-handler.d.ts","sourceRoot":"","sources":["../../src/handlers/storage-document-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4DAA4D,CAAC;AACxG,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uDAAuD,CAAC;AACrG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AAEzE,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;CACb;AAED,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,qBAAqB,EAC9B,OAAO,EAAE,uBAAuB,GAC/B,UAAU,CAAC,yBAAyB,CAAC,CAavC"}
@@ -1,15 +1,17 @@
1
- //#region src/handlers/storage-document-handler.ts
1
+ // @bun
2
+ // src/handlers/storage-document-handler.ts
2
3
  function createStorageDocumentHandler(storage, adapter) {
3
- return async (job) => {
4
- const object = await storage.getObject({
5
- bucket: job.payload.bucket,
6
- key: job.payload.key
7
- });
8
- if (!object) throw new Error(`Object ${job.payload.bucket}/${job.payload.key} not found`);
9
- await adapter.ingestObject(object);
10
- };
4
+ return async (job) => {
5
+ const object = await storage.getObject({
6
+ bucket: job.payload.bucket,
7
+ key: job.payload.key
8
+ });
9
+ if (!object) {
10
+ throw new Error(`Object ${job.payload.bucket}/${job.payload.key} not found`);
11
+ }
12
+ await adapter.ingestObject(object);
13
+ };
11
14
  }
12
-
13
- //#endregion
14
- export { createStorageDocumentHandler };
15
- //# sourceMappingURL=storage-document-handler.js.map
15
+ export {
16
+ createStorageDocumentHandler
17
+ };
package/dist/index.d.ts CHANGED
@@ -1,25 +1,8 @@
1
- import { __exportAll, __reExport } from "./_virtual/_rolldown/runtime.js";
2
- import { CancelJobContract, CreateScheduledJobContract, EnqueueJobContract, GetJobContract, GetQueueStatsContract, JobModel, ListScheduledJobsContract, QueueStatsModel, ScheduledJobModel, ToggleScheduledJobContract } from "./contracts/index.js";
3
- import { JobEntity, JobExecutionEntity, JobStatusEnum, ScheduledJobEntity, jobEntities, jobsSchemaContribution } from "./entities/index.js";
4
- import { JobCancelledEvent, JobCompletedEvent, JobDeadLetteredEvent, JobEnqueuedEvent, JobEvents, JobFailedEvent, JobRetryingEvent, JobStartedEvent, ScheduledJobTriggeredEvent } from "./events.js";
5
- import { GmailSyncJobPayload, createGmailSyncHandler } from "./handlers/gmail-sync-handler.js";
6
- import { PING_JOB_TYPE, PingPayload, PingPayloadSchema, pingJob } from "./handlers/ping-job.js";
7
- import { StorageDocumentJobPayload, createStorageDocumentHandler } from "./handlers/storage-document-handler.js";
8
- import { registerAllJobs } from "./handlers/index.js";
9
- import { MemoryJobQueue, MemoryQueueOptions } from "./queue/memory-queue.js";
10
- import { ScalewaySqsJobQueue, ScalewaySqsQueueConfig, ScalewaySqsQueueCredentials } from "./queue/scaleway-sqs-queue.js";
11
- import { GcpCloudTasksQueue, GcpCloudTasksQueueOptions } from "./queue/gcp-cloud-tasks.js";
12
- import { GcpPubSubQueue, GcpPubSubQueueOptions } from "./queue/gcp-pubsub.js";
13
- import { registerDefinedJob } from "./queue/register-defined-job.js";
14
- import { index_d_exports as index_d_exports$1 } from "./queue/index.js";
15
- import { ActiveSchedule, JobScheduler, ScheduledJobConfig, createScheduler, defineSchedule } from "./scheduler/index.js";
16
- import { JobsFeature } from "./jobs.feature.js";
17
- export * from "@contractspec/lib.contracts/jobs/queue";
18
-
19
- //#region src/index.d.ts
20
- declare namespace index_d_exports {
21
- export { ActiveSchedule, CancelJobContract, CreateScheduledJobContract, EnqueueJobContract, GcpCloudTasksQueue, GcpCloudTasksQueueOptions, GcpPubSubQueue, GcpPubSubQueueOptions, GetJobContract, GetQueueStatsContract, GmailSyncJobPayload, JobCancelledEvent, JobCompletedEvent, JobDeadLetteredEvent, JobEnqueuedEvent, JobEntity, JobEvents, JobExecutionEntity, JobFailedEvent, JobModel, JobRetryingEvent, JobScheduler, JobStartedEvent, JobStatusEnum, JobsFeature, ListScheduledJobsContract, MemoryJobQueue, MemoryQueueOptions, PING_JOB_TYPE, PingPayload, PingPayloadSchema, QueueStatsModel, ScalewaySqsJobQueue, ScalewaySqsQueueConfig, ScalewaySqsQueueCredentials, ScheduledJobConfig, ScheduledJobEntity, ScheduledJobModel, ScheduledJobTriggeredEvent, StorageDocumentJobPayload, ToggleScheduledJobContract, createGmailSyncHandler, createScheduler, createStorageDocumentHandler, defineSchedule, jobEntities, jobsSchemaContribution, pingJob, registerAllJobs, registerDefinedJob };
22
- }
23
- //#endregion
24
- export { ActiveSchedule, CancelJobContract, CreateScheduledJobContract, EnqueueJobContract, GcpCloudTasksQueue, GcpCloudTasksQueueOptions, GcpPubSubQueue, GcpPubSubQueueOptions, GetJobContract, GetQueueStatsContract, GmailSyncJobPayload, JobCancelledEvent, JobCompletedEvent, JobDeadLetteredEvent, JobEnqueuedEvent, JobEntity, JobEvents, JobExecutionEntity, JobFailedEvent, JobModel, JobRetryingEvent, JobScheduler, JobStartedEvent, JobStatusEnum, JobsFeature, ListScheduledJobsContract, MemoryJobQueue, MemoryQueueOptions, PING_JOB_TYPE, PingPayload, PingPayloadSchema, QueueStatsModel, ScalewaySqsJobQueue, ScalewaySqsQueueConfig, ScalewaySqsQueueCredentials, ScheduledJobConfig, ScheduledJobEntity, ScheduledJobModel, ScheduledJobTriggeredEvent, StorageDocumentJobPayload, ToggleScheduledJobContract, createGmailSyncHandler, createScheduler, createStorageDocumentHandler, defineSchedule, jobEntities, jobsSchemaContribution, pingJob, registerAllJobs, registerDefinedJob };
1
+ export * from './entities';
2
+ export * from './queue';
3
+ export * from './handlers';
4
+ export * from './scheduler';
5
+ export * from './contracts';
6
+ export * from './events';
7
+ export * from './jobs.feature';
25
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/index.ts"],"mappings":""}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,YAAY,CAAC;AAG3B,cAAc,SAAS,CAAC;AAGxB,cAAc,YAAY,CAAC;AAG3B,cAAc,aAAa,CAAC;AAG5B,cAAc,aAAa,CAAC;AAG5B,cAAc,UAAU,CAAC;AAGzB,cAAc,gBAAgB,CAAC"}