viem 0.0.0-main.20230731T075717 → 0.0.0-main.20230731T152533
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/dist/cjs/actions/public/getBlockNumber.js +2 -2
- package/dist/cjs/actions/public/getBlockNumber.js.map +1 -1
- package/dist/cjs/actions/public/watchBlockNumber.js +1 -1
- package/dist/cjs/actions/public/watchBlockNumber.js.map +1 -1
- package/dist/cjs/clients/createClient.js +2 -1
- package/dist/cjs/clients/createClient.js.map +1 -1
- package/dist/cjs/clients/createPublicClient.js.map +1 -1
- package/dist/cjs/clients/createTestClient.js.map +1 -1
- package/dist/cjs/clients/createWalletClient.js.map +1 -1
- package/dist/cjs/errors/version.js +1 -1
- package/dist/cjs/utils/promise/withCache.js +3 -3
- package/dist/cjs/utils/promise/withCache.js.map +1 -1
- package/dist/esm/actions/public/getBlockNumber.js +2 -2
- package/dist/esm/actions/public/getBlockNumber.js.map +1 -1
- package/dist/esm/actions/public/watchBlockNumber.js +1 -1
- package/dist/esm/actions/public/watchBlockNumber.js.map +1 -1
- package/dist/esm/clients/createClient.js +2 -1
- package/dist/esm/clients/createClient.js.map +1 -1
- package/dist/esm/clients/createPublicClient.js.map +1 -1
- package/dist/esm/clients/createTestClient.js.map +1 -1
- package/dist/esm/clients/createWalletClient.js.map +1 -1
- package/dist/esm/errors/version.js +1 -1
- package/dist/esm/utils/promise/withCache.js +3 -3
- package/dist/esm/utils/promise/withCache.js.map +1 -1
- package/dist/types/actions/public/getBlockNumber.d.ts +4 -2
- package/dist/types/actions/public/getBlockNumber.d.ts.map +1 -1
- package/dist/types/clients/createClient.d.ts +7 -0
- package/dist/types/clients/createClient.d.ts.map +1 -1
- package/dist/types/clients/createPublicClient.d.ts +1 -1
- package/dist/types/clients/createPublicClient.d.ts.map +1 -1
- package/dist/types/clients/createTestClient.d.ts +1 -1
- package/dist/types/clients/createTestClient.d.ts.map +1 -1
- package/dist/types/clients/createWalletClient.d.ts +1 -1
- package/dist/types/clients/createWalletClient.d.ts.map +1 -1
- package/dist/types/errors/version.d.ts +1 -1
- package/dist/types/utils/promise/withCache.d.ts +3 -3
- package/dist/types/utils/promise/withCache.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/actions/public/getBlockNumber.ts +5 -3
- package/src/actions/public/watchBlockNumber.ts +1 -1
- package/src/clients/createClient.ts +9 -0
- package/src/clients/createPublicClient.ts +7 -1
- package/src/clients/createTestClient.ts +7 -1
- package/src/clients/createWalletClient.ts +7 -1
- package/src/errors/version.ts +1 -1
- package/src/utils/promise/withCache.ts +5 -5
@@ -7,10 +7,10 @@ function getBlockNumberCache(id) {
|
|
7
7
|
return (0, withCache_js_1.getCache)(cacheKey(id));
|
8
8
|
}
|
9
9
|
exports.getBlockNumberCache = getBlockNumberCache;
|
10
|
-
async function getBlockNumber(client, {
|
10
|
+
async function getBlockNumber(client, { cacheTime = client.cacheTime, maxAge } = {}) {
|
11
11
|
const blockNumberHex = await (0, withCache_js_1.withCache)(() => client.request({
|
12
12
|
method: 'eth_blockNumber',
|
13
|
-
}), { cacheKey: cacheKey(client.uid), maxAge });
|
13
|
+
}), { cacheKey: cacheKey(client.uid), cacheTime: maxAge ?? cacheTime });
|
14
14
|
return BigInt(blockNumberHex);
|
15
15
|
}
|
16
16
|
exports.getBlockNumber = getBlockNumber;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getBlockNumber.js","sourceRoot":"","sources":["../../../../src/actions/public/getBlockNumber.ts"],"names":[],"mappings":";;;AAGA,mEAAsE;
|
1
|
+
{"version":3,"file":"getBlockNumber.js","sourceRoot":"","sources":["../../../../src/actions/public/getBlockNumber.ts"],"names":[],"mappings":";;;AAGA,mEAAsE;AAWtE,MAAM,QAAQ,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,eAAe,EAAE,EAAE,CAAA;AAEpD,SAAgB,mBAAmB,CAAC,EAAU;IAC5C,OAAO,IAAA,uBAAQ,EAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAA;AAC/B,CAAC;AAFD,kDAEC;AAyBM,KAAK,UAAU,cAAc,CAClC,MAAiC,EACjC,EAAE,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,MAAM,KAA+B,EAAE;IAEvE,MAAM,cAAc,GAAG,MAAM,IAAA,wBAAS,EACpC,GAAG,EAAE,CACH,MAAM,CAAC,OAAO,CAAC;QACb,MAAM,EAAE,iBAAiB;KAC1B,CAAC,EACJ,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,IAAI,SAAS,EAAE,CACnE,CAAA;IACD,OAAO,MAAM,CAAC,cAAc,CAAC,CAAA;AAC/B,CAAC;AAZD,wCAYC"}
|
@@ -19,7 +19,7 @@ function watchBlockNumber(client, { emitOnBegin = false, emitMissed = false, onB
|
|
19
19
|
]);
|
20
20
|
return (0, observe_js_1.observe)(observerId, { onBlockNumber, onError }, (emit) => (0, poll_js_1.poll)(async () => {
|
21
21
|
try {
|
22
|
-
const blockNumber = await (0, getBlockNumber_js_1.getBlockNumber)(client, {
|
22
|
+
const blockNumber = await (0, getBlockNumber_js_1.getBlockNumber)(client, { cacheTime: 0 });
|
23
23
|
if (prevBlockNumber) {
|
24
24
|
if (blockNumber === prevBlockNumber)
|
25
25
|
return;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"watchBlockNumber.js","sourceRoot":"","sources":["../../../../src/actions/public/watchBlockNumber.ts"],"names":[],"mappings":";;;AAIA,gEAA6D;AAC7D,uDAAgD;AAChD,iDAA0C;AAC1C,2DAAoD;AAEpD,2DAG4B;AA+D5B,SAAgB,gBAAgB,CAI9B,MAAkC,EAClC,EACE,WAAW,GAAG,KAAK,EACnB,UAAU,GAAG,KAAK,EAClB,aAAa,EACb,OAAO,EACP,IAAI,EAAE,KAAK,EACX,eAAe,GAAG,MAAM,CAAC,eAAe,GACD;IAEzC,MAAM,aAAa,GACjB,OAAO,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,KAAK,WAAW,CAAA;IAE9E,IAAI,eAAqD,CAAA;IAEzD,MAAM,eAAe,GAAG,GAAG,EAAE;QAC3B,MAAM,UAAU,GAAG,IAAA,wBAAS,EAAC;YAC3B,kBAAkB;YAClB,MAAM,CAAC,GAAG;YACV,WAAW;YACX,UAAU;YACV,eAAe;SAChB,CAAC,CAAA;QAEF,OAAO,IAAA,oBAAO,EAAC,UAAU,EAAE,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAC9D,IAAA,cAAI,EACF,KAAK,IAAI,EAAE;YACT,IAAI;gBACF,MAAM,WAAW,GAAG,MAAM,IAAA,kCAAc,EAAC,MAAM,EAAE,EAAE,
|
1
|
+
{"version":3,"file":"watchBlockNumber.js","sourceRoot":"","sources":["../../../../src/actions/public/watchBlockNumber.ts"],"names":[],"mappings":"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"}
|
@@ -4,7 +4,7 @@ exports.createClient = void 0;
|
|
4
4
|
const accounts_js_1 = require("../utils/accounts.js");
|
5
5
|
const uid_js_1 = require("../utils/uid.js");
|
6
6
|
function createClient(parameters) {
|
7
|
-
const { batch, key = 'base', name = 'Base Client', pollingInterval = 4000, type = 'base', } = parameters;
|
7
|
+
const { batch, cacheTime = parameters.pollingInterval ?? 4000, key = 'base', name = 'Base Client', pollingInterval = 4000, type = 'base', } = parameters;
|
8
8
|
const chain = parameters.chain;
|
9
9
|
const account = parameters.account
|
10
10
|
? (0, accounts_js_1.parseAccount)(parameters.account)
|
@@ -17,6 +17,7 @@ function createClient(parameters) {
|
|
17
17
|
const client = {
|
18
18
|
account,
|
19
19
|
batch,
|
20
|
+
cacheTime,
|
20
21
|
chain,
|
21
22
|
key,
|
22
23
|
name,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"createClient.js","sourceRoot":"","sources":["../../../src/clients/createClient.ts"],"names":[],"mappings":";;;AAUA,sDAAmD;AACnD,4CAAqC;
|
1
|
+
{"version":3,"file":"createClient.js","sourceRoot":"","sources":["../../../src/clients/createClient.ts"],"names":[],"mappings":";;;AAUA,sDAAmD;AACnD,4CAAqC;AAkIrC,SAAgB,YAAY,CAAC,UAAwB;IACnD,MAAM,EACJ,KAAK,EACL,SAAS,GAAG,UAAU,CAAC,eAAe,IAAI,IAAK,EAC/C,GAAG,GAAG,MAAM,EACZ,IAAI,GAAG,aAAa,EACpB,eAAe,GAAG,IAAK,EACvB,IAAI,GAAG,MAAM,GACd,GAAG,UAAU,CAAA;IAEd,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAA;IAC9B,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO;QAChC,CAAC,CAAC,IAAA,0BAAY,EAAC,UAAU,CAAC,OAAO,CAAC;QAClC,CAAC,CAAC,SAAS,CAAA;IACb,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,UAAU,CAAC,SAAS,CAAC;QACtD,KAAK;QACL,eAAe;KAChB,CAAC,CAAA;IACF,MAAM,SAAS,GAAG,EAAE,GAAG,MAAM,EAAE,GAAG,KAAK,EAAE,CAAA;IAEzC,MAAM,MAAM,GAAG;QACb,OAAO;QACP,KAAK;QACL,SAAS;QACT,KAAK;QACL,GAAG;QACH,IAAI;QACJ,eAAe;QACf,OAAO;QACP,SAAS;QACT,IAAI;QACJ,GAAG,EAAE,IAAA,YAAG,GAAE;KACX,CAAA;IAED,SAAS,MAAM,CAAC,IAAmB;QAEjC,OAAO,CAAC,QAAkB,EAAE,EAAE;YAC5B,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAa,CAAA;YAC3C,KAAK,MAAM,GAAG,IAAI,MAAM;gBAAE,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAA;YAC9C,MAAM,QAAQ,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,QAAQ,EAAE,CAAA;YACzC,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QAC9D,CAAC,CAAA;IACH,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAQ,EAAE,CAAC,CAAA;AACjE,CAAC;AA7CD,oCA6CC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"createPublicClient.js","sourceRoot":"","sources":["../../../src/clients/createPublicClient.ts"],"names":[],"mappings":";;;AAGA,uDAAgF;AAChF,sDAA0E;
|
1
|
+
{"version":3,"file":"createPublicClient.js","sourceRoot":"","sources":["../../../src/clients/createPublicClient.ts"],"names":[],"mappings":";;;AAGA,uDAAgF;AAChF,sDAA0E;AA0D1E,SAAgB,kBAAkB,CAChC,UAA8B;IAE9B,MAAM,EAAE,GAAG,GAAG,QAAQ,EAAE,IAAI,GAAG,eAAe,EAAE,GAAG,UAAU,CAAA;IAC7D,MAAM,MAAM,GAAG,IAAA,8BAAY,EAAC;QAC1B,GAAG,UAAU;QACb,GAAG;QACH,IAAI;QACJ,IAAI,EAAE,cAAc;KACrB,CAAC,CAAA;IACF,OAAO,MAAM,CAAC,MAAM,CAAC,yBAAa,CAAC,CAAA;AACrC,CAAC;AAXD,gDAWC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"createTestClient.js","sourceRoot":"","sources":["../../../src/clients/createTestClient.ts"],"names":[],"mappings":";;;AAKA,uDAAgF;AAChF,kDAAoE;
|
1
|
+
{"version":3,"file":"createTestClient.js","sourceRoot":"","sources":["../../../src/clients/createTestClient.ts"],"names":[],"mappings":";;;AAKA,uDAAgF;AAChF,kDAAoE;AA8EpE,SAAgB,gBAAgB,CAAC,UAA4B;IAC3D,MAAM,EAAE,GAAG,GAAG,MAAM,EAAE,IAAI,GAAG,aAAa,EAAE,IAAI,EAAE,GAAG,UAAU,CAAA;IAC/D,MAAM,MAAM,GAAG,IAAA,8BAAY,EAAC;QAC1B,GAAG,UAAU;QACb,GAAG;QACH,IAAI;QACJ,IAAI,EAAE,YAAY;KACnB,CAAC,CAAA;IACF,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAChC,IAAI;QACJ,GAAG,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;KACjC,CAAC,CAAC,CAAA;AACL,CAAC;AAZD,4CAYC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"createWalletClient.js","sourceRoot":"","sources":["../../../src/clients/createWalletClient.ts"],"names":[],"mappings":";;;AAOA,uDAAgF;AAChF,sDAA0E;
|
1
|
+
{"version":3,"file":"createWalletClient.js","sourceRoot":"","sources":["../../../src/clients/createWalletClient.ts"],"names":[],"mappings":";;;AAOA,uDAAgF;AAChF,sDAA0E;AAiF1E,SAAgB,kBAAkB,CAChC,UAA8B;IAE9B,MAAM,EAAE,GAAG,GAAG,QAAQ,EAAE,IAAI,GAAG,eAAe,EAAE,SAAS,EAAE,GAAG,UAAU,CAAA;IACxE,MAAM,MAAM,GAAG,IAAA,8BAAY,EAAC;QAC1B,GAAG,UAAU;QACb,GAAG;QACH,IAAI;QACJ,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC;QAC1D,IAAI,EAAE,cAAc;KACrB,CAAC,CAAA;IACF,OAAO,MAAM,CAAC,MAAM,CAAC,yBAAa,CAAC,CAAA;AACrC,CAAC;AAZD,gDAYC"}
|
@@ -21,12 +21,12 @@ function getCache(cacheKey) {
|
|
21
21
|
};
|
22
22
|
}
|
23
23
|
exports.getCache = getCache;
|
24
|
-
async function withCache(fn, { cacheKey,
|
24
|
+
async function withCache(fn, { cacheKey, cacheTime = Infinity }) {
|
25
25
|
const cache = getCache(cacheKey);
|
26
26
|
const response = cache.response.get();
|
27
|
-
if (response &&
|
27
|
+
if (response && cacheTime > 0) {
|
28
28
|
const age = new Date().getTime() - response.created.getTime();
|
29
|
-
if (age <
|
29
|
+
if (age < cacheTime)
|
30
30
|
return response.data;
|
31
31
|
}
|
32
32
|
let promise = cache.promise.get();
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"withCache.js","sourceRoot":"","sources":["../../../../src/utils/promise/withCache.ts"],"names":[],"mappings":";;;AAAa,QAAA,YAAY,GAAiB,IAAI,GAAG,EAAE,CAAA;AACtC,QAAA,aAAa,GAAiB,IAAI,GAAG,EAAE,CAAA;AAEpD,SAAgB,QAAQ,CAAQ,QAAgB;IAC9C,MAAM,UAAU,GAAG,CAAQ,QAAgB,EAAE,KAAyB,EAAE,EAAE,CAAC,CAAC;QAC1E,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;QACnC,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;QAC9B,GAAG,EAAE,CAAC,IAAW,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC;KAChD,CAAC,CAAA;IAEF,MAAM,OAAO,GAAG,UAAU,CAAiB,QAAQ,EAAE,oBAAY,CAAC,CAAA;IAClE,MAAM,QAAQ,GAAG,UAAU,CACzB,QAAQ,EACR,qBAAa,CACd,CAAA;IAED,OAAO;QACL,KAAK,EAAE,GAAG,EAAE;YACV,OAAO,CAAC,KAAK,EAAE,CAAA;YACf,QAAQ,CAAC,KAAK,EAAE,CAAA;QAClB,CAAC;QACD,OAAO;QACP,QAAQ;KACT,CAAA;AACH,CAAC;AArBD,4BAqBC;AAaM,KAAK,UAAU,SAAS,CAC7B,EAAwB,EACxB,EAAE,QAAQ,EAAE,
|
1
|
+
{"version":3,"file":"withCache.js","sourceRoot":"","sources":["../../../../src/utils/promise/withCache.ts"],"names":[],"mappings":";;;AAAa,QAAA,YAAY,GAAiB,IAAI,GAAG,EAAE,CAAA;AACtC,QAAA,aAAa,GAAiB,IAAI,GAAG,EAAE,CAAA;AAEpD,SAAgB,QAAQ,CAAQ,QAAgB;IAC9C,MAAM,UAAU,GAAG,CAAQ,QAAgB,EAAE,KAAyB,EAAE,EAAE,CAAC,CAAC;QAC1E,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;QACnC,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;QAC9B,GAAG,EAAE,CAAC,IAAW,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC;KAChD,CAAC,CAAA;IAEF,MAAM,OAAO,GAAG,UAAU,CAAiB,QAAQ,EAAE,oBAAY,CAAC,CAAA;IAClE,MAAM,QAAQ,GAAG,UAAU,CACzB,QAAQ,EACR,qBAAa,CACd,CAAA;IAED,OAAO;QACL,KAAK,EAAE,GAAG,EAAE;YACV,OAAO,CAAC,KAAK,EAAE,CAAA;YACf,QAAQ,CAAC,KAAK,EAAE,CAAA;QAClB,CAAC;QACD,OAAO;QACP,QAAQ;KACT,CAAA;AACH,CAAC;AArBD,4BAqBC;AAaM,KAAK,UAAU,SAAS,CAC7B,EAAwB,EACxB,EAAE,QAAQ,EAAE,SAAS,GAAG,QAAQ,EAAuB;IAEvD,MAAM,KAAK,GAAG,QAAQ,CAAQ,QAAQ,CAAC,CAAA;IAKvC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAA;IACrC,IAAI,QAAQ,IAAI,SAAS,GAAG,CAAC,EAAE;QAC7B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,CAAA;QAC7D,IAAI,GAAG,GAAG,SAAS;YAAE,OAAO,QAAQ,CAAC,IAAI,CAAA;KAC1C;IAED,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAA;IACjC,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,GAAG,EAAE,EAAE,CAAA;QAId,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;KAC3B;IAED,IAAI;QACF,MAAM,IAAI,GAAG,MAAM,OAAO,CAAA;QAI1B,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;QAEjD,OAAO,IAAI,CAAA;KACZ;YAAS;QAGR,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;KACtB;AACH,CAAC;AArCD,8BAqCC"}
|
@@ -26,10 +26,10 @@ export function getBlockNumberCache(id) {
|
|
26
26
|
* const blockNumber = await getBlockNumber(client)
|
27
27
|
* // 69420n
|
28
28
|
*/
|
29
|
-
export async function getBlockNumber(client, {
|
29
|
+
export async function getBlockNumber(client, { cacheTime = client.cacheTime, maxAge } = {}) {
|
30
30
|
const blockNumberHex = await withCache(() => client.request({
|
31
31
|
method: 'eth_blockNumber',
|
32
|
-
}), { cacheKey: cacheKey(client.uid), maxAge });
|
32
|
+
}), { cacheKey: cacheKey(client.uid), cacheTime: maxAge ?? cacheTime });
|
33
33
|
return BigInt(blockNumberHex);
|
34
34
|
}
|
35
35
|
//# sourceMappingURL=getBlockNumber.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getBlockNumber.js","sourceRoot":"","sources":["../../../../src/actions/public/getBlockNumber.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAA;
|
1
|
+
{"version":3,"file":"getBlockNumber.js","sourceRoot":"","sources":["../../../../src/actions/public/getBlockNumber.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAA;AAWtE,MAAM,QAAQ,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,eAAe,EAAE,EAAE,CAAA;AAEpD,MAAM,UAAU,mBAAmB,CAAC,EAAU;IAC5C,OAAO,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAA;AAC/B,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAAiC,EACjC,EAAE,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,MAAM,KAA+B,EAAE;IAEvE,MAAM,cAAc,GAAG,MAAM,SAAS,CACpC,GAAG,EAAE,CACH,MAAM,CAAC,OAAO,CAAC;QACb,MAAM,EAAE,iBAAiB;KAC1B,CAAC,EACJ,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,IAAI,SAAS,EAAE,CACnE,CAAA;IACD,OAAO,MAAM,CAAC,cAAc,CAAC,CAAA;AAC/B,CAAC"}
|
@@ -41,7 +41,7 @@ export function watchBlockNumber(client, { emitOnBegin = false, emitMissed = fal
|
|
41
41
|
]);
|
42
42
|
return observe(observerId, { onBlockNumber, onError }, (emit) => poll(async () => {
|
43
43
|
try {
|
44
|
-
const blockNumber = await getBlockNumber(client, {
|
44
|
+
const blockNumber = await getBlockNumber(client, { cacheTime: 0 });
|
45
45
|
if (prevBlockNumber) {
|
46
46
|
// If the current block number is the same as the previous,
|
47
47
|
// we can skip.
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"watchBlockNumber.js","sourceRoot":"","sources":["../../../../src/actions/public/watchBlockNumber.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAA;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAEpD,OAAO,EAEL,cAAc,GACf,MAAM,qBAAqB,CAAA;AAsC5B;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,gBAAgB,CAI9B,MAAkC,EAClC,EACE,WAAW,GAAG,KAAK,EACnB,UAAU,GAAG,KAAK,EAClB,aAAa,EACb,OAAO,EACP,IAAI,EAAE,KAAK,EACX,eAAe,GAAG,MAAM,CAAC,eAAe,GACD;IAEzC,MAAM,aAAa,GACjB,OAAO,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,KAAK,WAAW,CAAA;IAE9E,IAAI,eAAqD,CAAA;IAEzD,MAAM,eAAe,GAAG,GAAG,EAAE;QAC3B,MAAM,UAAU,GAAG,SAAS,CAAC;YAC3B,kBAAkB;YAClB,MAAM,CAAC,GAAG;YACV,WAAW;YACX,UAAU;YACV,eAAe;SAChB,CAAC,CAAA;QAEF,OAAO,OAAO,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAC9D,IAAI,CACF,KAAK,IAAI,EAAE;YACT,IAAI;gBACF,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,EAAE,
|
1
|
+
{"version":3,"file":"watchBlockNumber.js","sourceRoot":"","sources":["../../../../src/actions/public/watchBlockNumber.ts"],"names":[],"mappings":"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"}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { parseAccount } from '../utils/accounts.js';
|
2
2
|
import { uid } from '../utils/uid.js';
|
3
3
|
export function createClient(parameters) {
|
4
|
-
const { batch, key = 'base', name = 'Base Client', pollingInterval = 4000, type = 'base', } = parameters;
|
4
|
+
const { batch, cacheTime = parameters.pollingInterval ?? 4000, key = 'base', name = 'Base Client', pollingInterval = 4000, type = 'base', } = parameters;
|
5
5
|
const chain = parameters.chain;
|
6
6
|
const account = parameters.account
|
7
7
|
? parseAccount(parameters.account)
|
@@ -14,6 +14,7 @@ export function createClient(parameters) {
|
|
14
14
|
const client = {
|
15
15
|
account,
|
16
16
|
batch,
|
17
|
+
cacheTime,
|
17
18
|
chain,
|
18
19
|
key,
|
19
20
|
name,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"createClient.js","sourceRoot":"","sources":["../../../src/clients/createClient.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAA;
|
1
|
+
{"version":3,"file":"createClient.js","sourceRoot":"","sources":["../../../src/clients/createClient.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAA;AAkIrC,MAAM,UAAU,YAAY,CAAC,UAAwB;IACnD,MAAM,EACJ,KAAK,EACL,SAAS,GAAG,UAAU,CAAC,eAAe,IAAI,IAAK,EAC/C,GAAG,GAAG,MAAM,EACZ,IAAI,GAAG,aAAa,EACpB,eAAe,GAAG,IAAK,EACvB,IAAI,GAAG,MAAM,GACd,GAAG,UAAU,CAAA;IAEd,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAA;IAC9B,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO;QAChC,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC;QAClC,CAAC,CAAC,SAAS,CAAA;IACb,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,UAAU,CAAC,SAAS,CAAC;QACtD,KAAK;QACL,eAAe;KAChB,CAAC,CAAA;IACF,MAAM,SAAS,GAAG,EAAE,GAAG,MAAM,EAAE,GAAG,KAAK,EAAE,CAAA;IAEzC,MAAM,MAAM,GAAG;QACb,OAAO;QACP,KAAK;QACL,SAAS;QACT,KAAK;QACL,GAAG;QACH,IAAI;QACJ,eAAe;QACf,OAAO;QACP,SAAS;QACT,IAAI;QACJ,GAAG,EAAE,GAAG,EAAE;KACX,CAAA;IAED,SAAS,MAAM,CAAC,IAAmB;QAEjC,OAAO,CAAC,QAAkB,EAAE,EAAE;YAC5B,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAa,CAAA;YAC3C,KAAK,MAAM,GAAG,IAAI,MAAM;gBAAE,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAA;YAC9C,MAAM,QAAQ,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,QAAQ,EAAE,CAAA;YACzC,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QAC9D,CAAC,CAAA;IACH,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAQ,EAAE,CAAC,CAAA;AACjE,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"createPublicClient.js","sourceRoot":"","sources":["../../../src/clients/createPublicClient.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkC,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChF,OAAO,EAAsB,aAAa,EAAE,MAAM,wBAAwB,CAAA;
|
1
|
+
{"version":3,"file":"createPublicClient.js","sourceRoot":"","sources":["../../../src/clients/createPublicClient.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkC,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChF,OAAO,EAAsB,aAAa,EAAE,MAAM,wBAAwB,CAAA;AA0D1E,MAAM,UAAU,kBAAkB,CAChC,UAA8B;IAE9B,MAAM,EAAE,GAAG,GAAG,QAAQ,EAAE,IAAI,GAAG,eAAe,EAAE,GAAG,UAAU,CAAA;IAC7D,MAAM,MAAM,GAAG,YAAY,CAAC;QAC1B,GAAG,UAAU;QACb,GAAG;QACH,IAAI;QACJ,IAAI,EAAE,cAAc;KACrB,CAAC,CAAA;IACF,OAAO,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;AACrC,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"createTestClient.js","sourceRoot":"","sources":["../../../src/clients/createTestClient.ts"],"names":[],"mappings":"AAKA,OAAO,EAAkC,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChF,OAAO,EAAoB,WAAW,EAAE,MAAM,sBAAsB,CAAA;
|
1
|
+
{"version":3,"file":"createTestClient.js","sourceRoot":"","sources":["../../../src/clients/createTestClient.ts"],"names":[],"mappings":"AAKA,OAAO,EAAkC,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChF,OAAO,EAAoB,WAAW,EAAE,MAAM,sBAAsB,CAAA;AA8EpE,MAAM,UAAU,gBAAgB,CAAC,UAA4B;IAC3D,MAAM,EAAE,GAAG,GAAG,MAAM,EAAE,IAAI,GAAG,aAAa,EAAE,IAAI,EAAE,GAAG,UAAU,CAAA;IAC/D,MAAM,MAAM,GAAG,YAAY,CAAC;QAC1B,GAAG,UAAU;QACb,GAAG;QACH,IAAI;QACJ,IAAI,EAAE,YAAY;KACnB,CAAC,CAAA;IACF,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAChC,IAAI;QACJ,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;KACjC,CAAC,CAAC,CAAA;AACL,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"createWalletClient.js","sourceRoot":"","sources":["../../../src/clients/createWalletClient.ts"],"names":[],"mappings":"AAOA,OAAO,EAAkC,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChF,OAAO,EAAsB,aAAa,EAAE,MAAM,wBAAwB,CAAA;
|
1
|
+
{"version":3,"file":"createWalletClient.js","sourceRoot":"","sources":["../../../src/clients/createWalletClient.ts"],"names":[],"mappings":"AAOA,OAAO,EAAkC,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChF,OAAO,EAAsB,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAiF1E,MAAM,UAAU,kBAAkB,CAChC,UAA8B;IAE9B,MAAM,EAAE,GAAG,GAAG,QAAQ,EAAE,IAAI,GAAG,eAAe,EAAE,SAAS,EAAE,GAAG,UAAU,CAAA;IACxE,MAAM,MAAM,GAAG,YAAY,CAAC;QAC1B,GAAG,UAAU;QACb,GAAG;QACH,IAAI;QACJ,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC;QAC1D,IAAI,EAAE,cAAc;KACrB,CAAC,CAAA;IACF,OAAO,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;AACrC,CAAC"}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
export const version = '0.0.0-main.
|
1
|
+
export const version = '0.0.0-main.20230731T152533';
|
2
2
|
//# sourceMappingURL=version.js.map
|
@@ -21,15 +21,15 @@ export function getCache(cacheKey) {
|
|
21
21
|
* @description Returns the result of a given promise, and caches the result for
|
22
22
|
* subsequent invocations against a provided cache key.
|
23
23
|
*/
|
24
|
-
export async function withCache(fn, { cacheKey,
|
24
|
+
export async function withCache(fn, { cacheKey, cacheTime = Infinity }) {
|
25
25
|
const cache = getCache(cacheKey);
|
26
26
|
// If a response exists in the cache, and it's not expired, return it
|
27
27
|
// and do not invoke the promise.
|
28
28
|
// If the max age is 0, the cache is disabled.
|
29
29
|
const response = cache.response.get();
|
30
|
-
if (response &&
|
30
|
+
if (response && cacheTime > 0) {
|
31
31
|
const age = new Date().getTime() - response.created.getTime();
|
32
|
-
if (age <
|
32
|
+
if (age < cacheTime)
|
33
33
|
return response.data;
|
34
34
|
}
|
35
35
|
let promise = cache.promise.get();
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"withCache.js","sourceRoot":"","sources":["../../../../src/utils/promise/withCache.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,GAAG,EAAE,CAAA;AACnD,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAC,IAAI,GAAG,EAAE,CAAA;AAEpD,MAAM,UAAU,QAAQ,CAAQ,QAAgB;IAC9C,MAAM,UAAU,GAAG,CAAQ,QAAgB,EAAE,KAAyB,EAAE,EAAE,CAAC,CAAC;QAC1E,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;QACnC,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;QAC9B,GAAG,EAAE,CAAC,IAAW,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC;KAChD,CAAC,CAAA;IAEF,MAAM,OAAO,GAAG,UAAU,CAAiB,QAAQ,EAAE,YAAY,CAAC,CAAA;IAClE,MAAM,QAAQ,GAAG,UAAU,CACzB,QAAQ,EACR,aAAa,CACd,CAAA;IAED,OAAO;QACL,KAAK,EAAE,GAAG,EAAE;YACV,OAAO,CAAC,KAAK,EAAE,CAAA;YACf,QAAQ,CAAC,KAAK,EAAE,CAAA;QAClB,CAAC;QACD,OAAO;QACP,QAAQ;KACT,CAAA;AACH,CAAC;AASD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,EAAwB,EACxB,EAAE,QAAQ,EAAE,
|
1
|
+
{"version":3,"file":"withCache.js","sourceRoot":"","sources":["../../../../src/utils/promise/withCache.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,GAAG,EAAE,CAAA;AACnD,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAC,IAAI,GAAG,EAAE,CAAA;AAEpD,MAAM,UAAU,QAAQ,CAAQ,QAAgB;IAC9C,MAAM,UAAU,GAAG,CAAQ,QAAgB,EAAE,KAAyB,EAAE,EAAE,CAAC,CAAC;QAC1E,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;QACnC,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;QAC9B,GAAG,EAAE,CAAC,IAAW,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC;KAChD,CAAC,CAAA;IAEF,MAAM,OAAO,GAAG,UAAU,CAAiB,QAAQ,EAAE,YAAY,CAAC,CAAA;IAClE,MAAM,QAAQ,GAAG,UAAU,CACzB,QAAQ,EACR,aAAa,CACd,CAAA;IAED,OAAO;QACL,KAAK,EAAE,GAAG,EAAE;YACV,OAAO,CAAC,KAAK,EAAE,CAAA;YACf,QAAQ,CAAC,KAAK,EAAE,CAAA;QAClB,CAAC;QACD,OAAO;QACP,QAAQ;KACT,CAAA;AACH,CAAC;AASD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,EAAwB,EACxB,EAAE,QAAQ,EAAE,SAAS,GAAG,QAAQ,EAAuB;IAEvD,MAAM,KAAK,GAAG,QAAQ,CAAQ,QAAQ,CAAC,CAAA;IAEvC,qEAAqE;IACrE,iCAAiC;IACjC,8CAA8C;IAC9C,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAA;IACrC,IAAI,QAAQ,IAAI,SAAS,GAAG,CAAC,EAAE;QAC7B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,CAAA;QAC7D,IAAI,GAAG,GAAG,SAAS;YAAE,OAAO,QAAQ,CAAC,IAAI,CAAA;KAC1C;IAED,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAA;IACjC,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,GAAG,EAAE,EAAE,CAAA;QAEd,gEAAgE;QAChE,wDAAwD;QACxD,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;KAC3B;IAED,IAAI;QACF,MAAM,IAAI,GAAG,MAAM,OAAO,CAAA;QAE1B,iEAAiE;QACjE,iCAAiC;QACjC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;QAEjD,OAAO,IAAI,CAAA;KACZ;YAAS;QACR,8DAA8D;QAC9D,4BAA4B;QAC5B,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;KACtB;AACH,CAAC"}
|
@@ -2,7 +2,9 @@ import type { Client } from '../../clients/createClient.js';
|
|
2
2
|
import type { Transport } from '../../clients/transports/createTransport.js';
|
3
3
|
import type { Chain } from '../../types/chain.js';
|
4
4
|
export type GetBlockNumberParameters = {
|
5
|
-
/**
|
5
|
+
/** Time (in ms) that cached block number will remain in memory. */
|
6
|
+
cacheTime?: number;
|
7
|
+
/** @deprecated use `cacheTime` instead. */
|
6
8
|
maxAge?: number;
|
7
9
|
};
|
8
10
|
export type GetBlockNumberReturnType = bigint;
|
@@ -51,5 +53,5 @@ export declare function getBlockNumberCache(id: string): {
|
|
51
53
|
* const blockNumber = await getBlockNumber(client)
|
52
54
|
* // 69420n
|
53
55
|
*/
|
54
|
-
export declare function getBlockNumber<TChain extends Chain | undefined>(client: Client<Transport, TChain>, { maxAge }?: GetBlockNumberParameters): Promise<GetBlockNumberReturnType>;
|
56
|
+
export declare function getBlockNumber<TChain extends Chain | undefined>(client: Client<Transport, TChain>, { cacheTime, maxAge }?: GetBlockNumberParameters): Promise<GetBlockNumberReturnType>;
|
55
57
|
//# sourceMappingURL=getBlockNumber.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getBlockNumber.d.ts","sourceRoot":"","sources":["../../../../src/actions/public/getBlockNumber.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAA;AAC5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAGjD,MAAM,MAAM,wBAAwB,GAAG;IACrC,
|
1
|
+
{"version":3,"file":"getBlockNumber.d.ts","sourceRoot":"","sources":["../../../../src/actions/public/getBlockNumber.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAA;AAC5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAGjD,MAAM,MAAM,wBAAwB,GAAG;IACrC,mEAAmE;IACnE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,2CAA2C;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAA;AAI7C,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;EAE7C;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,cAAc,CAAC,MAAM,SAAS,KAAK,GAAG,SAAS,EACnE,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,EACjC,EAAE,SAA4B,EAAE,MAAM,EAAE,GAAE,wBAA6B,GACtE,OAAO,CAAC,wBAAwB,CAAC,CASnC"}
|
@@ -12,6 +12,11 @@ export type ClientConfig<transport extends Transport = Transport, chain extends
|
|
12
12
|
/** Toggle to enable `eth_call` multicall aggregation. */
|
13
13
|
multicall?: boolean | Prettify<MulticallBatchOptions> | undefined;
|
14
14
|
} | undefined;
|
15
|
+
/**
|
16
|
+
* Time (in ms) that cached data will remain in memory.
|
17
|
+
* @default 4_000
|
18
|
+
*/
|
19
|
+
cacheTime?: number | undefined;
|
15
20
|
/** Chain for the client. */
|
16
21
|
chain?: Chain | undefined | chain;
|
17
22
|
/** A key for the client. */
|
@@ -36,6 +41,8 @@ type Client_Base<transport extends Transport = Transport, chain extends Chain |
|
|
36
41
|
account: account;
|
37
42
|
/** Flags for batch settings. */
|
38
43
|
batch?: ClientConfig['batch'];
|
44
|
+
/** Time (in ms) that cached data will remain in memory. */
|
45
|
+
cacheTime: number;
|
39
46
|
/** Chain for the client. */
|
40
47
|
chain: chain;
|
41
48
|
/** A key for the client. */
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"createClient.d.ts","sourceRoot":"","sources":["../../../src/clients/createClient.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"createClient.d.ts","sourceRoot":"","sources":["../../../src/clients/createClient.ts"],"names":[],"mappings":"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"}
|
@@ -4,7 +4,7 @@ import type { Prettify } from '../types/utils.js';
|
|
4
4
|
import { type Client, type ClientConfig } from './createClient.js';
|
5
5
|
import { type PublicActions } from './decorators/public.js';
|
6
6
|
import type { Transport } from './transports/createTransport.js';
|
7
|
-
export type PublicClientConfig<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined> = Prettify<Pick<ClientConfig<transport, chain>, 'batch' | 'chain' | 'key' | 'name' | 'pollingInterval' | 'transport'>>;
|
7
|
+
export type PublicClientConfig<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined> = Prettify<Pick<ClientConfig<transport, chain>, 'batch' | 'cacheTime' | 'chain' | 'key' | 'name' | 'pollingInterval' | 'transport'>>;
|
8
8
|
export type PublicClient<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined> = Prettify<Client<transport, chain, undefined, PublicRpcSchema, PublicActions<transport, chain>>>;
|
9
9
|
/**
|
10
10
|
* Creates a Public Client with a given [Transport](https://viem.sh/docs/clients/intro.html) configured for a [Chain](https://viem.sh/docs/clients/chains.html).
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"createPublicClient.d.ts","sourceRoot":"","sources":["../../../src/clients/createPublicClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,YAAY,EAAgB,MAAM,mBAAmB,CAAA;AAChF,OAAO,EAAE,KAAK,aAAa,EAAiB,MAAM,wBAAwB,CAAA;AAC1E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAEhE,MAAM,MAAM,kBAAkB,CAC5B,SAAS,SAAS,SAAS,GAAG,SAAS,EACvC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,IACjD,QAAQ,CACV,IAAI,CACF,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,
|
1
|
+
{"version":3,"file":"createPublicClient.d.ts","sourceRoot":"","sources":["../../../src/clients/createPublicClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,YAAY,EAAgB,MAAM,mBAAmB,CAAA;AAChF,OAAO,EAAE,KAAK,aAAa,EAAiB,MAAM,wBAAwB,CAAA;AAC1E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAEhE,MAAM,MAAM,kBAAkB,CAC5B,SAAS,SAAS,SAAS,GAAG,SAAS,EACvC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,IACjD,QAAQ,CACV,IAAI,CACF,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,EAC5B,OAAO,GACP,WAAW,GACX,OAAO,GACP,KAAK,GACL,MAAM,GACN,iBAAiB,GACjB,WAAW,CACd,CACF,CAAA;AAED,MAAM,MAAM,YAAY,CACtB,SAAS,SAAS,SAAS,GAAG,SAAS,EACvC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,IACjD,QAAQ,CACV,MAAM,CACJ,SAAS,EACT,KAAK,EACL,SAAS,EACT,eAAe,EACf,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,CAChC,CACF,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,SAAS,SAAS,EAC3B,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EAE3C,UAAU,EAAE,kBAAkB,CAAC,SAAS,EAAE,KAAK,CAAC,GAC/C,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA"}
|
@@ -8,7 +8,7 @@ import { type TestActions } from './decorators/test.js';
|
|
8
8
|
import type { Transport } from './transports/createTransport.js';
|
9
9
|
import type { Address } from 'abitype';
|
10
10
|
export type TestClientMode = 'anvil' | 'hardhat' | 'ganache';
|
11
|
-
export type TestClientConfig<mode extends TestClientMode = TestClientMode, transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined, accountOrAddress extends Account | Address | undefined = Account | Address | undefined> = Prettify<Pick<ClientConfig<transport, chain, accountOrAddress>, 'account' | 'chain' | 'key' | 'name' | 'pollingInterval' | 'transport'> & {
|
11
|
+
export type TestClientConfig<mode extends TestClientMode = TestClientMode, transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined, accountOrAddress extends Account | Address | undefined = Account | Address | undefined> = Prettify<Pick<ClientConfig<transport, chain, accountOrAddress>, 'account' | 'cacheTime' | 'chain' | 'key' | 'name' | 'pollingInterval' | 'transport'> & {
|
12
12
|
/** Mode of the test client. */
|
13
13
|
mode: mode | ('anvil' | 'hardhat' | 'ganache');
|
14
14
|
}>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"createTestClient.d.ts","sourceRoot":"","sources":["../../../src/clients/createTestClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,YAAY,EAAgB,MAAM,mBAAmB,CAAA;AAChF,OAAO,EAAE,KAAK,WAAW,EAAe,MAAM,sBAAsB,CAAA;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAChE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAA;AAE5D,MAAM,MAAM,gBAAgB,CAC1B,IAAI,SAAS,cAAc,GAAG,cAAc,EAC5C,SAAS,SAAS,SAAS,GAAG,SAAS,EACvC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,gBAAgB,SAAS,OAAO,GAAG,OAAO,GAAG,SAAS,GAClD,OAAO,GACP,OAAO,GACP,SAAS,IACX,QAAQ,CACV,IAAI,CACF,YAAY,CAAC,SAAS,EAAE,KAAK,EAAE,gBAAgB,CAAC,
|
1
|
+
{"version":3,"file":"createTestClient.d.ts","sourceRoot":"","sources":["../../../src/clients/createTestClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,YAAY,EAAgB,MAAM,mBAAmB,CAAA;AAChF,OAAO,EAAE,KAAK,WAAW,EAAe,MAAM,sBAAsB,CAAA;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAChE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAA;AAE5D,MAAM,MAAM,gBAAgB,CAC1B,IAAI,SAAS,cAAc,GAAG,cAAc,EAC5C,SAAS,SAAS,SAAS,GAAG,SAAS,EACvC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,gBAAgB,SAAS,OAAO,GAAG,OAAO,GAAG,SAAS,GAClD,OAAO,GACP,OAAO,GACP,SAAS,IACX,QAAQ,CACV,IAAI,CACF,YAAY,CAAC,SAAS,EAAE,KAAK,EAAE,gBAAgB,CAAC,EAC9C,SAAS,GACT,WAAW,GACX,OAAO,GACP,KAAK,GACL,MAAM,GACN,iBAAiB,GACjB,WAAW,CACd,GAAG;IACF,+BAA+B;IAC/B,IAAI,EAAE,IAAI,GAAG,CAAC,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC,CAAA;CAC/C,CACF,CAAA;AAED,MAAM,MAAM,UAAU,CACpB,KAAK,SAAS,cAAc,GAAG,cAAc,EAC7C,SAAS,SAAS,SAAS,GAAG,SAAS,EACvC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EAC1D,eAAe,SAAS,OAAO,GAAG,IAAI,IACpC,QAAQ,CACV;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,GAAG,MAAM,CACtB,SAAS,EACT,KAAK,EACL,QAAQ,EACR,aAAa,CAAC,KAAK,CAAC,EACpB,eAAe,SAAS,IAAI,GAAG,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CACrE,CACF,CAAA;AAED;;GAEG;AACH;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAAE,mDAAmD;AACjG,SAAS,SAAS,SAAS,EAC3B,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EAC3C,gBAAgB,SAAS,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,EAElE,UAAU,EAAE,gBAAgB,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,gBAAgB,CAAC,GACrE,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,CAAC,gBAAgB,CAAC,CAAC,CAAA"}
|
@@ -7,7 +7,7 @@ import type { Prettify } from '../types/utils.js';
|
|
7
7
|
import { type Client, type ClientConfig } from './createClient.js';
|
8
8
|
import { type WalletActions } from './decorators/wallet.js';
|
9
9
|
import type { Transport } from './transports/createTransport.js';
|
10
|
-
export type WalletClientConfig<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined, accountOrAddress extends Account | Address | undefined = Account | Address | undefined> = Prettify<Pick<ClientConfig<transport, chain, accountOrAddress>, 'account' | 'chain' | 'key' | 'name' | 'pollingInterval' | 'transport'>>;
|
10
|
+
export type WalletClientConfig<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined, accountOrAddress extends Account | Address | undefined = Account | Address | undefined> = Prettify<Pick<ClientConfig<transport, chain, accountOrAddress>, 'account' | 'cacheTime' | 'chain' | 'key' | 'name' | 'pollingInterval' | 'transport'>>;
|
11
11
|
export type WalletClient<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined> = Prettify<Client<transport, chain, account, WalletRpcSchema, WalletActions<chain, account>>>;
|
12
12
|
/**
|
13
13
|
* Creates a Wallet Client with a given [Transport](https://viem.sh/docs/clients/intro.html) configured for a [Chain](https://viem.sh/docs/clients/chains.html).
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"createWalletClient.d.ts","sourceRoot":"","sources":["../../../src/clients/createWalletClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,YAAY,EAAgB,MAAM,mBAAmB,CAAA;AAChF,OAAO,EAAE,KAAK,aAAa,EAAiB,MAAM,wBAAwB,CAAA;AAC1E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAEhE,MAAM,MAAM,kBAAkB,CAC5B,SAAS,SAAS,SAAS,GAAG,SAAS,EACvC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,gBAAgB,SAAS,OAAO,GAAG,OAAO,GAAG,SAAS,GAClD,OAAO,GACP,OAAO,GACP,SAAS,IACX,QAAQ,CACV,IAAI,CACF,YAAY,CAAC,SAAS,EAAE,KAAK,EAAE,gBAAgB,CAAC,
|
1
|
+
{"version":3,"file":"createWalletClient.d.ts","sourceRoot":"","sources":["../../../src/clients/createWalletClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,YAAY,EAAgB,MAAM,mBAAmB,CAAA;AAChF,OAAO,EAAE,KAAK,aAAa,EAAiB,MAAM,wBAAwB,CAAA;AAC1E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAEhE,MAAM,MAAM,kBAAkB,CAC5B,SAAS,SAAS,SAAS,GAAG,SAAS,EACvC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,gBAAgB,SAAS,OAAO,GAAG,OAAO,GAAG,SAAS,GAClD,OAAO,GACP,OAAO,GACP,SAAS,IACX,QAAQ,CACV,IAAI,CACF,YAAY,CAAC,SAAS,EAAE,KAAK,EAAE,gBAAgB,CAAC,EAC9C,SAAS,GACT,WAAW,GACX,OAAO,GACP,KAAK,GACL,MAAM,GACN,iBAAiB,GACjB,WAAW,CACd,CACF,CAAA;AAED,MAAM,MAAM,YAAY,CACtB,SAAS,SAAS,SAAS,GAAG,SAAS,EACvC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,IACvD,QAAQ,CACV,MAAM,CACJ,SAAS,EACT,KAAK,EACL,OAAO,EACP,eAAe,EACf,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAC9B,CACF,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,SAAS,SAAS,EAC3B,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EAC3C,gBAAgB,SAAS,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,EAElE,UAAU,EAAE,kBAAkB,CAAC,SAAS,EAAE,KAAK,EAAE,gBAAgB,CAAC,GACjE,YAAY,CAAC,SAAS,EAAE,KAAK,EAAE,YAAY,CAAC,gBAAgB,CAAC,CAAC,CAAA"}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
export declare const version = "0.0.0-main.
|
1
|
+
export declare const version = "0.0.0-main.20230731T152533";
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
@@ -25,12 +25,12 @@ export declare function getCache<TData>(cacheKey: string): {
|
|
25
25
|
export type WithCacheParameters = {
|
26
26
|
/** The key to cache the data against. */
|
27
27
|
cacheKey: string;
|
28
|
-
/** The
|
29
|
-
|
28
|
+
/** The time that cached data will remain in memory. Default: Infinity (no expiry) */
|
29
|
+
cacheTime?: number;
|
30
30
|
};
|
31
31
|
/**
|
32
32
|
* @description Returns the result of a given promise, and caches the result for
|
33
33
|
* subsequent invocations against a provided cache key.
|
34
34
|
*/
|
35
|
-
export declare function withCache<TData>(fn: () => Promise<TData>, { cacheKey,
|
35
|
+
export declare function withCache<TData>(fn: () => Promise<TData>, { cacheKey, cacheTime }: WithCacheParameters): Promise<TData>;
|
36
36
|
//# sourceMappingURL=withCache.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"withCache.d.ts","sourceRoot":"","sources":["../../../../src/utils/promise/withCache.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,eAA0B,CAAA;AACnD,eAAO,MAAM,aAAa,eAA0B,CAAA;AAEpD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM;;;;;;;;;;qBAQP,IAAI;kBAAQ,KAAK;;;qBAAjB,IAAI;kBAAQ,KAAK;;qBAAjB,IAAI;kBAAQ,KAAK;;;EAazD;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAA;IAChB,
|
1
|
+
{"version":3,"file":"withCache.d.ts","sourceRoot":"","sources":["../../../../src/utils/promise/withCache.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,eAA0B,CAAA;AACnD,eAAO,MAAM,aAAa,eAA0B,CAAA;AAEpD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM;;;;;;;;;;qBAQP,IAAI;kBAAQ,KAAK;;;qBAAjB,IAAI;kBAAQ,KAAK;;qBAAjB,IAAI;kBAAQ,KAAK;;;EAazD;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAA;IAChB,qFAAqF;IACrF,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED;;;GAGG;AACH,wBAAsB,SAAS,CAAC,KAAK,EACnC,EAAE,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,EACxB,EAAE,QAAQ,EAAE,SAAoB,EAAE,EAAE,mBAAmB,kBAmCxD"}
|
package/package.json
CHANGED
@@ -4,7 +4,9 @@ import type { Chain } from '../../types/chain.js'
|
|
4
4
|
import { getCache, withCache } from '../../utils/promise/withCache.js'
|
5
5
|
|
6
6
|
export type GetBlockNumberParameters = {
|
7
|
-
/**
|
7
|
+
/** Time (in ms) that cached block number will remain in memory. */
|
8
|
+
cacheTime?: number
|
9
|
+
/** @deprecated use `cacheTime` instead. */
|
8
10
|
maxAge?: number
|
9
11
|
}
|
10
12
|
|
@@ -41,14 +43,14 @@ export function getBlockNumberCache(id: string) {
|
|
41
43
|
*/
|
42
44
|
export async function getBlockNumber<TChain extends Chain | undefined>(
|
43
45
|
client: Client<Transport, TChain>,
|
44
|
-
{
|
46
|
+
{ cacheTime = client.cacheTime, maxAge }: GetBlockNumberParameters = {},
|
45
47
|
): Promise<GetBlockNumberReturnType> {
|
46
48
|
const blockNumberHex = await withCache(
|
47
49
|
() =>
|
48
50
|
client.request({
|
49
51
|
method: 'eth_blockNumber',
|
50
52
|
}),
|
51
|
-
{ cacheKey: cacheKey(client.uid), maxAge },
|
53
|
+
{ cacheKey: cacheKey(client.uid), cacheTime: maxAge ?? cacheTime },
|
52
54
|
)
|
53
55
|
return BigInt(blockNumberHex)
|
54
56
|
}
|
@@ -105,7 +105,7 @@ export function watchBlockNumber<
|
|
105
105
|
poll(
|
106
106
|
async () => {
|
107
107
|
try {
|
108
|
-
const blockNumber = await getBlockNumber(client, {
|
108
|
+
const blockNumber = await getBlockNumber(client, { cacheTime: 0 })
|
109
109
|
|
110
110
|
if (prevBlockNumber) {
|
111
111
|
// If the current block number is the same as the previous,
|
@@ -29,6 +29,11 @@ export type ClientConfig<
|
|
29
29
|
multicall?: boolean | Prettify<MulticallBatchOptions> | undefined
|
30
30
|
}
|
31
31
|
| undefined
|
32
|
+
/**
|
33
|
+
* Time (in ms) that cached data will remain in memory.
|
34
|
+
* @default 4_000
|
35
|
+
*/
|
36
|
+
cacheTime?: number | undefined
|
32
37
|
/** Chain for the client. */
|
33
38
|
chain?: Chain | undefined | chain
|
34
39
|
/** A key for the client. */
|
@@ -79,6 +84,8 @@ type Client_Base<
|
|
79
84
|
account: account
|
80
85
|
/** Flags for batch settings. */
|
81
86
|
batch?: ClientConfig['batch']
|
87
|
+
/** Time (in ms) that cached data will remain in memory. */
|
88
|
+
cacheTime: number
|
82
89
|
/** Chain for the client. */
|
83
90
|
chain: chain
|
84
91
|
/** A key for the client. */
|
@@ -135,6 +142,7 @@ export function createClient<
|
|
135
142
|
export function createClient(parameters: ClientConfig): Client {
|
136
143
|
const {
|
137
144
|
batch,
|
145
|
+
cacheTime = parameters.pollingInterval ?? 4_000,
|
138
146
|
key = 'base',
|
139
147
|
name = 'Base Client',
|
140
148
|
pollingInterval = 4_000,
|
@@ -154,6 +162,7 @@ export function createClient(parameters: ClientConfig): Client {
|
|
154
162
|
const client = {
|
155
163
|
account,
|
156
164
|
batch,
|
165
|
+
cacheTime,
|
157
166
|
chain,
|
158
167
|
key,
|
159
168
|
name,
|
@@ -11,7 +11,13 @@ export type PublicClientConfig<
|
|
11
11
|
> = Prettify<
|
12
12
|
Pick<
|
13
13
|
ClientConfig<transport, chain>,
|
14
|
-
|
14
|
+
| 'batch'
|
15
|
+
| 'cacheTime'
|
16
|
+
| 'chain'
|
17
|
+
| 'key'
|
18
|
+
| 'name'
|
19
|
+
| 'pollingInterval'
|
20
|
+
| 'transport'
|
15
21
|
>
|
16
22
|
>
|
17
23
|
|
@@ -21,7 +21,13 @@ export type TestClientConfig<
|
|
21
21
|
> = Prettify<
|
22
22
|
Pick<
|
23
23
|
ClientConfig<transport, chain, accountOrAddress>,
|
24
|
-
|
24
|
+
| 'account'
|
25
|
+
| 'cacheTime'
|
26
|
+
| 'chain'
|
27
|
+
| 'key'
|
28
|
+
| 'name'
|
29
|
+
| 'pollingInterval'
|
30
|
+
| 'transport'
|
25
31
|
> & {
|
26
32
|
/** Mode of the test client. */
|
27
33
|
mode: mode | ('anvil' | 'hardhat' | 'ganache') // TODO: Type utility that expands `TestClientMode`
|
@@ -19,7 +19,13 @@ export type WalletClientConfig<
|
|
19
19
|
> = Prettify<
|
20
20
|
Pick<
|
21
21
|
ClientConfig<transport, chain, accountOrAddress>,
|
22
|
-
|
22
|
+
| 'account'
|
23
|
+
| 'cacheTime'
|
24
|
+
| 'chain'
|
25
|
+
| 'key'
|
26
|
+
| 'name'
|
27
|
+
| 'pollingInterval'
|
28
|
+
| 'transport'
|
23
29
|
>
|
24
30
|
>
|
25
31
|
|
package/src/errors/version.ts
CHANGED
@@ -1 +1 @@
|
|
1
|
-
export const version = '0.0.0-main.
|
1
|
+
export const version = '0.0.0-main.20230731T152533'
|
@@ -27,8 +27,8 @@ export function getCache<TData>(cacheKey: string) {
|
|
27
27
|
export type WithCacheParameters = {
|
28
28
|
/** The key to cache the data against. */
|
29
29
|
cacheKey: string
|
30
|
-
/** The
|
31
|
-
|
30
|
+
/** The time that cached data will remain in memory. Default: Infinity (no expiry) */
|
31
|
+
cacheTime?: number
|
32
32
|
}
|
33
33
|
|
34
34
|
/**
|
@@ -37,7 +37,7 @@ export type WithCacheParameters = {
|
|
37
37
|
*/
|
38
38
|
export async function withCache<TData>(
|
39
39
|
fn: () => Promise<TData>,
|
40
|
-
{ cacheKey,
|
40
|
+
{ cacheKey, cacheTime = Infinity }: WithCacheParameters,
|
41
41
|
) {
|
42
42
|
const cache = getCache<TData>(cacheKey)
|
43
43
|
|
@@ -45,9 +45,9 @@ export async function withCache<TData>(
|
|
45
45
|
// and do not invoke the promise.
|
46
46
|
// If the max age is 0, the cache is disabled.
|
47
47
|
const response = cache.response.get()
|
48
|
-
if (response &&
|
48
|
+
if (response && cacheTime > 0) {
|
49
49
|
const age = new Date().getTime() - response.created.getTime()
|
50
|
-
if (age <
|
50
|
+
if (age < cacheTime) return response.data
|
51
51
|
}
|
52
52
|
|
53
53
|
let promise = cache.promise.get()
|