@graffy/stream 0.15.8-alpha.1 → 0.15.8-alpha.5

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/index.cjs ADDED
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports[Symbol.toStringTag]="Module";const e=Promise.resolve({value:void 0,done:!0});function t(t,r={}){const n=[],o=[];let s,l;const{highWatermark:u=1/0,lowWatermark:i=0,debugId:h}=r,a=e=>{if(s)return;const t=Promise.resolve({value:e,done:!1});return o.length?o.shift()(t):(n.push(t),n.length>=u?new Promise((e=>{l=e})):void 0)},m=t=>{let r;for(s=t?Promise.reject(t):e;r=o.shift();)r(s)};let c,d=!1;return{debugId:h,next:()=>(d||(c=t(a,m),d=!0),l&&n.length<=i&&(l(),l=null),n.length?n.shift():s||new Promise((e=>o.push(e)))),return:e=>(s=Promise.resolve({value:e,done:!0}),n.length=0,c&&c(null,e),s),throw:e=>(s=Promise.reject(e),n.length=0,c&&c(e),s),[Symbol.asyncIterator](){return this}}}exports.makeStream=t,exports.mapStream=function(e,r){return t(((t,n)=>{const o=()=>{e.next().then((({value:e,done:s})=>{if(s)return n();t(r(e)),o()})).catch((e=>n(e)))};return o(),(t,r)=>{t?e.throw(t):e.return(r)}}))};
package/index.mjs ADDED
@@ -0,0 +1 @@
1
+ const e=Promise.resolve({value:void 0,done:!0});function t(t,r={}){const n=[],o=[];let l,s;const{highWatermark:u=1/0,lowWatermark:h=0,debugId:i}=r,c=e=>{if(l)return;const t=Promise.resolve({value:e,done:!1});return o.length?o.shift()(t):(n.push(t),n.length>=u?new Promise((e=>{s=e})):void 0)},a=t=>{let r;for(l=t?Promise.reject(t):e;r=o.shift();)r(l)};let d,m=!1;return{debugId:i,next:()=>(m||(d=t(c,a),m=!0),s&&n.length<=h&&(s(),s=null),n.length?n.shift():l||new Promise((e=>o.push(e)))),return:e=>(l=Promise.resolve({value:e,done:!0}),n.length=0,d&&d(null,e),l),throw:e=>(l=Promise.reject(e),n.length=0,d&&d(e),l),[Symbol.asyncIterator](){return this}}}function r(e,r){return t(((t,n)=>{const o=()=>{e.next().then((({value:e,done:l})=>{if(l)return n();t(r(e)),o()})).catch((e=>n(e)))};return o(),(t,r)=>{t?e.throw(t):e.return(r)}}))}export{t as makeStream,r as mapStream};
package/package.json CHANGED
@@ -2,15 +2,17 @@
2
2
  "name": "@graffy/stream",
3
3
  "description": "Utility for creating AsyncIterables (streams) from any callback-based",
4
4
  "author": "aravind (https://github.com/aravindet)",
5
- "version": "0.15.8-alpha.1",
6
- "main": "./cjs/index.js",
5
+ "version": "0.15.8-alpha.5",
6
+ "main": "./index.cjs",
7
+ "exports": {
8
+ "import": "./index.mjs",
9
+ "require": "./index.cjs"
10
+ },
11
+ "module": "./index.mjs",
7
12
  "types": "./types/index.d.ts",
8
13
  "repository": {
9
14
  "type": "git",
10
15
  "url": "git+https://github.com/usegraffy/graffy.git"
11
16
  },
12
- "license": "Apache-2.0",
13
- "dependencies": {
14
- "@babel/runtime-corejs3": "^7.15.3"
15
- }
17
+ "license": "Apache-2.0"
16
18
  }
