iter-fest 0.1.1-main.c619924 → 0.1.1-main.cd25da6

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 (43) hide show
  1. package/README.md +97 -9
  2. package/dist/chunk-EIIP7YWB.mjs +27 -0
  3. package/dist/chunk-EIIP7YWB.mjs.map +1 -0
  4. package/dist/chunk-EUVK4YM7.mjs +25 -0
  5. package/dist/chunk-EUVK4YM7.mjs.map +1 -0
  6. package/dist/chunk-MOBXUTO5.mjs +22 -0
  7. package/dist/chunk-MOBXUTO5.mjs.map +1 -0
  8. package/dist/chunk-O5SQJUKB.mjs +37 -0
  9. package/dist/chunk-O5SQJUKB.mjs.map +1 -0
  10. package/dist/iter-fest.d.mts +4 -1
  11. package/dist/iter-fest.d.ts +4 -1
  12. package/dist/iter-fest.iterableGetReadable.d.mts +3 -0
  13. package/dist/iter-fest.iterableGetReadable.d.ts +3 -0
  14. package/dist/iter-fest.iterableGetReadable.js +46 -0
  15. package/dist/iter-fest.iterableGetReadable.js.map +1 -0
  16. package/dist/iter-fest.iterableGetReadable.mjs +7 -0
  17. package/dist/iter-fest.js +89 -48
  18. package/dist/iter-fest.js.map +1 -1
  19. package/dist/iter-fest.mjs +21 -9
  20. package/dist/{iter-fest.observableValues.d.mts → iter-fest.observableSubscribeAsReadable.d.mts} +2 -2
  21. package/dist/{iter-fest.observableValues.d.ts → iter-fest.observableSubscribeAsReadable.d.ts} +2 -2
  22. package/dist/iter-fest.observableSubscribeAsReadable.js +51 -0
  23. package/dist/iter-fest.observableSubscribeAsReadable.js.map +1 -0
  24. package/dist/iter-fest.observableSubscribeAsReadable.mjs +7 -0
  25. package/dist/iter-fest.observableSubscribeAsReadable.mjs.map +1 -0
  26. package/dist/iter-fest.pushAsyncIterableIterator.d.mts +9 -0
  27. package/dist/iter-fest.pushAsyncIterableIterator.d.ts +9 -0
  28. package/dist/{iter-fest.observableValues.js → iter-fest.pushAsyncIterableIterator.js} +31 -58
  29. package/dist/iter-fest.pushAsyncIterableIterator.js.map +1 -0
  30. package/dist/iter-fest.pushAsyncIterableIterator.mjs +7 -0
  31. package/dist/iter-fest.pushAsyncIterableIterator.mjs.map +1 -0
  32. package/dist/iter-fest.readerValues.d.mts +3 -0
  33. package/dist/iter-fest.readerValues.d.ts +3 -0
  34. package/dist/iter-fest.readerValues.js +49 -0
  35. package/dist/iter-fest.readerValues.js.map +1 -0
  36. package/dist/iter-fest.readerValues.mjs +7 -0
  37. package/dist/iter-fest.readerValues.mjs.map +1 -0
  38. package/package.json +37 -7
  39. package/dist/chunk-QDUX45ZP.mjs +0 -64
  40. package/dist/chunk-QDUX45ZP.mjs.map +0 -1
  41. package/dist/iter-fest.observableValues.js.map +0 -1
  42. package/dist/iter-fest.observableValues.mjs +0 -7
  43. /package/dist/{iter-fest.observableValues.mjs.map → iter-fest.iterableGetReadable.mjs.map} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iter-fest",
3
- "version": "0.1.1-main.c619924",
3
+ "version": "0.1.1-main.cd25da6",
4
4
  "description": "A collection of utilities for iterations.",
5
5
  "files": [
6
6
  "./dist/"
@@ -106,6 +106,16 @@
106
106
  "default": "./dist/iter-fest.iterableForEach.js"
107
107
  }
108
108
  },
109
+ "./iterableGetReadable": {
110
+ "import": {
111
+ "types": "./dist/iter-fest.iterableGetReadable.d.mts",
112
+ "default": "./dist/iter-fest.iterableGetReadable.mjs"
113
+ },
114
+ "require": {
115
+ "types": "./dist/iter-fest.iterableGetReadable.d.ts",
116
+ "default": "./dist/iter-fest.iterableGetReadable.js"
117
+ }
118
+ },
109
119
  "./iterableIncludes": {
110
120
  "import": {
111
121
  "types": "./dist/iter-fest.iterableIncludes.d.mts",
@@ -236,14 +246,34 @@
236
246
  "default": "./dist/iter-fest.observableFromAsync.js"
237
247
  }
238
248
  },
