@adviser/cement 0.5.21 → 0.5.23
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/cjs/chunky.cjs +44 -0
- package/cjs/chunky.cjs.map +1 -0
- package/cjs/chunky.d.ts +15 -0
- package/cjs/chunky.d.ts.map +1 -0
- package/cjs/chunky.test.cjs +150 -0
- package/cjs/chunky.test.cjs.map +1 -0
- package/cjs/chunky.test.d.ts +2 -0
- package/cjs/chunky.test.d.ts.map +1 -0
- package/cjs/http_header.cjs.map +1 -1
- package/cjs/http_header.d.ts +5 -5
- package/cjs/http_header.d.ts.map +1 -1
- package/cjs/index.cjs +2 -0
- package/cjs/index.cjs.map +1 -1
- package/cjs/index.d.ts +2 -0
- package/cjs/index.d.ts.map +1 -1
- package/cjs/npm-tools.cjs +28 -0
- package/cjs/npm-tools.cjs.map +1 -0
- package/cjs/npm-tools.d.ts +12 -0
- package/cjs/npm-tools.d.ts.map +1 -0
- package/cjs/npm-tools.test.cjs +32 -0
- package/cjs/npm-tools.test.cjs.map +1 -0
- package/cjs/npm-tools.test.d.ts +2 -0
- package/cjs/npm-tools.test.d.ts.map +1 -0
- package/cjs/test-ws-pair.cjs.map +1 -1
- package/cjs/test-ws-pair.d.ts +1 -2
- package/cjs/test-ws-pair.d.ts.map +1 -1
- package/cjs/utils/get-params-result.cjs +1 -1
- package/cjs/utils/get-params-result.cjs.map +1 -1
- package/cjs/version.cjs +1 -1
- package/deno.json +1 -1
- package/esm/chunky.d.ts +15 -0
- package/esm/chunky.d.ts.map +1 -0
- package/esm/chunky.js +40 -0
- package/esm/chunky.js.map +1 -0
- package/esm/chunky.test.d.ts +2 -0
- package/esm/chunky.test.d.ts.map +1 -0
- package/esm/chunky.test.js +148 -0
- package/esm/chunky.test.js.map +1 -0
- package/esm/http_header.d.ts +5 -5
- package/esm/http_header.d.ts.map +1 -1
- package/esm/http_header.js.map +1 -1
- package/esm/index.d.ts +2 -0
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +2 -0
- package/esm/index.js.map +1 -1
- package/esm/npm-tools.d.ts +12 -0
- package/esm/npm-tools.d.ts.map +1 -0
- package/esm/npm-tools.js +24 -0
- package/esm/npm-tools.js.map +1 -0
- package/esm/npm-tools.test.d.ts +2 -0
- package/esm/npm-tools.test.d.ts.map +1 -0
- package/esm/npm-tools.test.js +30 -0
- package/esm/npm-tools.test.js.map +1 -0
- package/esm/test-ws-pair.d.ts +1 -2
- package/esm/test-ws-pair.d.ts.map +1 -1
- package/esm/test-ws-pair.js.map +1 -1
- package/esm/utils/get-params-result.js +1 -1
- package/esm/utils/get-params-result.js.map +1 -1
- package/esm/version.js +1 -1
- package/package.json +3 -3
- package/src/chunky.ts +221 -0
- package/src/http_header.ts +6 -5
- package/src/index.ts +2 -0
- package/src/npm-tools.ts +26 -0
- package/src/test-ws-pair.ts +2 -2
- package/src/utils/get-params-result.ts +1 -1
- package/ts/cjs/chunky.d.ts +15 -0
- package/ts/cjs/chunky.d.ts.map +1 -0
- package/ts/cjs/chunky.js +44 -0
- package/ts/cjs/chunky.js.map +1 -0
- package/ts/cjs/chunky.test.d.ts +2 -0
- package/ts/cjs/chunky.test.d.ts.map +1 -0
- package/ts/cjs/chunky.test.js +150 -0
- package/ts/cjs/chunky.test.js.map +1 -0
- package/ts/cjs/http_header.d.ts +5 -5
- package/ts/cjs/http_header.d.ts.map +1 -1
- package/ts/cjs/http_header.js.map +1 -1
- package/ts/cjs/index.d.ts +2 -0
- package/ts/cjs/index.d.ts.map +1 -1
- package/ts/cjs/index.js +2 -0
- package/ts/cjs/index.js.map +1 -1
- package/ts/cjs/npm-tools.d.ts +12 -0
- package/ts/cjs/npm-tools.d.ts.map +1 -0
- package/ts/cjs/npm-tools.js +28 -0
- package/ts/cjs/npm-tools.js.map +1 -0
- package/ts/cjs/npm-tools.test.d.ts +2 -0
- package/ts/cjs/npm-tools.test.d.ts.map +1 -0
- package/ts/cjs/npm-tools.test.js +32 -0
- package/ts/cjs/npm-tools.test.js.map +1 -0
- package/ts/cjs/test-ws-pair.d.ts +1 -2
- package/ts/cjs/test-ws-pair.d.ts.map +1 -1
- package/ts/cjs/test-ws-pair.js.map +1 -1
- package/ts/cjs/utils/get-params-result.js +1 -1
- package/ts/cjs/utils/get-params-result.js.map +1 -1
- package/ts/cjs/version.js +1 -1
- package/ts/esm/chunky.d.ts +15 -0
- package/ts/esm/chunky.d.ts.map +1 -0
- package/ts/esm/chunky.js +40 -0
- package/ts/esm/chunky.js.map +1 -0
- package/ts/esm/chunky.test.d.ts +2 -0
- package/ts/esm/chunky.test.d.ts.map +1 -0
- package/ts/esm/chunky.test.js +148 -0
- package/ts/esm/chunky.test.js.map +1 -0
- package/ts/esm/http_header.d.ts +5 -5
- package/ts/esm/http_header.d.ts.map +1 -1
- package/ts/esm/http_header.js.map +1 -1
- package/ts/esm/index.d.ts +2 -0
- package/ts/esm/index.d.ts.map +1 -1
- package/ts/esm/index.js +2 -0
- package/ts/esm/index.js.map +1 -1
- package/ts/esm/npm-tools.d.ts +12 -0
- package/ts/esm/npm-tools.d.ts.map +1 -0
- package/ts/esm/npm-tools.js +24 -0
- package/ts/esm/npm-tools.js.map +1 -0
- package/ts/esm/npm-tools.test.d.ts +2 -0
- package/ts/esm/npm-tools.test.d.ts.map +1 -0
- package/ts/esm/npm-tools.test.js +30 -0
- package/ts/esm/npm-tools.test.js.map +1 -0
- package/ts/esm/test-ws-pair.d.ts +1 -2
- package/ts/esm/test-ws-pair.d.ts.map +1 -1
- package/ts/esm/test-ws-pair.js.map +1 -1
- package/ts/esm/utils/get-params-result.js +1 -1
- package/ts/esm/utils/get-params-result.js.map +1 -1
- package/ts/esm/version.js +1 -1
package/src/chunky.ts
ADDED
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
import { exception2Result, Result } from "./result.js";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Base configuration options shared by both sync and async chunky processing.
|
|
5
|
+
*
|
|
6
|
+
* @template T - The type of items in the input iterable
|
|
7
|
+
*/
|
|
8
|
+
export interface ChunkyBaseOptions<T> {
|
|
9
|
+
/**
|
|
10
|
+
* The input iterable to process. Can be an array, generator, or any iterable.
|
|
11
|
+
*/
|
|
12
|
+
readonly input: Iterable<T>;
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Predicate function that determines when to commit a chunk.
|
|
16
|
+
* Called after each item is added to the current chunk.
|
|
17
|
+
* When it returns true, the chunk is committed and a new chunk starts.
|
|
18
|
+
*
|
|
19
|
+
* @param chunked - The current accumulated chunk
|
|
20
|
+
* @returns true to commit the chunk, false to continue accumulating
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```typescript
|
|
24
|
+
* // Commit when chunk reaches 10 items
|
|
25
|
+
* splitCondition: (chunked) => chunked.length >= 10
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
splitCondition(chunked: T[]): boolean;
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Optional callback invoked after each commit completes (success or failure).
|
|
32
|
+
* Receives the result wrapped in a Result type and the commit index.
|
|
33
|
+
*
|
|
34
|
+
* @param result - Result.Ok() on success, Result.Err(error) on failure
|
|
35
|
+
* @param idx - Zero-based index of the commit (0 for first chunk, 1 for second, etc.)
|
|
36
|
+
*
|
|
37
|
+
* @example
|
|
38
|
+
* ```typescript
|
|
39
|
+
* onCommit: (result, idx) => {
|
|
40
|
+
* if (result.isOk()) {
|
|
41
|
+
* console.log(`Chunk ${idx} committed successfully`)
|
|
42
|
+
* } else {
|
|
43
|
+
* console.error(`Chunk ${idx} failed:`, result.Err())
|
|
44
|
+
* }
|
|
45
|
+
* }
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
onCommit?(result: Result<void>, idx: number): void;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Configuration options for synchronous chunky processing.
|
|
53
|
+
*
|
|
54
|
+
* @template T - The type of items in the input iterable
|
|
55
|
+
*/
|
|
56
|
+
export type ChunkySyncOptions<T> = ChunkyBaseOptions<T> & {
|
|
57
|
+
/**
|
|
58
|
+
* Synchronous function called to process each chunk.
|
|
59
|
+
*
|
|
60
|
+
* @param chunked - The chunk to commit
|
|
61
|
+
*
|
|
62
|
+
* @example
|
|
63
|
+
* ```typescript
|
|
64
|
+
* commit: (chunk) => { console.log('Processing', chunk.length, 'items') }
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
commit(chunked: T[]): void;
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Configuration options for asynchronous chunky processing.
|
|
72
|
+
* Supports infinite iterables - each chunk is awaited before consuming the next item.
|
|
73
|
+
*
|
|
74
|
+
* @template T - The type of items in the input iterable
|
|
75
|
+
*/
|
|
76
|
+
export type ChunkyAsyncOptions<T> = ChunkyBaseOptions<T> & {
|
|
77
|
+
/**
|
|
78
|
+
* Asynchronous function called to process each chunk.
|
|
79
|
+
* Each commit is awaited before the next item is consumed from the input.
|
|
80
|
+
*
|
|
81
|
+
* @param chunked - The chunk to commit
|
|
82
|
+
* @returns Promise that resolves when the chunk is processed
|
|
83
|
+
*
|
|
84
|
+
* @example
|
|
85
|
+
* ```typescript
|
|
86
|
+
* commit: async (chunk) => { await saveToDatabase(chunk) }
|
|
87
|
+
* ```
|
|
88
|
+
*/
|
|
89
|
+
commit(chunked: T[]): Promise<void>;
|
|
90
|
+
};
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* Processes an iterable in chunks synchronously, committing each chunk when a condition is met.
|
|
94
|
+
*
|
|
95
|
+
* This function accumulates items from an iterable into chunks and commits them
|
|
96
|
+
* based on a split condition. Commits are executed synchronously as the iteration progresses.
|
|
97
|
+
*
|
|
98
|
+
* ## Key Features
|
|
99
|
+
*
|
|
100
|
+
* - **Simple and fast**: No async overhead
|
|
101
|
+
* - **Error resilience**: Uses exception2Result to wrap errors without aborting
|
|
102
|
+
* - **Sequential processing**: Chunks are processed in order
|
|
103
|
+
*
|
|
104
|
+
* @template T - The type of items in the input iterable
|
|
105
|
+
*
|
|
106
|
+
* @param options - Configuration object containing input, splitCondition, commit, and onCommit
|
|
107
|
+
*
|
|
108
|
+
* @example
|
|
109
|
+
* ```typescript
|
|
110
|
+
* chunkySync({
|
|
111
|
+
* input: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
|
|
112
|
+
* splitCondition: (chunked) => chunked.length >= 3,
|
|
113
|
+
* commit: (chunk) => {
|
|
114
|
+
* console.log('Chunk:', chunk)
|
|
115
|
+
* }
|
|
116
|
+
* })
|
|
117
|
+
* // Output:
|
|
118
|
+
* // Chunk: [1, 2, 3]
|
|
119
|
+
* // Chunk: [4, 5, 6]
|
|
120
|
+
* // Chunk: [7, 8, 9]
|
|
121
|
+
* // Chunk: [10]
|
|
122
|
+
* ```
|
|
123
|
+
*/
|
|
124
|
+
export function chunkySync<T>(options: ChunkySyncOptions<T>): void {
|
|
125
|
+
let chunked: T[] = [];
|
|
126
|
+
let commitIdx = 0;
|
|
127
|
+
|
|
128
|
+
const doCommit = (chunk: T[]): void => {
|
|
129
|
+
if (chunk.length === 0) return;
|
|
130
|
+
|
|
131
|
+
const idx = commitIdx++;
|
|
132
|
+
const result = exception2Result(() => options.commit(chunk));
|
|
133
|
+
options.onCommit?.(result, idx);
|
|
134
|
+
};
|
|
135
|
+
|
|
136
|
+
for (const item of options.input) {
|
|
137
|
+
chunked.push(item);
|
|
138
|
+
if (options.splitCondition(chunked)) {
|
|
139
|
+
doCommit(chunked);
|
|
140
|
+
chunked = [];
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
doCommit(chunked);
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
/**
|
|
148
|
+
* Processes an iterable in chunks asynchronously, committing each chunk when a condition is met.
|
|
149
|
+
*
|
|
150
|
+
* This function accumulates items from an iterable into chunks and commits them
|
|
151
|
+
* based on a split condition. Each commit is awaited before consuming the next item,
|
|
152
|
+
* making it safe for infinite iterables.
|
|
153
|
+
*
|
|
154
|
+
* ## Key Features
|
|
155
|
+
*
|
|
156
|
+
* - **Infinite iterable support**: Awaits each commit before consuming next item
|
|
157
|
+
* - **Sequential processing**: Commits execute one at a time in order
|
|
158
|
+
* - **Error resilience**: Uses exception2Result to wrap errors without aborting
|
|
159
|
+
* - **Memory efficient**: No unbounded queue buildup
|
|
160
|
+
*
|
|
161
|
+
* @template T - The type of items in the input iterable
|
|
162
|
+
*
|
|
163
|
+
* @param options - Configuration object containing input, splitCondition, commit, and onCommit
|
|
164
|
+
* @returns Promise that resolves when all chunks are processed
|
|
165
|
+
*
|
|
166
|
+
* @example
|
|
167
|
+
* ```typescript
|
|
168
|
+
* await chunkyAsync({
|
|
169
|
+
* input: messages,
|
|
170
|
+
* splitCondition: (chunked) => chunked.length >= 100,
|
|
171
|
+
* commit: async (chunk) => {
|
|
172
|
+
* await api.batchSend(chunk)
|
|
173
|
+
* },
|
|
174
|
+
* onCommit: (result, idx) => {
|
|
175
|
+
* if (result.isErr()) {
|
|
176
|
+
* console.error(`Batch ${idx} failed:`, result.Err().message)
|
|
177
|
+
* }
|
|
178
|
+
* }
|
|
179
|
+
* })
|
|
180
|
+
* ```
|
|
181
|
+
*
|
|
182
|
+
* @example
|
|
183
|
+
* ```typescript
|
|
184
|
+
* // Processing infinite generator
|
|
185
|
+
* function* infiniteStream() {
|
|
186
|
+
* let i = 0
|
|
187
|
+
* while (true) yield i++
|
|
188
|
+
* }
|
|
189
|
+
*
|
|
190
|
+
* // Safely processes chunks one at a time
|
|
191
|
+
* await chunkyAsync({
|
|
192
|
+
* input: infiniteStream(),
|
|
193
|
+
* splitCondition: (chunked) => chunked.length >= 1000,
|
|
194
|
+
* commit: async (chunk) => {
|
|
195
|
+
* await processChunk(chunk)
|
|
196
|
+
* }
|
|
197
|
+
* })
|
|
198
|
+
* ```
|
|
199
|
+
*/
|
|
200
|
+
export async function chunkyAsync<T>(options: ChunkyAsyncOptions<T>): Promise<void> {
|
|
201
|
+
let chunked: T[] = [];
|
|
202
|
+
let commitIdx = 0;
|
|
203
|
+
|
|
204
|
+
const doCommit = async (chunk: T[]): Promise<void> => {
|
|
205
|
+
if (chunk.length === 0) return;
|
|
206
|
+
|
|
207
|
+
const idx = commitIdx++;
|
|
208
|
+
const result = await exception2Result(() => options.commit(chunk));
|
|
209
|
+
options.onCommit?.(result, idx);
|
|
210
|
+
};
|
|
211
|
+
|
|
212
|
+
for (const item of options.input) {
|
|
213
|
+
chunked.push(item);
|
|
214
|
+
if (options.splitCondition(chunked)) {
|
|
215
|
+
await doCommit(chunked);
|
|
216
|
+
chunked = [];
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
await doCommit(chunked);
|
|
221
|
+
}
|
package/src/http_header.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
// node iterator changed between version
|
|
2
|
+
export class HeadersImpl implements Omit<Headers, "values" | "keys" | "entries" | typeof Symbol.iterator | "forEach"> {
|
|
2
3
|
readonly impl: Headers = new Headers();
|
|
3
4
|
|
|
4
5
|
constructor(init: Map<string, string | string[]>) {
|
|
@@ -29,7 +30,7 @@ export class HeadersImpl implements Headers {
|
|
|
29
30
|
this.impl.set(name, value);
|
|
30
31
|
}
|
|
31
32
|
|
|
32
|
-
*[Symbol.iterator]():
|
|
33
|
+
*[Symbol.iterator](): Iterable<[string, string]> {
|
|
33
34
|
const keys: [string, string][] = [];
|
|
34
35
|
this.impl.forEach((v, k) => {
|
|
35
36
|
keys.push([k, v]);
|
|
@@ -39,10 +40,10 @@ export class HeadersImpl implements Headers {
|
|
|
39
40
|
}
|
|
40
41
|
}
|
|
41
42
|
|
|
42
|
-
entries():
|
|
43
|
+
entries(): Iterable<[string, string]> {
|
|
43
44
|
return this[Symbol.iterator]();
|
|
44
45
|
}
|
|
45
|
-
*keys():
|
|
46
|
+
*keys(): Iterable<string> {
|
|
46
47
|
const keys: string[] = [];
|
|
47
48
|
this.impl.forEach((_, k) => {
|
|
48
49
|
keys.push(k);
|
|
@@ -51,7 +52,7 @@ export class HeadersImpl implements Headers {
|
|
|
51
52
|
yield k;
|
|
52
53
|
}
|
|
53
54
|
}
|
|
54
|
-
*values():
|
|
55
|
+
*values(): Iterable<string> {
|
|
55
56
|
for (const k of this.keys()) {
|
|
56
57
|
const v = this.impl.get(k);
|
|
57
58
|
if (!v) {
|
package/src/index.ts
CHANGED
|
@@ -37,6 +37,7 @@ export * from "./evento.js";
|
|
|
37
37
|
export * from "./base-service.js";
|
|
38
38
|
export * from "./test-fetch-pair.js";
|
|
39
39
|
export * from "./test-ws-pair.js";
|
|
40
|
+
export * from "./chunky.js";
|
|
40
41
|
|
|
41
42
|
// ugly not really esm but how could that work otherwise?
|
|
42
43
|
// export * as utils from "@adviser/cement/utils"
|
|
@@ -59,3 +60,4 @@ export * from "./utils/relative-path.js";
|
|
|
59
60
|
export * from "./node-env/index.js";
|
|
60
61
|
export * from "./wait-for-value.js";
|
|
61
62
|
export * from "./is-json.js";
|
|
63
|
+
export * from "./npm-tools.js";
|
package/src/npm-tools.ts
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
const reScopedPkg = /^(@[^/]+\/[^/]+)(\/.*)?$/;
|
|
2
|
+
const rePkg = /^([^/@]+)(\/.*)?$/;
|
|
3
|
+
|
|
4
|
+
export class NPMPackage {
|
|
5
|
+
readonly givenPkg: string; // the original package string provided, e.g., "react" or "@scope/package/extra"
|
|
6
|
+
readonly pkg: string; // e.g., "react" or "@scope/package"
|
|
7
|
+
readonly suffix?: string; // e.g., "/extra/path" if the package string has more segments
|
|
8
|
+
|
|
9
|
+
static parse(pkgStr: string): NPMPackage {
|
|
10
|
+
const scopedMatch = reScopedPkg.exec(pkgStr);
|
|
11
|
+
if (scopedMatch) {
|
|
12
|
+
return new NPMPackage({ givenPkg: pkgStr, pkg: scopedMatch[1], suffix: scopedMatch[2] });
|
|
13
|
+
}
|
|
14
|
+
const unscopedMatch = rePkg.exec(pkgStr);
|
|
15
|
+
if (unscopedMatch) {
|
|
16
|
+
return new NPMPackage({ givenPkg: pkgStr, pkg: unscopedMatch[1], suffix: unscopedMatch[2] });
|
|
17
|
+
}
|
|
18
|
+
throw new Error(`Invalid package string: ${JSON.stringify(pkgStr)}`);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
constructor({ givenPkg, pkg, suffix }: { givenPkg: string; pkg: string; suffix?: string }) {
|
|
22
|
+
this.givenPkg = givenPkg;
|
|
23
|
+
this.pkg = pkg;
|
|
24
|
+
this.suffix = suffix;
|
|
25
|
+
}
|
|
26
|
+
}
|
package/src/test-ws-pair.ts
CHANGED
|
@@ -53,8 +53,8 @@ export class TestWSConnection<WS extends WebSocketSimple = WebSocket> implements
|
|
|
53
53
|
connect(other: TestWSConnection<WS>): void {
|
|
54
54
|
this.#other = other;
|
|
55
55
|
}
|
|
56
|
-
send = (data:
|
|
57
|
-
const uint8 = to_uint8(data);
|
|
56
|
+
send = (data: string | Blob | BufferSource): void => {
|
|
57
|
+
const uint8 = to_uint8(data as CoerceBinaryInput);
|
|
58
58
|
this.transfers?.push({ from: this.side, data: uint8 });
|
|
59
59
|
const msg = {
|
|
60
60
|
data: uint8,
|
|
@@ -53,7 +53,7 @@ export function getParamsResult(
|
|
|
53
53
|
...Object.keys(i).map((k) => ({
|
|
54
54
|
key: k,
|
|
55
55
|
def: typeof i[k] === "string" ? i[k] : undefined,
|
|
56
|
-
isOptional: i[k] === param.OPTIONAL,
|
|
56
|
+
isOptional: i[k] === param.OPTIONAL || (i[k] as { type: string })?.type === param.OPTIONAL.type,
|
|
57
57
|
})),
|
|
58
58
|
);
|
|
59
59
|
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Result } from "./result.js";
|
|
2
|
+
export interface ChunkyBaseOptions<T> {
|
|
3
|
+
readonly input: Iterable<T>;
|
|
4
|
+
splitCondition(chunked: T[]): boolean;
|
|
5
|
+
onCommit?(result: Result<void>, idx: number): void;
|
|
6
|
+
}
|
|
7
|
+
export type ChunkySyncOptions<T> = ChunkyBaseOptions<T> & {
|
|
8
|
+
commit(chunked: T[]): void;
|
|
9
|
+
};
|
|
10
|
+
export type ChunkyAsyncOptions<T> = ChunkyBaseOptions<T> & {
|
|
11
|
+
commit(chunked: T[]): Promise<void>;
|
|
12
|
+
};
|
|
13
|
+
export declare function chunkySync<T>(options: ChunkySyncOptions<T>): void;
|
|
14
|
+
export declare function chunkyAsync<T>(options: ChunkyAsyncOptions<T>): Promise<void>;
|
|
15
|
+
//# sourceMappingURL=chunky.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunky.d.ts","sourceRoot":"","sources":["../../../src/chunky.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,MAAM,EAAE,MAAM,aAAa,CAAC;AAOvD,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAIlC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IAgB5B,cAAc,CAAC,OAAO,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC;IAoBtC,QAAQ,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CACpD;AAOD,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,GAAG;IAWxD,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC;CAC5B,CAAC;AAQF,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,GAAG;IAazD,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrC,CAAC;AAkCF,wBAAgB,UAAU,CAAC,CAAC,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,IAAI,CAqBjE;AAuDD,wBAAsB,WAAW,CAAC,CAAC,EAAE,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAqBlF"}
|
package/ts/cjs/chunky.js
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.chunkySync = chunkySync;
|
|
4
|
+
exports.chunkyAsync = chunkyAsync;
|
|
5
|
+
const result_js_1 = require("./result.js");
|
|
6
|
+
function chunkySync(options) {
|
|
7
|
+
let chunked = [];
|
|
8
|
+
let commitIdx = 0;
|
|
9
|
+
const doCommit = (chunk) => {
|
|
10
|
+
if (chunk.length === 0)
|
|
11
|
+
return;
|
|
12
|
+
const idx = commitIdx++;
|
|
13
|
+
const result = (0, result_js_1.exception2Result)(() => options.commit(chunk));
|
|
14
|
+
options.onCommit?.(result, idx);
|
|
15
|
+
};
|
|
16
|
+
for (const item of options.input) {
|
|
17
|
+
chunked.push(item);
|
|
18
|
+
if (options.splitCondition(chunked)) {
|
|
19
|
+
doCommit(chunked);
|
|
20
|
+
chunked = [];
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
doCommit(chunked);
|
|
24
|
+
}
|
|
25
|
+
async function chunkyAsync(options) {
|
|
26
|
+
let chunked = [];
|
|
27
|
+
let commitIdx = 0;
|
|
28
|
+
const doCommit = async (chunk) => {
|
|
29
|
+
if (chunk.length === 0)
|
|
30
|
+
return;
|
|
31
|
+
const idx = commitIdx++;
|
|
32
|
+
const result = await (0, result_js_1.exception2Result)(() => options.commit(chunk));
|
|
33
|
+
options.onCommit?.(result, idx);
|
|
34
|
+
};
|
|
35
|
+
for (const item of options.input) {
|
|
36
|
+
chunked.push(item);
|
|
37
|
+
if (options.splitCondition(chunked)) {
|
|
38
|
+
await doCommit(chunked);
|
|
39
|
+
chunked = [];
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
await doCommit(chunked);
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=chunky.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunky.js","sourceRoot":"","sources":["../../../src/chunky.ts"],"names":[],"mappings":";;;;AAAA,2CAAuD;AA2HvD,oBAA8B,OAA6B,EAAQ;IACjE,IAAI,OAAO,GAAQ,EAAE,CAAC;IACtB,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,MAAM,QAAQ,GAAG,CAAC,KAAU,EAAQ,EAAE,CAAC;QACrC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAE/B,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,IAAA,4BAAgB,EAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7D,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAAA,CACjC,CAAC;IAEF,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACjC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,IAAI,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;YACpC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAClB,OAAO,GAAG,EAAE,CAAC;QACf,CAAC;IACH,CAAC;IAED,QAAQ,CAAC,OAAO,CAAC,CAAC;AAAA,CACnB;AAuDM,KAAK,sBAAyB,OAA8B,EAAiB;IAClF,IAAI,OAAO,GAAQ,EAAE,CAAC;IACtB,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,MAAM,QAAQ,GAAG,KAAK,EAAE,KAAU,EAAiB,EAAE,CAAC;QACpD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAE/B,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,MAAM,IAAA,4BAAgB,EAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACnE,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAAA,CACjC,CAAC;IAEF,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACjC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,IAAI,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;YACpC,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;YACxB,OAAO,GAAG,EAAE,CAAC;QACf,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;AAAA,CACzB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunky.test.d.ts","sourceRoot":"","sources":["../../../src/chunky.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const vitest_1 = require("vitest");
|
|
4
|
+
const chunky_js_1 = require("./chunky.js");
|
|
5
|
+
const promise_sleep_js_1 = require("./promise-sleep.js");
|
|
6
|
+
vitest_1.describe.each([
|
|
7
|
+
{
|
|
8
|
+
name: "empty array",
|
|
9
|
+
inputFactory: () => [],
|
|
10
|
+
splitSize: 8,
|
|
11
|
+
expectedCommits: 0,
|
|
12
|
+
expectedSizes: [],
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
name: "clean cut with array (100 items, 10 chunks)",
|
|
16
|
+
inputFactory: () => Array(100)
|
|
17
|
+
.fill(0)
|
|
18
|
+
.map((_, i) => i),
|
|
19
|
+
splitSize: 10,
|
|
20
|
+
expectedCommits: 10,
|
|
21
|
+
expectedSizes: Array(10).fill(10),
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
name: "uneven split with array (100 items, 8+4 chunks)",
|
|
25
|
+
inputFactory: () => Array(100)
|
|
26
|
+
.fill(0)
|
|
27
|
+
.map((_, i) => i),
|
|
28
|
+
splitSize: 8,
|
|
29
|
+
expectedCommits: 13,
|
|
30
|
+
expectedSizes: [...Array(12).fill(8), 4],
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
name: "clean cut with generator (100 items, 10 chunks)",
|
|
34
|
+
inputFactory: () => (function* () {
|
|
35
|
+
for (let i = 0; i < 100; i++)
|
|
36
|
+
yield i;
|
|
37
|
+
})(),
|
|
38
|
+
splitSize: 10,
|
|
39
|
+
expectedCommits: 10,
|
|
40
|
+
expectedSizes: Array(10).fill(10),
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: "uneven split with generator (100 items, 8+4 chunks)",
|
|
44
|
+
inputFactory: () => (function* () {
|
|
45
|
+
for (let i = 0; i < 100; i++)
|
|
46
|
+
yield i;
|
|
47
|
+
})(),
|
|
48
|
+
splitSize: 8,
|
|
49
|
+
expectedCommits: 13,
|
|
50
|
+
expectedSizes: [...Array(12).fill(8), 4],
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
name: "single item",
|
|
54
|
+
inputFactory: () => [1],
|
|
55
|
+
splitSize: 8,
|
|
56
|
+
expectedCommits: 1,
|
|
57
|
+
expectedSizes: [1],
|
|
58
|
+
},
|
|
59
|
+
])("$name", ({ inputFactory, splitSize, expectedCommits, expectedSizes }) => {
|
|
60
|
+
(0, vitest_1.it)("sync commits", () => {
|
|
61
|
+
const commits = [];
|
|
62
|
+
const results = [];
|
|
63
|
+
(0, chunky_js_1.chunkySync)({
|
|
64
|
+
input: inputFactory(),
|
|
65
|
+
splitCondition: (chunked) => chunked.length >= splitSize,
|
|
66
|
+
commit: (chunked) => {
|
|
67
|
+
commits.push(chunked.length);
|
|
68
|
+
},
|
|
69
|
+
onCommit(result, idx) {
|
|
70
|
+
results.push({ idx, ok: result.isOk() });
|
|
71
|
+
},
|
|
72
|
+
});
|
|
73
|
+
(0, vitest_1.expect)(commits.length).toBe(expectedCommits);
|
|
74
|
+
(0, vitest_1.expect)(commits).toEqual(expectedSizes);
|
|
75
|
+
(0, vitest_1.expect)(results.length).toBe(expectedCommits);
|
|
76
|
+
(0, vitest_1.expect)(results.every((r) => r.ok)).toBe(true);
|
|
77
|
+
});
|
|
78
|
+
(0, vitest_1.it)("async commits", async () => {
|
|
79
|
+
const commits = [];
|
|
80
|
+
const results = [];
|
|
81
|
+
await (0, chunky_js_1.chunkyAsync)({
|
|
82
|
+
input: inputFactory(),
|
|
83
|
+
splitCondition: (chunked) => chunked.length >= splitSize,
|
|
84
|
+
commit: async (chunked) => {
|
|
85
|
+
commits.push(chunked.length);
|
|
86
|
+
await (0, promise_sleep_js_1.sleep)(10);
|
|
87
|
+
},
|
|
88
|
+
onCommit(result, idx) {
|
|
89
|
+
results.push({ idx, ok: result.isOk() });
|
|
90
|
+
},
|
|
91
|
+
});
|
|
92
|
+
(0, vitest_1.expect)(commits.length).toBe(expectedCommits);
|
|
93
|
+
(0, vitest_1.expect)(commits).toEqual(expectedSizes);
|
|
94
|
+
(0, vitest_1.expect)(results.length).toBe(expectedCommits);
|
|
95
|
+
(0, vitest_1.expect)(results.every((r) => r.ok)).toBe(true);
|
|
96
|
+
});
|
|
97
|
+
});
|
|
98
|
+
(0, vitest_1.describe)("commit ordering", () => {
|
|
99
|
+
(0, vitest_1.it)("executes sync commits in order", () => {
|
|
100
|
+
const order = [];
|
|
101
|
+
(0, chunky_js_1.chunkySync)({
|
|
102
|
+
input: Array(30)
|
|
103
|
+
.fill(0)
|
|
104
|
+
.map((_, i) => i),
|
|
105
|
+
splitCondition: (chunked) => chunked.length >= 10,
|
|
106
|
+
commit(chunked) {
|
|
107
|
+
order.push(chunked[0]);
|
|
108
|
+
},
|
|
109
|
+
});
|
|
110
|
+
(0, vitest_1.expect)(order).toEqual([0, 10, 20]);
|
|
111
|
+
});
|
|
112
|
+
(0, vitest_1.it)("executes async commits sequentially in order", async () => {
|
|
113
|
+
const order = [];
|
|
114
|
+
const delays = [50, 10, 30];
|
|
115
|
+
await (0, chunky_js_1.chunkyAsync)({
|
|
116
|
+
input: Array(30)
|
|
117
|
+
.fill(0)
|
|
118
|
+
.map((_, i) => i),
|
|
119
|
+
splitCondition: (chunked) => chunked.length >= 10,
|
|
120
|
+
async commit(chunked) {
|
|
121
|
+
const chunkIndex = Math.floor(chunked[0] / 10);
|
|
122
|
+
const delay = delays[chunkIndex];
|
|
123
|
+
await (0, promise_sleep_js_1.sleep)(delay);
|
|
124
|
+
order.push(chunked[0]);
|
|
125
|
+
},
|
|
126
|
+
});
|
|
127
|
+
(0, vitest_1.expect)(order).toEqual([0, 10, 20]);
|
|
128
|
+
});
|
|
129
|
+
(0, vitest_1.it)("maintains order even with onCommit callback", async () => {
|
|
130
|
+
const callbackOrder = [];
|
|
131
|
+
const commitOrder = [];
|
|
132
|
+
await (0, chunky_js_1.chunkyAsync)({
|
|
133
|
+
input: Array(25)
|
|
134
|
+
.fill(0)
|
|
135
|
+
.map((_, i) => i),
|
|
136
|
+
splitCondition: (chunked) => chunked.length >= 10,
|
|
137
|
+
async commit() {
|
|
138
|
+
await (0, promise_sleep_js_1.sleep)(Math.random() * 20);
|
|
139
|
+
commitOrder.push(commitOrder.length);
|
|
140
|
+
},
|
|
141
|
+
onCommit(result, idx) {
|
|
142
|
+
(0, vitest_1.expect)(result.isOk()).toBe(true);
|
|
143
|
+
callbackOrder.push(idx);
|
|
144
|
+
},
|
|
145
|
+
});
|
|
146
|
+
(0, vitest_1.expect)(callbackOrder).toEqual([0, 1, 2]);
|
|
147
|
+
(0, vitest_1.expect)(commitOrder).toEqual([0, 1, 2]);
|
|
148
|
+
});
|
|
149
|
+
});
|
|
150
|
+
//# sourceMappingURL=chunky.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunky.test.js","sourceRoot":"","sources":["../../../src/chunky.test.ts"],"names":[],"mappings":"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"}
|
package/ts/cjs/http_header.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare class HeadersImpl implements Headers {
|
|
1
|
+
export declare class HeadersImpl implements Omit<Headers, "values" | "keys" | "entries" | typeof Symbol.iterator | "forEach"> {
|
|
2
2
|
readonly impl: Headers;
|
|
3
3
|
constructor(init: Map<string, string | string[]>);
|
|
4
4
|
forEach(callbackfn: (value: string, key: string, parent: this) => void): void;
|
|
@@ -7,10 +7,10 @@ export declare class HeadersImpl implements Headers {
|
|
|
7
7
|
getSetCookie(): string[];
|
|
8
8
|
has(name: string): boolean;
|
|
9
9
|
set(name: string, value: string): void;
|
|
10
|
-
[Symbol.iterator]():
|
|
11
|
-
entries():
|
|
12
|
-
keys():
|
|
13
|
-
values():
|
|
10
|
+
[Symbol.iterator](): Iterable<[string, string]>;
|
|
11
|
+
entries(): Iterable<[string, string]>;
|
|
12
|
+
keys(): Iterable<string>;
|
|
13
|
+
values(): Iterable<string>;
|
|
14
14
|
append(key: string, value?: string | string[]): HeadersImpl;
|
|
15
15
|
}
|
|
16
16
|
export interface HeaderForeach {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http_header.d.ts","sourceRoot":"","sources":["../../../src/http_header.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"http_header.d.ts","sourceRoot":"","sources":["../../../src/http_header.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http_header.js","sourceRoot":"","sources":["../../../src/http_header.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"http_header.js","sourceRoot":"","sources":["../../../src/http_header.ts"],"names":[],"mappings":"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"}
|
package/ts/cjs/index.d.ts
CHANGED
|
@@ -37,6 +37,7 @@ export * from "./evento.js";
|
|
|
37
37
|
export * from "./base-service.js";
|
|
38
38
|
export * from "./test-fetch-pair.js";
|
|
39
39
|
export * from "./test-ws-pair.js";
|
|
40
|
+
export * from "./chunky.js";
|
|
40
41
|
export * from "./utils/rebuffer.js";
|
|
41
42
|
export * from "./utils/stream-map.js";
|
|
42
43
|
export * from "./utils/stream2string.js";
|
|
@@ -54,4 +55,5 @@ export * from "./utils/relative-path.js";
|
|
|
54
55
|
export * from "./node-env/index.js";
|
|
55
56
|
export * from "./wait-for-value.js";
|
|
56
57
|
export * from "./is-json.js";
|
|
58
|
+
export * from "./npm-tools.js";
|
|
57
59
|
//# sourceMappingURL=index.d.ts.map
|