@libp2p/interface 2.10.2 → 2.10.3-ae595d8db
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/index.min.js +1 -1
- package/dist/index.min.js.map +3 -3
- package/dist/src/index.d.ts +4 -5
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/keys.d.ts +9 -8
- package/dist/src/keys.d.ts.map +1 -1
- package/dist/src/keys.js.map +1 -1
- package/dist/src/peer-discovery.d.ts +1 -1
- package/dist/src/peer-discovery.d.ts.map +1 -1
- package/dist/src/peer-store.d.ts +17 -9
- package/dist/src/peer-store.d.ts.map +1 -1
- package/dist/src/peer-store.js.map +1 -1
- package/dist/src/pubsub.d.ts +1 -1
- package/dist/src/pubsub.d.ts.map +1 -1
- package/dist/src/stream-handler.d.ts +2 -1
- package/dist/src/stream-handler.d.ts.map +1 -1
- package/dist/src/transport.d.ts +1 -1
- package/dist/src/transport.d.ts.map +1 -1
- package/package.json +4 -9
- package/src/index.ts +4 -5
- package/src/keys.ts +9 -8
- package/src/peer-discovery.ts +1 -1
- package/src/peer-store.ts +19 -9
- package/src/pubsub.ts +1 -1
- package/src/stream-handler.ts +2 -1
- package/src/transport.ts +1 -1
- package/dist/src/event-target.d.ts +0 -36
- package/dist/src/event-target.d.ts.map +0 -1
- package/dist/src/event-target.js +0 -55
- package/dist/src/event-target.js.map +0 -1
- package/dist/src/events.browser.d.ts +0 -5
- package/dist/src/events.browser.d.ts.map +0 -1
- package/dist/src/events.browser.js +0 -5
- package/dist/src/events.browser.js.map +0 -1
- package/dist/src/events.d.ts +0 -6
- package/dist/src/events.d.ts.map +0 -1
- package/dist/src/events.js +0 -13
- package/dist/src/events.js.map +0 -1
- package/dist/typedoc-urls.json +0 -223
- package/src/event-target.ts +0 -106
- package/src/events.browser.ts +0 -4
- package/src/events.ts +0 -12
package/src/event-target.ts
DELETED
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
import { setMaxListeners } from './events.js'
|
|
2
|
-
|
|
3
|
-
export interface EventCallback<EventType> { (evt: EventType): void }
|
|
4
|
-
export interface EventObject<EventType> { handleEvent: EventCallback<EventType> }
|
|
5
|
-
export type EventHandler<EventType> = EventCallback<EventType> | EventObject<EventType>
|
|
6
|
-
|
|
7
|
-
interface Listener {
|
|
8
|
-
once: boolean
|
|
9
|
-
callback: any
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Adds types to the EventTarget class. Hopefully this won't be necessary
|
|
14
|
-
* forever.
|
|
15
|
-
*
|
|
16
|
-
* https://github.com/microsoft/TypeScript/issues/28357
|
|
17
|
-
* https://github.com/microsoft/TypeScript/issues/43477
|
|
18
|
-
* https://github.com/microsoft/TypeScript/issues/299
|
|
19
|
-
* etc
|
|
20
|
-
*/
|
|
21
|
-
export interface TypedEventTarget <EventMap extends Record<string, any>> extends EventTarget {
|
|
22
|
-
addEventListener<K extends keyof EventMap>(type: K, listener: EventHandler<EventMap[K]> | null, options?: boolean | AddEventListenerOptions): void
|
|
23
|
-
|
|
24
|
-
listenerCount (type: string): number
|
|
25
|
-
|
|
26
|
-
removeEventListener<K extends keyof EventMap>(type: K, listener?: EventHandler<EventMap[K]> | null, options?: boolean | EventListenerOptions): void
|
|
27
|
-
|
|
28
|
-
removeEventListener (type: string, listener?: EventHandler<Event>, options?: boolean | EventListenerOptions): void
|
|
29
|
-
|
|
30
|
-
safeDispatchEvent<Detail>(type: keyof EventMap, detail?: CustomEventInit<Detail>): boolean
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* An implementation of a typed event target
|
|
35
|
-
*/
|
|
36
|
-
export class TypedEventEmitter<EventMap extends Record<string, any>> extends EventTarget implements TypedEventTarget<EventMap> {
|
|
37
|
-
readonly #listeners = new Map<any, Listener[]>()
|
|
38
|
-
|
|
39
|
-
constructor () {
|
|
40
|
-
super()
|
|
41
|
-
|
|
42
|
-
// silence MaxListenersExceededWarning warning on Node.js, this is a red
|
|
43
|
-
// herring almost all of the time
|
|
44
|
-
setMaxListeners(Infinity, this)
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
listenerCount (type: string): number {
|
|
48
|
-
const listeners = this.#listeners.get(type)
|
|
49
|
-
|
|
50
|
-
if (listeners == null) {
|
|
51
|
-
return 0
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
return listeners.length
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
addEventListener<K extends keyof EventMap>(type: K, listener: EventHandler<EventMap[K]> | null, options?: boolean | AddEventListenerOptions): void
|
|
58
|
-
addEventListener (type: string, listener: EventHandler<Event>, options?: boolean | AddEventListenerOptions): void {
|
|
59
|
-
super.addEventListener(type, listener, options)
|
|
60
|
-
|
|
61
|
-
let list = this.#listeners.get(type)
|
|
62
|
-
|
|
63
|
-
if (list == null) {
|
|
64
|
-
list = []
|
|
65
|
-
this.#listeners.set(type, list)
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
list.push({
|
|
69
|
-
callback: listener,
|
|
70
|
-
once: (options !== true && options !== false && options?.once) ?? false
|
|
71
|
-
})
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
removeEventListener<K extends keyof EventMap>(type: K, listener?: EventHandler<EventMap[K]> | null, options?: boolean | EventListenerOptions): void
|
|
75
|
-
removeEventListener (type: string, listener?: EventHandler<Event>, options?: boolean | EventListenerOptions): void {
|
|
76
|
-
super.removeEventListener(type.toString(), listener ?? null, options)
|
|
77
|
-
|
|
78
|
-
let list = this.#listeners.get(type)
|
|
79
|
-
|
|
80
|
-
if (list == null) {
|
|
81
|
-
return
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
list = list.filter(({ callback }) => callback !== listener)
|
|
85
|
-
this.#listeners.set(type, list)
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
dispatchEvent (event: Event): boolean {
|
|
89
|
-
const result = super.dispatchEvent(event)
|
|
90
|
-
|
|
91
|
-
let list = this.#listeners.get(event.type)
|
|
92
|
-
|
|
93
|
-
if (list == null) {
|
|
94
|
-
return result
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
list = list.filter(({ once }) => !once)
|
|
98
|
-
this.#listeners.set(event.type, list)
|
|
99
|
-
|
|
100
|
-
return result
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
safeDispatchEvent<Detail>(type: keyof EventMap, detail: CustomEventInit<Detail> = {}): boolean {
|
|
104
|
-
return this.dispatchEvent(new CustomEvent<Detail>(type as string, detail))
|
|
105
|
-
}
|
|
106
|
-
}
|
package/src/events.browser.ts
DELETED
package/src/events.ts
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { setMaxListeners as nodeSetMaxListeners } from 'node:events'
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Create a setMaxListeners that doesn't break browser usage
|
|
5
|
-
*/
|
|
6
|
-
export const setMaxListeners: typeof nodeSetMaxListeners = (n, ...eventTargets) => {
|
|
7
|
-
try {
|
|
8
|
-
nodeSetMaxListeners(n, ...eventTargets)
|
|
9
|
-
} catch {
|
|
10
|
-
// swallow error, gulp
|
|
11
|
-
}
|
|
12
|
-
}
|