@xyo-network/module-abstract 2.52.0 → 2.53.0-rc.1
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/AbstractModule.js.map +1 -1
- package/dist/cjs/BaseEmitter.js +5 -3
- package/dist/cjs/BaseEmitter.js.map +1 -1
- package/dist/cjs/ModuleWrapper.js +5 -4
- package/dist/cjs/ModuleWrapper.js.map +1 -1
- package/dist/docs.json +35430 -56561
- package/dist/esm/AbstractModule.js.map +1 -1
- package/dist/esm/BaseEmitter.js +5 -3
- package/dist/esm/BaseEmitter.js.map +1 -1
- package/dist/esm/ModuleWrapper.js +5 -4
- package/dist/esm/ModuleWrapper.js.map +1 -1
- package/dist/types/AbstractModule.d.ts +2 -2
- package/dist/types/AbstractModule.d.ts.map +1 -1
- package/dist/types/BaseEmitter.d.ts +13 -12
- package/dist/types/BaseEmitter.d.ts.map +1 -1
- package/dist/types/ModuleWrapper.d.ts +12 -12
- package/dist/types/ModuleWrapper.d.ts.map +1 -1
- package/dist/types/lib/duplicateModules.d.ts +1 -1
- package/package.json +19 -18
- package/src/AbstractModule.ts +10 -5
- package/src/BaseEmitter.ts +27 -15
- package/src/ModuleWrapper.ts +19 -27
package/src/ModuleWrapper.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { Account } from '@xyo-network/account'
|
|
|
3
3
|
import { AccountInstance } from '@xyo-network/account-model'
|
|
4
4
|
import { AddressPayload, AddressSchema } from '@xyo-network/address-payload-plugin'
|
|
5
5
|
import { BoundWitnessWrapper } from '@xyo-network/boundwitness-wrapper'
|
|
6
|
-
import { BaseParams } from '@xyo-network/core'
|
|
6
|
+
import { Base, BaseParams } from '@xyo-network/core'
|
|
7
7
|
import { EventAnyListener, EventListener } from '@xyo-network/module-events'
|
|
8
8
|
import {
|
|
9
9
|
Module,
|
|
@@ -20,7 +20,6 @@ import { PayloadWrapper } from '@xyo-network/payload-wrapper'
|
|
|
20
20
|
import { Promisable, PromiseEx } from '@xyo-network/promise'
|
|
21
21
|
import compact from 'lodash/compact'
|
|
22
22
|
|
|
23
|
-
import { BaseEmitter } from './BaseEmitter'
|
|
24
23
|
import { XyoError, XyoErrorSchema } from './Error'
|
|
25
24
|
import { duplicateModules } from './lib'
|
|
26
25
|
import { QueryBoundWitnessBuilder, QueryBoundWitnessWrapper } from './Query'
|
|
@@ -48,11 +47,13 @@ export type ModuleWrapperParams<TWrappedModule extends Module = Module> = BasePa
|
|
|
48
47
|
|
|
49
48
|
@moduleConstructable()
|
|
50
49
|
export class ModuleWrapper<TWrappedModule extends Module = Module>
|
|
51
|
-
extends
|
|
52
|
-
implements Module<TWrappedModule['params']>
|
|
50
|
+
extends Base<TWrappedModule['params']>
|
|
51
|
+
implements Module<TWrappedModule['params'], TWrappedModule['eventData']>
|
|
53
52
|
{
|
|
54
53
|
static requiredQueries: string[] = [ModuleDiscoverQuerySchema]
|
|
55
54
|
|
|
55
|
+
eventData = {} as TWrappedModule['eventData']
|
|
56
|
+
|
|
56
57
|
protected readonly wrapperParams: ModuleWrapperParams<TWrappedModule>
|
|
57
58
|
|
|
58
59
|
constructor(params: ModuleWrapperParams<TWrappedModule>) {
|
|
@@ -126,7 +127,7 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
|
|
|
126
127
|
return assertEx(this.tryWrap(module, account), 'Unable to wrap module as ModuleWrapper')
|
|
127
128
|
}
|
|
128
129
|
|
|
129
|
-
|
|
130
|
+
clearListeners(eventNames: Parameters<TWrappedModule['clearListeners']>[0]) {
|
|
130
131
|
return this.module.clearListeners(eventNames)
|
|
131
132
|
}
|
|
132
133
|
|
|
@@ -156,51 +157,42 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
|
|
|
156
157
|
return this.sendQuery(queryPayload)
|
|
157
158
|
}
|
|
158
159
|
|
|
159
|
-
|
|
160
|
-
eventName: keyof TWrappedModule['params']['eventData'],
|
|
161
|
-
eventArgs?: TWrappedModule['params']['eventData'][keyof TWrappedModule['params']['eventData']],
|
|
162
|
-
) {
|
|
160
|
+
emit(eventName: Parameters<TWrappedModule['emit']>[0], eventArgs: Parameters<TWrappedModule['emit']>[1]) {
|
|
163
161
|
return this.module.emit(eventName, eventArgs)
|
|
164
162
|
}
|
|
165
163
|
|
|
166
|
-
|
|
167
|
-
eventName: keyof TWrappedModule['params']['eventData'],
|
|
168
|
-
eventArgs?: TWrappedModule['params']['eventData'][keyof TWrappedModule['params']['eventData']],
|
|
169
|
-
) {
|
|
164
|
+
emitSerial(eventName: Parameters<TWrappedModule['emitSerial']>[0], eventArgs: Parameters<TWrappedModule['emitSerial']>[1]) {
|
|
170
165
|
return this.module.emitSerial(eventName, eventArgs)
|
|
171
166
|
}
|
|
172
167
|
|
|
173
|
-
|
|
168
|
+
listenerCount(eventNames: Parameters<TWrappedModule['listenerCount']>[0]) {
|
|
174
169
|
return this.module.listenerCount(eventNames)
|
|
175
170
|
}
|
|
176
171
|
|
|
177
|
-
|
|
178
|
-
eventNames:
|
|
179
|
-
listener: EventListener<TWrappedModule['
|
|
172
|
+
off<TEventName extends keyof TWrappedModule['eventData']>(
|
|
173
|
+
eventNames: TEventName,
|
|
174
|
+
listener: EventListener<TWrappedModule['eventData'][TEventName]>,
|
|
180
175
|
) {
|
|
181
176
|
return this.module.off(eventNames, listener)
|
|
182
177
|
}
|
|
183
178
|
|
|
184
|
-
|
|
179
|
+
offAny(listener: EventAnyListener) {
|
|
185
180
|
return this.module.offAny(listener)
|
|
186
181
|
}
|
|
187
182
|
|
|
188
|
-
|
|
189
|
-
eventNames: keyof TWrappedModule['params']['eventData'] | keyof TWrappedModule['params']['eventData'][],
|
|
190
|
-
listener: EventListener<TWrappedModule['params']['eventData']>,
|
|
191
|
-
) {
|
|
183
|
+
on<TEventName extends keyof TWrappedModule['eventData']>(eventNames: TEventName, listener: EventListener<TWrappedModule['eventData'][TEventName]>) {
|
|
192
184
|
return this.module.on(eventNames, listener)
|
|
193
185
|
}
|
|
194
186
|
|
|
195
|
-
|
|
187
|
+
onAny(listener: EventAnyListener) {
|
|
196
188
|
return this.module.onAny(listener)
|
|
197
189
|
}
|
|
198
190
|
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
listener: EventListener<TWrappedModule['
|
|
191
|
+
once<TEventName extends keyof TWrappedModule['eventData']>(
|
|
192
|
+
eventName: TEventName,
|
|
193
|
+
listener: EventListener<TWrappedModule['eventData'][TEventName]>,
|
|
202
194
|
) {
|
|
203
|
-
return this.module.once(
|
|
195
|
+
return this.module.once(eventName, listener)
|
|
204
196
|
}
|
|
205
197
|
|
|
206
198
|
async query<T extends XyoQueryBoundWitness = XyoQueryBoundWitness>(query: T, payloads?: XyoPayload[]): Promise<ModuleQueryResult> {
|