@libp2p/interface-compliance-tests 1.1.0 → 1.1.4
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/src/{utils/mock-connection-gater.d.ts → mocks/connection-gater.d.ts} +1 -1
- package/dist/src/mocks/connection-gater.d.ts.map +1 -0
- package/dist/src/{utils/mock-connection-gater.js → mocks/connection-gater.js} +1 -1
- package/dist/src/mocks/connection-gater.js.map +1 -0
- package/dist/src/mocks/connection-manager.d.ts +18 -0
- package/dist/src/mocks/connection-manager.d.ts.map +1 -0
- package/dist/src/mocks/connection-manager.js +22 -0
- package/dist/src/mocks/connection-manager.js.map +1 -0
- package/dist/src/mocks/connection.d.ts +8 -0
- package/dist/src/mocks/connection.d.ts.map +1 -0
- package/dist/src/{utils/mock-connection.js → mocks/connection.js} +36 -3
- package/dist/src/mocks/connection.js.map +1 -0
- package/dist/src/mocks/index.d.ts +9 -0
- package/dist/src/mocks/index.d.ts.map +1 -0
- package/dist/src/mocks/index.js +8 -0
- package/dist/src/mocks/index.js.map +1 -0
- package/dist/src/{utils/mock-multiaddr-connection.d.ts → mocks/multiaddr-connection.d.ts} +2 -2
- package/dist/src/mocks/multiaddr-connection.d.ts.map +1 -0
- package/dist/src/{utils/mock-multiaddr-connection.js → mocks/multiaddr-connection.js} +3 -3
- package/dist/src/mocks/multiaddr-connection.js.map +1 -0
- package/dist/src/{utils/mock-muxer.d.ts → mocks/muxer.d.ts} +1 -1
- package/dist/src/mocks/muxer.d.ts.map +1 -0
- package/dist/src/{utils/mock-muxer.js → mocks/muxer.js} +1 -1
- package/dist/src/mocks/muxer.js.map +1 -0
- package/dist/src/mocks/registrar.d.ts +14 -0
- package/dist/src/mocks/registrar.d.ts.map +1 -0
- package/dist/src/mocks/registrar.js +54 -0
- package/dist/src/mocks/registrar.js.map +1 -0
- package/dist/src/{utils/mock-upgrader.d.ts → mocks/upgrader.d.ts} +1 -1
- package/dist/src/mocks/upgrader.d.ts.map +1 -0
- package/dist/src/{utils/mock-upgrader.js → mocks/upgrader.js} +3 -3
- package/dist/src/mocks/upgrader.js.map +1 -0
- package/dist/src/peer-discovery/index.d.ts.map +1 -1
- package/dist/src/peer-discovery/index.js +5 -5
- package/dist/src/peer-discovery/index.js.map +1 -1
- package/dist/src/pubsub/api.d.ts +2 -2
- package/dist/src/pubsub/api.d.ts.map +1 -1
- package/dist/src/pubsub/api.js +6 -6
- package/dist/src/pubsub/api.js.map +1 -1
- package/dist/src/pubsub/connection-handlers.d.ts +2 -2
- package/dist/src/pubsub/connection-handlers.d.ts.map +1 -1
- package/dist/src/pubsub/connection-handlers.js +18 -9
- package/dist/src/pubsub/connection-handlers.js.map +1 -1
- package/dist/src/pubsub/emit-self.d.ts +2 -2
- package/dist/src/pubsub/emit-self.d.ts.map +1 -1
- package/dist/src/pubsub/emit-self.js +6 -2
- package/dist/src/pubsub/emit-self.js.map +1 -1
- package/dist/src/pubsub/index.d.ts +9 -3
- package/dist/src/pubsub/index.d.ts.map +1 -1
- package/dist/src/pubsub/index.js.map +1 -1
- package/dist/src/pubsub/messages.d.ts +2 -2
- package/dist/src/pubsub/messages.d.ts.map +1 -1
- package/dist/src/pubsub/messages.js.map +1 -1
- package/dist/src/pubsub/multiple-nodes.d.ts +2 -2
- package/dist/src/pubsub/multiple-nodes.d.ts.map +1 -1
- package/dist/src/pubsub/multiple-nodes.js +58 -35
- package/dist/src/pubsub/multiple-nodes.js.map +1 -1
- package/dist/src/pubsub/two-nodes.d.ts +2 -2
- package/dist/src/pubsub/two-nodes.d.ts.map +1 -1
- package/dist/src/pubsub/two-nodes.js +44 -19
- package/dist/src/pubsub/two-nodes.js.map +1 -1
- package/dist/src/topology/topology.d.ts.map +1 -1
- package/dist/src/topology/topology.js +1 -10
- package/dist/src/topology/topology.js.map +1 -1
- package/dist/src/transport/listen-test.d.ts.map +1 -1
- package/dist/src/transport/listen-test.js +10 -7
- package/dist/src/transport/listen-test.js.map +1 -1
- package/package.json +7 -26
- package/src/{utils/mock-connection-gater.ts → mocks/connection-gater.ts} +0 -0
- package/src/mocks/connection-manager.ts +30 -0
- package/src/{utils/mock-connection.ts → mocks/connection.ts} +39 -4
- package/src/mocks/index.ts +9 -0
- package/src/{utils/mock-multiaddr-connection.ts → mocks/multiaddr-connection.ts} +3 -3
- package/src/{utils/mock-muxer.ts → mocks/muxer.ts} +0 -0
- package/src/mocks/registrar.ts +71 -0
- package/src/{utils/mock-upgrader.ts → mocks/upgrader.ts} +2 -2
- package/src/peer-discovery/index.ts +5 -7
- package/src/pubsub/api.ts +10 -11
- package/src/pubsub/connection-handlers.ts +22 -13
- package/src/pubsub/emit-self.ts +9 -5
- package/src/pubsub/index.ts +10 -3
- package/src/pubsub/messages.ts +3 -3
- package/src/pubsub/multiple-nodes.ts +68 -45
- package/src/pubsub/two-nodes.ts +48 -23
- package/src/topology/topology.ts +1 -14
- package/src/transport/listen-test.ts +10 -7
- package/dist/src/topology/multicodec-topology.d.ts +0 -5
- package/dist/src/topology/multicodec-topology.d.ts.map +0 -1
- package/dist/src/topology/multicodec-topology.js +0 -109
- package/dist/src/topology/multicodec-topology.js.map +0 -1
- package/dist/src/utils/mock-connection-gater.d.ts.map +0 -1
- package/dist/src/utils/mock-connection-gater.js.map +0 -1
- package/dist/src/utils/mock-connection.d.ts +0 -5
- package/dist/src/utils/mock-connection.d.ts.map +0 -1
- package/dist/src/utils/mock-connection.js.map +0 -1
- package/dist/src/utils/mock-multiaddr-connection.d.ts.map +0 -1
- package/dist/src/utils/mock-multiaddr-connection.js.map +0 -1
- package/dist/src/utils/mock-muxer.d.ts.map +0 -1
- package/dist/src/utils/mock-muxer.js.map +0 -1
- package/dist/src/utils/mock-upgrader.d.ts.map +0 -1
- package/dist/src/utils/mock-upgrader.js.map +0 -1
- package/src/topology/multicodec-topology.ts +0 -136
package/src/pubsub/messages.ts
CHANGED
|
@@ -6,14 +6,14 @@ import * as utils from '@libp2p/pubsub/utils'
|
|
|
6
6
|
import { PeerStreams } from '@libp2p/pubsub/peer-streams'
|
|
7
7
|
import type { TestSetup } from '../index.js'
|
|
8
8
|
import type { PubSub } from '@libp2p/interfaces/pubsub'
|
|
9
|
-
import type {
|
|
9
|
+
import type { EventMap } from './index.js'
|
|
10
10
|
|
|
11
11
|
const topic = 'foo'
|
|
12
12
|
const data = uint8ArrayFromString('bar')
|
|
13
13
|
|
|
14
|
-
export default (common: TestSetup<PubSub
|
|
14
|
+
export default (common: TestSetup<PubSub<EventMap>>) => {
|
|
15
15
|
describe('messages', () => {
|
|
16
|
-
let pubsub: PubSub
|
|
16
|
+
let pubsub: PubSub<EventMap>
|
|
17
17
|
|
|
18
18
|
// Create pubsub router
|
|
19
19
|
beforeEach(async () => {
|
|
@@ -9,18 +9,18 @@ import { fromString as uint8ArrayFromString } from 'uint8arrays/from-string'
|
|
|
9
9
|
import { expectSet } from './utils.js'
|
|
10
10
|
import type { TestSetup } from '../index.js'
|
|
11
11
|
import type { PubSub, Message } from '@libp2p/interfaces/pubsub'
|
|
12
|
-
import type {
|
|
12
|
+
import type { EventMap } from './index.js'
|
|
13
13
|
|
|
14
|
-
export default (common: TestSetup<PubSub
|
|
14
|
+
export default (common: TestSetup<PubSub<EventMap>>) => {
|
|
15
15
|
describe('pubsub with multiple nodes', function () {
|
|
16
16
|
describe('every peer subscribes to the topic', () => {
|
|
17
17
|
describe('line', () => {
|
|
18
18
|
// line
|
|
19
19
|
// ◉────◉────◉
|
|
20
20
|
// a b c
|
|
21
|
-
let psA: PubSub
|
|
22
|
-
let psB: PubSub
|
|
23
|
-
let psC: PubSub
|
|
21
|
+
let psA: PubSub<EventMap>
|
|
22
|
+
let psB: PubSub<EventMap>
|
|
23
|
+
let psC: PubSub<EventMap>
|
|
24
24
|
|
|
25
25
|
// Create and start pubsub nodes
|
|
26
26
|
beforeEach(async () => {
|
|
@@ -60,7 +60,9 @@ export default (common: TestSetup<PubSub & Startable>) => {
|
|
|
60
60
|
psA.subscribe(topic)
|
|
61
61
|
expectSet(psA.subscriptions, [topic])
|
|
62
62
|
|
|
63
|
-
await new Promise((resolve) => psB.
|
|
63
|
+
await new Promise((resolve) => psB.addEventListener('pubsub:subscription-change', resolve, {
|
|
64
|
+
once: true
|
|
65
|
+
}))
|
|
64
66
|
expect(psB.peers.size).to.equal(2)
|
|
65
67
|
|
|
66
68
|
const aPeerId = psA.peerId.toString()
|
|
@@ -76,8 +78,12 @@ export default (common: TestSetup<PubSub & Startable>) => {
|
|
|
76
78
|
expectSet(psB.subscriptions, [topic])
|
|
77
79
|
|
|
78
80
|
await Promise.all([
|
|
79
|
-
new Promise((resolve) => psA.
|
|
80
|
-
|
|
81
|
+
new Promise((resolve) => psA.addEventListener('pubsub:subscription-change', resolve, {
|
|
82
|
+
once: true
|
|
83
|
+
})),
|
|
84
|
+
new Promise((resolve) => psC.addEventListener('pubsub:subscription-change', resolve, {
|
|
85
|
+
once: true
|
|
86
|
+
}))
|
|
81
87
|
])
|
|
82
88
|
|
|
83
89
|
expect(psA.peers.size).to.equal(1)
|
|
@@ -94,12 +100,14 @@ export default (common: TestSetup<PubSub & Startable>) => {
|
|
|
94
100
|
psC.subscribe(topic)
|
|
95
101
|
expectSet(psC.subscriptions, [topic])
|
|
96
102
|
|
|
97
|
-
psB.
|
|
103
|
+
psB.addEventListener('pubsub:subscription-change', () => {
|
|
98
104
|
expect(psA.peers.size).to.equal(1)
|
|
99
105
|
expect(psB.peers.size).to.equal(2)
|
|
100
106
|
expectSet(psB.topics.get(topic), [psC.peerId.toString()])
|
|
101
107
|
|
|
102
108
|
defer.resolve()
|
|
109
|
+
}, {
|
|
110
|
+
once: true
|
|
103
111
|
})
|
|
104
112
|
|
|
105
113
|
return await defer.promise
|
|
@@ -115,9 +123,15 @@ export default (common: TestSetup<PubSub & Startable>) => {
|
|
|
115
123
|
|
|
116
124
|
// await subscription change
|
|
117
125
|
await Promise.all([
|
|
118
|
-
new Promise(resolve => psA.
|
|
119
|
-
|
|
120
|
-
|
|
126
|
+
new Promise(resolve => psA.addEventListener('pubsub:subscription-change', () => resolve(null), {
|
|
127
|
+
once: true
|
|
128
|
+
})),
|
|
129
|
+
new Promise(resolve => psB.addEventListener('pubsub:subscription-change', () => resolve(null), {
|
|
130
|
+
once: true
|
|
131
|
+
})),
|
|
132
|
+
new Promise(resolve => psC.addEventListener('pubsub:subscription-change', () => resolve(null), {
|
|
133
|
+
once: true
|
|
134
|
+
}))
|
|
121
135
|
])
|
|
122
136
|
|
|
123
137
|
// await a cycle
|
|
@@ -125,22 +139,23 @@ export default (common: TestSetup<PubSub & Startable>) => {
|
|
|
125
139
|
|
|
126
140
|
let counter = 0
|
|
127
141
|
|
|
128
|
-
psA.
|
|
129
|
-
psB.
|
|
130
|
-
psC.
|
|
142
|
+
psA.addEventListener(topic, incMsg)
|
|
143
|
+
psB.addEventListener(topic, incMsg)
|
|
144
|
+
psC.addEventListener(topic, incMsg)
|
|
131
145
|
|
|
132
146
|
void psA.publish(topic, uint8ArrayFromString('hey'))
|
|
133
147
|
|
|
134
|
-
function incMsg (
|
|
148
|
+
function incMsg (evt: CustomEvent<Message>) {
|
|
149
|
+
const msg = evt.detail
|
|
135
150
|
expect(uint8ArrayToString(msg.data)).to.equal('hey')
|
|
136
151
|
check()
|
|
137
152
|
}
|
|
138
153
|
|
|
139
154
|
function check () {
|
|
140
155
|
if (++counter === 3) {
|
|
141
|
-
psA.
|
|
142
|
-
psB.
|
|
143
|
-
psC.
|
|
156
|
+
psA.removeEventListener(topic, incMsg)
|
|
157
|
+
psB.removeEventListener(topic, incMsg)
|
|
158
|
+
psC.removeEventListener(topic, incMsg)
|
|
144
159
|
defer.resolve()
|
|
145
160
|
}
|
|
146
161
|
}
|
|
@@ -168,30 +183,37 @@ export default (common: TestSetup<PubSub & Startable>) => {
|
|
|
168
183
|
|
|
169
184
|
// await subscription change
|
|
170
185
|
await Promise.all([
|
|
171
|
-
new Promise(resolve => psA.
|
|
172
|
-
|
|
173
|
-
|
|
186
|
+
new Promise(resolve => psA.addEventListener('pubsub:subscription-change', () => resolve(null), {
|
|
187
|
+
once: true
|
|
188
|
+
})),
|
|
189
|
+
new Promise(resolve => psB.addEventListener('pubsub:subscription-change', () => resolve(null), {
|
|
190
|
+
once: true
|
|
191
|
+
})),
|
|
192
|
+
new Promise(resolve => psC.addEventListener('pubsub:subscription-change', () => resolve(null), {
|
|
193
|
+
once: true
|
|
194
|
+
}))
|
|
174
195
|
])
|
|
175
196
|
|
|
176
|
-
psA.
|
|
177
|
-
psB.
|
|
178
|
-
psC.
|
|
197
|
+
psA.addEventListener(topic, incMsg)
|
|
198
|
+
psB.addEventListener(topic, incMsg)
|
|
199
|
+
psC.addEventListener(topic, incMsg)
|
|
179
200
|
|
|
180
201
|
// await a cycle
|
|
181
202
|
await delay(1000)
|
|
182
203
|
|
|
183
204
|
void psB.publish(topic, uint8ArrayFromString('hey'))
|
|
184
205
|
|
|
185
|
-
function incMsg (
|
|
206
|
+
function incMsg (evt: CustomEvent<Message>) {
|
|
207
|
+
const msg = evt.detail
|
|
186
208
|
expect(uint8ArrayToString(msg.data)).to.equal('hey')
|
|
187
209
|
check()
|
|
188
210
|
}
|
|
189
211
|
|
|
190
212
|
function check () {
|
|
191
213
|
if (++counter === 3) {
|
|
192
|
-
psA.
|
|
193
|
-
psB.
|
|
194
|
-
psC.
|
|
214
|
+
psA.removeEventListener(topic, incMsg)
|
|
215
|
+
psB.removeEventListener(topic, incMsg)
|
|
216
|
+
psC.removeEventListener(topic, incMsg)
|
|
195
217
|
defer.resolve()
|
|
196
218
|
}
|
|
197
219
|
}
|
|
@@ -209,11 +231,11 @@ export default (common: TestSetup<PubSub & Startable>) => {
|
|
|
209
231
|
// │b d│
|
|
210
232
|
// ◉─┘ └─◉
|
|
211
233
|
// a
|
|
212
|
-
let psA: PubSub
|
|
213
|
-
let psB: PubSub
|
|
214
|
-
let psC: PubSub
|
|
215
|
-
let psD: PubSub
|
|
216
|
-
let psE: PubSub
|
|
234
|
+
let psA: PubSub<EventMap>
|
|
235
|
+
let psB: PubSub<EventMap>
|
|
236
|
+
let psC: PubSub<EventMap>
|
|
237
|
+
let psD: PubSub<EventMap>
|
|
238
|
+
let psE: PubSub<EventMap>
|
|
217
239
|
|
|
218
240
|
// Create and start pubsub nodes
|
|
219
241
|
beforeEach(async () => {
|
|
@@ -271,22 +293,22 @@ export default (common: TestSetup<PubSub & Startable>) => {
|
|
|
271
293
|
let counter = 0
|
|
272
294
|
|
|
273
295
|
psA.subscribe('Z')
|
|
274
|
-
psA.
|
|
296
|
+
psA.addEventListener('Z', incMsg)
|
|
275
297
|
psB.subscribe('Z')
|
|
276
|
-
psB.
|
|
298
|
+
psB.addEventListener('Z', incMsg)
|
|
277
299
|
psC.subscribe('Z')
|
|
278
|
-
psC.
|
|
300
|
+
psC.addEventListener('Z', incMsg)
|
|
279
301
|
psD.subscribe('Z')
|
|
280
|
-
psD.
|
|
302
|
+
psD.addEventListener('Z', incMsg)
|
|
281
303
|
psE.subscribe('Z')
|
|
282
|
-
psE.
|
|
304
|
+
psE.addEventListener('Z', incMsg)
|
|
283
305
|
|
|
284
306
|
await Promise.all([
|
|
285
|
-
new Promise((resolve) => psA.
|
|
286
|
-
new Promise((resolve) => psB.
|
|
287
|
-
new Promise((resolve) => psC.
|
|
288
|
-
new Promise((resolve) => psD.
|
|
289
|
-
new Promise((resolve) => psE.
|
|
307
|
+
new Promise((resolve) => psA.addEventListener('pubsub:subscription-change', resolve)),
|
|
308
|
+
new Promise((resolve) => psB.addEventListener('pubsub:subscription-change', resolve)),
|
|
309
|
+
new Promise((resolve) => psC.addEventListener('pubsub:subscription-change', resolve)),
|
|
310
|
+
new Promise((resolve) => psD.addEventListener('pubsub:subscription-change', resolve)),
|
|
311
|
+
new Promise((resolve) => psE.addEventListener('pubsub:subscription-change', resolve))
|
|
290
312
|
])
|
|
291
313
|
|
|
292
314
|
// await a cycle
|
|
@@ -294,7 +316,8 @@ export default (common: TestSetup<PubSub & Startable>) => {
|
|
|
294
316
|
|
|
295
317
|
void psC.publish('Z', uint8ArrayFromString('hey from c'))
|
|
296
318
|
|
|
297
|
-
function incMsg (
|
|
319
|
+
function incMsg (evt: CustomEvent<Message>) {
|
|
320
|
+
const msg = evt.detail
|
|
298
321
|
expect(uint8ArrayToString(msg.data)).to.equal('hey from c')
|
|
299
322
|
check()
|
|
300
323
|
}
|
package/src/pubsub/two-nodes.ts
CHANGED
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
first,
|
|
12
12
|
expectSet
|
|
13
13
|
} from './utils.js'
|
|
14
|
-
import type {
|
|
14
|
+
import type { EventMap } from './index.js'
|
|
15
15
|
|
|
16
16
|
const topic = 'foo'
|
|
17
17
|
|
|
@@ -19,10 +19,10 @@ function shouldNotHappen () {
|
|
|
19
19
|
expect.fail()
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
-
export default (common: TestSetup<PubSub
|
|
22
|
+
export default (common: TestSetup<PubSub<EventMap>>) => {
|
|
23
23
|
describe('pubsub with two nodes', () => {
|
|
24
|
-
let psA: PubSub
|
|
25
|
-
let psB: PubSub
|
|
24
|
+
let psA: PubSub<EventMap>
|
|
25
|
+
let psB: PubSub<EventMap>
|
|
26
26
|
|
|
27
27
|
// Create pubsub nodes and connect them
|
|
28
28
|
before(async () => {
|
|
@@ -55,7 +55,8 @@ export default (common: TestSetup<PubSub & Startable>) => {
|
|
|
55
55
|
it('Subscribe to a topic in nodeA', async () => {
|
|
56
56
|
const defer = pDefer()
|
|
57
57
|
|
|
58
|
-
psB.
|
|
58
|
+
psB.addEventListener('pubsub:subscription-change', (evt) => {
|
|
59
|
+
const { peerId: changedPeerId, subscriptions: changedSubs } = evt.detail
|
|
59
60
|
expectSet(psA.subscriptions, [topic])
|
|
60
61
|
expect(psB.peers.size).to.equal(1)
|
|
61
62
|
expectSet(psB.topics.get(topic), [psA.peerId.toString()])
|
|
@@ -64,6 +65,8 @@ export default (common: TestSetup<PubSub & Startable>) => {
|
|
|
64
65
|
expect(changedSubs[0].topicID).to.equal(topic)
|
|
65
66
|
expect(changedSubs[0].subscribe).to.equal(true)
|
|
66
67
|
defer.resolve()
|
|
68
|
+
}, {
|
|
69
|
+
once: true
|
|
67
70
|
})
|
|
68
71
|
psA.subscribe(topic)
|
|
69
72
|
|
|
@@ -73,13 +76,18 @@ export default (common: TestSetup<PubSub & Startable>) => {
|
|
|
73
76
|
it('Publish to a topic in nodeA', async () => {
|
|
74
77
|
const defer = pDefer()
|
|
75
78
|
|
|
76
|
-
psA.
|
|
79
|
+
psA.addEventListener(topic, (evt) => {
|
|
80
|
+
const msg = evt.detail
|
|
77
81
|
expect(uint8ArrayToString(msg.data)).to.equal('hey')
|
|
78
|
-
psB.
|
|
82
|
+
psB.removeEventListener(topic, shouldNotHappen)
|
|
79
83
|
defer.resolve()
|
|
84
|
+
}, {
|
|
85
|
+
once: true
|
|
80
86
|
})
|
|
81
87
|
|
|
82
|
-
psB.
|
|
88
|
+
psB.addEventListener(topic, shouldNotHappen, {
|
|
89
|
+
once: true
|
|
90
|
+
})
|
|
83
91
|
|
|
84
92
|
void psA.publish(topic, uint8ArrayFromString('hey'))
|
|
85
93
|
|
|
@@ -89,19 +97,26 @@ export default (common: TestSetup<PubSub & Startable>) => {
|
|
|
89
97
|
it('Publish to a topic in nodeB', async () => {
|
|
90
98
|
const defer = pDefer()
|
|
91
99
|
|
|
92
|
-
psA.
|
|
93
|
-
|
|
100
|
+
psA.addEventListener(topic, (evt) => {
|
|
101
|
+
const msg = evt.detail
|
|
102
|
+
psA.addEventListener(topic, shouldNotHappen, {
|
|
103
|
+
once: true
|
|
104
|
+
})
|
|
94
105
|
expect(uint8ArrayToString(msg.data)).to.equal('banana')
|
|
95
106
|
|
|
96
107
|
setTimeout(() => {
|
|
97
|
-
psA.
|
|
98
|
-
psB.
|
|
108
|
+
psA.removeEventListener(topic, shouldNotHappen)
|
|
109
|
+
psB.removeEventListener(topic, shouldNotHappen)
|
|
99
110
|
|
|
100
111
|
defer.resolve()
|
|
101
112
|
}, 100)
|
|
113
|
+
}, {
|
|
114
|
+
once: true
|
|
102
115
|
})
|
|
103
116
|
|
|
104
|
-
psB.
|
|
117
|
+
psB.addEventListener(topic, shouldNotHappen, {
|
|
118
|
+
once: true
|
|
119
|
+
})
|
|
105
120
|
|
|
106
121
|
void psB.publish(topic, uint8ArrayFromString('banana'))
|
|
107
122
|
|
|
@@ -112,18 +127,21 @@ export default (common: TestSetup<PubSub & Startable>) => {
|
|
|
112
127
|
const defer = pDefer()
|
|
113
128
|
let counter = 0
|
|
114
129
|
|
|
115
|
-
psB.
|
|
116
|
-
|
|
130
|
+
psB.addEventListener(topic, shouldNotHappen, {
|
|
131
|
+
once: true
|
|
132
|
+
})
|
|
133
|
+
psA.addEventListener(topic, receivedMsg)
|
|
117
134
|
|
|
118
|
-
function receivedMsg (
|
|
135
|
+
function receivedMsg (evt: CustomEvent<Message>) {
|
|
136
|
+
const msg = evt.detail
|
|
119
137
|
expect(uint8ArrayToString(msg.data)).to.equal('banana')
|
|
120
138
|
expect(msg.from).to.be.eql(psB.peerId.toString())
|
|
121
139
|
expect(msg.seqno).to.be.a('Uint8Array')
|
|
122
140
|
expect(msg.topicIDs).to.be.eql([topic])
|
|
123
141
|
|
|
124
142
|
if (++counter === 10) {
|
|
125
|
-
psA.
|
|
126
|
-
psB.
|
|
143
|
+
psA.removeEventListener(topic, receivedMsg)
|
|
144
|
+
psB.removeEventListener(topic, shouldNotHappen)
|
|
127
145
|
|
|
128
146
|
defer.resolve()
|
|
129
147
|
}
|
|
@@ -140,7 +158,8 @@ export default (common: TestSetup<PubSub & Startable>) => {
|
|
|
140
158
|
psA.unsubscribe(topic)
|
|
141
159
|
expect(psA.subscriptions.size).to.equal(0)
|
|
142
160
|
|
|
143
|
-
psB.
|
|
161
|
+
psB.addEventListener('pubsub:subscription-change', (evt) => {
|
|
162
|
+
const { peerId: changedPeerId, subscriptions: changedSubs } = evt.detail
|
|
144
163
|
expect(psB.peers.size).to.equal(1)
|
|
145
164
|
expectSet(psB.topics.get(topic), [])
|
|
146
165
|
expect(changedPeerId.toString()).to.equal(first(psB.peers).id.toString())
|
|
@@ -149,6 +168,8 @@ export default (common: TestSetup<PubSub & Startable>) => {
|
|
|
149
168
|
expect(changedSubs[0].subscribe).to.equal(false)
|
|
150
169
|
|
|
151
170
|
defer.resolve()
|
|
171
|
+
}, {
|
|
172
|
+
once: true
|
|
152
173
|
})
|
|
153
174
|
|
|
154
175
|
return await defer.promise
|
|
@@ -157,12 +178,16 @@ export default (common: TestSetup<PubSub & Startable>) => {
|
|
|
157
178
|
it('Publish to a topic:Z in nodeA nodeB', async () => {
|
|
158
179
|
const defer = pDefer()
|
|
159
180
|
|
|
160
|
-
psA.
|
|
161
|
-
|
|
181
|
+
psA.addEventListener('Z', shouldNotHappen, {
|
|
182
|
+
once: true
|
|
183
|
+
})
|
|
184
|
+
psB.addEventListener('Z', shouldNotHappen, {
|
|
185
|
+
once: true
|
|
186
|
+
})
|
|
162
187
|
|
|
163
188
|
setTimeout(() => {
|
|
164
|
-
psA.
|
|
165
|
-
psB.
|
|
189
|
+
psA.removeEventListener('Z', shouldNotHappen)
|
|
190
|
+
psB.removeEventListener('Z', shouldNotHappen)
|
|
166
191
|
defer.resolve()
|
|
167
192
|
}, 100)
|
|
168
193
|
|
package/src/topology/topology.ts
CHANGED
|
@@ -1,19 +1,14 @@
|
|
|
1
1
|
import { expect } from 'aegir/utils/chai.js'
|
|
2
2
|
import sinon from 'sinon'
|
|
3
|
-
import * as PeerIdFactory from '@libp2p/peer-id-factory'
|
|
4
|
-
import peers from '../utils/peers.js'
|
|
5
3
|
import type { TestSetup } from '../index.js'
|
|
6
4
|
import type { Topology } from '@libp2p/interfaces/topology'
|
|
7
|
-
import type { PeerId } from '@libp2p/interfaces/peer-id'
|
|
8
5
|
|
|
9
6
|
export default (test: TestSetup<Topology>) => {
|
|
10
7
|
describe('topology', () => {
|
|
11
|
-
let topology: Topology
|
|
8
|
+
let topology: Topology
|
|
12
9
|
|
|
13
10
|
beforeEach(async () => {
|
|
14
11
|
topology = await test.setup()
|
|
15
|
-
|
|
16
|
-
id = await PeerIdFactory.createFromJSON(peers[0])
|
|
17
12
|
})
|
|
18
13
|
|
|
19
14
|
afterEach(async () => {
|
|
@@ -26,13 +21,5 @@ export default (test: TestSetup<Topology>) => {
|
|
|
26
21
|
expect(topology.max).to.exist()
|
|
27
22
|
expect(topology.peers).to.exist()
|
|
28
23
|
})
|
|
29
|
-
|
|
30
|
-
it('should trigger "onDisconnect" on peer disconnected', () => {
|
|
31
|
-
// @ts-expect-error protected property
|
|
32
|
-
sinon.spy(topology, '_onDisconnect')
|
|
33
|
-
topology.disconnect(id)
|
|
34
|
-
|
|
35
|
-
expect(topology).to.have.nested.property('_onDisconnect.callCount', 1)
|
|
36
|
-
})
|
|
37
24
|
})
|
|
38
25
|
}
|
|
@@ -6,6 +6,7 @@ import { pipe } from 'it-pipe'
|
|
|
6
6
|
import { fromString as uint8ArrayFromString } from 'uint8arrays/from-string'
|
|
7
7
|
import { isValidTick, mockUpgrader } from './utils/index.js'
|
|
8
8
|
import defer from 'p-defer'
|
|
9
|
+
import { CustomEvent } from '@libp2p/interfaces'
|
|
9
10
|
import type { TestSetup } from '../index.js'
|
|
10
11
|
import type { Transport } from '@libp2p/interfaces/transport'
|
|
11
12
|
import type { TransportTestFixtures, SetupArgs } from './index.js'
|
|
@@ -108,8 +109,8 @@ export default (common: TestSetup<TransportTestFixtures, SetupArgs>) => {
|
|
|
108
109
|
const deferred = defer()
|
|
109
110
|
let conn
|
|
110
111
|
|
|
111
|
-
listener.
|
|
112
|
-
conn =
|
|
112
|
+
listener.addEventListener('connection', (evt) => {
|
|
113
|
+
conn = evt.detail
|
|
113
114
|
deferred.resolve()
|
|
114
115
|
})
|
|
115
116
|
|
|
@@ -127,7 +128,7 @@ export default (common: TestSetup<TransportTestFixtures, SetupArgs>) => {
|
|
|
127
128
|
|
|
128
129
|
it('listening', (done) => {
|
|
129
130
|
const listener = transport.createListener()
|
|
130
|
-
listener.
|
|
131
|
+
listener.addEventListener('listening', () => {
|
|
131
132
|
listener.close().then(done, done)
|
|
132
133
|
})
|
|
133
134
|
void listener.listen(addrs[0])
|
|
@@ -135,16 +136,18 @@ export default (common: TestSetup<TransportTestFixtures, SetupArgs>) => {
|
|
|
135
136
|
|
|
136
137
|
it('error', (done) => {
|
|
137
138
|
const listener = transport.createListener()
|
|
138
|
-
listener.
|
|
139
|
-
expect(
|
|
139
|
+
listener.addEventListener('error', (evt) => {
|
|
140
|
+
expect(evt.detail).to.be.an.instanceOf(Error)
|
|
140
141
|
listener.close().then(done, done)
|
|
141
142
|
})
|
|
142
|
-
listener.
|
|
143
|
+
listener.dispatchEvent(new CustomEvent('error', {
|
|
144
|
+
detail: new Error('my err')
|
|
145
|
+
}))
|
|
143
146
|
})
|
|
144
147
|
|
|
145
148
|
it('close', (done) => {
|
|
146
149
|
const listener = transport.createListener()
|
|
147
|
-
listener.
|
|
150
|
+
listener.addEventListener('close', () => done())
|
|
148
151
|
|
|
149
152
|
void (async () => {
|
|
150
153
|
await listener.listen(addrs[0])
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"multicodec-topology.d.ts","sourceRoot":"","sources":["../../../src/topology/multicodec-topology.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;+BAG/C,UAAU,kBAAkB,CAAC;AAAnD,wBA+HC"}
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
import { expect } from 'aegir/utils/chai.js';
|
|
2
|
-
import sinon from 'sinon';
|
|
3
|
-
import * as PeerIdFactory from '@libp2p/peer-id-factory';
|
|
4
|
-
import peers from '../utils/peers.js';
|
|
5
|
-
export default (test) => {
|
|
6
|
-
describe('multicodec topology', () => {
|
|
7
|
-
let topology, id;
|
|
8
|
-
beforeEach(async () => {
|
|
9
|
-
topology = await test.setup();
|
|
10
|
-
id = await PeerIdFactory.createFromJSON(peers[0]);
|
|
11
|
-
});
|
|
12
|
-
afterEach(async () => {
|
|
13
|
-
sinon.restore();
|
|
14
|
-
await test.teardown();
|
|
15
|
-
});
|
|
16
|
-
it('should have properties set', () => {
|
|
17
|
-
expect(topology.multicodecs).to.exist();
|
|
18
|
-
expect(topology.peers).to.exist();
|
|
19
|
-
});
|
|
20
|
-
it('should trigger "onDisconnect" on peer disconnected', () => {
|
|
21
|
-
// @ts-expect-error protected property
|
|
22
|
-
sinon.spy(topology, '_onDisconnect');
|
|
23
|
-
topology.disconnect(id);
|
|
24
|
-
expect(topology).to.have.nested.property('_onDisconnect.callCount', 1);
|
|
25
|
-
});
|
|
26
|
-
it('should update peers on protocol change', async () => {
|
|
27
|
-
// @ts-expect-error protected property
|
|
28
|
-
sinon.spy(topology, '_updatePeers');
|
|
29
|
-
expect(topology.peers.size).to.eql(0);
|
|
30
|
-
// @ts-expect-error protected property
|
|
31
|
-
const peerStore = topology._registrar.peerStore;
|
|
32
|
-
const id2 = await PeerIdFactory.createFromJSON(peers[1]);
|
|
33
|
-
peerStore.peers.set(id2.toString(), {
|
|
34
|
-
id: id2,
|
|
35
|
-
protocols: Array.from(topology.multicodecs)
|
|
36
|
-
});
|
|
37
|
-
peerStore.emit('change:protocols', {
|
|
38
|
-
peerId: id2,
|
|
39
|
-
protocols: Array.from(topology.multicodecs)
|
|
40
|
-
});
|
|
41
|
-
expect(topology).to.have.nested.property('_updatePeers.callCount', 1);
|
|
42
|
-
expect(topology.peers.size).to.eql(1);
|
|
43
|
-
});
|
|
44
|
-
it('should disconnect if peer no longer supports a protocol', async () => {
|
|
45
|
-
// @ts-expect-error protected property
|
|
46
|
-
sinon.spy(topology, '_onDisconnect');
|
|
47
|
-
expect(topology.peers.size).to.eql(0);
|
|
48
|
-
// @ts-expect-error protected property
|
|
49
|
-
const peerStore = topology._registrar.peerStore;
|
|
50
|
-
const id2 = await PeerIdFactory.createFromJSON(peers[1]);
|
|
51
|
-
peerStore.peers.set(id2.toString(), {
|
|
52
|
-
id: id2,
|
|
53
|
-
protocols: Array.from(topology.multicodecs)
|
|
54
|
-
});
|
|
55
|
-
peerStore.emit('change:protocols', {
|
|
56
|
-
peerId: id2,
|
|
57
|
-
protocols: Array.from(topology.multicodecs)
|
|
58
|
-
});
|
|
59
|
-
expect(topology.peers.size).to.eql(1);
|
|
60
|
-
peerStore.peers.set(id2.toString(), {
|
|
61
|
-
id: id2,
|
|
62
|
-
protocols: []
|
|
63
|
-
});
|
|
64
|
-
// Peer does not support the protocol anymore
|
|
65
|
-
peerStore.emit('change:protocols', {
|
|
66
|
-
peerId: id2,
|
|
67
|
-
protocols: []
|
|
68
|
-
});
|
|
69
|
-
expect(topology.peers.size).to.eql(1);
|
|
70
|
-
expect(topology).to.have.nested.property('_onDisconnect.callCount', 1);
|
|
71
|
-
// @ts-expect-error protected property
|
|
72
|
-
expect(topology._onDisconnect.calledWith(id2)).to.equal(true);
|
|
73
|
-
});
|
|
74
|
-
it('should trigger "onConnect" when a peer connects and has one of the topology multicodecs in its known protocols', () => {
|
|
75
|
-
// @ts-expect-error protected property
|
|
76
|
-
sinon.spy(topology, '_onConnect');
|
|
77
|
-
// @ts-expect-error protected property
|
|
78
|
-
sinon.stub(topology._registrar.peerStore.protoBook, 'get').returns(topology.multicodecs);
|
|
79
|
-
// @ts-expect-error protected property
|
|
80
|
-
topology._registrar.connectionManager.emit('peer:connect', {
|
|
81
|
-
remotePeer: id
|
|
82
|
-
});
|
|
83
|
-
expect(topology).to.have.nested.property('_onConnect.callCount', 1);
|
|
84
|
-
});
|
|
85
|
-
it('should not trigger "onConnect" when a peer connects and has none of the topology multicodecs in its known protocols', () => {
|
|
86
|
-
// @ts-expect-error protected property
|
|
87
|
-
sinon.spy(topology, '_onConnect');
|
|
88
|
-
// @ts-expect-error protected property
|
|
89
|
-
sinon.stub(topology._registrar.peerStore.protoBook, 'get').returns([]);
|
|
90
|
-
// @ts-expect-error protected property
|
|
91
|
-
topology._registrar.connectionManager.emit('peer:connect', {
|
|
92
|
-
remotePeer: id
|
|
93
|
-
});
|
|
94
|
-
expect(topology).to.have.nested.property('_onConnect.callCount', 0);
|
|
95
|
-
});
|
|
96
|
-
it('should not trigger "onConnect" when a peer connects and its protocols are not known', () => {
|
|
97
|
-
// @ts-expect-error protected property
|
|
98
|
-
sinon.spy(topology, '_onConnect');
|
|
99
|
-
// @ts-expect-error protected property
|
|
100
|
-
sinon.stub(topology._registrar.peerStore.protoBook, 'get').returns(undefined);
|
|
101
|
-
// @ts-expect-error protected property
|
|
102
|
-
topology._registrar.connectionManager.emit('peer:connect', {
|
|
103
|
-
remotePeer: id
|
|
104
|
-
});
|
|
105
|
-
expect(topology).to.have.nested.property('_onConnect.callCount', 0);
|
|
106
|
-
});
|
|
107
|
-
});
|
|
108
|
-
};
|
|
109
|
-
//# sourceMappingURL=multicodec-topology.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"multicodec-topology.js","sourceRoot":"","sources":["../../../src/topology/multicodec-topology.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mock-connection-gater.d.ts","sourceRoot":"","sources":["../../../src/utils/mock-connection-gater.ts"],"names":[],"mappings":"AACA,wBAAgB,mBAAmB;;;;;;;;;;EAYlC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mock-connection-gater.js","sourceRoot":"","sources":["../../../src/utils/mock-connection-gater.ts"],"names":[],"mappings":"AACA,MAAM,UAAU,mBAAmB;IACjC,OAAO;QACL,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;QACtD,iBAAiB,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;QAC3D,qBAAqB,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;QAC/D,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;QAChE,8BAA8B,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;QACxE,+BAA+B,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;QACzE,6BAA6B,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;QACvE,8BAA8B,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;QACxE,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;KAChE,CAAA;AACH,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import type { MultiaddrConnection } from '@libp2p/interfaces/transport';
|
|
2
|
-
import type { Connection } from '@libp2p/interfaces/connection';
|
|
3
|
-
import type { Muxer } from '@libp2p/interfaces/stream-muxer';
|
|
4
|
-
export declare function mockConnection(maConn: MultiaddrConnection, direction: 'inbound' | 'outbound', muxer: Muxer): Promise<Connection>;
|
|
5
|
-
//# sourceMappingURL=mock-connection.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mock-connection.d.ts","sourceRoot":"","sources":["../../../src/utils/mock-connection.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAA;AACvE,OAAO,KAAK,EAAE,UAAU,EAAoC,MAAM,+BAA+B,CAAA;AACjG,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAA;AAE5D,wBAAsB,cAAc,CAAE,MAAM,EAAE,mBAAmB,EAAE,SAAS,EAAE,SAAS,GAAG,UAAU,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC,CA0DvI"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mock-connection.js","sourceRoot":"","sources":["../../../src/utils/mock-connection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAK9B,MAAM,CAAC,KAAK,UAAU,cAAc,CAAE,MAA2B,EAAE,SAAiC,EAAE,KAAY;IAChH,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAA;IACpC,MAAM,eAAe,GAAG,UAAU,CAAC,SAAS,EAAE,CAAA;IAC9C,MAAM,UAAU,GAAG,eAAe,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,MAAM,mBAAmB,EAAE,CAAA;IAE7G,MAAM,OAAO,GAAa,EAAE,CAAA;IAC5B,IAAI,QAAQ,GAAG,CAAC,CAAA;IAEhB,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAA;IAE1B,KAAK,IAAI,CACP,MAAM,EAAE,KAAK,EAAE,MAAM,CACtB,CAAA;IAED,OAAO;QACL,EAAE,EAAE,iBAAiB;QACrB,UAAU;QACV,UAAU;QACV,IAAI,EAAE;YACJ,MAAM,EAAE,MAAM;YACd,SAAS;YACT,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,WAAW,EAAE,kBAAkB;YAC/B,UAAU,EAAE,qBAAqB;SAClC;QACD,QAAQ;QACR,IAAI,EAAE,EAAE;QACR,OAAO;QACP,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;YAC7B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;gBAC7B,SAAS,GAAG,CAAC,SAAS,CAAC,CAAA;aACxB;YAED,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC1B,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;aAChD;YAED,MAAM,EAAE,GAAG,GAAG,QAAQ,EAAE,EAAE,CAAA;YAC1B,MAAM,MAAM,GAAW,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;YAC1C,MAAM,UAAU,GAAmB;gBACjC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;gBACtB,MAAM;aACP,CAAA;YAED,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,CAAA;YAE5B,OAAO,UAAU,CAAA;QACnB,CAAC;QACD,SAAS,EAAE,CAAC,MAAc,EAAE,QAAkB,EAAE,EAAE;QAElD,CAAC;QACD,YAAY,EAAE,CAAC,EAAU,EAAE,EAAE;YAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QACrB,CAAC;QACD,KAAK,EAAE,KAAK,IAAI,EAAE;YAChB,MAAM,MAAM,CAAC,KAAK,EAAE,CAAA;QACtB,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mock-multiaddr-connection.d.ts","sourceRoot":"","sources":["../../../src/utils/mock-multiaddr-connection.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAA;AACvE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAE7C,wBAAgB,uBAAuB,CAAE,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,mBAAmB,CAaxF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mock-multiaddr-connection.js","sourceRoot":"","sources":["../../../src/utils/mock-multiaddr-connection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAInD,MAAM,UAAU,uBAAuB,CAAE,MAA0B;IACjE,MAAM,MAAM,GAAwB;QAClC,GAAG,MAAM;QACT,KAAK,CAAC,KAAK;QAEX,CAAC;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE;SACjB;QACD,UAAU,EAAE,IAAI,SAAS,CAAC,yBAAyB,CAAC;KACrD,CAAA;IAED,OAAO,MAAM,CAAA;AACf,CAAC"}
|