blob: c156049585852978762b3893de568a38efc10f92 [file] [log] [blame]
Adrià Vilanova Martínez3c13a762024-11-09 23:03:32 +01001import CssSelectorNodeWatcherHandler from '../../../../infrastructure/presentation/nodeWatcher/handlers/CssSelectorHandler.adapter';
2import { NodeMutation } from '../../../../presentation/nodeWatcher/NodeWatcherHandler';
3import FlattenThreads, {
4 kReplyPayloadSelector,
5} from '../../core/flattenThreads';
6
7/** Inject parent reply quote */
8export default class FlattenThreadsQuoteHandler extends CssSelectorNodeWatcherHandler {
9 cssSelector = kReplyPayloadSelector;
10
11 constructor(private flattenThreads: FlattenThreads) {
12 super();
13 }
14
15 onMutatedNode({ node }: NodeMutation) {
16 this.flattenThreads.injectQuoteIfApplicable(node);
17 }
18}