@xyo-network/module-wrapper 2.107.6 → 2.109.0

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.
Files changed (51) hide show
  1. package/dist/browser/ModuleWrapper.d.cts +12 -16
  2. package/dist/browser/ModuleWrapper.d.cts.map +1 -1
  3. package/dist/browser/ModuleWrapper.d.mts +12 -16
  4. package/dist/browser/ModuleWrapper.d.mts.map +1 -1
  5. package/dist/browser/ModuleWrapper.d.ts +12 -16
  6. package/dist/browser/ModuleWrapper.d.ts.map +1 -1
  7. package/dist/browser/index.cjs +48 -49
  8. package/dist/browser/index.cjs.map +1 -1
  9. package/dist/browser/index.js +48 -49
  10. package/dist/browser/index.js.map +1 -1
  11. package/dist/browser/models.d.cts +1 -1
  12. package/dist/browser/models.d.cts.map +1 -1
  13. package/dist/browser/models.d.mts +1 -1
  14. package/dist/browser/models.d.mts.map +1 -1
  15. package/dist/browser/models.d.ts +1 -1
  16. package/dist/browser/models.d.ts.map +1 -1
  17. package/dist/neutral/ModuleWrapper.d.cts +12 -16
  18. package/dist/neutral/ModuleWrapper.d.cts.map +1 -1
  19. package/dist/neutral/ModuleWrapper.d.mts +12 -16
  20. package/dist/neutral/ModuleWrapper.d.mts.map +1 -1
  21. package/dist/neutral/ModuleWrapper.d.ts +12 -16
  22. package/dist/neutral/ModuleWrapper.d.ts.map +1 -1
  23. package/dist/neutral/index.cjs +48 -49
  24. package/dist/neutral/index.cjs.map +1 -1
  25. package/dist/neutral/index.js +48 -49
  26. package/dist/neutral/index.js.map +1 -1
  27. package/dist/neutral/models.d.cts +1 -1
  28. package/dist/neutral/models.d.cts.map +1 -1
  29. package/dist/neutral/models.d.mts +1 -1
  30. package/dist/neutral/models.d.mts.map +1 -1
  31. package/dist/neutral/models.d.ts +1 -1
  32. package/dist/neutral/models.d.ts.map +1 -1
  33. package/dist/node/ModuleWrapper.d.cts +12 -16
  34. package/dist/node/ModuleWrapper.d.cts.map +1 -1
  35. package/dist/node/ModuleWrapper.d.mts +12 -16
  36. package/dist/node/ModuleWrapper.d.mts.map +1 -1
  37. package/dist/node/ModuleWrapper.d.ts +12 -16
  38. package/dist/node/ModuleWrapper.d.ts.map +1 -1
  39. package/dist/node/index.cjs +49 -50
  40. package/dist/node/index.cjs.map +1 -1
  41. package/dist/node/index.js +49 -50
  42. package/dist/node/index.js.map +1 -1
  43. package/dist/node/models.d.cts +1 -1
  44. package/dist/node/models.d.cts.map +1 -1
  45. package/dist/node/models.d.mts +1 -1
  46. package/dist/node/models.d.mts.map +1 -1
  47. package/dist/node/models.d.ts +1 -1
  48. package/dist/node/models.d.ts.map +1 -1
  49. package/package.json +11 -12
  50. package/src/ModuleWrapper.ts +52 -79
  51. package/src/models.ts +1 -1
@@ -5,7 +5,6 @@ import { compact } from '@xylabs/lodash'
5
5
  import { Logger } from '@xylabs/logger'
6
6
  import { Base } from '@xylabs/object'
7
7
  import { Promisable, PromiseEx } from '@xylabs/promise'
8
- import { Account } from '@xyo-network/account'
9
8
  import { AccountInstance } from '@xyo-network/account-model'
10
9
  import { QueryBoundWitnessBuilder } from '@xyo-network/boundwitness-builder'
