@bodil/dom 0.1.10 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -11,7 +11,6 @@ import { EmitterElement } from "./emitter";
11
11
  import { type QuerySlotOptions } from "./slot";
12
12
  export type { ReactiveController, ReactiveControllerHost } from "lit";
13
13
  export { attribute, attributeGetter, attributeSetter, type AttributeOptions, type AttributeGetterSetterOptions, type AttributeType, } from "./decorators/attribute";
14
- export { connect, connectEffect, type ConnectFunction, type ConnectFunctionReturnValue, } from "./decorators/connect";
15
14
  export { reactive } from "./decorators/reactive";
16
15
  export { require } from "./decorators/require";
17
16
  export { EmitterElement } from "./emitter";
@@ -21,6 +20,7 @@ export type UpdateConfig = {
21
20
  viewTransition?: boolean;
22
21
  };
23
22
  declare const finalised: unique symbol;
23
+ export type Disposables = Disposifiable | Iterable<Disposifiable | undefined> | undefined | void;
24
24
  export type Deps = Array<typeof HTMLElement>;
25
25
  export type CSSStyleSpec = CSSResult | CSSStyleSheet | string;
26
26
  export type CSSStyleSpecArray = Array<CSSStyleSpec | CSSStyleSpecArray>;
@@ -117,22 +117,8 @@ export declare abstract class Component extends EmitterElement implements Reacti
117
117
  private static finalise;
118
118
  /** @ignore */
119
119
  constructor();
120
- /**
121
- * This lifecycle callback is called when the component is attached to the
122
- * DOM.
123
- *
124
- * Generally, prefer using methods with @{@link connect} decorators to
125
- * overriding this method.
126
- */
127
- protected connectedCallback(): void;
128
- /**
129
- * This lifecycle callback is called when the component is removed from the
130
- * DOM.
131
- *
132
- * Generally, prefer using methods with @{@link connect} decorators to
133
- * overriding this method.
134
- */
135
- protected disconnectedCallback(): void;
120
+ private connectedCallback;
121
+ private disconnectedCallback;
136
122
  /**
137
123
  * @internal
138
124
  */
@@ -185,6 +171,16 @@ export declare abstract class Component extends EmitterElement implements Reacti
185
171
  * {@link Component}s to report that they have also stabilised.
186
172
  */
187
173
  protected stabilise(): Promise<void>;
174
+ /**
175
+ * This lifecycle callback is called each time this component is connected
176
+ * to the DOM.
177
+ */
178
+ protected connected(): void;
179
+ /**
180
+ * This lifecycle callback is called each time this component is
181
+ * disconnected from the DOM.
182
+ */
183
+ protected disconnected(): void;
188
184
  /**
189
185
  * This lifecycle callback is called each time an update has completed.
190
186
  */
@@ -231,6 +227,15 @@ export declare abstract class Component extends EmitterElement implements Reacti
231
227
  */
232
228
  protected render(): unknown;
233
229
  [Symbol.dispose](): void;
230
+ /**
231
+ * Register a {@link Disposable} for automatic disposal when this component
232
+ * is disposed.
233
+ */
234
+ use(disposifiable: undefined): undefined;
235
+ use(disposifiable: null): null;
236
+ use(disposifiable: Disposifiable): Disposable;
237
+ use(disposifiable: Disposifiable | undefined): Disposable | undefined;
238
+ use(disposifiable: Disposifiable | null | undefined): Disposable | null | undefined;
234
239
  /**
235
240
  * Attach a {@link Disposable} to the component's connected/disconnected
236
241
  * lifecycle state.
@@ -247,6 +252,7 @@ export declare abstract class Component extends EmitterElement implements Reacti
247
252
  * this.useWhileConnected(this.on("click", this.handleClick.bind(this)));
248
253
  * }
249
254
  */
255
+ useWhileConnected(disposifiable: Disposifiable, secondDisposable: Disposifiable, ...disposifiables: Array<Disposifiable>): Array<Disposable>;
250
256
  useWhileConnected(disposifiable: undefined): undefined;
251
257
  useWhileConnected(disposifiable: null): null;
252
258
  useWhileConnected(disposifiable: Disposifiable): Disposable;
package/dist/component.js CHANGED
@@ -3,21 +3,19 @@
3
3
  * @module
4
4
  */
5
5
  var _a;
