Skip to content

Commit 135f265

Browse files
NullVoxPopuliijlee2
authored andcommitted
Reduce diff
1 parent 835835c commit 135f265

File tree

1 file changed

+25
-24
lines changed

1 file changed

+25
-24
lines changed

packages/ember-container-query/src/modifiers/container-query.ts

Lines changed: 25 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { registerDestructor } from '@ember/destroyable';
2+
import { action } from '@ember/object';
23
import type Owner from '@ember/owner';
34
import { debounce as _debounce } from '@ember/runloop';
45
import type { ArgsFor, NamedArgs, PositionalArgs } from 'ember-modifier';
@@ -52,31 +53,7 @@ export default class ContainerQuery<
5253
private _named!: NamedArgs<ContainerQuerySignature<T>>;
5354

5455
#resizeObserver = resizeObserver(this);
55-
5656
dimensions!: Dimensions;
57-
58-
private onResize = (resizeObserverEntry: ResizeObserverEntry): void => {
59-
const element = resizeObserverEntry.target;
60-
61-
if (this.debounce > 0) {
62-
// eslint-disable-next-line ember/no-runloop
63-
_debounce(this, this.queryContainer, element, this.debounce);
64-
return;
65-
}
66-
67-
this.queryContainer(element);
68-
};
69-
private queryContainer = (element: Element): void => {
70-
this.measureDimensions(element);
71-
this.evaluateQueries();
72-
this.resetDataAttributes(element);
73-
this.setDataAttributes(element);
74-
75-
this._named.onQuery?.({
76-
dimensions: this.dimensions,
77-
queryResults: this.queryResults,
78-
});
79-
};
8057
queryResults!: QueryResults<T>;
8158

8259
get dataAttributePrefix(): string {
@@ -138,6 +115,18 @@ export default class ContainerQuery<
138115
this.queryContainer(element);
139116
}
140117

118+
private queryContainer(element: Element): void {
119+
this.measureDimensions(element);
120+
this.evaluateQueries();
121+
this.resetDataAttributes(element);
122+
this.setDataAttributes(element);
123+
124+
this._named.onQuery?.({
125+
dimensions: this.dimensions,
126+
queryResults: this.queryResults,
127+
});
128+
}
129+
141130
private registerResizeObserver(element: Element): void {
142131
if (this._element) {
143132
this.#resizeObserver.unobserve(this._element, this.onResize);
@@ -174,6 +163,18 @@ export default class ContainerQuery<
174163
this._dataAttributes.push(dataAttribute);
175164
}
176165
}
166+
167+
@action private onResize(resizeObserverEntry: ResizeObserverEntry): void {
168+
const element = resizeObserverEntry.target;
169+
170+
if (this.debounce > 0) {
171+
// eslint-disable-next-line ember/no-runloop
172+
_debounce(this, this.queryContainer, element, this.debounce);
173+
return;
174+
}
175+
176+
this.queryContainer(element);
177+
}
177178
}
178179

179180
export type {

0 commit comments

Comments
 (0)