feat: services
This commit is contained in:
@@ -168,6 +168,7 @@ export class Database {
|
|||||||
block.on('children', observer_name, listener);
|
block.on('children', observer_name, listener);
|
||||||
block.on('content', observer_name, listener);
|
block.on('content', observer_name, listener);
|
||||||
block.on('parent', observer_name, listener);
|
block.on('parent', observer_name, listener);
|
||||||
|
block.on('cascade', observer_name, listener);
|
||||||
}
|
}
|
||||||
this.#observers.setStatus(observer_name, 'observing');
|
this.#observers.setStatus(observer_name, 'observing');
|
||||||
|
|
||||||
@@ -188,6 +189,7 @@ export class Database {
|
|||||||
block.off('children', observer_name);
|
block.off('children', observer_name);
|
||||||
block.off('content', observer_name);
|
block.off('content', observer_name);
|
||||||
block.off('parent', observer_name);
|
block.off('parent', observer_name);
|
||||||
|
block.off('cascade', observer_name);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -97,14 +97,17 @@ export class AbstractBlock<
|
|||||||
}
|
}
|
||||||
|
|
||||||
public on(
|
public on(
|
||||||
event: 'content' | 'children' | 'parent',
|
event: 'cascade' | 'content' | 'children' | 'parent',
|
||||||
name: string,
|
name: string,
|
||||||
callback: BlockListener
|
callback: BlockListener
|
||||||
) {
|
) {
|
||||||
this._listeners[event]?.set(name, callback);
|
this._listeners[event]?.set(name, callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
public off(event: 'content' | 'children' | 'parent', name: string) {
|
public off(
|
||||||
|
event: 'cascade' | 'content' | 'children' | 'parent',
|
||||||
|
name: string
|
||||||
|
) {
|
||||||
this._listeners[event]?.delete(name);
|
this._listeners[event]?.delete(name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user