asygen 0.3.1 → 0.3.2
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/build/combine.cjs.map +1 -1
- package/build/combine.js.map +1 -1
- package/build/generatorify.cjs.map +1 -1
- package/build/generatorify.js.map +1 -1
- package/build/queue.cjs.map +1 -1
- package/build/queue.js.map +1 -1
- package/package.json +5 -6
- package/src/combine.ts +1 -1
- package/src/generatorify.ts +1 -1
- package/src/queue.ts +3 -3
package/build/combine.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/combine.ts"],"sourcesContent":["import { createQueue } from './queue.js';\n\nexport const combine = <T, R = unknown>(...iterables: AsyncIterable<T>[]) => {\n const queue = createQueue<IteratorResult<T, R>>();\n\n Promise.all(\n iterables.map(async (iterable) => {\n for await (const value of iterable) {\n await queue.push({ value, done: false }).promise;\n }\n })
|
|
1
|
+
{"version":3,"sources":["../src/combine.ts"],"sourcesContent":["import { createQueue } from './queue.js';\n\nexport const combine = <T, R = unknown>(...iterables: AsyncIterable<T>[]) => {\n const queue = createQueue<IteratorResult<T, R>>();\n\n Promise.all(\n iterables.map(async (iterable) => {\n for await (const value of iterable) {\n await queue.push({ value, done: false }).promise;\n }\n }),\n ).then(async () => queue.done({ value: null, done: true }));\n\n return {\n [Symbol.asyncIterator]() {\n return {\n next() {\n return queue.pull().promise;\n },\n };\n },\n };\n};\n"],"names":["combine","iterables","queue","createQueue","Promise","all","map","iterable","value","push","done","promise","then","Symbol","asyncIterator","next","pull"],"mappings":";;;;+BAEaA;;;eAAAA;;;0BAFe;AAErB,MAAMA,UAAU,CAAiB,GAAGC;IACzC,MAAMC,QAAQC,IAAAA,qBAAW;IAEzBC,QAAQC,GAAG,CACTJ,UAAUK,GAAG,CAAC,OAAOC;QACnB,WAAW,MAAMC,SAASD,SAAU;YAClC,MAAML,MAAMO,IAAI,CAAC;gBAAED;gBAAOE,MAAM;YAAM,GAAGC,OAAO;QAClD;IACF,IACAC,IAAI,CAAC,UAAYV,MAAMQ,IAAI,CAAC;YAAEF,OAAO;YAAME,MAAM;QAAK;IAExD,OAAO;QACL,CAACG,OAAOC,aAAa,CAAC;YACpB,OAAO;gBACLC;oBACE,OAAOb,MAAMc,IAAI,GAAGL,OAAO;gBAC7B;YACF;QACF;IACF;AACF"}
|
package/build/combine.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/combine.ts"],"sourcesContent":["import { createQueue } from './queue.js';\n\nexport const combine = <T, R = unknown>(...iterables: AsyncIterable<T>[]) => {\n const queue = createQueue<IteratorResult<T, R>>();\n\n Promise.all(\n iterables.map(async (iterable) => {\n for await (const value of iterable) {\n await queue.push({ value, done: false }).promise;\n }\n })
|
|
1
|
+
{"version":3,"sources":["../src/combine.ts"],"sourcesContent":["import { createQueue } from './queue.js';\n\nexport const combine = <T, R = unknown>(...iterables: AsyncIterable<T>[]) => {\n const queue = createQueue<IteratorResult<T, R>>();\n\n Promise.all(\n iterables.map(async (iterable) => {\n for await (const value of iterable) {\n await queue.push({ value, done: false }).promise;\n }\n }),\n ).then(async () => queue.done({ value: null, done: true }));\n\n return {\n [Symbol.asyncIterator]() {\n return {\n next() {\n return queue.pull().promise;\n },\n };\n },\n };\n};\n"],"names":["createQueue","combine","iterables","queue","Promise","all","map","iterable","value","push","done","promise","then","Symbol","asyncIterator","next","pull"],"mappings":"AAAA,SAASA,WAAW,QAAQ,aAAa;AAEzC,OAAO,MAAMC,UAAU,CAAiB,GAAGC;IACzC,MAAMC,QAAQH;IAEdI,QAAQC,GAAG,CACTH,UAAUI,GAAG,CAAC,OAAOC;QACnB,WAAW,MAAMC,SAASD,SAAU;YAClC,MAAMJ,MAAMM,IAAI,CAAC;gBAAED;gBAAOE,MAAM;YAAM,GAAGC,OAAO;QAClD;IACF,IACAC,IAAI,CAAC,UAAYT,MAAMO,IAAI,CAAC;YAAEF,OAAO;YAAME,MAAM;QAAK;IAExD,OAAO;QACL,CAACG,OAAOC,aAAa,CAAC;YACpB,OAAO;gBACLC;oBACE,OAAOZ,MAAMa,IAAI,GAAGL,OAAO;gBAC7B;YACF;QACF;IACF;AACF,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/generatorify.ts"],"sourcesContent":["import { createQueue } from './queue.js';\n\nexport interface TaskCallback<T> {\n (value: T): Promise<void>;\n}\n\nexport interface Task<T, R = unknown> {\n (callback: TaskCallback<T>): R;\n}\n\nexport const generatorify = <T, R>(task: Task<T, R>): AsyncIterable<T> => {\n const queue = createQueue<IteratorResult<T, R>>();\n\n Promise.resolve(\n task(async (value) => {\n await queue.push({ value, done: false }).promise;\n })
|
|
1
|
+
{"version":3,"sources":["../src/generatorify.ts"],"sourcesContent":["import { createQueue } from './queue.js';\n\nexport interface TaskCallback<T> {\n (value: T): Promise<void>;\n}\n\nexport interface Task<T, R = unknown> {\n (callback: TaskCallback<T>): R;\n}\n\nexport const generatorify = <T, R>(task: Task<T, R>): AsyncIterable<T> => {\n const queue = createQueue<IteratorResult<T, R>>();\n\n Promise.resolve(\n task(async (value) => {\n await queue.push({ value, done: false }).promise;\n }),\n ).then(async (value) => queue.done({ value, done: true }));\n\n return {\n [Symbol.asyncIterator]() {\n return {\n next() {\n return queue.pull().promise;\n },\n };\n },\n };\n};\n"],"names":["generatorify","task","queue","createQueue","Promise","resolve","value","push","done","promise","then","Symbol","asyncIterator","next","pull"],"mappings":";;;;+BAUaA;;;eAAAA;;;0BAVe;AAUrB,MAAMA,eAAe,CAAOC;IACjC,MAAMC,QAAQC,IAAAA,qBAAW;IAEzBC,QAAQC,OAAO,CACbJ,KAAK,OAAOK;QACV,MAAMJ,MAAMK,IAAI,CAAC;YAAED;YAAOE,MAAM;QAAM,GAAGC,OAAO;IAClD,IACAC,IAAI,CAAC,OAAOJ,QAAUJ,MAAMM,IAAI,CAAC;YAAEF;YAAOE,MAAM;QAAK;IAEvD,OAAO;QACL,CAACG,OAAOC,aAAa,CAAC;YACpB,OAAO;gBACLC;oBACE,OAAOX,MAAMY,IAAI,GAAGL,OAAO;gBAC7B;YACF;QACF;IACF;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/generatorify.ts"],"sourcesContent":["import { createQueue } from './queue.js';\n\nexport interface TaskCallback<T> {\n (value: T): Promise<void>;\n}\n\nexport interface Task<T, R = unknown> {\n (callback: TaskCallback<T>): R;\n}\n\nexport const generatorify = <T, R>(task: Task<T, R>): AsyncIterable<T> => {\n const queue = createQueue<IteratorResult<T, R>>();\n\n Promise.resolve(\n task(async (value) => {\n await queue.push({ value, done: false }).promise;\n })
|
|
1
|
+
{"version":3,"sources":["../src/generatorify.ts"],"sourcesContent":["import { createQueue } from './queue.js';\n\nexport interface TaskCallback<T> {\n (value: T): Promise<void>;\n}\n\nexport interface Task<T, R = unknown> {\n (callback: TaskCallback<T>): R;\n}\n\nexport const generatorify = <T, R>(task: Task<T, R>): AsyncIterable<T> => {\n const queue = createQueue<IteratorResult<T, R>>();\n\n Promise.resolve(\n task(async (value) => {\n await queue.push({ value, done: false }).promise;\n }),\n ).then(async (value) => queue.done({ value, done: true }));\n\n return {\n [Symbol.asyncIterator]() {\n return {\n next() {\n return queue.pull().promise;\n },\n };\n },\n };\n};\n"],"names":["createQueue","generatorify","task","queue","Promise","resolve","value","push","done","promise","then","Symbol","asyncIterator","next","pull"],"mappings":"AAAA,SAASA,WAAW,QAAQ,aAAa;AAUzC,OAAO,MAAMC,eAAe,CAAOC;IACjC,MAAMC,QAAQH;IAEdI,QAAQC,OAAO,CACbH,KAAK,OAAOI;QACV,MAAMH,MAAMI,IAAI,CAAC;YAAED;YAAOE,MAAM;QAAM,GAAGC,OAAO;IAClD,IACAC,IAAI,CAAC,OAAOJ,QAAUH,MAAMK,IAAI,CAAC;YAAEF;YAAOE,MAAM;QAAK;IAEvD,OAAO;QACL,CAACG,OAAOC,aAAa,CAAC;YACpB,OAAO;gBACLC;oBACE,OAAOV,MAAMW,IAAI,GAAGL,OAAO;gBAC7B;YACF;QACF;IACF;AACF,EAAE"}
|
package/build/queue.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/queue.ts"],"sourcesContent":["import { defer, Deferred
|
|
1
|
+
{"version":3,"sources":["../src/queue.ts"],"sourcesContent":["import { defer, Deferred } from './defer.js';\n\nexport const createQueue = <T, E = Error>() => {\n const pendingQueue: Deferred<T, E>[] = [];\n const resolvedQueue: Deferred<T, E>[] = [];\n const requestQueue: Deferred<T, E>[] = [];\n\n const push = (value: T): Deferred<T, E> => {\n const task = defer<T, E>();\n pendingQueue.push(task);\n\n Promise.resolve(value)\n .then(task.resolve)\n .catch(task.reject)\n .finally(() => {\n pendingQueue.splice(pendingQueue.indexOf(task), 1);\n if (requestQueue.length > 0) {\n const request = requestQueue.shift();\n request.resolve(task.promise);\n } else {\n resolvedQueue.push(task);\n }\n });\n\n return task;\n };\n\n const pull = (): Deferred<T, E> => {\n if (resolvedQueue.length > 0) {\n return resolvedQueue.shift();\n }\n const task = defer<T, E>();\n requestQueue.push(task);\n\n return task;\n };\n\n return {\n push,\n pull,\n done(value: T) {\n push(value);\n return Promise.all(\n [...pendingQueue, ...resolvedQueue, ...requestQueue].map(\n (d) => d.promise,\n ),\n );\n },\n get size() {\n return pendingQueue.length + resolvedQueue.length + requestQueue.length;\n },\n };\n};\n"],"names":["createQueue","pendingQueue","resolvedQueue","requestQueue","push","value","task","defer","Promise","resolve","then","catch","reject","finally","splice","indexOf","length","request","shift","promise","pull","done","all","map","d","size"],"mappings":";;;;+BAEaA;;;eAAAA;;;0BAFmB;AAEzB,MAAMA,cAAc;IACzB,MAAMC,eAAiC,EAAE;IACzC,MAAMC,gBAAkC,EAAE;IAC1C,MAAMC,eAAiC,EAAE;IAEzC,MAAMC,OAAO,CAACC;QACZ,MAAMC,OAAOC,IAAAA,eAAK;QAClBN,aAAaG,IAAI,CAACE;QAElBE,QAAQC,OAAO,CAACJ,OACbK,IAAI,CAACJ,KAAKG,OAAO,EACjBE,KAAK,CAACL,KAAKM,MAAM,EACjBC,OAAO,CAAC;YACPZ,aAAaa,MAAM,CAACb,aAAac,OAAO,CAACT,OAAO;YAChD,IAAIH,aAAaa,MAAM,GAAG,GAAG;gBAC3B,MAAMC,UAAUd,aAAae,KAAK;gBAClCD,QAAQR,OAAO,CAACH,KAAKa,OAAO;YAC9B,OAAO;gBACLjB,cAAcE,IAAI,CAACE;YACrB;QACF;QAEF,OAAOA;IACT;IAEA,MAAMc,OAAO;QACX,IAAIlB,cAAcc,MAAM,GAAG,GAAG;YAC5B,OAAOd,cAAcgB,KAAK;QAC5B;QACA,MAAMZ,OAAOC,IAAAA,eAAK;QAClBJ,aAAaC,IAAI,CAACE;QAElB,OAAOA;IACT;IAEA,OAAO;QACLF;QACAgB;QACAC,MAAKhB,KAAQ;YACXD,KAAKC;YACL,OAAOG,QAAQc,GAAG,CAChB;mBAAIrB;mBAAiBC;mBAAkBC;aAAa,CAACoB,GAAG,CACtD,CAACC,IAAMA,EAAEL,OAAO;QAGtB;QACA,IAAIM,QAAO;YACT,OAAOxB,aAAae,MAAM,GAAGd,cAAcc,MAAM,GAAGb,aAAaa,MAAM;QACzE;IACF;AACF"}
|
package/build/queue.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/queue.ts"],"sourcesContent":["import { defer, Deferred
|
|
1
|
+
{"version":3,"sources":["../src/queue.ts"],"sourcesContent":["import { defer, Deferred } from './defer.js';\n\nexport const createQueue = <T, E = Error>() => {\n const pendingQueue: Deferred<T, E>[] = [];\n const resolvedQueue: Deferred<T, E>[] = [];\n const requestQueue: Deferred<T, E>[] = [];\n\n const push = (value: T): Deferred<T, E> => {\n const task = defer<T, E>();\n pendingQueue.push(task);\n\n Promise.resolve(value)\n .then(task.resolve)\n .catch(task.reject)\n .finally(() => {\n pendingQueue.splice(pendingQueue.indexOf(task), 1);\n if (requestQueue.length > 0) {\n const request = requestQueue.shift();\n request.resolve(task.promise);\n } else {\n resolvedQueue.push(task);\n }\n });\n\n return task;\n };\n\n const pull = (): Deferred<T, E> => {\n if (resolvedQueue.length > 0) {\n return resolvedQueue.shift();\n }\n const task = defer<T, E>();\n requestQueue.push(task);\n\n return task;\n };\n\n return {\n push,\n pull,\n done(value: T) {\n push(value);\n return Promise.all(\n [...pendingQueue, ...resolvedQueue, ...requestQueue].map(\n (d) => d.promise,\n ),\n );\n },\n get size() {\n return pendingQueue.length + resolvedQueue.length + requestQueue.length;\n },\n };\n};\n"],"names":["defer","createQueue","pendingQueue","resolvedQueue","requestQueue","push","value","task","Promise","resolve","then","catch","reject","finally","splice","indexOf","length","request","shift","promise","pull","done","all","map","d","size"],"mappings":"AAAA,SAASA,KAAK,QAAkB,aAAa;AAE7C,OAAO,MAAMC,cAAc;IACzB,MAAMC,eAAiC,EAAE;IACzC,MAAMC,gBAAkC,EAAE;IAC1C,MAAMC,eAAiC,EAAE;IAEzC,MAAMC,OAAO,CAACC;QACZ,MAAMC,OAAOP;QACbE,aAAaG,IAAI,CAACE;QAElBC,QAAQC,OAAO,CAACH,OACbI,IAAI,CAACH,KAAKE,OAAO,EACjBE,KAAK,CAACJ,KAAKK,MAAM,EACjBC,OAAO,CAAC;YACPX,aAAaY,MAAM,CAACZ,aAAaa,OAAO,CAACR,OAAO;YAChD,IAAIH,aAAaY,MAAM,GAAG,GAAG;gBAC3B,MAAMC,UAAUb,aAAac,KAAK;gBAClCD,QAAQR,OAAO,CAACF,KAAKY,OAAO;YAC9B,OAAO;gBACLhB,cAAcE,IAAI,CAACE;YACrB;QACF;QAEF,OAAOA;IACT;IAEA,MAAMa,OAAO;QACX,IAAIjB,cAAca,MAAM,GAAG,GAAG;YAC5B,OAAOb,cAAce,KAAK;QAC5B;QACA,MAAMX,OAAOP;QACbI,aAAaC,IAAI,CAACE;QAElB,OAAOA;IACT;IAEA,OAAO;QACLF;QACAe;QACAC,MAAKf,KAAQ;YACXD,KAAKC;YACL,OAAOE,QAAQc,GAAG,CAChB;mBAAIpB;mBAAiBC;mBAAkBC;aAAa,CAACmB,GAAG,CACtD,CAACC,IAAMA,EAAEL,OAAO;QAGtB;QACA,IAAIM,QAAO;YACT,OAAOvB,aAAac,MAAM,GAAGb,cAAca,MAAM,GAAGZ,aAAaY,MAAM;QACzE;IACF;AACF,EAAE"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "asygen",
|
|
3
3
|
"description": "0-Deps, simple and fast async generator library for browser and NodeJS",
|
|
4
|
-
"version": "0.3.
|
|
4
|
+
"version": "0.3.2",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"types": "build/index.d.ts",
|
|
7
7
|
"main": "build/index.cjs",
|
|
@@ -64,17 +64,16 @@
|
|
|
64
64
|
"@swc/jest": "^0.2.26",
|
|
65
65
|
"@types/jest": "^29.5.2",
|
|
66
66
|
"@types/node": "^20.3.1",
|
|
67
|
-
"@typescript-eslint/eslint-plugin": "^
|
|
68
|
-
"@typescript-eslint/parser": "^
|
|
67
|
+
"@typescript-eslint/eslint-plugin": "^6.3.0",
|
|
68
|
+
"@typescript-eslint/parser": "^6.3.0",
|
|
69
69
|
"eslint": "^8.42.0",
|
|
70
70
|
"eslint-plugin-import": "^2.27.5",
|
|
71
|
-
"eslint-plugin-prettier": "^
|
|
71
|
+
"eslint-plugin-prettier": "^5.0.0",
|
|
72
72
|
"fast-glob": "^3.2.12",
|
|
73
73
|
"husky": "^8.0.3",
|
|
74
74
|
"inop": "^0.3.1",
|
|
75
75
|
"jest": "^29.5.0",
|
|
76
|
-
"prettier": "^
|
|
77
|
-
"pretty-quick": "^3.1.3",
|
|
76
|
+
"prettier": "^3.0.1",
|
|
78
77
|
"ts-jest": "^29.1.0",
|
|
79
78
|
"typescript": "^5.1.3"
|
|
80
79
|
}
|
package/src/combine.ts
CHANGED
|
@@ -8,7 +8,7 @@ export const combine = <T, R = unknown>(...iterables: AsyncIterable<T>[]) => {
|
|
|
8
8
|
for await (const value of iterable) {
|
|
9
9
|
await queue.push({ value, done: false }).promise;
|
|
10
10
|
}
|
|
11
|
-
})
|
|
11
|
+
}),
|
|
12
12
|
).then(async () => queue.done({ value: null, done: true }));
|
|
13
13
|
|
|
14
14
|
return {
|
package/src/generatorify.ts
CHANGED
|
@@ -14,7 +14,7 @@ export const generatorify = <T, R>(task: Task<T, R>): AsyncIterable<T> => {
|
|
|
14
14
|
Promise.resolve(
|
|
15
15
|
task(async (value) => {
|
|
16
16
|
await queue.push({ value, done: false }).promise;
|
|
17
|
-
})
|
|
17
|
+
}),
|
|
18
18
|
).then(async (value) => queue.done({ value, done: true }));
|
|
19
19
|
|
|
20
20
|
return {
|
package/src/queue.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defer, Deferred
|
|
1
|
+
import { defer, Deferred } from './defer.js';
|
|
2
2
|
|
|
3
3
|
export const createQueue = <T, E = Error>() => {
|
|
4
4
|
const pendingQueue: Deferred<T, E>[] = [];
|
|
@@ -42,8 +42,8 @@ export const createQueue = <T, E = Error>() => {
|
|
|
42
42
|
push(value);
|
|
43
43
|
return Promise.all(
|
|
44
44
|
[...pendingQueue, ...resolvedQueue, ...requestQueue].map(
|
|
45
|
-
(d) => d.promise
|
|
46
|
-
)
|
|
45
|
+
(d) => d.promise,
|
|
46
|
+
),
|
|
47
47
|
);
|
|
48
48
|
},
|
|
49
49
|
get size() {
|