convex-batch-processor 0.5.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 (44) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +395 -0
  3. package/dist/client/index.d.ts +212 -0
  4. package/dist/client/index.d.ts.map +1 -0
  5. package/dist/client/index.js +78 -0
  6. package/dist/client/index.js.map +1 -0
  7. package/dist/component/_generated/api.d.ts +34 -0
  8. package/dist/component/_generated/api.d.ts.map +1 -0
  9. package/dist/component/_generated/api.js +31 -0
  10. package/dist/component/_generated/api.js.map +1 -0
  11. package/dist/component/_generated/component.d.ts +80 -0
  12. package/dist/component/_generated/component.d.ts.map +1 -0
  13. package/dist/component/_generated/component.js +11 -0
  14. package/dist/component/_generated/component.js.map +1 -0
  15. package/dist/component/_generated/dataModel.d.ts +46 -0
  16. package/dist/component/_generated/dataModel.d.ts.map +1 -0
  17. package/dist/component/_generated/dataModel.js +11 -0
  18. package/dist/component/_generated/dataModel.js.map +1 -0
  19. package/dist/component/_generated/server.d.ts +121 -0
  20. package/dist/component/_generated/server.d.ts.map +1 -0
  21. package/dist/component/_generated/server.js +78 -0
  22. package/dist/component/_generated/server.js.map +1 -0
  23. package/dist/component/convex.config.d.ts +3 -0
  24. package/dist/component/convex.config.d.ts.map +1 -0
  25. package/dist/component/convex.config.js +4 -0
  26. package/dist/component/convex.config.js.map +1 -0
  27. package/dist/component/lib.d.ts +351 -0
  28. package/dist/component/lib.d.ts.map +1 -0
  29. package/dist/component/lib.js +879 -0
  30. package/dist/component/lib.js.map +1 -0
  31. package/dist/component/schema.d.ts +118 -0
  32. package/dist/component/schema.d.ts.map +1 -0
  33. package/dist/component/schema.js +61 -0
  34. package/dist/component/schema.js.map +1 -0
  35. package/package.json +63 -0
  36. package/src/client/index.test.ts +123 -0
  37. package/src/client/index.ts +336 -0
  38. package/src/component/_generated/api.ts +50 -0
  39. package/src/component/_generated/component.ts +140 -0
  40. package/src/component/_generated/dataModel.ts +60 -0
  41. package/src/component/_generated/server.ts +156 -0
  42. package/src/component/convex.config.ts +4 -0
  43. package/src/component/lib.ts +1082 -0
  44. package/src/component/schema.ts +70 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/component/lib.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,118 @@
