@superhero/eventflow-spoke 4.4.9 → 4.5.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/index.js CHANGED
@@ -147,9 +147,6 @@ export default class Spoke
147
147
 
148
148
  // subscribe to all events that are already expected to be subscribed to
149
149
  const subscriptions = deepmerge(this.consumers.listeners, this.subscriptions.listeners)
150
-
151
- this.log.info`subscriptions ${subscriptions}`
152
-
153
150
  for(const domain in subscriptions)
154
151
  {
155
152
  for(const name of subscriptions[domain])
@@ -216,6 +213,7 @@ export default class Spoke
216
213
 
217
214
  async #onHubPublishMessage(_, domain, id, name, pid)
218
215
  {
216
+ this.log.info`onHubPublishMessage ${domain} › ${id} › ${name} › ${pid}`
219
217
  this.subscriptions[domain].emit(name, { domain, id, name, pid })
220
218
  await this.db.updateEventPublishedToConsumedBySpoke(id, this.#spokeID)
221
219
  && this.consumers[domain].emit(name, { domain, id, name, pid })
@@ -40,11 +40,12 @@ export default class ListenersManager
40
40
 
41
41
  constructor()
42
42
  {
43
- return new Proxy(this,
43
+ const self = this
44
+ return new Proxy(self,
44
45
  {
45
46
  set: (_, domain, listener) =>
46
47
  {
47
- if(this.#map.has(domain))
48
+ if(self.#map.has(domain))
48
49
  {
49
50
  const error = new Error(`cannot overwrite an existing domain listener: ${domain}`)
50
51
  error.code = 'E_EVENTFLOW_LISTENERS_DOMAIN_ALREADY_EXISTS'
@@ -53,7 +54,7 @@ export default class ListenersManager
53
54
 
54
55
  if(listener instanceof Listener)
55
56
  {
56
- this.#map.set(domain, listener)
57
+ self.#map.set(domain, listener)
57
58
  return true
58
59
  }
59
60
  else
@@ -63,9 +64,14 @@ export default class ListenersManager
63
64
  throw error
64
65
  }
65
66
  },
66
- get : (target, domain) => this.#map.get(domain) ?? target.lazyload(domain),
67
- has : (_, domain) => this.#map.has(domain),
68
- deleteProperty : (_, domain) => this.#map.delete(domain)
67
+ deleteProperty : (_, domain) => self.#map.delete(domain),
68
+ has : (_, domain) => self.#map.has(domain),
69
+ get : (target, domain) => 'symbol' === typeof domain
70
+ ? Reflect.get(target, domain)
71
+ : self.#map.get(domain)
72
+ ?? ( domain in target
73
+ ? target[domain]
74
+ : target.lazyload(domain))
69
75
  })
70
76
  }
71
77
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@superhero/eventflow-spoke",
3
- "version": "4.4.9",
3
+ "version": "4.5.1",
4
4
  "description": "Eventflow spoke is the client component in the eventflow ecosystem.",
5
5
  "keywords": [
6
6
  "eventflow",