239
- "./observableValues": {
249
+ "./observableSubscribeAsReadable": {
250
+ "import": {
251
+ "types": "./dist/iter-fest.observableSubscribeAsReadable.d.mts",
252
+ "default": "./dist/iter-fest.observableSubscribeAsReadable.mjs"
253
+ },
254
+ "require": {
255
+ "types": "./dist/iter-fest.observableSubscribeAsReadable.d.ts",
256
+ "default": "./dist/iter-fest.observableSubscribeAsReadable.js"
257
+ }
258
+ },
259
+ "./pushAsyncIterableIterator": {
260
+ "import": {
261
+ "types": "./dist/iter-fest.pushAsyncIterableIterator.d.mts",
262
+ "default": "./dist/iter-fest.pushAsyncIterableIterator.mjs"
263
+ },
264
+ "require": {
265
+ "types": "./dist/iter-fest.pushAsyncIterableIterator.d.ts",
266
+ "default": "./dist/iter-fest.pushAsyncIterableIterator.js"
267
+ }
268
+ },
269
+ "./readerValues": {
240
270
  "import": {
241
- "types": "./dist/iter-fest.observableValues.d.mts",
242
- "default": "./dist/iter-fest.observableValues.mjs"
271
+ "types": "./dist/iter-fest.readerValues.d.mts",
272
+ "default": "./dist/iter-fest.readerValues.mjs"
243
273
  },
244
274
  "require": {
245
- "types": "./dist/iter-fest.observableValues.d.ts",
246
- "default": "./dist/iter-fest.observableValues.js"
275
+ "types": "./dist/iter-fest.readerValues.d.ts",
276
+ "default": "./dist/iter-fest.readerValues.js"
247
277
  }
248
278
  },
249
279
  "./symbolObservable": {
@@ -318,6 +348,6 @@
318
348
  "typescript": "^5.4.5"
319
349
  },
320
350
  "dependencies": {
321
- "iter-fest": "^0.1.1-main.c619924"
351
+ "iter-fest": "^0.1.1-main.cd25da6"
322
352
  }
323
353
  }
