@libp2p/utils 6.1.2 → 6.1.3-32ca76fcb

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.
@@ -0,0 +1,11 @@
1
+ import type { Startable } from '@libp2p/interface';
2
+ export interface DebouncedFunction extends Startable {
3
+ (): void;
4
+ }
5
+ /**
6
+ * Returns a function wrapper that will only call the passed function once
7
+ *
8
+ * Important - the passed function should not throw or reject
9
+ */
10
+ export declare function debounce(func: () => void | Promise<void>, wait: number): DebouncedFunction;
11
+ //# sourceMappingURL=debounce.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debounce.d.ts","sourceRoot":"","sources":["../../src/debounce.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAElD,MAAM,WAAW,iBAAkB,SAAQ,SAAS;IAClD,IAAI,IAAI,CAAA;CACT;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAE,IAAI,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,iBAAiB,CAkB3F"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Returns a function wrapper that will only call the passed function once
3
+ *
4
+ * Important - the passed function should not throw or reject
5
+ */
6
+ export function debounce(func, wait) {
7
+ let timeout;
8
+ const output = function () {
9
+ const later = function () {
10
+ timeout = undefined;
11
+ void func();
12
+ };
13
+ clearTimeout(timeout);
14
+ timeout = setTimeout(later, wait);
15
+ };
16
+ output.start = () => { };
17
+ output.stop = () => {
18
+ clearTimeout(timeout);
19
+ };
20
+ return output;
21
+ }
22
+ //# sourceMappingURL=debounce.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debounce.js","sourceRoot":"","sources":["../../src/debounce.ts"],"names":[],"mappings":"AAMA;;;;GAIG;AACH,MAAM,UAAU,QAAQ,CAAE,IAAgC,EAAE,IAAY;IACtE,IAAI,OAAkD,CAAA;IAEtD,MAAM,MAAM,GAAG;QACb,MAAM,KAAK,GAAG;YACZ,OAAO,GAAG,SAAS,CAAA;YACnB,KAAK,IAAI,EAAE,CAAA;QACb,CAAC,CAAA;QAED,YAAY,CAAC,OAAO,CAAC,CAAA;QACrB,OAAO,GAAG,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACnC,CAAC,CAAA;IACD,MAAM,CAAC,KAAK,GAAG,GAAG,EAAE,GAAE,CAAC,CAAA;IACvB,MAAM,CAAC,IAAI,GAAG,GAAG,EAAE;QACjB,YAAY,CAAC,OAAO,CAAC,CAAA;IACvB,CAAC,CAAA;IAED,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { AbortOptions } from '@libp2p/interface';
2
+ export interface RepeatingTask {
3
+ start(): void;
4
+ stop(): void;
5
+ }
6
+ export interface RepeatingTaskOptions {
7
+ /**
8
+ * How long the task is allowed to run before the passed AbortSignal fires an
9
+ * abort event
10
+ */
11
+ timeout?: number;
12
+ /**
13
+ * Whether to schedule the task to run immediately
14
+ */
15
+ runImmediately?: boolean;
16
+ }
17
+ export declare function repeatingTask(fn: (options?: AbortOptions) => void | Promise<void>, interval: number, options?: RepeatingTaskOptions): RepeatingTask;
18
+ //# sourceMappingURL=repeating-task.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repeating-task.d.ts","sourceRoot":"","sources":["../../src/repeating-task.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAErD,MAAM,WAAW,aAAa;IAC5B,KAAK,IAAI,IAAI,CAAA;IACb,IAAI,IAAI,IAAI,CAAA;CACb;AAED,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB;AAED,wBAAgB,aAAa,CAAE,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,YAAY,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,aAAa,CA2DpJ"}
@@ -0,0 +1,55 @@
1
+ import { setMaxListeners } from '@libp2p/interface';
2
+ import { anySignal } from 'any-signal';
3
+ export function repeatingTask(fn, interval, options) {
4
+ let timeout;
5
+ let shutdownController;
6
+ function runTask() {
7
+ const opts = {
8
+ signal: shutdownController.signal
9
+ };
10
+ if (options?.timeout != null) {
11
+ const signal = anySignal([shutdownController.signal, AbortSignal.timeout(options.timeout)]);
12
+ setMaxListeners(Infinity, signal);
13
+ opts.signal = signal;
14
+ }
15
+ Promise.resolve().then(async () => {
16
+ await fn(opts);
17
+ })
18
+ .catch(() => { })
19
+ .finally(() => {
20
+ if (shutdownController.signal.aborted) {
21
+ // task has been cancelled, bail
22
+ return;
23
+ }
24
+ // reschedule
25
+ timeout = setTimeout(runTask, interval);
26
+ });
27
+ }
28
+ let started = false;
29
+ return {
30
+ start: () => {
31
+ if (started) {
32
+ return;
33
+ }
34
+ started = true;
35
+ shutdownController = new AbortController();
36
+ setMaxListeners(Infinity, shutdownController.signal);
37
+ // run now
38
+ if (options?.runImmediately === true) {
39
+ queueMicrotask(() => {
40
+ runTask();
41
+ });
42
+ }
43
+ else {
44
+ // run later
45
+ timeout = setTimeout(runTask, interval);
46
+ }
47
+ },
48
+ stop: () => {
49
+ clearTimeout(timeout);
50
+ shutdownController?.abort();
51
+ started = false;
52
+ }
53
+ };
54
+ }
55
+ //# sourceMappingURL=repeating-task.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repeating-task.js","sourceRoot":"","sources":["../../src/repeating-task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAqBtC,MAAM,UAAU,aAAa,CAAE,EAAoD,EAAE,QAAgB,EAAE,OAA8B;IACnI,IAAI,OAAsC,CAAA;IAC1C,IAAI,kBAAmC,CAAA;IAEvC,SAAS,OAAO;QACd,MAAM,IAAI,GAAiB;YACzB,MAAM,EAAE,kBAAkB,CAAC,MAAM;SAClC,CAAA;QAED,IAAI,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;YAC3F,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;YAEjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACtB,CAAC;QAED,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;YAChC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAA;QAChB,CAAC,CAAC;aACC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;aACf,OAAO,CAAC,GAAG,EAAE;YACZ,IAAI,kBAAkB,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACtC,gCAAgC;gBAChC,OAAM;YACR,CAAC;YAED,aAAa;YACb,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QACzC,CAAC,CAAC,CAAA;IACN,CAAC;IAED,IAAI,OAAO,GAAG,KAAK,CAAA;IAEnB,OAAO;QACL,KAAK,EAAE,GAAG,EAAE;YACV,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAM;YACR,CAAC;YAED,OAAO,GAAG,IAAI,CAAA;YACd,kBAAkB,GAAG,IAAI,eAAe,EAAE,CAAA;YAC1C,eAAe,CAAC,QAAQ,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAA;YAEpD,UAAU;YACV,IAAI,OAAO,EAAE,cAAc,KAAK,IAAI,EAAE,CAAC;gBACrC,cAAc,CAAC,GAAG,EAAE;oBAClB,OAAO,EAAE,CAAA;gBACX,CAAC,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,YAAY;gBACZ,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;YACzC,CAAC;QACH,CAAC;QACD,IAAI,EAAE,GAAG,EAAE;YACT,YAAY,CAAC,OAAO,CAAC,CAAA;YACrB,kBAAkB,EAAE,KAAK,EAAE,CAAA;YAC3B,OAAO,GAAG,KAAK,CAAA;QACjB,CAAC;KACF,CAAA;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@libp2p/utils",
3
- "version": "6.1.2",
3
+ "version": "6.1.3-32ca76fcb",
4
4
  "description": "Package to aggregate shared logic and dependencies for the libp2p ecosystem",