6
- import { isIterable, isNullish } from "@bodil/core/assert";
6
+ import { isNullish, present } from "@bodil/core/assert";
7
7
  import { DisposableContext, toDisposable } from "@bodil/core/disposable";
8
8
  import { Signal } from "@bodil/signal";
9
9
  import { adoptStyles, getCompatibleStyle, nothing, render, unsafeCSS, } from "lit";
10
10
  import { attributeConfig, fromAttribute, toAttribute, } from "./decorators/attribute";
11
- import { connectedJobs } from "./decorators/connect";
12
11
  import { reactiveFields, signalForObject } from "./decorators/reactive";
13
12
  import { requiredProperties } from "./decorators/require";
14
- import { childElements } from "./dom";
13
+ import { findDescendants } from "./dom";
15
14
  import { EmitterElement } from "./emitter";
16
15
  import { eventListener } from "./event";
17
16
  import { scheduler } from "./scheduler";
18
17
  import { findSlot, getOrSetQuery, getOrSetSignal, listsEqual, SlotChangeController, } from "./slot";
19
18
  export { attribute, attributeGetter, attributeSetter, } from "./decorators/attribute";
20
- export { connect, connectEffect, } from "./decorators/connect";
21
19
  export { reactive } from "./decorators/reactive";
22
20
  export { require } from "./decorators/require";
23
21
  export { EmitterElement } from "./emitter";
@@ -63,6 +61,7 @@ export class Component extends EmitterElement {
63
61
  static { this[_a] = true; }
64
62
  #controllers;
65
63
  #connectedContext;
64
+ #finalCleanupContext;
66
65
  #dirty;
67
66
  #isUpdatePending;
68
67
  #updateSignal;
@@ -162,6 +161,7 @@ export class Component extends EmitterElement {
162
161
  this.renderOptions = { host: this };
163
162
  this.#controllers = new Set();
164
163
  this.#connectedContext = new DisposableContext();
164
+ this.#finalCleanupContext = new DisposableContext();
165
165
  this.#dirty = false;
166
166
  this.#isUpdatePending = false;
167
167
  this.#updateSignalWatcher = new Signal.subtle.Watcher(() => this.requestUpdate());
@@ -211,26 +211,11 @@ export class Component extends EmitterElement {
211
211
  });
212
212
  }
213
213
  }
