Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | 2x 2x 2x | import type {Entity} from '../types'
import type Community from './index'
import type {SiteOutputs} from './outputs/index'
export class Subscriptions {
site: Community
subs: {[index: string]: Map<string, SiteOutputs>}
constructor(site: Community) {
this.site = site
this.subs = {}
}
add(id: string, o: SiteOutputs) {
Iif (!(id in this.subs)) this.subs[id] = new Map()
this.subs[id].set(o.id, o)
}
update(id: string, fun: string, e: Entity) {
Iif (id in this.subs) {
const tu = this.site.outputs[id]
this.subs[id].forEach(u => {
Iif (fun in u) (u[fun as keyof SiteOutputs] as Function)(e, tu)
})
}
}
}
|