@push-rpc/next 2.0.11 → 2.0.12
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/README.md +214 -20
- package/example/client.ts +1 -1
- package/example/server.ts +2 -2
- package/package-lock.json +1291 -0
- package/package.json +1 -1
- package/src/client/RpcClientImpl.ts +11 -3
- package/src/client/WebSocketConnection.ts +7 -3
- package/src/client/index.ts +2 -2
- package/src/utils/middleware.ts +7 -2
- package/tests/middleware.ts +104 -7
- package/tests/testUtils.ts +2 -2
- package/dist/client/HttpClient.d.ts +0 -11
- package/dist/client/HttpClient.js +0 -84
- package/dist/client/HttpClient.js.map +0 -1
- package/dist/client/RemoteSubscriptions.d.ts +0 -18
- package/dist/client/RemoteSubscriptions.js +0 -120
- package/dist/client/RemoteSubscriptions.js.map +0 -1
- package/dist/client/RpcClientImpl.d.ts +0 -22
- package/dist/client/RpcClientImpl.js +0 -121
- package/dist/client/RpcClientImpl.js.map +0 -1
- package/dist/client/WebSocketConnection.d.ts +0 -36
- package/dist/client/WebSocketConnection.js +0 -161
- package/dist/client/WebSocketConnection.js.map +0 -1
- package/dist/client/index.d.ts +0 -29
- package/dist/client/index.js +0 -39
- package/dist/client/index.js.map +0 -1
- package/dist/client/remote.d.ts +0 -14
- package/dist/client/remote.js +0 -66
- package/dist/client/remote.js.map +0 -1
- package/dist/index.d.ts +0 -13
- package/dist/index.js.map +0 -1
- package/dist/logger.d.ts +0 -8
- package/dist/logger.js +0 -9
- package/dist/logger.js.map +0 -1
- package/dist/rpc.d.ts +0 -37
- package/dist/rpc.js +0 -33
- package/dist/rpc.js.map +0 -1
- package/dist/server/ConnectionsServer.d.ts +0 -13
- package/dist/server/ConnectionsServer.js +0 -72
- package/dist/server/ConnectionsServer.js.map +0 -1
- package/dist/server/LocalSubscriptions.d.ts +0 -12
- package/dist/server/LocalSubscriptions.js +0 -113
- package/dist/server/LocalSubscriptions.js.map +0 -1
- package/dist/server/RpcServerImpl.d.ts +0 -24
- package/dist/server/RpcServerImpl.js +0 -200
- package/dist/server/RpcServerImpl.js.map +0 -1
- package/dist/server/http.d.ts +0 -9
- package/dist/server/http.js +0 -89
- package/dist/server/http.js.map +0 -1
- package/dist/server/index.d.ts +0 -32
- package/dist/server/index.js +0 -33
- package/dist/server/index.js.map +0 -1
- package/dist/server/local.d.ts +0 -15
- package/dist/server/local.js +0 -46
- package/dist/server/local.js.map +0 -1
- package/dist/utils/cookies.d.ts +0 -7
- package/dist/utils/cookies.js +0 -31
- package/dist/utils/cookies.js.map +0 -1
- package/dist/utils/env.d.ts +0 -6
- package/dist/utils/env.js +0 -22
- package/dist/utils/env.js.map +0 -1
- package/dist/utils/json.d.ts +0 -2
- package/dist/utils/json.js +0 -34
- package/dist/utils/json.js.map +0 -1
- package/dist/utils/middleware.d.ts +0 -2
- package/dist/utils/middleware.js +0 -31
- package/dist/utils/middleware.js.map +0 -1
- package/dist/utils/promises.d.ts +0 -5
- package/dist/utils/promises.js +0 -29
- package/dist/utils/promises.js.map +0 -1
- package/dist/utils/server.d.ts +0 -5
- package/dist/utils/server.js +0 -48
- package/dist/utils/server.js.map +0 -1
- package/dist/utils/throttle.d.ts +0 -4
- package/dist/utils/throttle.js +0 -40
- package/dist/utils/throttle.js.map +0 -1
- package/dist/utils/types.d.ts +0 -1
- package/dist/utils/types.js +0 -3
- package/dist/utils/types.js.map +0 -1
package/dist/utils/env.d.ts
DELETED
package/dist/utils/env.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.environment = exports.Environment = void 0;
|
|
4
|
-
var Environment;
|
|
5
|
-
(function (Environment) {
|
|
6
|
-
Environment[Environment["Browser"] = 0] = "Browser";
|
|
7
|
-
Environment[Environment["Node"] = 1] = "Node";
|
|
8
|
-
Environment[Environment["ReactNative"] = 2] = "ReactNative";
|
|
9
|
-
})(Environment || (exports.Environment = Environment = {}));
|
|
10
|
-
exports.environment = getEnvironment();
|
|
11
|
-
function getEnvironment() {
|
|
12
|
-
if (typeof document !== "undefined") {
|
|
13
|
-
return Environment.Browser;
|
|
14
|
-
}
|
|
15
|
-
else if (typeof navigator !== "undefined" && navigator.product === "ReactNative") {
|
|
16
|
-
return Environment.ReactNative;
|
|
17
|
-
}
|
|
18
|
-
else {
|
|
19
|
-
return Environment.Node;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
//# sourceMappingURL=env.js.map
|
package/dist/utils/env.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/utils/env.ts"],"names":[],"mappings":";;;AAAA,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,mDAAO,CAAA;IACP,6CAAI,CAAA;IACJ,2DAAW,CAAA;AACb,CAAC,EAJW,WAAW,2BAAX,WAAW,QAItB;AAEY,QAAA,WAAW,GAAG,cAAc,EAAE,CAAA;AAE3C,SAAS,cAAc;IACrB,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;QACpC,OAAO,WAAW,CAAC,OAAO,CAAA;IAC5B,CAAC;SAAM,IAAI,OAAO,SAAS,KAAK,WAAW,IAAI,SAAS,CAAC,OAAO,KAAK,aAAa,EAAE,CAAC;QACnF,OAAO,WAAW,CAAC,WAAW,CAAA;IAChC,CAAC;SAAM,CAAC;QACN,OAAO,WAAW,CAAC,IAAI,CAAA;IACzB,CAAC;AACH,CAAC"}
|
package/dist/utils/json.d.ts
DELETED
package/dist/utils/json.js
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.safeParseJson = exports.safeStringify = void 0;
|
|
7
|
-
const fast_stringify_1 = __importDefault(require("fast-stringify"));
|
|
8
|
-
function safeStringify(value) {
|
|
9
|
-
// @ts-ignore
|
|
10
|
-
return (0, fast_stringify_1.default)(value);
|
|
11
|
-
}
|
|
12
|
-
exports.safeStringify = safeStringify;
|
|
13
|
-
function safeParseJson(json) {
|
|
14
|
-
return JSON.parse(json, dateReviver);
|
|
15
|
-
}
|
|
16
|
-
exports.safeParseJson = safeParseJson;
|
|
17
|
-
function dateReviver(key, val) {
|
|
18
|
-
if (typeof val == "string") {
|
|
19
|
-
if (ISO8601_secs.test(val)) {
|
|
20
|
-
return new Date(val);
|
|
21
|
-
}
|
|
22
|
-
if (ISO8601.test(val)) {
|
|
23
|
-
return new Date(val);
|
|
24
|
-
}
|
|
25
|
-
if (ISO8601_date.test(val)) {
|
|
26
|
-
return new Date(val);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
return val;
|
|
30
|
-
}
|
|
31
|
-
const ISO8601 = /^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d.\d\d\dZ$/;
|
|
32
|
-
const ISO8601_secs = /^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\dZ$/;
|
|
33
|
-
const ISO8601_date = /^\d\d\d\d-\d\d-\d\d$/;
|
|
34
|
-
//# sourceMappingURL=json.js.map
|
package/dist/utils/json.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"json.js","sourceRoot":"","sources":["../../src/utils/json.ts"],"names":[],"mappings":";;;;;;AAAA,oEAAsC;AAEtC,SAAgB,aAAa,CAAC,KAAU;IACtC,aAAa;IACb,OAAO,IAAA,wBAAS,EAAC,KAAK,CAAC,CAAA;AACzB,CAAC;AAHD,sCAGC;AAED,SAAgB,aAAa,CAAC,IAAY;IACxC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;AACtC,CAAC;AAFD,sCAEC;AAED,SAAS,WAAW,CAAC,GAAW,EAAE,GAAQ;IACxC,IAAI,OAAO,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAA;QACtB,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAA;QACtB,CAAC;QAED,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAA;QACtB,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,MAAM,OAAO,GAAG,6CAA6C,CAAA;AAC7D,MAAM,YAAY,GAAG,sCAAsC,CAAA;AAC3D,MAAM,YAAY,GAAG,sBAAsB,CAAA"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export type Middleware<Context> = (ctx: Context, next: (...params: unknown[]) => Promise<unknown>, ...params: unknown[]) => Promise<unknown>;
|
|
2
|
-
export declare function withMiddlewares<Context>(ctx: Context, middlewares: Middleware<Context>[], final: (...params: unknown[]) => Promise<unknown>, ...params: any): Promise<unknown>;
|
package/dist/utils/middleware.js
DELETED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.withMiddlewares = void 0;
|
|
4
|
-
function withMiddlewares(ctx, middlewares, final, ...params) {
|
|
5
|
-
return (function (next, ...params) {
|
|
6
|
-
let index = -1;
|
|
7
|
-
return dispatch(0, ...params);
|
|
8
|
-
function dispatch(i, ...p) {
|
|
9
|
-
if (i <= index)
|
|
10
|
-
return Promise.reject(new Error("next() called multiple times"));
|
|
11
|
-
// use previous invocation params
|
|
12
|
-
if (!p.length) {
|
|
13
|
-
p = params;
|
|
14
|
-
}
|
|
15
|
-
index = i;
|
|
16
|
-
try {
|
|
17
|
-
if (i === middlewares.length) {
|
|
18
|
-
return Promise.resolve(next(...p));
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
return Promise.resolve(middlewares[i](ctx, dispatch.bind(null, i + 1), ...p));
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
catch (err) {
|
|
25
|
-
return Promise.reject(err);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
})(final, ...params);
|
|
29
|
-
}
|
|
30
|
-
exports.withMiddlewares = withMiddlewares;
|
|
31
|
-
//# sourceMappingURL=middleware.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../src/utils/middleware.ts"],"names":[],"mappings":";;;AAMA,SAAgB,eAAe,CAC7B,GAAY,EACZ,WAAkC,EAClC,KAAiD,EACjD,GAAG,MAAW;IAEd,OAAO,CAAC,UAAU,IAAI,EAAE,GAAG,MAAM;QAC/B,IAAI,KAAK,GAAG,CAAC,CAAC,CAAA;QACd,OAAO,QAAQ,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,CAAA;QAE7B,SAAS,QAAQ,CAAC,CAAS,EAAE,GAAG,CAAY;YAC1C,IAAI,CAAC,IAAI,KAAK;gBAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAA;YAEhF,iCAAiC;YACjC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;gBACd,CAAC,GAAG,MAAM,CAAA;YACZ,CAAC;YAED,KAAK,GAAG,CAAC,CAAA;YAET,IAAI,CAAC;gBACH,IAAI,CAAC,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;oBAC7B,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;gBACpC,CAAC;qBAAM,CAAC;oBACN,OAAO,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;gBAC/E,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YAC5B,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,MAAM,CAAC,CAAA;AACtB,CAAC;AA/BD,0CA+BC"}
|
package/dist/utils/promises.d.ts
DELETED
package/dist/utils/promises.js
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.adelay = exports.PromiseCache = void 0;
|
|
4
|
-
class PromiseCache {
|
|
5
|
-
constructor() {
|
|
6
|
-
this.cache = {};
|
|
7
|
-
}
|
|
8
|
-
invoke(cacheKey, supplier) {
|
|
9
|
-
const key = JSON.stringify(cacheKey);
|
|
10
|
-
if (!this.cache[key]) {
|
|
11
|
-
this.cache[key] = supplier()
|
|
12
|
-
.then((r) => {
|
|
13
|
-
delete this.cache[key];
|
|
14
|
-
return r;
|
|
15
|
-
})
|
|
16
|
-
.catch((e) => {
|
|
17
|
-
delete this.cache[key];
|
|
18
|
-
throw e;
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
return this.cache[key];
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
exports.PromiseCache = PromiseCache;
|
|
25
|
-
async function adelay(ms) {
|
|
26
|
-
return new Promise((r) => setTimeout(r, ms));
|
|
27
|
-
}
|
|
28
|
-
exports.adelay = adelay;
|
|
29
|
-
//# sourceMappingURL=promises.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"promises.js","sourceRoot":"","sources":["../../src/utils/promises.ts"],"names":[],"mappings":";;;AAAA,MAAa,YAAY;IAAzB;QAmBU,UAAK,GAAkC,EAAE,CAAA;IACnD,CAAC;IAnBC,MAAM,CAAI,QAAiB,EAAE,QAA0B;QACrD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QAEpC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,QAAQ,EAAE;iBACzB,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBACV,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBACtB,OAAO,CAAC,CAAA;YACV,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;gBACX,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBACtB,MAAM,CAAC,CAAA;YACT,CAAC,CAAC,CAAA;QACN,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACxB,CAAC;CAGF;AApBD,oCAoBC;AAEM,KAAK,UAAU,MAAM,CAAC,EAAU;IACrC,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;AAC9C,CAAC;AAFD,wBAEC"}
|
package/dist/utils/server.d.ts
DELETED
package/dist/utils/server.js
DELETED
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.decompressRequest = void 0;
|
|
27
|
-
const zlib = __importStar(require("zlib"));
|
|
28
|
-
const stream_1 = require("stream");
|
|
29
|
-
function decompressRequest(request) {
|
|
30
|
-
const contentEncoding = (request.headers["content-encoding"] || "").toLowerCase();
|
|
31
|
-
if (!["gzip", "deflate", "br"].includes(contentEncoding)) {
|
|
32
|
-
return request;
|
|
33
|
-
}
|
|
34
|
-
const isBrotli = contentEncoding === "br";
|
|
35
|
-
const decompress = isBrotli ? zlib.createBrotliDecompress() : zlib.createUnzip();
|
|
36
|
-
const stream = new stream_1.PassThrough();
|
|
37
|
-
decompress.on("error", (error) => {
|
|
38
|
-
// Ignore empty request
|
|
39
|
-
if (error.code === "Z_BUF_ERROR") {
|
|
40
|
-
stream.end();
|
|
41
|
-
return;
|
|
42
|
-
}
|
|
43
|
-
stream.emit("error", error);
|
|
44
|
-
});
|
|
45
|
-
return (0, stream_1.pipeline)(request, decompress, stream, () => { });
|
|
46
|
-
}
|
|
47
|
-
exports.decompressRequest = decompressRequest;
|
|
48
|
-
//# sourceMappingURL=server.js.map
|
package/dist/utils/server.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/utils/server.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,2CAA4B;AAC5B,mCAAmF;AAGnF,SAAgB,iBAAiB,CAAC,OAA6B;IAC7D,MAAM,eAAe,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAA;IAEjF,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;QACzD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,MAAM,QAAQ,GAAG,eAAe,KAAK,IAAI,CAAA;IAEzC,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAA;IAChF,MAAM,MAAM,GAAG,IAAI,oBAAiB,EAAE,CAAA;IAEtC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAU,EAAE,EAAE;QACpC,uBAAuB;QACvB,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YACjC,MAAM,CAAC,GAAG,EAAE,CAAA;YACZ,OAAM;QACR,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IAC7B,CAAC,CAAC,CAAA;IAEF,OAAO,IAAA,iBAAc,EAAC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;AAC9D,CAAC;AAvBD,8CAuBC"}
|
package/dist/utils/throttle.d.ts
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export type ThrottleArgsReducer<D> = (prevValue: D, newValue: D) => D;
|
|
2
|
-
export declare function lastValueReducer<D>(prevValue: D, newValue: D): D;
|
|
3
|
-
export declare function groupReducer<D>(prevValue: D[], newValue: D[]): D[];
|
|
4
|
-
export declare function throttle<D>(callback: (d: D) => void, delay: number, reducer: ThrottleArgsReducer<D>): (d: D) => void;
|
package/dist/utils/throttle.js
DELETED
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.throttle = exports.groupReducer = exports.lastValueReducer = void 0;
|
|
4
|
-
function lastValueReducer(prevValue, newValue) {
|
|
5
|
-
return newValue;
|
|
6
|
-
}
|
|
7
|
-
exports.lastValueReducer = lastValueReducer;
|
|
8
|
-
function groupReducer(prevValue, newValue) {
|
|
9
|
-
if (!Array.isArray(newValue))
|
|
10
|
-
throw new Error("groupReducer should only be used with topics that return arrays");
|
|
11
|
-
return prevValue ? [...prevValue, ...newValue] : newValue;
|
|
12
|
-
}
|
|
13
|
-
exports.groupReducer = groupReducer;
|
|
14
|
-
function throttle(callback, delay, reducer) {
|
|
15
|
-
let timer;
|
|
16
|
-
let lastExec = 0;
|
|
17
|
-
let reducedArg;
|
|
18
|
-
function wrapper(d) {
|
|
19
|
-
let self = this;
|
|
20
|
-
let elapsed = Date.now() - lastExec;
|
|
21
|
-
function exec() {
|
|
22
|
-
lastExec = Date.now();
|
|
23
|
-
callback.call(self, reducedArg);
|
|
24
|
-
reducedArg = undefined;
|
|
25
|
-
}
|
|
26
|
-
if (timer) {
|
|
27
|
-
clearTimeout(timer);
|
|
28
|
-
}
|
|
29
|
-
reducedArg = reducer(reducedArg, d);
|
|
30
|
-
if (elapsed > delay) {
|
|
31
|
-
exec();
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
timer = setTimeout(exec, delay - elapsed);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
return wrapper;
|
|
38
|
-
}
|
|
39
|
-
exports.throttle = throttle;
|
|
40
|
-
//# sourceMappingURL=throttle.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"throttle.js","sourceRoot":"","sources":["../../src/utils/throttle.ts"],"names":[],"mappings":";;;AAEA,SAAgB,gBAAgB,CAAI,SAAY,EAAE,QAAW;IAC3D,OAAO,QAAQ,CAAA;AACjB,CAAC;AAFD,4CAEC;AAED,SAAgB,YAAY,CAAI,SAAc,EAAE,QAAa;IAC3D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAA;IAEpF,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;AAC3D,CAAC;AALD,oCAKC;AAED,SAAgB,QAAQ,CACtB,QAAwB,EACxB,KAAa,EACb,OAA+B;IAE/B,IAAI,KAAqB,CAAA;IACzB,IAAI,QAAQ,GAAG,CAAC,CAAA;IAEhB,IAAI,UAAe,CAAA;IAEnB,SAAS,OAAO,CAAY,CAAI;QAC9B,IAAI,IAAI,GAAG,IAAI,CAAA;QACf,IAAI,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAA;QAEnC,SAAS,IAAI;YACX,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YACrB,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;YAC/B,UAAU,GAAG,SAAS,CAAA;QACxB,CAAC;QAED,IAAI,KAAK,EAAE,CAAC;YACV,YAAY,CAAC,KAAK,CAAC,CAAA;QACrB,CAAC;QAED,UAAU,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAA;QAEnC,IAAI,OAAO,GAAG,KAAK,EAAE,CAAC;YACpB,IAAI,EAAE,CAAA;QACR,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,CAAA;QAC3C,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAlCD,4BAkCC"}
|
package/dist/utils/types.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export type ExtractPromiseResult<Type> = Type extends Promise<infer X> ? X : never;
|
package/dist/utils/types.js
DELETED
package/dist/utils/types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/utils/types.ts"],"names":[],"mappings":""}
|