(target: any, observer: FluidObserver)
| 154 | ): typeof observer |
| 155 | |
| 156 | function addFluidObserver(target: any, observer: FluidObserver) { |
| 157 | if (target[$get]) { |
| 158 | let observers: Set<FluidObserver> = target[$observers] |
| 159 | if (!observers) { |
| 160 | setHidden(target, $observers, (observers = new Set())) |
| 161 | } |
| 162 | if (!observers.has(observer)) { |
| 163 | observers.add(observer) |
| 164 | if (target.observerAdded) { |
| 165 | target.observerAdded(observers.size, observer) |
| 166 | } |
| 167 | } |
| 168 | } |
| 169 | return observer |
| 170 | } |
| 171 | |
| 172 | /** Stop observing a `fluids`-compatible object. */ |
| 173 | function removeFluidObserver<E extends FluidEvent>( |
searching dependent graphs…