5
5
  "license": "Apache-2.0 OR MIT",
6
6
  "homepage": "https://github.com/libp2p/js-libp2p/tree/main/packages/utils#readme",
@@ -68,6 +68,10 @@
68
68
  "types": "./dist/src/close-source.d.ts",
69
69
  "import": "./dist/src/close-source.js"
70
70
  },
71
+ "./debounce": {
72
+ "types": "./dist/src/debounce.d.ts",
73
+ "import": "./dist/src/debounce.js"
74
+ },
71
75
  "./filters": {
72
76
  "types": "./dist/src/filters/index.d.ts",
73
77
  "import": "./dist/src/filters/index.js"
@@ -112,6 +116,10 @@
112
116
  "types": "./dist/src/rate-limiter.d.ts",
113
117
  "import": "./dist/src/rate-limiter.js"
114
118
  },
119
+ "./repeating-task": {
120
+ "types": "./dist/src/repeating-task.d.ts",
121
+ "import": "./dist/src/repeating-task.js"
122
+ },
115
123
  "./stream-to-ma-conn": {
116
124
  "types": "./dist/src/stream-to-ma-conn.d.ts",
117
125
  "import": "./dist/src/stream-to-ma-conn.js"
@@ -148,9 +156,9 @@
148
156
  },
149
157
  "dependencies": {
150
158
  "@chainsafe/is-ip": "^2.0.2",
151
- "@libp2p/crypto": "^5.0.5",
152
- "@libp2p/interface": "^2.1.3",
153
- "@libp2p/logger": "^5.1.2",
159
+ "@libp2p/crypto": "5.0.6-32ca76fcb",
160
+ "@libp2p/interface": "2.2.0-32ca76fcb",
161
+ "@libp2p/logger": "5.1.3-32ca76fcb",
154
162
  "@multiformats/multiaddr": "^12.2.3",
155
163
  "@sindresorhus/fnv1a": "^3.1.0",
156
164
  "@types/murmurhash3js-revisited": "^3.0.3",
@@ -171,7 +179,7 @@
171
179
  "uint8arrays": "^5.1.0"
172
180
  },