package/cjs/index.js DELETED
@@ -1,14 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
4
-
5
- exports.__esModule = true;
6
- exports.mapStream = exports.makeStream = void 0;
7
-
8
- var _makeStream = _interopRequireDefault(require("./makeStream.js"));
9
-
10
- exports.makeStream = _makeStream.default;
11
-
12
- var _mapStream = _interopRequireDefault(require("./mapStream.js"));
13
-
14
- exports.mapStream = _mapStream.default;
package/cjs/makeStream.js DELETED
@@ -1,107 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
4
-
5
- exports.__esModule = true;
6
- exports.default = makeStream;
7
-
8
- var _promise = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/promise"));
9
-
10
- var _asyncIterator = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/symbol/async-iterator"));
11
-
12
- /*
13
- This file should not use async/await as it's intended to be usable without
14
- the regenerator polyfill.
15
- */
16
- var normalCompletion = _promise.default.resolve({
17
- value: void 0,
18
- done: true
19
- });
20
-
21
- function makeStream(init, options) {
22
- var _ref;
23
-
24
- if (options === void 0) {
25
- options = {};
26
- }
27
-
28
- var payloads = [];
29
- var requests = [];
30
- var complete;
31
- var drain;
32
- var _options = options,
33
- _options$highWatermar = _options.highWatermark,
34
- highWatermark = _options$highWatermar === void 0 ? Infinity : _options$highWatermar,
35
- _options$lowWatermark = _options.lowWatermark,
36
- lowWatermark = _options$lowWatermark === void 0 ? 0 : _options$lowWatermark,
37
- debugId = _options.debugId;
38
-
39
- var push = function push(value) {
40
- if (complete) return;
41
-
42
- var payload = _promise.default.resolve({
43
- value: value,
44
- done: false
45
- });
46
-
47
- if (requests.length) return requests.shift()(payload);
48
- payloads.push(payload);
49
-
50
- if (payloads.length >= highWatermark) {
51
- return new _promise.default(function (resolve) {
52
- drain = resolve;
53
- });
54
- }
55
- };
56
-
57
- var end = function end(error) {
58
- complete = error ? _promise.default.reject(error) : normalCompletion;
59
- var resolve;
60
-
61
- while (resolve = requests.shift()) {
62
- resolve(complete);
63
- }
64
- };
65
-
66
- var close;
67
- var initialized = false;
68
- return _ref = {
69
- debugId: debugId,
70
- next: function next() {
71
- if (!initialized) {
72
- close = init(push, end);
73
- initialized = true;
74
- }
75
-
76
- if (drain && payloads.length <= lowWatermark) {
77
- drain();
78
- drain = null;
79
- }
80
-
81
- if (payloads.length) return payloads.shift();
82
- if (complete) return complete;
83
- return new _promise.default(function (resolve) {
84
- return requests.push(resolve);
85
- });
86
- },
87
- return: function _return(value) {
88
- complete = _promise.default.resolve({
89
- value: value,
90
- done: true
91
- });
92
- payloads.length = 0;
93
- if (close) close(null, value);
94
- return complete;
95
- },
96
- throw: function _throw(error) {
97
- complete = _promise.default.reject(error);
98
- payloads.length = 0;
99
- if (close) close(error);
100
- return complete;
101
- }
102
- }, _ref[_asyncIterator.default] = function () {
103
- return this;
104
- }, _ref;
105
- }
106
-
107
- module.exports = exports.default;
package/cjs/mapStream.js DELETED
@@ -1,31 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
4
-
5
- exports.__esModule = true;
6
- exports.default = mapStream;
7
-
8
- var _makeStream = _interopRequireDefault(require("./makeStream.js"));
9
-
10
- function mapStream(stream, fn) {
11
- return (0, _makeStream.default)(function (push, end) {
12
- var next = function next() {
13
- stream.next().then(function (_ref) {
14
- var value = _ref.value,
15
- done = _ref.done;
16
- if (done) return end();
17
- push(fn(value));
18
- next();
19
- }).catch(function (error) {
20
- return end(error);
21
- });
22
- };
23
-
24
- next();
25
- return function (error, value) {
26
- error ? stream.throw(error) : stream.return(value);
27
- };
28
- });
29
- }
30
-
31
- module.exports = exports.default;