214
- /**
215
- * This lifecycle callback is called when the component is attached to the
216
- * DOM.
217
- *
218
- * Generally, prefer using methods with @{@link connect} decorators to
219
- * overriding this method.
220
- */
221
214
  connectedCallback() {
222
215
  this.#connectedContext.dispose();
223
216
  this.#controllers.forEach((c) => c.hostConnected?.());
224
217
  this.#rootPart?.setConnected(true);
225
- for (const job of connectedJobs(this)) {
226
- const result = job.call(this);
227
- const items = isNullish(result)
228
- ? Iterator.from([])
229
- : isIterable(result)
230
- ? Iterator.from(result)
231
- : Iterator.from([result]);
232
- items.filter((i) => i !== undefined).forEach(this.useWhileConnected.bind(this));
233
- }
218
+ this.connected();
234
219
  this.useWhileConnected(Signal.effect(() => {
235
220
  if (this.hasRequiredProperties().get()) {
236
221
  if (!this.#initialised) {
@@ -243,19 +228,13 @@ export class Component extends EmitterElement {
243
228
  }));
244
229
  this.requestUpdate();
245
230
  }
246
- /**
247
- * This lifecycle callback is called when the component is removed from the
248
- * DOM.
249
- *
250
- * Generally, prefer using methods with @{@link connect} decorators to
251
- * overriding this method.
252
- */
253
231
  disconnectedCallback() {
254
232
  if (this.#updateSignal !== undefined) {
255
233
  this.#updateSignalWatcher.unwatch(this.#updateSignal);
256
234
  this.#updateSignal = undefined;
257
235
  }
258
236
  this.#isUpdatePending = false;
237
+ this.disconnected();
259
238
  this.#abortController.abort(new DOMException(`${this.tagName} element disconnected`, "AbortError"));
260
239
  this.#abortController = new AbortController();
261
240
  this.#rootPart?.setConnected(false);
@@ -285,7 +264,11 @@ export class Component extends EmitterElement {
285
264
  const attrConfig = this.constructor.attributeConfig.get(name);
286
265
  if (attrConfig !== undefined) {
287
266
  const value = fromAttribute(valueString, attrConfig.type);
288
- this[attrConfig.property] = value;
267
+ try {
268
+ this[attrConfig.property] = value;
269
+ // Silently swallow any write errors.
270
+ }
271
+ catch (_e) { }
289
272
  }
290
273
  }
291
274
  /**
@@ -348,9 +331,7 @@ export class Component extends EmitterElement {
348
331
  this.#hasRequiredProperties = Signal.computed(() => {
349
332
  return requiredProperties.size === 0
350
333
  ? true
351
- : requiredProperties
352
- .keys()
353
- .every((key) => this[key] !== undefined);
334
+ : requiredProperties.keys().every((key) => !isNullish(this[key]));
354
335
  },
355
336
  // every signal update is relevant, even if the signal value doesn't
356
337
  // change, because the required values probably did.
@@ -430,12 +411,7 @@ export class Component extends EmitterElement {
430
411
  * {@link Component}s.
431
412
  */
432
413
  findChildComponents(root = this.renderRoot) {
433
- let all = childElements(root).toArray();
434
- const top = [...all];
435
- for (const el of top) {
436
- all = [...all, ...this.findChildComponents(el)];
437
- }
438
- return Iterator.from(all).filter((el) => el instanceof Component);
414
+ return findDescendants(root, (el) => el instanceof Component);
439
415
  }
440
416
  /**
441
417
  * Return a {@link Promise} which resolves when this component considers
@@ -450,6 +426,20 @@ export class Component extends EmitterElement {
450
426
  // eslint-disable-next-line no-console
451
427
  await Promise.all(children.map((child) => child.hasStabilised)).catch(console.error);
452
428
  }
429
+ /**
430
+ * This lifecycle callback is called each time this component is connected
431
+ * to the DOM.
432
+ */
433
+ connected() {
434
+ //
435
+ }
436
+ /**
437
+ * This lifecycle callback is called each time this component is
438
+ * disconnected from the DOM.
439
+ */
440
+ disconnected() {
441
+ //
442
+ }
453
443
  /**
454
444
  * This lifecycle callback is called each time an update has completed.
455
445
  */
@@ -511,12 +501,28 @@ export class Component extends EmitterElement {
511
501
  for (const child of this.findChildComponents()) {
512
502
  child[Symbol.dispose]();
513
503
  }
504
+ this.remove();
514
505
  this.disconnectedCallback();
515
506
  this.#rootPart?._$clear?.();
516
507
  this.#rootPart = undefined;
517
- this.remove();
508
+ this.#finalCleanupContext.dispose();
509
+ }
510
+ use(disposifiable) {
511
+ if (isNullish(disposifiable)) {
512
+ return disposifiable;
513
+ }
514
+ const disposable = toDisposable(disposifiable);
515
+ this.#finalCleanupContext.use(disposable);
516
+ return disposable;
518
517
  }
519
- useWhileConnected(disposifiable) {
518
+ useWhileConnected(disposifiable, ...disposifiables) {
519
+ if (disposifiables.length > 0) {
520
+ return [disposifiable, ...disposifiables].map((d) => {
521
+ const disposable = toDisposable(present(d));
522
+ this.#connectedContext.use(disposable);
523
+ return disposable;
524
+ });
525
+ }
520
526
  if (isNullish(disposifiable)) {
521
527
  return disposifiable;
522
528
  }
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../src/component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../src/component.ts"],"names":[],"mappings":"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"}
@@ -18,31 +18,31 @@ export type AttributeConfig = {
18
18
  reactive: boolean;
19
19
  };
20
20
  export declare function toAttribute(value: unknown, type: AttributeType): string | null;
21
- export declare function fromAttribute(value: string | null, type: typeof Number): number | undefined;
21
+ export declare function fromAttribute(value: string | null, type: typeof Number): number | null;
22
22
  export declare function fromAttribute(value: string | null, type: typeof Boolean): boolean;
23
- export declare function fromAttribute(value: string | null, type: typeof String): string | undefined;
24
- export declare function fromAttribute(value: string | null, type: AttributeType): string | number | boolean | undefined;
25
- export declare function attributeGetter<C extends Component, T extends number | undefined>(options: AttributeOptions & {
23
+ export declare function fromAttribute(value: string | null, type: typeof String): string | null;
24
+ export declare function fromAttribute(value: string | null, type: AttributeType): string | number | boolean | null;
25
+ export declare function attributeGetter<C extends Component, T extends number | null>(options: AttributeOptions & {
26
26
  type: typeof Number;
27
27
  }): ClassGetterDecoratorFunction<C, T>;
28
- export declare function attributeGetter<C extends Component, T extends boolean | undefined>(options: AttributeOptions & {
28
+ export declare function attributeGetter<C extends Component, T extends boolean | null>(options: AttributeOptions & {
29
29
  type: typeof Boolean;
30
30
  }): ClassGetterDecoratorFunction<C, T>;
31
- export declare function attributeGetter<C extends Component, T extends string | undefined>(options: AttributeOptions): ClassGetterDecoratorFunction<C, T>;
32
- export declare function attributeGetter<C extends Component, T extends string | undefined>(value: ClassGetterDecoratorTarget<C, T>, context: ClassGetterDecoratorContext<C, T>): ClassGetterDecoratorResult<C, T>;
33
- export declare function attributeSetter<C extends Component, T extends number | undefined>(options: AttributeOptions & {
31
+ export declare function attributeGetter<C extends Component, T extends string | null>(options: AttributeOptions): ClassGetterDecoratorFunction<C, T>;
32
+ export declare function attributeGetter<C extends Component, T extends string | null>(value: ClassGetterDecoratorTarget<C, T>, context: ClassGetterDecoratorContext<C, T>): ClassGetterDecoratorResult<C, T>;
33
+ export declare function attributeSetter<C extends Component, T extends number | null>(options: AttributeOptions & {
34
34
  type: typeof Number;
35
35
  }): ClassSetterDecoratorFunction<C, T>;
36
- export declare function attributeSetter<C extends Component, T extends boolean | undefined>(options: AttributeOptions & {
36
+ export declare function attributeSetter<C extends Component, T extends boolean | null>(options: AttributeOptions & {
37
37
  type: typeof Boolean;
38
38
  }): ClassSetterDecoratorFunction<C, T>;
39
- export declare function attributeSetter<C extends Component, T extends string | undefined>(options: AttributeOptions): ClassSetterDecoratorFunction<C, T>;
40
- export declare function attributeSetter<C extends Component, T extends string | undefined>(value: ClassSetterDecoratorTarget<C, T>, context: ClassSetterDecoratorContext<C, T>): ClassSetterDecoratorResult<C, T>;
41
- export declare function attribute<C extends Component, T extends number | undefined>(options: AttributeOptions & {
39
+ export declare function attributeSetter<C extends Component, T extends string | null>(options: AttributeOptions): ClassSetterDecoratorFunction<C, T>;
40
+ export declare function attributeSetter<C extends Component, T extends string | null>(value: ClassSetterDecoratorTarget<C, T>, context: ClassSetterDecoratorContext<C, T>): ClassSetterDecoratorResult<C, T>;
41
+ export declare function attribute<C extends Component, T extends number | null>(options: AttributeOptions & {
42
42
  type: typeof Number;
43
43
  }): ClassAccessorDecoratorFunction<C, T>;
44
- export declare function attribute<C extends Component, T extends boolean | undefined>(options: AttributeOptions & {
44
+ export declare function attribute<C extends Component, T extends boolean | null>(options: AttributeOptions & {
45
45
  type: typeof Boolean;
46
46
  }): ClassAccessorDecoratorFunction<C, T>;
47
- export declare function attribute<C extends Component, T extends string | undefined>(options: AttributeOptions): ClassAccessorDecoratorFunction<C, T>;
48
- export declare function attribute<C extends Component, T extends string | undefined>(value: ClassAccessorDecoratorTarget<C, T>, context: ClassAccessorDecoratorContext<C, T>): ClassAccessorDecoratorResult<C, T>;
47
+ export declare function attribute<C extends Component, T extends string | null>(options: AttributeOptions): ClassAccessorDecoratorFunction<C, T>;
48
+ export declare function attribute<C extends Component, T extends string | null>(value: ClassAccessorDecoratorTarget<C, T>, context: ClassAccessorDecoratorContext<C, T>): ClassAccessorDecoratorResult<C, T>;
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable @typescript-eslint/unified-signatures */
2
- import { isDeepEqual, isNullish, unreachable } from "@bodil/core/assert";
2
+ import { assertNever, isDeepEqual, isNullish, unreachable } from "@bodil/core/assert";
3
3
  import { None, Some } from "@bodil/opt";
4
4
  import { Signal } from "@bodil/signal";
5
5
  import { signalForObject } from "./reactive";
@@ -22,8 +22,8 @@ export function toAttribute(value, type) {
22
22
  export function fromAttribute(value, type) {
23
23
  switch (type) {
24
24
  case Number: {
25
- const num = value === null ? undefined : Number(value);
26
- if (num !== undefined && Number.isNaN(num)) {
25
+ const num = value === null ? null : Number(value);
26
+ if (num !== null && Number.isNaN(num)) {
27
27
  throw new TypeError(`numeric attribute value ${JSON.stringify(value)} parsed as NaN`);
28
28
  }
29
29
  return num;
@@ -31,7 +31,7 @@ export function fromAttribute(value, type) {
31
31
  case Boolean:
32
32
  return value !== null;
33
33
  case String:
34
- return value ?? undefined;
34
+ return value ?? null;
35
35
  default:
36
36
  unreachable();
37
37
  }
@@ -80,13 +80,17 @@ export function attribute(valueOrOptions, context) {
80
80
  if (context.kind === "accessor") {
81
81
  return accessor(options, context, value);
82
82
  }
83
- // ensure getters/setters aren't configured with reactive or reflect
84
- if (options.reactive) {
85
- throw new TypeError(`Getter/setter attributes cannot be declared with reactive: true (on ${JSON.stringify(context.name)})`);
86
- }
87
83
  if (context.kind === "setter") {
84
+ // ensure setters aren't configured with reactive
85
+ if (options.reactive) {
86
+ throw new TypeError(`Setter attributes cannot be declared with reactive: true (on ${JSON.stringify(context.name)})`);
87
+ }
88
88
  return setter(options, value);
89
89
  }
90
+ if (context.kind === "getter") {
91
+ return getter(options, context, value);
92
+ }
93
+ assertNever(context);
90
94
  };
91
95
  }
92
96
  function syncAttribute(target, options, value, force = false) {
@@ -96,6 +100,21 @@ function syncAttribute(target, options, value, force = false) {
96
100
  target.setAttributeQuietly(key, attributeValue);
97
101
  }
98
102
  }
103
+ function getter(options, context, getter) {
104
+ if (options.reactive) {
105
+ const getSig = (obj) => signalForObject(obj, context.name, () => {
106
+ const sig = Signal.computed(getter.bind(obj));
107
+ // FIXME this leaks when obj isn't explicitly disposed
108
+ obj.use(Signal.effect(() => {
109
+ syncAttribute(obj, options, sig.get());
110
+ }));
111
+ return sig;
112
+ });
113
+ return function () {
114
+ return getSig(this).get();
115
+ };
116
+ }
117
+ }
99
118
  function setter(options, setter) {
100
119
  if (options.reflect) {
101
120
  return function (value) {
@@ -1 +1 @@
1
- {"version":3,"file":"attribute.js","sourceRoot":"","sources":["../../src/decorators/attribute.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attribute.js","sourceRoot":"","sources":["../../src/decorators/attribute.ts"],"names":[],"mappings":"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"}
@@ -103,17 +103,17 @@ test("@attribute", async () => {
103
103
  expect(t.getAttribute("wibble")).toBe("Mike");
104
104
  expect(wibble.get()).toBe("Mike");
105
105
  t.removeAttribute("wibble");
106
- expect(t.wibble).toBeUndefined();
106
+ expect(t.wibble).toBeNull();
107
107
  expect(t.getAttribute("wibble")).toBeNull();
108
- expect(wibble.get()).toBe(undefined);
108
+ expect(wibble.get()).toBe(null);
109
109
  t.setAttribute("wibble", "Robert");
110
110
  expect(t.wibble).toBe("Robert");
111
111
  expect(t.getAttribute("wibble")).toBe("Robert");
112
112
  expect(wibble.get()).toBe("Robert");
113
- t.wibble = undefined;
114
- expect(t.wibble).toBeUndefined();
113
+ t.wibble = null;
114
+ expect(t.wibble).toBeNull();
115
115
  expect(t.getAttribute("wibble")).toBeNull();
116
- expect(wibble.get()).toBe(undefined);
116
+ expect(wibble.get()).toBe(null);
117
117
  expect(t.wobble).toBe(1);
118
118
  expect(t.getAttribute("wobble")).toBe("1");
119
119
  t.wobble = 2;
@@ -247,7 +247,7 @@ test("@attribute init ordering", async () => {
247
247
  __runInitializers(_classThis, _classExtraInitializers);
248
248
  }
249
249
  accessor movieStar = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _movieStar_initializers, "Joe"));
250
- accessor foo = (__runInitializers(this, _movieStar_extraInitializers), __runInitializers(this, _foo_initializers, void 0));
250
+ accessor foo = (__runInitializers(this, _movieStar_extraInitializers), __runInitializers(this, _foo_initializers, null));
251
251
  #wibble = (__runInitializers(this, _foo_extraInitializers), "Joe");
252
252
  get wibble() {
253
253
  return this.#wibble;
@@ -366,4 +366,56 @@ test("subcomponent attributes are initialised properly", async () => {
366
366
  expect(subs[1].attr4).toBe("Mike");
367
367
  expect(subs[1].outerHTML).toBe(`<subcomp-init-sub attr1="Mike" attr2="Mike" attr3="Mike" attr4="Mike"></subcomp-init-sub>`);
368
368
  });
369
+ test("@attributeGetter is reactive", async () => {
370
+ let ReactiveGetter = (() => {
371
+ let _classDecorators = [customElement("reactive-getter")];
372
+ let _classDescriptor;
373
+ let _classExtraInitializers = [];
374
+ let _classThis;
375
+ let _classSuper = Component;
376
+ let _instanceExtraInitializers = [];
377
+ let _disabled_decorators;
378
+ let _disabled_initializers = [];
379
+ let _disabled_extraInitializers = [];
380
+ let _get_tabindex_decorators;
381
+ var ReactiveGetter = class extends _classSuper {
382
+ static { _classThis = this; }
383
+ static {
384
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
385
+ _disabled_decorators = [attribute({ type: Boolean })];
386
+ _get_tabindex_decorators = [attributeGetter({ type: Number, reactive: true })];
387
+ __esDecorate(this, null, _disabled_decorators, { kind: "accessor", name: "disabled", static: false, private: false, access: { has: obj => "disabled" in obj, get: obj => obj.disabled, set: (obj, value) => { obj.disabled = value; } }, metadata: _metadata }, _disabled_initializers, _disabled_extraInitializers);
388
+ __esDecorate(this, null, _get_tabindex_decorators, { kind: "getter", name: "tabindex", static: false, private: false, access: { has: obj => "tabindex" in obj, get: obj => obj.tabindex }, metadata: _metadata }, null, _instanceExtraInitializers);
389
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
390
+ ReactiveGetter = _classThis = _classDescriptor.value;
391
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
392
+ __runInitializers(_classThis, _classExtraInitializers);
393
+ }
394
+ accessor disabled = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _disabled_initializers, false));
395
+ get tabindex() {
396
+ return this.disabled ? -1 : 0;
397
+ }
398
+ constructor() {
399
+ super(...arguments);
400
+ __runInitializers(this, _disabled_extraInitializers);
401
+ }
402
+ };
403
+ return ReactiveGetter = _classThis;
404
+ })();
405
+ const t = document.createElement("reactive-getter");
406
+ // document.body.append(t);
407
+ // await t.updateComplete;
408
+ expect(t.getAttribute("disabled")).toBeNull();
409
+ expect(t.tabindex).toBe(0);
410
+ // Attributes won't update until we yield, so yield.
411
+ await Promise.resolve();
412
+ expect(t.getAttribute("tabindex")).toBe("0");
413
+ t.disabled = true;
414
+ expect(t.getAttribute("disabled")).not.toBeNull();
415
+ // change should be immediately reflected in the computed property
416
+ expect(t.tabindex).toBe(-1);
417
+ // but attributes will only update after a yield
418
+ await Promise.resolve();
419
+ expect(t.getAttribute("tabindex")).toBe("-1");
420
+ });
369
421
  //# sourceMappingURL=attribute.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"attribute.test.js","sourceRoot":"","sources":["../../src/decorators/attribute.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAEpC,IAAI,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE;QAEpB,kBAAkB;gCADvB,aAAa,CAAC,sBAAsB,CAAC;;;;0BACL,SAAS;;;;;;;;;;;;;;;;sCAAjB,SAAQ,WAAS;;;;sCACrC,SAAS;sCACT,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;yCAC1C,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;oCAE3C,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;oCAG3D,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;gBAPnB,uKAAS,MAAM,6BAAN,MAAM,uFAA6B;gBACX,uKAAS,MAAM,6BAAN,MAAM,uFAAyB;gBACvC,gLAAS,SAAS,6BAAT,SAAS,6FACrD;gBACmD,iKAAS,IAAI,6BAAJ,IAAI,mFAElD;gBACO,iKAAS,IAAI,6BAAJ,IAAI,mFAA4B;gBAR5E,6KASC;;;gBATK,uDAAkB;;YACT,QAAQ,CAAC,MAAM,iDAAuB,KAAK,EAAC;YACX,QAAQ,CAAC,MAAM,sGAAuB,CAAC,GAAC;YACvC,QAAQ,CAAC,SAAS,yGAC3D,KAAK,GAAC;YACmD,QAAQ,CAAC,IAAI,uGAExD,KAAK,GAAC;YACO,QAAQ,CAAC,IAAI,kGAAuB,IAAI,GAAC;;;;;;;;IAG5E,MAAM,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,sBAAsB,CAAuB,CAAC;IAC/E,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACxB,MAAM,CAAC,CAAC,cAAc,CAAC;IAEvB,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC;IAClB,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9B,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC5B,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;IACjC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC5C,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC,CAAC,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACnC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC,CAAC,MAAM,GAAG,SAAS,CAAC;IACrB,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;IACjC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC5C,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAErC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3C,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IACb,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3C,CAAC,CAAC,YAAY,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAC9B,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE3C,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACjD,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC;IACnB,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;IACjC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACjD,CAAC,CAAC,YAAY,CAAC,aAAa,EAAE,mDAAmD,CAAC,CAAC;IACnF,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAE/C,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3C,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC,CAAC,IAAI,GAAG,QAAQ,CAAC;IAClB,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9B,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9C,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAE/B,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC1C,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC9B,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC/C,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QAElC,wBAAwB;gCAD7B,aAAa,CAAC,6BAA6B,CAAC;;;;0BACN,SAAS;;;;;;4CAAjB,SAAQ,WAAS;;;;yCAE3C,eAAe;yCAGf,eAAe;0CAKf,eAAe,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;0CAGnC,eAAe,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;gBAXnB,sKAAI,KAAK,6DAEzB;gBACgB,iLAAI,KAAK,wEAEzB;gBAGoC,yKAAI,MAAM,6DAE9C;gBACoC,oLAAI,MAAM,wEAE9C;gBAfL,6KAgBC;;;gBAhBK,uDAAwB;;YAC1B,MAAM,IADJ,mDAAwB,EACjB,MAAM,EAAC;YACC,IAAI,KAAK;gBACtB,OAAO,IAAI,CAAC,MAAM,CAAC;YACvB,CAAC;YACgB,IAAI,KAAK,CAAC,KAAa;gBACpC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACxB,CAAC;YAED,OAAO,GAAG,MAAM,CAAC;YACoB,IAAI,MAAM;gBAC3C,OAAO,IAAI,CAAC,OAAO,CAAC;YACxB,CAAC;YACoC,IAAI,MAAM,CAAC,KAAa;gBACzD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACzB,CAAC;;;;IAGL,MAAM,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,6BAA6B,CAA6B,CAAC;IAC5F,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACxB,MAAM,CAAC,CAAC,cAAc,CAAC;IAEvB,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC7B,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAE7C,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC/B,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAE5C,CAAC,CAAC,KAAK,GAAG,QAAQ,CAAC;IACnB,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/B,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAE/C,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9B,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAE5C,CAAC,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAChC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAE7C,CAAC,CAAC,MAAM,GAAG,QAAQ,CAAC;IACpB,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QAElC,sBAAsB;gCAD3B,aAAa,CAAC,2BAA2B,CAAC;;;;0BACN,SAAS;;;;;;;;;;0CAAjB,SAAQ,WAAS;;;;yCACzC,SAAS;mCAET,SAAS;0CAGT,eAAe;0CAGf,eAAe;gBARL,gLAAS,SAAS,6BAAT,SAAS,6FAAS;gBAE3B,8JAAS,GAAG,6BAAH,GAAG,iFAAqB;gBAG3B,yKAAI,MAAM,6DAE1B;gBACgB,oLAAI,MAAM,wEAE1B;gBAXL,6KAYC;;;gBAZK,uDAAsB;;YACb,QAAQ,CAAC,SAAS,IAD3B,mDAAsB,mDACQ,KAAK,GAAC;YAE3B,QAAQ,CAAC,GAAG,+GAAqB;YAE5C,OAAO,qDAAG,KAAK,EAAC;YACC,IAAI,MAAM;gBACvB,OAAO,IAAI,CAAC,OAAO,CAAC;YACxB,CAAC;YACgB,IAAI,MAAM,CAAC,KAAa;gBACrC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACzB,CAAC;;;;IAGL,MAAM,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,2BAA2B,CAA2B,CAAC;IACxF,CAAC,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC7B,CAAC,CAAC,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACnC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACxB,MAAM,CAAC,CAAC,cAAc,CAAC;IAEvB,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAElD,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1B,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAE1C,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACpD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;QAE1D,eAAe;gCADpB,aAAa,CAAC,mBAAmB,CAAC;;;;0BACL,SAAS;mCAAjB,SAAQ,WAAS;;;;gBAAvC,6KAYC;;;gBAZK,uDAAe;;YACjB,MAAM;gBACF,OAAO,IAAI,CAAA;;;;;;;;aAQV,CAAC;YACN,CAAC;;;;QAIC,cAAc;gCADnB,aAAa,CAAC,kBAAkB,CAAC;;;;0BACL,SAAS;;;;;;;;;;;;;kCAAjB,SAAQ,WAAS;;;;qCACjC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;qCAC5C,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;qCAC7C,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;qCAC7C,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;gBAHD,oKAAS,KAAK,6BAAL,KAAK,qFAAS;gBACtB,oKAAS,KAAK,6BAAL,KAAK,qFAAS;gBACvB,oKAAS,KAAK,6BAAL,KAAK,qFAAS;gBACtB,oKAAS,KAAK,6BAAL,KAAK,qFAAS;gBAJ3E,6KASC;;;gBATK,uDAAc;;YAC8B,QAAQ,CAAC,KAAK,gDAAG,KAAK,EAAC;YACtB,QAAQ,CAAC,KAAK,oGAAG,KAAK,GAAC;YACvB,QAAQ,CAAC,KAAK,oGAAG,KAAK,GAAC;YACtB,QAAQ,CAAC,KAAK,oGAAG,KAAK,GAAC;YAEvE,MAAM;gBACF,OAAO,OAAO,CAAC;YACnB,CAAC;;;;;;;;IAGL,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,mBAAmB,CAAoB,CAAC;IAC5E,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3B,MAAM,IAAI,CAAC,cAAc,CAAC;IAE1B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAA+B,CAAC;IAC7E,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAE5B,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;IAChG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAC1B,2FAA2F,CAC9F,CAAC;AACN,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"attribute.test.js","sourceRoot":"","sources":["../../src/decorators/attribute.test.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,9 @@ import type { Component } from "../component";
3
3
  export type ConnectFunctionReturnValue = Disposifiable | Iterable<Disposifiable | undefined> | undefined | void;
4
4
  export type ConnectFunction = () => ConnectFunctionReturnValue;
5
5
  export declare function connectedJobs(obj: Component): Iterable<ConnectFunction>;
6
+ /** @deprecated */
6
7
  export declare function connect<C extends Component>(value: ConnectFunction, context: ClassMethodDecoratorContext<C, ConnectFunction>): undefined;
7
8
  export declare function connect<C extends Component>(value: undefined, context: ClassFieldDecoratorContext<C, ConnectFunction>): (value: ConnectFunction) => ConnectFunction;
9
+ /** @deprecated */
8
10
  export declare function connectEffect<C extends Component>(value: ConnectFunction, context: ClassMethodDecoratorContext<C, ConnectFunction>): undefined;
9
11
  export declare function connectEffect<C extends Component>(value: undefined, context: ClassFieldDecoratorContext<C, ConnectFunction>): (value: ConnectFunction) => ConnectFunction;