173
181
  "devDependencies": {
174
- "@libp2p/peer-id": "^5.0.6",
182
+ "@libp2p/peer-id": "5.0.7-32ca76fcb",
175
183
  "@types/netmask": "^2.0.5",
176
184
  "aegir": "^44.0.1",
177
185
  "benchmark": "^2.1.4",
@@ -0,0 +1,30 @@
1
+ import type { Startable } from '@libp2p/interface'
2
+
3
+ export interface DebouncedFunction extends Startable {
4
+ (): void
5
+ }
6
+
7
+ /**
8
+ * Returns a function wrapper that will only call the passed function once
9
+ *
10
+ * Important - the passed function should not throw or reject
11
+ */
12
+ export function debounce (func: () => void | Promise<void>, wait: number): DebouncedFunction {
13
+ let timeout: ReturnType<typeof setTimeout> | undefined
14
+
15
+ const output = function (): void {
16
+ const later = function (): void {
17
+ timeout = undefined
18
+ void func()
19
+ }
20
+
21
+ clearTimeout(timeout)
22
+ timeout = setTimeout(later, wait)
23
+ }
24
+ output.start = () => {}
25
+ output.stop = () => {
26
+ clearTimeout(timeout)
27
+ }
28
+
29
+ return output
30
+ }
@@ -0,0 +1,82 @@
1
+ import { setMaxListeners } from '@libp2p/interface'
2
+ import { anySignal } from 'any-signal'
3
+ import type { AbortOptions } from '@libp2p/interface'
4
+
5
+ export interface RepeatingTask {
6
+ start(): void
7
+ stop(): void
8
+ }
9
+
10
+ export interface RepeatingTaskOptions {
11
+ /**
12
+ * How long the task is allowed to run before the passed AbortSignal fires an
13
+ * abort event
14
+ */
15
+ timeout?: number
16
+
17
+ /**
18
+ * Whether to schedule the task to run immediately
19
+ */
20
+ runImmediately?: boolean
21
+ }
22
+
23
+ export function repeatingTask (fn: (options?: AbortOptions) => void | Promise<void>, interval: number, options?: RepeatingTaskOptions): RepeatingTask {
24
+ let timeout: ReturnType<typeof setTimeout>
25
+ let shutdownController: AbortController
26
+
27
+ function runTask (): void {
28
+ const opts: AbortOptions = {
29
+ signal: shutdownController.signal
30
+ }
31
+
32
+ if (options?.timeout != null) {
33
+ const signal = anySignal([shutdownController.signal, AbortSignal.timeout(options.timeout)])
34
+ setMaxListeners(Infinity, signal)
35
+
36
+ opts.signal = signal
37
+ }
38
+
39
+ Promise.resolve().then(async () => {
40
+ await fn(opts)
41
+ })
42
+ .catch(() => {})
43
+ .finally(() => {
44
+ if (shutdownController.signal.aborted) {
45
+ // task has been cancelled, bail
46
+ return
47
+ }
48
+
49
+ // reschedule
50
+ timeout = setTimeout(runTask, interval)
51
+ })
52
+ }
53
+
54
+ let started = false
55
+
56
+ return {
57
+ start: () => {
58
+ if (started) {
59
+ return
60
+ }
61
+
62
+ started = true
63
+ shutdownController = new AbortController()
64
+ setMaxListeners(Infinity, shutdownController.signal)
65
+
66
+ // run now
67
+ if (options?.runImmediately === true) {
68
+ queueMicrotask(() => {
69
+ runTask()
70
+ })
71
+ } else {
72
+ // run later
73
+ timeout = setTimeout(runTask, interval)
74
+ }
75
+ },
76
+ stop: () => {
77
+ clearTimeout(timeout)
78
+ shutdownController?.abort()
79
+ started = false
80
+ }
81
+ }
82
+ }
@@ -1,113 +0,0 @@
1
- {
2
- "createTimeoutOptions": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.abort_options.createTimeoutOptions.html",
3
- "./abort-options:createTimeoutOptions": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.abort_options.createTimeoutOptions.html",
4
- "AbstractStream": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.abstract_stream.AbstractStream.html",
5
- "./abstract-stream:AbstractStream": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.abstract_stream.AbstractStream.html",
6
- "AbstractStreamInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.abstract_stream.AbstractStreamInit.html",
7
- "./abstract-stream:AbstractStreamInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.abstract_stream.AbstractStreamInit.html",
8
- "AdaptiveTimeout": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.adaptive_timeout.AdaptiveTimeout.html",
9
- "./adaptive-timeout:AdaptiveTimeout": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.adaptive_timeout.AdaptiveTimeout.html",
10
- "AdaptiveTimeoutInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.adaptive_timeout.AdaptiveTimeoutInit.html",
11
- "./adaptive-timeout:AdaptiveTimeoutInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.adaptive_timeout.AdaptiveTimeoutInit.html",
12
- "AdaptiveTimeoutSignal": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.adaptive_timeout.AdaptiveTimeoutSignal.html",
13
- "./adaptive-timeout:AdaptiveTimeoutSignal": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.adaptive_timeout.AdaptiveTimeoutSignal.html",
14
- "GetTimeoutSignalOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.adaptive_timeout.GetTimeoutSignalOptions.html",
15
- "./adaptive-timeout:GetTimeoutSignalOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.adaptive_timeout.GetTimeoutSignalOptions.html",
16
- "DEFAULT_FAILURE_MULTIPLIER": "https://libp2p.github.io/js-libp2p/variables/_libp2p_utils.adaptive_timeout.DEFAULT_FAILURE_MULTIPLIER.html",
17
- "./adaptive-timeout:DEFAULT_FAILURE_MULTIPLIER": "https://libp2p.github.io/js-libp2p/variables/_libp2p_utils.adaptive_timeout.DEFAULT_FAILURE_MULTIPLIER.html",
18
- "DEFAULT_MIN_TIMEOUT": "https://libp2p.github.io/js-libp2p/variables/_libp2p_utils.adaptive_timeout.DEFAULT_MIN_TIMEOUT.html",
19
- "./adaptive-timeout:DEFAULT_MIN_TIMEOUT": "https://libp2p.github.io/js-libp2p/variables/_libp2p_utils.adaptive_timeout.DEFAULT_MIN_TIMEOUT.html",
20
- "DEFAULT_TIMEOUT_MULTIPLIER": "https://libp2p.github.io/js-libp2p/variables/_libp2p_utils.adaptive_timeout.DEFAULT_TIMEOUT_MULTIPLIER.html",
21
- "./adaptive-timeout:DEFAULT_TIMEOUT_MULTIPLIER": "https://libp2p.github.io/js-libp2p/variables/_libp2p_utils.adaptive_timeout.DEFAULT_TIMEOUT_MULTIPLIER.html",
22
- "arrayEquals": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.array_equals.arrayEquals.html",
23
- "./array-equals:arrayEquals": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.array_equals.arrayEquals.html",
24
- "SafelyCloseConnectionOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.close.SafelyCloseConnectionOptions.html",
25
- "./close:SafelyCloseConnectionOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.close.SafelyCloseConnectionOptions.html",
26
- "safelyCloseConnectionIfUnused": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.close.safelyCloseConnectionIfUnused.html",
27
- "./close:safelyCloseConnectionIfUnused": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.close.safelyCloseConnectionIfUnused.html",
28
- "safelyCloseStream": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.close.safelyCloseStream.html",
29
- "./close:safelyCloseStream": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.close.safelyCloseStream.html",
30
- "closeSource": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.close_source.closeSource.html",
31
- "./close-source:closeSource": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.close_source.closeSource.html",
32
- "BloomFilter": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.filters.BloomFilter.html",
33
- "Bucket": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.filters.Bucket.html",
34
- "CuckooFilter": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.filters.CuckooFilter.html",
35
- "Fingerprint": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.filters.Fingerprint.html",
36
- "ScalableCuckooFilter": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.filters.ScalableCuckooFilter.html",
37
- "BloomFilterOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.filters.BloomFilterOptions.html",
38
- "CuckooFilterInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.filters.CuckooFilterInit.html",
39
- "Filter": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.filters.Filter.html",
40
- "./filters:Filter": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.filters.Filter.html",
41
- "Hash": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.filters.Hash.html",
42
- "ScalableCuckooFilterInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.filters.ScalableCuckooFilterInit.html",
43
- "createBloomFilter": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.filters.createBloomFilter.html",
44
- "createCuckooFilter": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.filters.createCuckooFilter.html",
45
- "createScalableCuckooFilter": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.filters.createScalableCuckooFilter.html",
46
- "ipPortToMultiaddr": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.ip_port_to_multiaddr.ipPortToMultiaddr.html",
47
- "./ip-port-to-multiaddr:ipPortToMultiaddr": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.ip_port_to_multiaddr.ipPortToMultiaddr.html",
48
- "isPromise": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.is_promise.isPromise.html",
49
- "./is-promise:isPromise": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.is_promise.isPromise.html",
50
- "MovingAverage": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.moving_average.MovingAverage.html",
51
- "./moving-average:MovingAverage": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.moving_average.MovingAverage.html",
52
- "isLoopback": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.multiaddr_is_loopback.isLoopback.html",
53
- "./multiaddr/is-loopback:isLoopback": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.multiaddr_is_loopback.isLoopback.html",
54
- "isPrivate": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.multiaddr_is_private.isPrivate.html",
55
- "./multiaddr/is-private:isPrivate": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.multiaddr_is_private.isPrivate.html",
56
- "PeerQueue": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.peer_queue.PeerQueue.html",
57
- "./peer-queue:PeerQueue": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.peer_queue.PeerQueue.html",
58
- "PeerQueueJobOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.peer_queue.PeerQueueJobOptions.html",
59
- "./peer-queue:PeerQueueJobOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.peer_queue.PeerQueueJobOptions.html",
60
- "PriorityQueue": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.priority_queue.PriorityQueue.html",
61
- "./priority-queue:PriorityQueue": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.priority_queue.PriorityQueue.html",
62
- "PriorityQueueJobOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.priority_queue.PriorityQueueJobOptions.html",
63
- "./priority-queue:PriorityQueueJobOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.priority_queue.PriorityQueueJobOptions.html",
64
- "isPrivateIp": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.private_ip.isPrivateIp.html",
65
- "./private-ip:isPrivateIp": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.private_ip.isPrivateIp.html",
66
- "Job": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.queue.Job.html",
67
- "JobRecipient": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.queue.JobRecipient.html",
68
- "Queue": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.queue.Queue.html",
69
- "./queue:Queue": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.queue.Queue.html",
70
- "Comparator": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.queue.Comparator.html",
71
- "./queue:Comparator": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.queue.Comparator.html",
72
- "JobMatcher": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.queue.JobMatcher.html",
73
- "./queue:JobMatcher": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.queue.JobMatcher.html",
74
- "JobTimeline": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.queue.JobTimeline.html",
75
- "QueueEvents": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.queue.QueueEvents.html",
76
- "./queue:QueueEvents": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.queue.QueueEvents.html",
77
- "QueueInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.queue.QueueInit.html",
78
- "./queue:QueueInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.queue.QueueInit.html",
79
- "QueueJobFailure": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.queue.QueueJobFailure.html",
80
- "./queue:QueueJobFailure": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.queue.QueueJobFailure.html",
81
- "QueueJobSuccess": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.queue.QueueJobSuccess.html",
82
- "./queue:QueueJobSuccess": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.queue.QueueJobSuccess.html",
83
- "RunFunction": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.queue.RunFunction.html",
84
- "./queue:RunFunction": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.queue.RunFunction.html",
85
- "JobStatus": "https://libp2p.github.io/js-libp2p/types/_libp2p_utils.queue.JobStatus.html",
86
- "./queue:JobStatus": "https://libp2p.github.io/js-libp2p/types/_libp2p_utils.queue.JobStatus.html",
87
- "MemoryStorage": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.rate_limiter.MemoryStorage.html",
88
- "./rate-limiter:MemoryStorage": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.rate_limiter.MemoryStorage.html",
89
- "RateLimiter": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.rate_limiter.RateLimiter.html",
90
- "./rate-limiter:RateLimiter": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.rate_limiter.RateLimiter.html",
91
- "GetKeySecDurationOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.rate_limiter.GetKeySecDurationOptions.html",
92
- "./rate-limiter:GetKeySecDurationOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.rate_limiter.GetKeySecDurationOptions.html",
93
- "RateLimiterInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.rate_limiter.RateLimiterInit.html",
94
- "./rate-limiter:RateLimiterInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.rate_limiter.RateLimiterInit.html",
95
- "RateLimiterResult": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.rate_limiter.RateLimiterResult.html",
96
- "./rate-limiter:RateLimiterResult": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.rate_limiter.RateLimiterResult.html",
97
- "RateRecord": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.rate_limiter.RateRecord.html",
98
- "./rate-limiter:RateRecord": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.rate_limiter.RateRecord.html",
99
- "StreamProperties": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.stream_to_ma_conn.StreamProperties.html",
100
- "./stream-to-ma-conn:StreamProperties": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.stream_to_ma_conn.StreamProperties.html",
101
- "streamToMaConnection": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.stream_to_ma_conn.streamToMaConnection.html",
102
- "./stream-to-ma-conn:streamToMaConnection": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.stream_to_ma_conn.streamToMaConnection.html",
103
- "CreateTrackedListInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.tracked_list.CreateTrackedListInit.html",
104
- "./tracked-list:CreateTrackedListInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.tracked_list.CreateTrackedListInit.html",
105
- "trackedList": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.tracked_list.trackedList.html",
106
- "./tracked-list:trackedList": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.tracked_list.trackedList.html",
107
- "CreateTrackedMapInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.tracked_map.CreateTrackedMapInit.html",
108
- "./tracked-map:CreateTrackedMapInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.tracked_map.CreateTrackedMapInit.html",
109
- "TrackedMapInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.tracked_map.TrackedMapInit.html",
110
- "./tracked-map:TrackedMapInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.tracked_map.TrackedMapInit.html",
111
- "trackedMap": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.tracked_map.trackedMap.html",
112
- "./tracked-map:trackedMap": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.tracked_map.trackedMap.html"
113
- }