@@ -1,64 +0,0 @@
1
- // src/private/withResolvers.ts
2
- import coreJSPromiseWithResolvers from "core-js-pure/full/promise/with-resolvers";
3
- function withResolvers() {
4
- return coreJSPromiseWithResolvers();
5
- }
6
-
7
- // src/observableValues.ts
8
- var COMPLETE = Symbol("complete");
9
- var NEXT = Symbol("next");
10
- var THROW = Symbol("throw");
11
- function observableValues(observable) {
12
- const queue = [];
13
- let deferred = withResolvers();
14
- const push = (entry) => {
15
- queue.push(entry);
16
- deferred.resolve(entry);
17
- deferred = withResolvers();
18
- };
19
- const subscription = observable.subscribe({
20
- complete() {
21
- push([COMPLETE]);
22
- },
23
- error(err) {
24
- push([THROW, err]);
25
- },
26
- next(value) {
27
- push([NEXT, value]);
28
- }
29
- });
30
- const asyncIterableIterator = {
31
- [Symbol.asyncIterator]() {
32
- return this;
33
- },
34
- async next() {
35
- let entry = queue.shift();
36
- if (!entry) {
37
- entry = await deferred.promise;
38
- queue.shift();
39
- }
40
- switch (entry[0]) {
41
- case COMPLETE:
42
- return { done: true, value: void 0 };
43
- case THROW:
44
- throw entry[1];
45
- case NEXT:
46
- return { done: false, value: entry[1] };
47
- }
48
- },
49
- async return() {
50
- subscription.unsubscribe();
51
- return { done: true, value: void 0 };
52
- },
53
- async throw() {
54
- subscription.unsubscribe();
55
- return { done: true, value: void 0 };
56
- }
57
- };
58
- return asyncIterableIterator;
59
- }
60
-
61
- export {
62
- observableValues
63
- };
64
- //# sourceMappingURL=chunk-QDUX45ZP.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/private/withResolvers.ts","../src/observableValues.ts"],"sourcesContent":["// @ts-expect-error \"core-js\" is not typed.\nimport coreJSPromiseWithResolvers from 'core-js-pure/full/promise/with-resolvers';\n\nexport default function withResolvers<T>(): PromiseWithResolvers<T> {\n return coreJSPromiseWithResolvers();\n}\n","import withResolvers from './private/withResolvers';\n\nimport { Observable } from './Observable';\n\nconst COMPLETE = Symbol('complete');\nconst NEXT = Symbol('next');\nconst THROW = Symbol('throw');\n\ntype Entry<T> = [typeof COMPLETE] | [typeof NEXT, T] | [typeof THROW, unknown];\n\nexport function observableValues<T>(observable: Observable<T>): AsyncIterableIterator<T> {\n const queue: Entry<T>[] = [];\n let deferred = withResolvers<Entry<T>>();\n\n const push = (entry: Entry<T>) => {\n queue.push(entry);\n deferred.resolve(entry);\n deferred = withResolvers();\n };\n\n const subscription = observable.subscribe({\n complete() {\n push([COMPLETE]);\n },\n error(err: unknown) {\n push([THROW, err]);\n },\n next(value: T) {\n push([NEXT, value]);\n }\n });\n\n const asyncIterableIterator: AsyncIterableIterator<T> = {\n [Symbol.asyncIterator]() {\n return this;\n },\n async next(): Promise<IteratorResult<T>> {\n let entry = queue.shift();\n\n if (!entry) {\n entry = await deferred.promise;\n queue.shift();\n }\n\n switch (entry[0]) {\n case COMPLETE:\n return { done: true, value: undefined };\n\n case THROW:\n throw entry[1];\n\n case NEXT:\n return { done: false, value: entry[1] };\n }\n },\n async return() {\n subscription.unsubscribe();\n\n return { done: true, value: undefined };\n },\n async throw() {\n subscription.unsubscribe();\n\n return { done: true, value: undefined };\n }\n };\n\n return asyncIterableIterator;\n}\n"],"mappings":";AACA,OAAO,gCAAgC;AAExB,SAAR,gBAA6D;AAClE,SAAO,2BAA2B;AACpC;;;ACDA,IAAM,WAAW,OAAO,UAAU;AAClC,IAAM,OAAO,OAAO,MAAM;AAC1B,IAAM,QAAQ,OAAO,OAAO;AAIrB,SAAS,iBAAoB,YAAqD;AACvF,QAAM,QAAoB,CAAC;AAC3B,MAAI,WAAW,cAAwB;AAEvC,QAAM,OAAO,CAAC,UAAoB;AAChC,UAAM,KAAK,KAAK;AAChB,aAAS,QAAQ,KAAK;AACtB,eAAW,cAAc;AAAA,EAC3B;AAEA,QAAM,eAAe,WAAW,UAAU;AAAA,IACxC,WAAW;AACT,WAAK,CAAC,QAAQ,CAAC;AAAA,IACjB;AAAA,IACA,MAAM,KAAc;AAClB,WAAK,CAAC,OAAO,GAAG,CAAC;AAAA,IACnB;AAAA,IACA,KAAK,OAAU;AACb,WAAK,CAAC,MAAM,KAAK,CAAC;AAAA,IACpB;AAAA,EACF,CAAC;AAED,QAAM,wBAAkD;AAAA,IACtD,CAAC,OAAO,aAAa,IAAI;AACvB,aAAO;AAAA,IACT;AAAA,IACA,MAAM,OAAmC;AACvC,UAAI,QAAQ,MAAM,MAAM;AAExB,UAAI,CAAC,OAAO;AACV,gBAAQ,MAAM,SAAS;AACvB,cAAM,MAAM;AAAA,MACd;AAEA,cAAQ,MAAM,CAAC,GAAG;AAAA,QAChB,KAAK;AACH,iBAAO,EAAE,MAAM,MAAM,OAAO,OAAU;AAAA,QAExC,KAAK;AACH,gBAAM,MAAM,CAAC;AAAA,QAEf,KAAK;AACH,iBAAO,EAAE,MAAM,OAAO,OAAO,MAAM,CAAC,EAAE;AAAA,MAC1C;AAAA,IACF;AAAA,IACA,MAAM,SAAS;AACb,mBAAa,YAAY;AAEzB,aAAO,EAAE,MAAM,MAAM,OAAO,OAAU;AAAA,IACxC;AAAA,IACA,MAAM,QAAQ;AACZ,mBAAa,YAAY;AAEzB,aAAO,EAAE,MAAM,MAAM,OAAO,OAAU;AAAA,IACxC;AAAA,EACF;AAEA,SAAO;AACT;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/observableValues.ts","../src/private/withResolvers.ts"],"sourcesContent":["import withResolvers from './private/withResolvers';\n\nimport { Observable } from './Observable';\n\nconst COMPLETE = Symbol('complete');\nconst NEXT = Symbol('next');\nconst THROW = Symbol('throw');\n\ntype Entry<T> = [typeof COMPLETE] | [typeof NEXT, T] | [typeof THROW, unknown];\n\nexport function observableValues<T>(observable: Observable<T>): AsyncIterableIterator<T> {\n const queue: Entry<T>[] = [];\n let deferred = withResolvers<Entry<T>>();\n\n const push = (entry: Entry<T>) => {\n queue.push(entry);\n deferred.resolve(entry);\n deferred = withResolvers();\n };\n\n const subscription = observable.subscribe({\n complete() {\n push([COMPLETE]);\n },\n error(err: unknown) {\n push([THROW, err]);\n },\n next(value: T) {\n push([NEXT, value]);\n }\n });\n\n const asyncIterableIterator: AsyncIterableIterator<T> = {\n [Symbol.asyncIterator]() {\n return this;\n },\n async next(): Promise<IteratorResult<T>> {\n let entry = queue.shift();\n\n if (!entry) {\n entry = await deferred.promise;\n queue.shift();\n }\n\n switch (entry[0]) {\n case COMPLETE:\n return { done: true, value: undefined };\n\n case THROW:\n throw entry[1];\n\n case NEXT:\n return { done: false, value: entry[1] };\n }\n },\n async return() {\n subscription.unsubscribe();\n\n return { done: true, value: undefined };\n },\n async throw() {\n subscription.unsubscribe();\n\n return { done: true, value: undefined };\n }\n };\n\n return asyncIterableIterator;\n}\n","// @ts-expect-error \"core-js\" is not typed.\nimport coreJSPromiseWithResolvers from 'core-js-pure/full/promise/with-resolvers';\n\nexport default function withResolvers<T>(): PromiseWithResolvers<T> {\n return coreJSPromiseWithResolvers();\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,4BAAuC;AAExB,SAAR,gBAA6D;AAClE,aAAO,sBAAAA,SAA2B;AACpC;;;ADDA,IAAM,WAAW,OAAO,UAAU;AAClC,IAAM,OAAO,OAAO,MAAM;AAC1B,IAAM,QAAQ,OAAO,OAAO;AAIrB,SAAS,iBAAoB,YAAqD;AACvF,QAAM,QAAoB,CAAC;AAC3B,MAAI,WAAW,cAAwB;AAEvC,QAAM,OAAO,CAAC,UAAoB;AAChC,UAAM,KAAK,KAAK;AAChB,aAAS,QAAQ,KAAK;AACtB,eAAW,cAAc;AAAA,EAC3B;AAEA,QAAM,eAAe,WAAW,UAAU;AAAA,IACxC,WAAW;AACT,WAAK,CAAC,QAAQ,CAAC;AAAA,IACjB;AAAA,IACA,MAAM,KAAc;AAClB,WAAK,CAAC,OAAO,GAAG,CAAC;AAAA,IACnB;AAAA,IACA,KAAK,OAAU;AACb,WAAK,CAAC,MAAM,KAAK,CAAC;AAAA,IACpB;AAAA,EACF,CAAC;AAED,QAAM,wBAAkD;AAAA,IACtD,CAAC,OAAO,aAAa,IAAI;AACvB,aAAO;AAAA,IACT;AAAA,IACA,MAAM,OAAmC;AACvC,UAAI,QAAQ,MAAM,MAAM;AAExB,UAAI,CAAC,OAAO;AACV,gBAAQ,MAAM,SAAS;AACvB,cAAM,MAAM;AAAA,MACd;AAEA,cAAQ,MAAM,CAAC,GAAG;AAAA,QAChB,KAAK;AACH,iBAAO,EAAE,MAAM,MAAM,OAAO,OAAU;AAAA,QAExC,KAAK;AACH,gBAAM,MAAM,CAAC;AAAA,QAEf,KAAK;AACH,iBAAO,EAAE,MAAM,OAAO,OAAO,MAAM,CAAC,EAAE;AAAA,MAC1C;AAAA,IACF;AAAA,IACA,MAAM,SAAS;AACb,mBAAa,YAAY;AAEzB,aAAO,EAAE,MAAM,MAAM,OAAO,OAAU;AAAA,IACxC;AAAA,IACA,MAAM,QAAQ;AACZ,mBAAa,YAAY;AAEzB,aAAO,EAAE,MAAM,MAAM,OAAO,OAAU;AAAA,IACxC;AAAA,EACF;AAEA,SAAO;AACT;","names":["coreJSPromiseWithResolvers"]}
@@ -1,7 +0,0 @@
1
- import {
2
- observableValues
3
- } from "./chunk-QDUX45ZP.mjs";
4
- export {
5
- observableValues
6
- };
7
- //# sourceMappingURL=iter-fest.observableValues.mjs.map