1
+ declare const _default: import("convex/server").SchemaDefinition<{
2
+ batches: import("convex/server").TableDefinition<import("convex/values").VObject<{
3
+ scheduledFlushId?: import("convex/values").GenericId<"_scheduled_functions"> | undefined;
4
+ flushStartedAt?: number | undefined;
5
+ batchId: string;
6
+ config: {
7
+ maxBatchSize: number;
8
+ flushIntervalMs: number;
9
+ processBatchHandle: string;
10
+ };
11
+ baseBatchId: string;
12
+ status: "accumulating" | "flushing" | "completed";
13
+ sequence: number;
14
+ createdAt: number;
15
+ lastUpdatedAt: number;
16
+ }, {
17
+ batchId: import("convex/values").VString<string, "required">;
18
+ baseBatchId: import("convex/values").VString<string, "required">;
19
+ sequence: import("convex/values").VFloat64<number, "required">;
20
+ createdAt: import("convex/values").VFloat64<number, "required">;
21
+ lastUpdatedAt: import("convex/values").VFloat64<number, "required">;
22
+ status: import("convex/values").VUnion<"accumulating" | "flushing" | "completed", [import("convex/values").VLiteral<"accumulating", "required">, import("convex/values").VLiteral<"flushing", "required">, import("convex/values").VLiteral<"completed", "required">], "required", never>;
23
+ config: import("convex/values").VObject<{
24
+ maxBatchSize: number;
25
+ flushIntervalMs: number;
26
+ processBatchHandle: string;
27
+ }, {
28
+ maxBatchSize: import("convex/values").VFloat64<number, "required">;
29
+ flushIntervalMs: import("convex/values").VFloat64<number, "required">;
30
+ processBatchHandle: import("convex/values").VString<string, "required">;
31
+ }, "required", "maxBatchSize" | "flushIntervalMs" | "processBatchHandle">;
32
+ scheduledFlushId: import("convex/values").VId<import("convex/values").GenericId<"_scheduled_functions"> | undefined, "optional">;
33
+ flushStartedAt: import("convex/values").VFloat64<number | undefined, "optional">;
34
+ }, "required", "batchId" | "config" | "baseBatchId" | "status" | "sequence" | "createdAt" | "lastUpdatedAt" | "scheduledFlushId" | "flushStartedAt" | "config.maxBatchSize" | "config.flushIntervalMs" | "config.processBatchHandle">, {
35
+ by_batchId: ["batchId", "_creationTime"];
36
+ by_baseBatchId_status: ["baseBatchId", "status", "_creationTime"];
37
+ by_baseBatchId_sequence: ["baseBatchId", "sequence", "_creationTime"];
38
+ by_status: ["status", "_creationTime"];
39
+ }, {}, {}>;
40
+ batchItems: import("convex/server").TableDefinition<import("convex/values").VObject<{
41
+ items: any[];
42
+ createdAt: number;
43
+ batchDocId: import("convex/values").GenericId<"batches">;
44
+ itemCount: number;
45
+ }, {
46
+ batchDocId: import("convex/values").VId<import("convex/values").GenericId<"batches">, "required">;
47
+ items: import("convex/values").VArray<any[], import("convex/values").VAny<any, "required", string>, "required">;
48
+ itemCount: import("convex/values").VFloat64<number, "required">;
49
+ createdAt: import("convex/values").VFloat64<number, "required">;
50
+ }, "required", "items" | "createdAt" | "batchDocId" | "itemCount">, {
51
+ by_batchDocId: ["batchDocId", "_creationTime"];
52
+ by_batchDocId_createdAt: ["batchDocId", "createdAt", "_creationTime"];
53
+ }, {}, {}>;
54
+ iteratorJobs: import("convex/server").TableDefinition<import("convex/values").VObject<{
55
+ cursor?: string | undefined;
56
+ errorMessage?: string | undefined;
57
+ lastRunAt?: number | undefined;
58
+ jobId: string;
59
+ processedCount: number;
60
+ config: {
61
+ onCompleteHandle?: string | undefined;
62
+ maxRetries?: number | undefined;
63
+ batchSize: number;
64
+ processBatchHandle: string;
65
+ delayBetweenBatchesMs: number;
66
+ getNextBatchHandle: string;
67
+ };
68
+ status: "completed" | "pending" | "running" | "paused" | "failed";
69
+ createdAt: number;
70
+ retryCount: number;
71
+ }, {
72
+ jobId: import("convex/values").VString<string, "required">;
73
+ cursor: import("convex/values").VString<string | undefined, "optional">;
74
+ processedCount: import("convex/values").VFloat64<number, "required">;
75
+ status: import("convex/values").VUnion<"completed" | "pending" | "running" | "paused" | "failed", [import("convex/values").VLiteral<"pending", "required">, import("convex/values").VLiteral<"running", "required">, import("convex/values").VLiteral<"paused", "required">, import("convex/values").VLiteral<"completed", "required">, import("convex/values").VLiteral<"failed", "required">], "required", never>;
76
+ config: import("convex/values").VObject<{
77
+ onCompleteHandle?: string | undefined;
78
+ maxRetries?: number | undefined;
79
+ batchSize: number;
80
+ processBatchHandle: string;
81
+ delayBetweenBatchesMs: number;
82
+ getNextBatchHandle: string;
83
+ }, {
84
+ batchSize: import("convex/values").VFloat64<number, "required">;
85
+ delayBetweenBatchesMs: import("convex/values").VFloat64<number, "required">;
86
+ getNextBatchHandle: import("convex/values").VString<string, "required">;
87
+ processBatchHandle: import("convex/values").VString<string, "required">;
88
+ onCompleteHandle: import("convex/values").VString<string | undefined, "optional">;
89
+ maxRetries: import("convex/values").VFloat64<number | undefined, "optional">;
90
+ }, "required", "batchSize" | "processBatchHandle" | "delayBetweenBatchesMs" | "getNextBatchHandle" | "onCompleteHandle" | "maxRetries">;
91
+ retryCount: import("convex/values").VFloat64<number, "required">;
92
+ errorMessage: import("convex/values").VString<string | undefined, "optional">;
93
+ createdAt: import("convex/values").VFloat64<number, "required">;
94
+ lastRunAt: import("convex/values").VFloat64<number | undefined, "optional">;
95
+ }, "required", "cursor" | "jobId" | "processedCount" | "config" | "status" | "createdAt" | "config.processBatchHandle" | "retryCount" | "errorMessage" | "lastRunAt" | "config.batchSize" | "config.delayBetweenBatchesMs" | "config.getNextBatchHandle" | "config.onCompleteHandle" | "config.maxRetries">, {
96
+ by_jobId: ["jobId", "_creationTime"];
97
+ by_status: ["status", "_creationTime"];
98
+ }, {}, {}>;
99
+ flushHistory: import("convex/server").TableDefinition<import("convex/values").VObject<{
100
+ errorMessage?: string | undefined;
101
+ batchId: string;
102
+ itemCount: number;
103
+ flushedAt: number;
104
+ durationMs: number;
105
+ success: boolean;
106
+ }, {
107
+ batchId: import("convex/values").VString<string, "required">;
108
+ itemCount: import("convex/values").VFloat64<number, "required">;
109
+ flushedAt: import("convex/values").VFloat64<number, "required">;
110
+ durationMs: import("convex/values").VFloat64<number, "required">;
111
+ success: import("convex/values").VBoolean<boolean, "required">;
112
+ errorMessage: import("convex/values").VString<string | undefined, "optional">;
113
+ }, "required", "batchId" | "itemCount" | "errorMessage" | "flushedAt" | "durationMs" | "success">, {
114
+ by_batchId: ["batchId", "_creationTime"];
115
+ }, {}, {}>;
116
+ }, true>;
117
+ export default _default;
118
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/component/schema.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,wBAkEG"}
@@ -0,0 +1,61 @@
1
+ import { defineSchema, defineTable } from "convex/server";
2
+ import { v } from "convex/values";
3
+ export default defineSchema({
4
+ batches: defineTable({
5
+ batchId: v.string(), // Full ID with sequence: "base::0"
6
+ baseBatchId: v.string(), // Base ID: "base"
7
+ sequence: v.number(), // Sequence number: 0, 1, 2...
8
+ // itemCount is computed on-demand from batchItems table
9
+ createdAt: v.number(),
10
+ lastUpdatedAt: v.number(),
11
+ status: v.union(v.literal("accumulating"), v.literal("flushing"), v.literal("completed")),
12
+ config: v.object({
13
+ maxBatchSize: v.number(),
14
+ flushIntervalMs: v.number(),
15
+ processBatchHandle: v.string(),
16
+ }),
17
+ scheduledFlushId: v.optional(v.id("_scheduled_functions")),
18
+ flushStartedAt: v.optional(v.number()),
19
+ })
20
+ .index("by_batchId", ["batchId"])
21
+ .index("by_baseBatchId_status", ["baseBatchId", "status"])
22
+ .index("by_baseBatchId_sequence", ["baseBatchId", "sequence"])
23
+ .index("by_status", ["status"]),
24
+ batchItems: defineTable({
25
+ batchDocId: v.id("batches"),
26
+ items: v.array(v.any()),
27
+ itemCount: v.number(),
28
+ createdAt: v.number(),
29
+ })
30
+ .index("by_batchDocId", ["batchDocId"])
31
+ .index("by_batchDocId_createdAt", ["batchDocId", "createdAt"]),
32
+ iteratorJobs: defineTable({
33
+ jobId: v.string(),
34
+ cursor: v.optional(v.string()),
35
+ processedCount: v.number(),
36
+ status: v.union(v.literal("pending"), v.literal("running"), v.literal("paused"), v.literal("completed"), v.literal("failed")),
37
+ config: v.object({
38
+ batchSize: v.number(),
39
+ delayBetweenBatchesMs: v.number(),
40
+ getNextBatchHandle: v.string(),
41
+ processBatchHandle: v.string(),
42
+ onCompleteHandle: v.optional(v.string()),
43
+ maxRetries: v.optional(v.number()),
44
+ }),
45
+ retryCount: v.number(),
46
+ errorMessage: v.optional(v.string()),
47
+ createdAt: v.number(),
48
+ lastRunAt: v.optional(v.number()),
49
+ })
50
+ .index("by_jobId", ["jobId"])
51
+ .index("by_status", ["status"]),
52
+ flushHistory: defineTable({
53
+ batchId: v.string(), // Client's original ID (baseBatchId)
54
+ itemCount: v.number(),
55
+ flushedAt: v.number(),
56
+ durationMs: v.number(),
57
+ success: v.boolean(),
58
+ errorMessage: v.optional(v.string()),
59
+ }).index("by_batchId", ["batchId"]),
60
+ });
61
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/component/schema.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,63 @@
1
+ {
2
+ "name": "convex-batch-processor",
3
+ "version": "0.5.0",
4
+ "description": "Batch processing component for Convex - batch accumulator and table iterator",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "https://github.com/blocknavi/convex-batch-processor"
8
+ },
9
+ "homepage": "https://github.com/blocknavi/convex-batch-processor#readme",
10
+ "bugs": {
11
+ "url": "https://github.com/blocknavi/convex-batch-processor/issues"
12
+ },
13
+ "license": "MIT",
14
+ "keywords": ["convex", "component", "batch", "processing", "iterator", "accumulator"],
15
+ "type": "module",
16
+ "scripts": {
17
+ "codegen": "npx convex codegen --component-dir src/component",
18
+ "build": "tsc --project ./tsconfig.build.json",
19
+ "build:clean": "rm -rf dist *.tsbuildinfo && pnpm run build",
20
+ "test": "vitest run",
21
+ "test:watch": "vitest",
22
+ "lint": "biome check .",
23
+ "lint:fix": "biome check --write .",
24
+ "format": "biome format --write .",
25
+ "prepublishOnly": "pnpm run build && pnpm run lint",
26
+ "preversion": "pnpm install && pnpm run build:clean && pnpm run test && pnpm run lint",
27
+ "alpha": "npm version prerelease --preid alpha && npm publish --tag alpha && git push --follow-tags",
28
+ "release": "npm version patch && npm publish && git push --follow-tags"
29
+ },
30
+ "files": ["dist", "src"],
31
+ "exports": {
32
+ "./package.json": "./package.json",
33
+ ".": {
34
+ "types": "./dist/client/index.d.ts",
35
+ "default": "./dist/client/index.js"
36
+ },
37
+ "./convex.config.js": {
38
+ "types": "./dist/component/convex.config.d.ts",
39
+ "default": "./dist/component/convex.config.js"
40
+ },
41
+ "./convex.config": {
42
+ "types": "./dist/component/convex.config.d.ts",
43
+ "default": "./dist/component/convex.config.js"
44
+ },
45
+ "./_generated/component.js": {
46
+ "types": "./dist/component/_generated/component.d.ts"
47
+ },
48
+ "./_generated/component": {
49
+ "types": "./dist/component/_generated/component.d.ts"
50
+ }
51
+ },
52
+ "dependencies": {
53
+ "convex": "^1.31.6"
54
+ },
55
+ "devDependencies": {
56
+ "@biomejs/biome": "^1.9.0",
57
+ "typescript": "^5.6.0",
58
+ "vitest": "^2.0.0"
59
+ },
60
+ "peerDependencies": {
61
+ "convex": "^1.31.6"
62
+ }
63
+ }
@@ -0,0 +1,123 @@
1
+ import { describe, expect, test } from "vitest";
2
+ import {
3
+ type BatchConfig,
4
+ BatchProcessor,
5
+ type GetNextBatchArgs,
6
+ type GetNextBatchResult,
7
+ type IteratorConfig,
8
+ type OnCompleteArgs,
9
+ type ProcessBatchArgs,
10
+ } from "./index";
11
+
12
+ describe("BatchProcessor client", () => {
13
+ test("exports BatchProcessor class", () => {
14
+ expect(BatchProcessor).toBeDefined();
15
+ expect(typeof BatchProcessor).toBe("function");
16
+ });
17
+
18
+ test("BatchProcessor constructor accepts component API without config", () => {
19
+ // Create a mock component API
20
+ const mockComponent = {
21
+ lib: {
22
+ addItems: {} as any,
23
+ flushBatch: {} as any,
24
+ getBatchStatus: {} as any,
25
+ getFlushHistory: {} as any,
26
+ getAllBatchesForBaseId: {} as any,
27
+ deleteBatch: {} as any,
28
+ startIteratorJob: {} as any,
29
+ pauseIteratorJob: {} as any,
30
+ resumeIteratorJob: {} as any,
31
+ cancelIteratorJob: {} as any,
32
+ getIteratorJobStatus: {} as any,
33
+ listIteratorJobs: {} as any,
34
+ deleteIteratorJob: {} as any,
35
+ },
36
+ };
37
+
38
+ const processor = new BatchProcessor(mockComponent);
39
+ expect(processor).toBeInstanceOf(BatchProcessor);
40
+ });
41
+
42
+ test("BatchProcessor constructor accepts component API with config", () => {
43
+ const mockComponent = {
44
+ lib: {
45
+ addItems: {} as any,
46
+ flushBatch: {} as any,
47
+ getBatchStatus: {} as any,
48
+ getFlushHistory: {} as any,
49
+ getAllBatchesForBaseId: {} as any,
50
+ deleteBatch: {} as any,
51
+ startIteratorJob: {} as any,
52
+ pauseIteratorJob: {} as any,
53
+ resumeIteratorJob: {} as any,
54
+ cancelIteratorJob: {} as any,
55
+ getIteratorJobStatus: {} as any,
56
+ listIteratorJobs: {} as any,
57
+ deleteIteratorJob: {} as any,
58
+ },
59
+ };
60
+
61
+ const processor = new BatchProcessor(mockComponent, {
62
+ maxBatchSize: 100,
63
+ flushIntervalMs: 30000,
64
+ processBatch: {} as any, // Mock FunctionReference
65
+ });
66
+ expect(processor).toBeInstanceOf(BatchProcessor);
67
+ });
68
+ });
69
+
70
+ describe("type exports", () => {
71
+ test("BatchConfig type is usable", () => {
72
+ const config: BatchConfig = {
73
+ maxBatchSize: 100,
74
+ flushIntervalMs: 30000,
75
+ processBatch: {} as any, // FunctionReference is opaque, use mock
76
+ };
77
+ expect(config.maxBatchSize).toBe(100);
78
+ });
79
+
80
+ test("IteratorConfig type is usable", () => {
81
+ const config: IteratorConfig = {
82
+ batchSize: 50,
83
+ delayBetweenBatchesMs: 100,
84
+ getNextBatch: {} as any, // FunctionReference mock
85
+ processBatch: {} as any, // FunctionReference mock
86
+ onComplete: {} as any, // FunctionReference mock
87
+ maxRetries: 3,
88
+ };
89
+ expect(config.batchSize).toBe(50);
90
+ });
91
+
92
+ test("GetNextBatchResult type is usable", () => {
93
+ const result: GetNextBatchResult<{ id: number }> = {
94
+ items: [{ id: 1 }, { id: 2 }],
95
+ cursor: "cursor-123",
96
+ done: false,
97
+ };
98
+ expect(result.items.length).toBe(2);
99
+ });
100
+
101
+ test("GetNextBatchArgs type is usable", () => {
102
+ const args: GetNextBatchArgs = {
103
+ cursor: "cursor-123",
104
+ batchSize: 100,
105
+ };
106
+ expect(args.batchSize).toBe(100);
107
+ });
108
+
109
+ test("ProcessBatchArgs type is usable", () => {
110
+ const args: ProcessBatchArgs<{ id: number }> = {
111
+ items: [{ id: 1 }],
112
+ };
113
+ expect(args.items.length).toBe(1);
114
+ });
115
+
116
+ test("OnCompleteArgs type is usable", () => {
117
+ const args: OnCompleteArgs = {
118
+ jobId: "job-123",
119
+ processedCount: 1000,
120
+ };
121
+ expect(args.processedCount).toBe(1000);
122
+ });
123
+ });