11
10
  import { QueryBoundWitness } from '@xyo-network/boundwitness-model'
@@ -49,9 +48,9 @@ export type ConstructableModuleWrapper<TWrapper extends ModuleWrapper> = {
49
48
  instanceIdentityCheck: InstanceTypeCheck
50
49
  moduleIdentityCheck: ModuleTypeCheck
51
50
  requiredQueries: string[]
52
- new (params: ModuleWrapperParams<TWrapper['module']>): TWrapper
51
+ new (params: ModuleWrapperParams<TWrapper['mod']>): TWrapper
53
52
 
54
- canWrap(module: Module | undefined): boolean
53
+ canWrap(mod: Module | undefined): boolean
55
54
 
56
55
  is<TModuleWrapper extends ModuleWrapper>(
57
56
  this: ConstructableModuleWrapper<TModuleWrapper>,
@@ -59,23 +58,16 @@ export type ConstructableModuleWrapper<TWrapper extends ModuleWrapper> = {
59
58
  wrapper?: any,
60
59
  ): wrapper is TModuleWrapper
61
60
 
62
- /** @deprecated pass an account for second parameter */
63
61
  tryWrap<TModuleWrapper extends ModuleWrapper>(
64
62
  this: ConstructableModuleWrapper<TModuleWrapper>,
65
- module: Module | undefined,
66
- ): TModuleWrapper | undefined
67
- tryWrap<TModuleWrapper extends ModuleWrapper>(
68
- this: ConstructableModuleWrapper<TModuleWrapper>,
69
- module: Module | undefined,
63
+ mod: Module | undefined,
70
64
  account: AccountInstance,
71
65
  checkIdentity?: boolean,
72
66
  ): TModuleWrapper | undefined
73
67
 
74
- /** @deprecated pass an account for second parameter */
75
- wrap<TModuleWrapper extends ModuleWrapper>(this: ConstructableModuleWrapper<TModuleWrapper>, module: Module | undefined): TModuleWrapper
76
68
  wrap<TModuleWrapper extends ModuleWrapper>(
77
69
  this: ConstructableModuleWrapper<TModuleWrapper>,
78
- module: Module | undefined,
70
+ mod: Module | undefined,
79
71
  account: AccountInstance,
80
72
  checkIdentity?: boolean,
81
73
  ): TModuleWrapper
@@ -107,12 +99,12 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
107
99
 
108
100
  constructor(params: ModuleWrapperParams<TWrappedModule>) {
109
101
  const mutatedWrapperParams = { ...params } as ModuleWrapperParams<TWrappedModule>
110
- const mutatedParams = { ...params.module.params, config: { ...params.module.params.config } } as Exclude<
102
+ const mutatedParams = { ...params.mod.params, config: { ...params.mod.params.config } } as Exclude<
111
103
  Omit<TWrappedModule['params'], 'config'> & { config: Exclude<TWrappedModule['params']['config'], undefined> },
112
104
  undefined
113
105
  >
114
106
 
115
- //set the root params to the wrapped module params
107
+ //set the root params to the wrapped mod params
116
108
  super(mutatedParams)
117
109
  this.wrapperParams = mutatedWrapperParams
118
110
  }
@@ -126,16 +118,16 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
126
118
  }
127
119
 
128
120
  get address() {
129
- return this.module.address
121
+ return this.mod.address
130
122
  }
131
123
 
132
124
  get config() {
133
- return this.module.config as Exclude<TWrappedModule['params']['config'], undefined>
125
+ return this.mod.config as Exclude<TWrappedModule['params']['config'], undefined>
134
126
  }
135
127
 
136
128
  get downResolver(): ModuleResolverInstance {
137
129
  //Should we be allowing this?
138
- const instance: AttachableModuleInstance | undefined = asAttachableModuleInstance(this.module)
130
+ const instance: AttachableModuleInstance | undefined = asAttachableModuleInstance(this.mod)
139
131
  if (instance) {
140
132
  return instance.downResolver as ModuleResolverInstance
141
133
  }
@@ -143,15 +135,15 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
143
135
  }
144
136
 
145
137
  get id() {
146
- return this.module.id
138
+ return this.mod.id
147
139
  }
148
140
 
149
- get modName() {
150
- return this.module.modName
141
+ get mod() {
142
+ return this.wrapperParams.mod
151
143
  }
152
144
 
153
- get module() {
154
- return this.wrapperParams.module
145
+ get modName() {
146
+ return this.mod.modName
155
147
  }
156
148
 
157
149
  get priority() {
@@ -160,7 +152,7 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
160
152
 
161
153
  get privateResolver(): ModuleResolverInstance {
162
154
  //Should we be allowing this?
163
- const instance = asAttachableModuleInstance(this.module)
155
+ const instance = asAttachableModuleInstance(this.mod)
164
156
  if (instance) {
165
157
  return instance.privateResolver as ModuleResolverInstance
166
158
  }
@@ -168,7 +160,7 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
168
160
  }
169
161
 
170
162
  get queries(): string[] {
171
- return this.module.queries
163
+ return this.mod.queries
172
164
  }
173
165
 
174
166
  get status() {
@@ -177,7 +169,7 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
177
169
 
178
170
  get upResolver(): ModuleResolverInstance {
179
171
  //Should we be allowing this?
180
- const instance = asAttachableModuleInstance(this.module)
172
+ const instance = asAttachableModuleInstance(this.mod)
181
173
  if (instance) {
182
174
  return instance.upResolver as ModuleResolverInstance
183
175
  }
@@ -190,12 +182,12 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
190
182
  }
191
183
  }
192
184
 
193
- static canWrap(module?: Module) {
194
- return !!module && this.moduleIdentityCheck(module)
185
+ static canWrap(mod?: Module) {
186
+ return !!mod && this.moduleIdentityCheck(mod)
195
187
  }
196
188
 
197
- static hasRequiredQueries(module: Module) {
198
- return this.missingRequiredQueries(module).length === 0
189
+ static hasRequiredQueries(mod: Module) {
190
+ return this.missingRequiredQueries(mod).length === 0
199
191
  }
200
192
 
201
193
  static is<TModuleWrapper extends ModuleWrapper>(
@@ -206,72 +198,53 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
206
198
  return wrapper instanceof this
207
199
  }
208
200
 
209
- static missingRequiredQueries(module: Module): string[] {
210
- const moduleQueries = module.queries
201
+ static missingRequiredQueries(mod: Module): string[] {
202
+ const modQueries = mod.queries
211
203
  return compact(
212
204
  this.requiredQueries.map((query) => {
213
- return moduleQueries.includes(query) ? null : query
205
+ return modQueries.includes(query) ? null : query
214
206
  }),
215
207
  )
216
208
  }
217
209
 
218
- /** @deprecated pass an account for second parameter */
219
210
  static tryWrap<TModuleWrapper extends ModuleWrapper>(
220
211
  this: ConstructableModuleWrapper<TModuleWrapper>,
221
- module: Module | undefined,
222
- ): TModuleWrapper | undefined
223
- static tryWrap<TModuleWrapper extends ModuleWrapper>(
224
- this: ConstructableModuleWrapper<TModuleWrapper>,
225
- module: Module | undefined,
212
+ mod: Module | undefined,
226
213
  account: AccountInstance,
227
- checkIdentity?: boolean,
228
- ): TModuleWrapper | undefined
229
- static tryWrap<TModuleWrapper extends ModuleWrapper>(
230
- this: ConstructableModuleWrapper<TModuleWrapper>,
231
- module: Module | undefined,
232
- account?: AccountInstance,
233
214
  checkIdentity = true,
234
215
  ): TModuleWrapper | undefined {
235
- if (!checkIdentity || this.canWrap(module)) {
216
+ if (!checkIdentity || this.canWrap(mod)) {
236
217
  if (!account) {
237
218
  this.defaultLogger?.info('Anonymous Module Wrapper Created')
238
219
  }
239
- return new this({ account: account ?? Account.randomSync(), module: module as TModuleWrapper['module'] })
220
+ return new this({ account, mod: mod as TModuleWrapper['mod'] })
240
221
  }
241
222
  }
242
223
 
243
224
  static with<TModuleWrapper extends ModuleWrapper, R extends Promisable<void> = void>(
244
225
  this: ConstructableModuleWrapper<TModuleWrapper>,
245
226
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
246
- module: any,
227
+ mod: any,
247
228
 
248
- closure: (module: TModuleWrapper) => R,
229
+ closure: (mod: TModuleWrapper) => R,
249
230
  ): R | undefined {
250
- return this.is(module) ? closure(module) : undefined
231
+ return this.is(mod) ? closure(mod) : undefined
251
232
  }
252
233
 
253
- /** @deprecated pass an account for second parameter */
254
- static wrap<TModuleWrapper extends ModuleWrapper>(this: ConstructableModuleWrapper<TModuleWrapper>, module: Module | undefined): TModuleWrapper
255
234
  static wrap<TModuleWrapper extends ModuleWrapper>(
256
235
  this: ConstructableModuleWrapper<TModuleWrapper>,
257
- module: Module | undefined,
236
+ mod: Module | undefined,
258
237
  account: AccountInstance,
259
- checkIdentity?: boolean,
260
- ): TModuleWrapper
261
- static wrap<TModuleWrapper extends ModuleWrapper>(
262
- this: ConstructableModuleWrapper<TModuleWrapper>,
263
- module: Module | undefined,
264
- account?: AccountInstance,
265
238
  checkIdentity = true,
266
239
  ): TModuleWrapper {
267
- assertEx(!checkIdentity || (module && this.moduleIdentityCheck(module)), () => `Passed module failed identity check: ${module?.config?.schema}`)
268
- return assertEx(this.tryWrap(module, account ?? Account.randomSync(), checkIdentity), () => 'Unable to wrap module as ModuleWrapper')
240
+ assertEx(!checkIdentity || (mod && this.moduleIdentityCheck(mod)), () => `Passed mod failed identity check: ${mod?.config?.schema}`)
241
+ return assertEx(this.tryWrap(mod, account, checkIdentity), () => 'Unable to wrap mod as ModuleWrapper')
269
242
  }
270
243
 
271
- addParent(module: ModuleInstance) {
272
- const existingEntry = this._parents.find((parent) => parent.address === module.address)
244
+ addParent(mod: ModuleInstance) {
245
+ const existingEntry = this._parents.find((parent) => parent.address === mod.address)
273
246
  if (!existingEntry) {
274
- this._parents.push(module)
247
+ this._parents.push(mod)
275
248
  }
276
249
  }
277
250
 
@@ -284,19 +257,19 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
284
257
  }
285
258
 
286
259
  clearListeners(eventNames: Parameters<TWrappedModule['clearListeners']>[0]) {
287
- return this.module.clearListeners(eventNames)
260
+ return this.mod.clearListeners(eventNames)
288
261
  }
289
262
 
290
263
  emit(eventName: Parameters<TWrappedModule['emit']>[0], eventArgs: Parameters<TWrappedModule['emit']>[1]) {
291
- return this.module.emit(eventName, eventArgs)
264
+ return this.mod.emit(eventName, eventArgs)
292
265
  }
293
266
 
294
267
  emitSerial(eventName: Parameters<TWrappedModule['emitSerial']>[0], eventArgs: Parameters<TWrappedModule['emitSerial']>[1]) {
295
- return this.module.emitSerial(eventName, eventArgs)
268
+ return this.mod.emitSerial(eventName, eventArgs)
296
269
  }
297
270
 
298
271
  listenerCount(eventNames: Parameters<TWrappedModule['listenerCount']>[0]) {
299
- return this.module.listenerCount(eventNames)
272
+ return this.mod.listenerCount(eventNames)
300
273
  }
301
274
 
302
275
  async manifest(maxDepth?: number): Promise<ModuleManifestPayload> {
@@ -318,26 +291,26 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
318
291
  eventNames: TEventName,
319
292
  listener: EventListener<TWrappedModule['eventData'][TEventName]>,
320
293
  ) {
321
- return this.module.off(eventNames, listener)
294
+ return this.mod.off(eventNames, listener)
322
295
  }
323
296
 
324
297
  offAny(listener: EventAnyListener) {
325
- return this.module.offAny(listener)
298
+ return this.mod.offAny(listener)
326
299
  }
327
300
 
328
301
  on<TEventName extends keyof TWrappedModule['eventData']>(eventNames: TEventName, listener: EventListener<TWrappedModule['eventData'][TEventName]>) {
329
- return this.module.on(eventNames, listener)
302
+ return this.mod.on(eventNames, listener)
330
303
  }
331
304
 
332
305
  onAny(listener: EventAnyListener) {
333
- return this.module.onAny(listener)
306
+ return this.mod.onAny(listener)
334
307
  }
335
308
 
336
309
  once<TEventName extends keyof TWrappedModule['eventData']>(
337
310
  eventName: TEventName,
338
311
  listener: EventListener<TWrappedModule['eventData'][TEventName]>,
339
312
  ) {
340
- return this.module.once(eventName, listener)
313
+ return this.mod.once(eventName, listener)
341
314
  }
342
315
 
343
316
  parents(): Promisable<ModuleInstance[]> {
@@ -355,25 +328,25 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
355
328
  }
356
329
 
357
330
  async privateChildren(): Promise<ModuleInstance[]> {
358
- if (isModuleInstance(this.module)) {
359
- return await this.module.privateChildren()
331
+ if (isModuleInstance(this.mod)) {
332
+ return await this.mod.privateChildren()
360
333
  }
361
334
  return []
362
335
  }
363
336
 
364
337
  async publicChildren(): Promise<ModuleInstance[]> {
365
- if (isModuleInstance(this.module)) {
366
- return await this.module.publicChildren()
338
+ if (isModuleInstance(this.mod)) {
339
+ return await this.mod.publicChildren()
367
340
  }
368
341
  return []
369
342
  }
370
343
 
371
344
  async query<T extends QueryBoundWitness = QueryBoundWitness>(query: T, payloads?: Payload[]): Promise<ModuleQueryResult> {
372
- return await this.module.query(query, payloads)
345
+ return await this.mod.query(query, payloads)
373
346
  }
374
347
 
375
348
  queryable<T extends QueryBoundWitness = QueryBoundWitness>(query: T, payloads?: Payload[]) {
376
- return this.module.queryable(query, payloads)
349
+ return this.mod.queryable(query, payloads)
377
350
  }
378
351
 
379
352
  removeParent(address: Address) {
@@ -394,7 +367,7 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
394
367
  idOrFilter: ModuleIdentifier | ModuleFilter<T> = '*',
395
368
  options?: ModuleFilterOptions<T>,
396
369
  ): Promise<T | T[] | undefined> {
397
- const instance = asModuleInstance(this.module)
370
+ const instance = asModuleInstance(this.mod)
398
371
  if (instance?.['resolve']) {
399
372
  if (idOrFilter === '*') {
400
373
  return await instance.resolve<T>('*', options)
package/src/models.ts CHANGED
@@ -5,5 +5,5 @@ import { Module } from '@xyo-network/module-model'
5
5
  export type ModuleWrapperParams<TWrappedModule extends Module = Module> = BaseParams<{
6
6
  account: AccountInstance
7
7
  additionalSigners?: AccountInstance[]
8
- module: TWrappedModule
8
+ mod: TWrappedModule
9
9
  }>