@@ -119,23 +119,23 @@ function untrack(target, source) {
119
119
}
120
120
121
121
// src/LitObserver.js
122
- function makeObserver ( constructor , properties ) {
122
+ function litObserver ( constructor , properties ) {
123
123
return class LitObserver extends constructor {
124
+ #observables = /* @__PURE__ */ new Set ( ) ;
125
+ #disposers = /* @__PURE__ */ new Set ( ) ;
124
126
constructor ( ...args ) {
125
127
super ( ...args ) ;
126
- this . observables = /* @__PURE__ */ new Set ( ) ;
127
- this . disposers = /* @__PURE__ */ new Set ( ) ;
128
128
}
129
129
trackProperties ( ) {
130
130
properties . forEach ( ( property ) => {
131
131
const observable = this [ property ] ;
132
132
if ( ! observable ?. __observers )
133
133
return ;
134
- if ( this . observables . has ( observable ) ) {
134
+ if ( this . # observables. has ( observable ) ) {
135
135
return ;
136
136
}
137
- this . observables . add ( observable ) ;
138
- observe ( observable , this . requestUpdate . bind ( this ) ) ;
137
+ this . # observables. add ( observable ) ;
138
+ this . #disposers . add ( observe ( observable , this . requestUpdate . bind ( this ) ) ) ;
139
139
} ) ;
140
140
}
141
141
update ( changedProperties ) {
@@ -144,22 +144,23 @@ function makeObserver(constructor, properties) {
144
144
}
145
145
connectedCallback ( ) {
146
146
super . connectedCallback ( ) ;
147
- this . observables . forEach ( ( o ) => {
148
- observe ( o , this . requestUpdate . bind ( this ) ) ;
147
+ this . # observables. forEach ( ( o ) => {
148
+ this . #disposers . add ( observe ( o , this . requestUpdate . bind ( this ) ) ) ;
149
149
} ) ;
150
150
}
151
151
disconnectedCallback ( ) {
152
152
super . disconnectedCallback ( ) ;
153
- this . disposers . forEach ( ( disposer ) => {
153
+ this . # disposers. forEach ( ( disposer ) => {
154
154
disposer ( ) ;
155
155
} ) ;
156
- this . disposers . clear ( ) ;
156
+ this . #disposers. clear ( ) ;
157
+ console . log ( this . #disposers. size ) ;
157
158
}
158
159
} ;
159
160
}
160
161
export {
162
+ litObserver ,
161
163
makeObservable ,
162
- makeObserver ,
163
164
observe ,
164
165
reaction ,
165
166
track ,
0 commit comments