@toyz/loom 0.15.11 → 0.16.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.
- package/dist/element/index.d.ts +1 -0
- package/dist/element/index.d.ts.map +1 -1
- package/dist/element/index.js +1 -0
- package/dist/element/index.js.map +1 -1
- package/dist/element/lazy-events.d.ts +36 -0
- package/dist/element/lazy-events.d.ts.map +1 -0
- package/dist/element/lazy-events.js +40 -0
- package/dist/element/lazy-events.js.map +1 -0
- package/dist/element/lazy.d.ts.map +1 -1
- package/dist/element/lazy.js +7 -0
- package/dist/element/lazy.js.map +1 -1
- package/dist/element/observers.d.ts +13 -4
- package/dist/element/observers.d.ts.map +1 -1
- package/dist/element/observers.js +14 -5
- package/dist/element/observers.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/router/link.d.ts +6 -0
- package/dist/router/link.d.ts.map +1 -1
- package/dist/router/link.js +21 -1
- package/dist/router/link.js.map +1 -1
- package/package.json +1 -1
package/dist/element/index.d.ts
CHANGED
|
@@ -13,6 +13,7 @@ export { form } from "./form";
|
|
|
13
13
|
export type { FormState, FormSchema, FieldSchema } from "./form";
|
|
14
14
|
export { lazy } from "./lazy";
|
|
15
15
|
export type { LazyOptions } from "./lazy";
|
|
16
|
+
export { LazyLoadStart, LazyLoadEnd } from "./lazy-events";
|
|
16
17
|
export { slot } from "./slots";
|
|
17
18
|
export { transition } from "./transition";
|
|
18
19
|
export type { TransitionOptions } from "./transition";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/element/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AASxC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGlE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAG9D,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAGjC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAG7G,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAGjE,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/element/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AASxC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGlE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAG9D,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAGjC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAG7G,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAGjE,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG3D,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAG/B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAGtD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG3D,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC/E,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAG5D,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAClE,YAAY,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAGjD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC"}
|
package/dist/element/index.js
CHANGED
|
@@ -24,6 +24,7 @@ export { interval, timeout, debounce, throttle, animationFrame } from "./timing"
|
|
|
24
24
|
export { form } from "./form";
|
|
25
25
|
// Lazy loading decorator
|
|
26
26
|
export { lazy } from "./lazy";
|
|
27
|
+
export { LazyLoadStart, LazyLoadEnd } from "./lazy-events";
|
|
27
28
|
// Slot decorator
|
|
28
29
|
export { slot } from "./slots";
|
|
29
30
|
// Transition decorator
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/element/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,kEAAkE;AAClE,gEAAgE;AAChE,0DAA0D;AAC1D,8DAA8D;AAC9D,4DAA4D;AAE5D,qBAAqB;AACrB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAElE,uBAAuB;AACvB,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE9D,kBAAkB;AAClB,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,qBAAqB;AACrB,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,oBAAoB;AACpB,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAA8B,MAAM,UAAU,CAAC;AAE7G,iBAAiB;AACjB,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAG9B,yBAAyB;AACzB,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/element/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,kEAAkE;AAClE,gEAAgE;AAChE,0DAA0D;AAC1D,8DAA8D;AAC9D,4DAA4D;AAE5D,qBAAqB;AACrB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAElE,uBAAuB;AACvB,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE9D,kBAAkB;AAClB,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,qBAAqB;AACrB,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,oBAAoB;AACpB,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAA8B,MAAM,UAAU,CAAC;AAE7G,iBAAiB;AACjB,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAG9B,yBAAyB;AACzB,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE3D,iBAAiB;AACjB,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,uBAAuB;AACvB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C,mBAAmB;AACnB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,4BAA4B;AAC5B,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAG/E,oDAAoD;AACpD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAGlE,mDAAmD;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Loom — Lazy Loading Events
|
|
3
|
+
*
|
|
4
|
+
* Global events emitted when @lazy components load.
|
|
5
|
+
* Listen with @on(LazyLoadStart) or @on(LazyLoadEnd).
|
|
6
|
+
*/
|
|
7
|
+
import { LoomEvent } from "../event";
|
|
8
|
+
/** Emitted when a @lazy component begins loading its module */
|
|
9
|
+
export declare class LazyLoadStart extends LoomEvent {
|
|
10
|
+
/** Custom element tag name, e.g. "settings-page" */
|
|
11
|
+
readonly tag: string;
|
|
12
|
+
constructor(
|
|
13
|
+
/** Custom element tag name, e.g. "settings-page" */
|
|
14
|
+
tag: string);
|
|
15
|
+
}
|
|
16
|
+
/** Emitted when a @lazy component finishes loading (success or failure) */
|
|
17
|
+
export declare class LazyLoadEnd extends LoomEvent {
|
|
18
|
+
/** Custom element tag name */
|
|
19
|
+
readonly tag: string;
|
|
20
|
+
/** Whether the module loaded successfully */
|
|
21
|
+
readonly success: boolean;
|
|
22
|
+
/** Milliseconds elapsed */
|
|
23
|
+
readonly duration: number;
|
|
24
|
+
/** Error object if success is false */
|
|
25
|
+
readonly error?: unknown | undefined;
|
|
26
|
+
constructor(
|
|
27
|
+
/** Custom element tag name */
|
|
28
|
+
tag: string,
|
|
29
|
+
/** Whether the module loaded successfully */
|
|
30
|
+
success: boolean,
|
|
31
|
+
/** Milliseconds elapsed */
|
|
32
|
+
duration: number,
|
|
33
|
+
/** Error object if success is false */
|
|
34
|
+
error?: unknown | undefined);
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=lazy-events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lazy-events.d.ts","sourceRoot":"","sources":["../../src/element/lazy-events.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,+DAA+D;AAC/D,qBAAa,aAAc,SAAQ,SAAS;IAExC,oDAAoD;aACpC,GAAG,EAAE,MAAM;;IAD3B,oDAAoD;IACpC,GAAG,EAAE,MAAM;CAI9B;AAED,2EAA2E;AAC3E,qBAAa,WAAY,SAAQ,SAAS;IAEtC,8BAA8B;aACd,GAAG,EAAE,MAAM;IAC3B,6CAA6C;aAC7B,OAAO,EAAE,OAAO;IAChC,2BAA2B;aACX,QAAQ,EAAE,MAAM;IAChC,uCAAuC;aACvB,KAAK,CAAC,EAAE,OAAO;;IAP/B,8BAA8B;IACd,GAAG,EAAE,MAAM;IAC3B,6CAA6C;IAC7B,OAAO,EAAE,OAAO;IAChC,2BAA2B;IACX,QAAQ,EAAE,MAAM;IAChC,uCAAuC;IACvB,KAAK,CAAC,EAAE,OAAO,YAAA;CAIlC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Loom — Lazy Loading Events
|
|
3
|
+
*
|
|
4
|
+
* Global events emitted when @lazy components load.
|
|
5
|
+
* Listen with @on(LazyLoadStart) or @on(LazyLoadEnd).
|
|
6
|
+
*/
|
|
7
|
+
import { LoomEvent } from "../event";
|
|
8
|
+
/** Emitted when a @lazy component begins loading its module */
|
|
9
|
+
export class LazyLoadStart extends LoomEvent {
|
|
10
|
+
tag;
|
|
11
|
+
constructor(
|
|
12
|
+
/** Custom element tag name, e.g. "settings-page" */
|
|
13
|
+
tag) {
|
|
14
|
+
super();
|
|
15
|
+
this.tag = tag;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
/** Emitted when a @lazy component finishes loading (success or failure) */
|
|
19
|
+
export class LazyLoadEnd extends LoomEvent {
|
|
20
|
+
tag;
|
|
21
|
+
success;
|
|
22
|
+
duration;
|
|
23
|
+
error;
|
|
24
|
+
constructor(
|
|
25
|
+
/** Custom element tag name */
|
|
26
|
+
tag,
|
|
27
|
+
/** Whether the module loaded successfully */
|
|
28
|
+
success,
|
|
29
|
+
/** Milliseconds elapsed */
|
|
30
|
+
duration,
|
|
31
|
+
/** Error object if success is false */
|
|
32
|
+
error) {
|
|
33
|
+
super();
|
|
34
|
+
this.tag = tag;
|
|
35
|
+
this.success = success;
|
|
36
|
+
this.duration = duration;
|
|
37
|
+
this.error = error;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=lazy-events.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lazy-events.js","sourceRoot":"","sources":["../../src/element/lazy-events.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,+DAA+D;AAC/D,MAAM,OAAO,aAAc,SAAQ,SAAS;IAGxB;IAFlB;IACE,oDAAoD;IACpC,GAAW;QAE3B,KAAK,EAAE,CAAC;QAFQ,QAAG,GAAH,GAAG,CAAQ;IAG7B,CAAC;CACF;AAED,2EAA2E;AAC3E,MAAM,OAAO,WAAY,SAAQ,SAAS;IAGtB;IAEA;IAEA;IAEA;IARlB;IACE,8BAA8B;IACd,GAAW;IAC3B,6CAA6C;IAC7B,OAAgB;IAChC,2BAA2B;IACX,QAAgB;IAChC,uCAAuC;IACvB,KAAe;QAE/B,KAAK,EAAE,CAAC;QARQ,QAAG,GAAH,GAAG,CAAQ;QAEX,YAAO,GAAP,OAAO,CAAS;QAEhB,aAAQ,GAAR,QAAQ,CAAQ;QAEhB,UAAK,GAAL,KAAK,CAAU;IAGjC,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../../src/element/lazy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;
|
|
1
|
+
{"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../../src/element/lazy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAMH,QAAA,MAAM,WAAW,kCAA8B,CAAC;AAChD,QAAA,MAAM,SAAS,sCAA2C,CAAC;AAC3D,QAAA,MAAM,WAAW,kCAAuC,CAAC;AACzD,QAAA,MAAM,SAAS,kCAA8B,CAAC;AAE9C,MAAM,WAAW,WAAW;IAC1B,sFAAsF;IACtF,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;IAChC,mFAAmF;IACnF,KAAK,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;CAC/B;AAED;;;;;;GAMG;AACH,wBAAgB,IAAI,CAClB,MAAM,EAAE,MAAM,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,EACrD,IAAI,CAAC,EAAE,WAAW,IAED,OAAO,QAAQ,EAAE,UAAU,qBAAqB,UAiNlE;AAED,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC"}
|
package/dist/element/lazy.js
CHANGED
|
@@ -15,6 +15,8 @@
|
|
|
15
15
|
* ```
|
|
16
16
|
*/
|
|
17
17
|
import { ROUTE_PROPS, TRANSFORMS, ROUTE_ENTER, ROUTE_LEAVE, createSymbol } from "../decorators/symbols";
|
|
18
|
+
import { bus } from "../bus";
|
|
19
|
+
import { LazyLoadStart, LazyLoadEnd } from "./lazy-events";
|
|
18
20
|
const LAZY_LOADER = createSymbol("lazy:loader");
|
|
19
21
|
const LAZY_OPTS = createSymbol("lazy:opts");
|
|
20
22
|
const LAZY_LOADED = createSymbol("lazy:loaded");
|
|
@@ -114,6 +116,9 @@ export function lazy(loader, opts) {
|
|
|
114
116
|
: document.createElement(opts.loading);
|
|
115
117
|
this.shadow.appendChild(loadingEl);
|
|
116
118
|
}
|
|
119
|
+
const tag = ctor.__loom_tag ?? this.tagName.toLowerCase();
|
|
120
|
+
const t0 = performance.now();
|
|
121
|
+
bus.emit(new LazyLoadStart(tag));
|
|
117
122
|
try {
|
|
118
123
|
const mod = await loader();
|
|
119
124
|
const RealClass = mod.default ?? mod;
|
|
@@ -205,9 +210,11 @@ export function lazy(loader, opts) {
|
|
|
205
210
|
}
|
|
206
211
|
};
|
|
207
212
|
ctor.__mountLazyImpl.call(this);
|
|
213
|
+
bus.emit(new LazyLoadEnd(tag, true, performance.now() - t0));
|
|
208
214
|
}
|
|
209
215
|
catch (err) {
|
|
210
216
|
console.error("[Loom @lazy] Failed to load module:", err);
|
|
217
|
+
bus.emit(new LazyLoadEnd(tag, false, performance.now() - t0, err));
|
|
211
218
|
this.shadow.innerHTML = "";
|
|
212
219
|
if (opts?.error) {
|
|
213
220
|
const errorEl = typeof opts.error === "function"
|
package/dist/element/lazy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lazy.js","sourceRoot":"","sources":["../../src/element/lazy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"lazy.js","sourceRoot":"","sources":["../../src/element/lazy.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Loom — @observer decorator
|
|
3
3
|
*
|
|
4
4
|
* Auto-managed DOM observers with lifecycle cleanup.
|
|
5
|
-
* Creates the observer on connect, observes `this
|
|
5
|
+
* Creates the observer on connect, observes `this` (or a resolved target), disconnects on unmount.
|
|
6
6
|
*
|
|
7
7
|
* ```ts
|
|
8
8
|
* @observer("resize")
|
|
@@ -20,9 +20,18 @@
|
|
|
20
20
|
* onChildChange(record: MutationRecord) {
|
|
21
21
|
* this.recount();
|
|
22
22
|
* }
|
|
23
|
+
*
|
|
24
|
+
* // With target resolver — observe a different node
|
|
25
|
+
* @observer("mutation", { childList: true, subtree: true }, el => el.getRootNode())
|
|
26
|
+
* onParentChange(record: MutationRecord) {
|
|
27
|
+
* this.rescan();
|
|
28
|
+
* }
|
|
23
29
|
* ```
|
|
24
30
|
*/
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
export declare function observer(type: "
|
|
31
|
+
/** Resolver that selects the observe target from the component instance. */
|
|
32
|
+
type TargetResolver = (el: HTMLElement) => Node | Element | null | undefined;
|
|
33
|
+
export declare function observer(type: "resize", options?: ResizeObserverOptions, target?: TargetResolver): (method: Function, context: ClassMethodDecoratorContext) => void;
|
|
34
|
+
export declare function observer(type: "intersection", options?: IntersectionObserverInit, target?: TargetResolver): (method: Function, context: ClassMethodDecoratorContext) => void;
|
|
35
|
+
export declare function observer(type: "mutation", options: MutationObserverInit, target?: TargetResolver): (method: Function, context: ClassMethodDecoratorContext) => void;
|
|
36
|
+
export {};
|
|
28
37
|
//# sourceMappingURL=observers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observers.d.ts","sourceRoot":"","sources":["../../src/element/observers.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"observers.d.ts","sourceRoot":"","sources":["../../src/element/observers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAIH,4EAA4E;AAC5E,KAAK,cAAc,GAAG,CAAC,EAAE,EAAE,WAAW,KAAK,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;AAW7E,wBAAgB,QAAQ,CACtB,IAAI,EAAE,QAAQ,EACd,OAAO,CAAC,EAAE,qBAAqB,EAC/B,MAAM,CAAC,EAAE,cAAc,GACtB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,2BAA2B,KAAK,IAAI,CAAC;AAEpE,wBAAgB,QAAQ,CACtB,IAAI,EAAE,cAAc,EACpB,OAAO,CAAC,EAAE,wBAAwB,EAClC,MAAM,CAAC,EAAE,cAAc,GACtB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,2BAA2B,KAAK,IAAI,CAAC;AAEpE,wBAAgB,QAAQ,CACtB,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,oBAAoB,EAC7B,MAAM,CAAC,EAAE,cAAc,GACtB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,2BAA2B,KAAK,IAAI,CAAC"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Loom — @observer decorator
|
|
3
3
|
*
|
|
4
4
|
* Auto-managed DOM observers with lifecycle cleanup.
|
|
5
|
-
* Creates the observer on connect, observes `this
|
|
5
|
+
* Creates the observer on connect, observes `this` (or a resolved target), disconnects on unmount.
|
|
6
6
|
*
|
|
7
7
|
* ```ts
|
|
8
8
|
* @observer("resize")
|
|
@@ -20,16 +20,25 @@
|
|
|
20
20
|
* onChildChange(record: MutationRecord) {
|
|
21
21
|
* this.recount();
|
|
22
22
|
* }
|
|
23
|
+
*
|
|
24
|
+
* // With target resolver — observe a different node
|
|
25
|
+
* @observer("mutation", { childList: true, subtree: true }, el => el.getRootNode())
|
|
26
|
+
* onParentChange(record: MutationRecord) {
|
|
27
|
+
* this.rescan();
|
|
28
|
+
* }
|
|
23
29
|
* ```
|
|
24
30
|
*/
|
|
25
31
|
import { CONNECT_HOOKS } from "../decorators/symbols";
|
|
26
32
|
// ── Implementation ──
|
|
27
|
-
export function observer(type, options) {
|
|
33
|
+
export function observer(type, options, target) {
|
|
28
34
|
return (method, context) => {
|
|
29
35
|
context.addInitializer(function () {
|
|
30
36
|
if (!this[CONNECT_HOOKS.key])
|
|
31
37
|
this[CONNECT_HOOKS.key] = [];
|
|
32
38
|
this[CONNECT_HOOKS.key].push((el) => {
|
|
39
|
+
const observeTarget = target ? target(el) : el;
|
|
40
|
+
if (!observeTarget)
|
|
41
|
+
return;
|
|
33
42
|
const callback = (entries) => {
|
|
34
43
|
for (const entry of entries) {
|
|
35
44
|
method.call(el, entry);
|
|
@@ -39,19 +48,19 @@ export function observer(type, options) {
|
|
|
39
48
|
switch (type) {
|
|
40
49
|
case "resize": {
|
|
41
50
|
const ro = new ResizeObserver(callback);
|
|
42
|
-
ro.observe(
|
|
51
|
+
ro.observe(observeTarget, options);
|
|
43
52
|
obs = ro;
|
|
44
53
|
break;
|
|
45
54
|
}
|
|
46
55
|
case "intersection": {
|
|
47
56
|
const io = new IntersectionObserver(callback, options);
|
|
48
|
-
io.observe(
|
|
57
|
+
io.observe(observeTarget);
|
|
49
58
|
obs = io;
|
|
50
59
|
break;
|
|
51
60
|
}
|
|
52
61
|
case "mutation": {
|
|
53
62
|
const mo = new MutationObserver(callback);
|
|
54
|
-
mo.observe(
|
|
63
|
+
mo.observe(observeTarget, options);
|
|
55
64
|
obs = mo;
|
|
56
65
|
break;
|
|
57
66
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observers.js","sourceRoot":"","sources":["../../src/element/observers.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"observers.js","sourceRoot":"","sources":["../../src/element/observers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAgCtD,uBAAuB;AAEvB,MAAM,UAAU,QAAQ,CACtB,IAAO,EACP,OAA+B,EAC/B,MAAuB;IAEvB,OAAO,CAAC,MAAgB,EAAE,OAAoC,EAAE,EAAE;QAChE,OAAO,CAAC,cAAc,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC;gBAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;YAE3D,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAe,EAAE,EAAE;gBAC/C,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/C,IAAI,CAAC,aAAa;oBAAE,OAAO;gBAE3B,MAAM,QAAQ,GAAG,CAAC,OAAc,EAAE,EAAE;oBAClC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;wBAC5B,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;oBACzB,CAAC;gBACH,CAAC,CAAC;gBAEF,IAAI,GAA2B,CAAC;gBAEhC,QAAQ,IAAI,EAAE,CAAC;oBACb,KAAK,QAAQ,CAAC,CAAC,CAAC;wBACd,MAAM,EAAE,GAAG,IAAI,cAAc,CAAC,QAAQ,CAAC,CAAC;wBACxC,EAAE,CAAC,OAAO,CAAC,aAAwB,EAAE,OAAgC,CAAC,CAAC;wBACvE,GAAG,GAAG,EAAE,CAAC;wBACT,MAAM;oBACR,CAAC;oBACD,KAAK,cAAc,CAAC,CAAC,CAAC;wBACpB,MAAM,EAAE,GAAG,IAAI,oBAAoB,CAAC,QAAQ,EAAE,OAAmC,CAAC,CAAC;wBACnF,EAAE,CAAC,OAAO,CAAC,aAAwB,CAAC,CAAC;wBACrC,GAAG,GAAG,EAAE,CAAC;wBACT,MAAM;oBACR,CAAC;oBACD,KAAK,UAAU,CAAC,CAAC,CAAC;wBAChB,MAAM,EAAE,GAAG,IAAI,gBAAgB,CAAC,QAAQ,CAAC,CAAC;wBAC1C,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,OAA+B,CAAC,CAAC;wBAC3D,GAAG,GAAG,EAAE,CAAC;wBACT,MAAM;oBACR,CAAC;gBACH,CAAC;gBAED,gDAAgD;gBAChD,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;YAChC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -21,7 +21,7 @@ export { service, resolveServiceName, inject, factory } from "./di";
|
|
|
21
21
|
export { SERVICE_NAME } from "./decorators/symbols";
|
|
22
22
|
/** @deprecated Use `@watch(Service)` or `@watch(Service, "prop")` instead. Will be removed in v1.0. */
|
|
23
23
|
export { watch as watchService } from "./di";
|
|
24
|
-
export { LoomElement, component, query, queryAll, styles, catch_, suspend, mount, unmount, event, observer, interval, timeout, debounce, throttle, animationFrame, form, lazy, slot, transition, hotkey, log, LogTransport, ConsoleTransport, provide, consume, ContextRequestEvent, portal, } from "./element";
|
|
24
|
+
export { LoomElement, component, query, queryAll, styles, catch_, suspend, mount, unmount, event, observer, interval, timeout, debounce, throttle, animationFrame, form, lazy, slot, transition, hotkey, log, LogTransport, ConsoleTransport, provide, consume, ContextRequestEvent, portal, LazyLoadStart, LazyLoadEnd, } from "./element";
|
|
25
25
|
export type { FormState, FormSchema, FieldSchema, LazyOptions, TransitionOptions, HotkeyOptions, HotkeyCombo, LogEntry, LogLevel, LogOptions, ContextCallback, PortalOptions } from "./element";
|
|
26
26
|
export { transform, createTransform, typed, typedTransformer, toNumber, toBoolean, toDate, toJSON, toTrimmed, toInt, toFloat, } from "./transform";
|
|
27
27
|
export type { TransformSchema } from "./transform";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,YAAY,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAGrC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC9C,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAGlD,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,YAAY,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGtC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGhC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGpD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAKhD,OAAO,EACL,QAAQ,EAAE,eAAe,EACzB,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EACvE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAC5C,KAAK,EACL,KAAK,GACN,MAAM,SAAS,CAAC;AACjB,YAAY,EACV,UAAU,EAAE,OAAO,EAAE,YAAY,EACjC,cAAc,EAAE,aAAa,EAAE,cAAc,GAC9C,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,uGAAuG;AACvG,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAG7C,OAAO,EACL,WAAW,EACX,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAClC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAC/B,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,EACrD,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EACpC,GAAG,EAAE,YAAY,EAAE,gBAAgB,EACnC,OAAO,EAAE,OAAO,EAAE,mBAAmB,EACrC,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -26,7 +26,7 @@ export { SERVICE_NAME } from "./decorators/symbols";
|
|
|
26
26
|
/** @deprecated Use `@watch(Service)` or `@watch(Service, "prop")` instead. Will be removed in v1.0. */
|
|
27
27
|
export { watch as watchService } from "./di";
|
|
28
28
|
// Element: base class, element decorators
|
|
29
|
-
export { LoomElement, component, query, queryAll, styles, catch_, suspend, mount, unmount, event, observer, interval, timeout, debounce, throttle, animationFrame, form, lazy, slot, transition, hotkey, log, LogTransport, ConsoleTransport, provide, consume, ContextRequestEvent, portal, } from "./element";
|
|
29
|
+
export { LoomElement, component, query, queryAll, styles, catch_, suspend, mount, unmount, event, observer, interval, timeout, debounce, throttle, animationFrame, form, lazy, slot, transition, hotkey, log, LogTransport, ConsoleTransport, provide, consume, ContextRequestEvent, portal, LazyLoadStart, LazyLoadEnd, } from "./element";
|
|
30
30
|
// Transform: value transforms
|
|
31
31
|
export { transform, createTransform, typed, typedTransformer, toNumber, toBoolean, toDate, toJSON, toTrimmed, toInt, toFloat, } from "./transform";
|
|
32
32
|
// Decorators: event decorators + factory
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,kBAAkB;AAClB,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAG5B,eAAe;AACf,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAG9C,MAAM;AACN,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAG5B,eAAe;AACf,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,wDAAwD;AACxD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEpD,cAAc;AACd,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,0BAA0B;AAE1B,qCAAqC;AACrC,OAAO,EACL,QAAQ,EAAE,eAAe,EACzB,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EACvE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAC5C,KAAK,EACL,KAAK,GACN,MAAM,SAAS,CAAC;AAMjB,mCAAmC;AACnC,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,uGAAuG;AACvG,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAE7C,0CAA0C;AAC1C,OAAO,EACL,WAAW,EACX,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAClC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAC/B,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,EACrD,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EACpC,GAAG,EAAE,YAAY,EAAE,gBAAgB,EACnC,OAAO,EAAE,OAAO,EAAE,mBAAmB,EACrC,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,kBAAkB;AAClB,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAG5B,eAAe;AACf,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAG9C,MAAM;AACN,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAG5B,eAAe;AACf,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,wDAAwD;AACxD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEpD,cAAc;AACd,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,0BAA0B;AAE1B,qCAAqC;AACrC,OAAO,EACL,QAAQ,EAAE,eAAe,EACzB,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EACvE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAC5C,KAAK,EACL,KAAK,GACN,MAAM,SAAS,CAAC;AAMjB,mCAAmC;AACnC,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,uGAAuG;AACvG,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAE7C,0CAA0C;AAC1C,OAAO,EACL,WAAW,EACX,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAClC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAC/B,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,EACrD,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EACpC,GAAG,EAAE,YAAY,EAAE,gBAAgB,EACnC,OAAO,EAAE,OAAO,EAAE,mBAAmB,EACrC,MAAM,EACN,aAAa,EAAE,WAAW,GAC3B,MAAM,WAAW,CAAC;AAGnB,8BAA8B;AAC9B,OAAO,EACL,SAAS,EAAE,eAAe,EAC1B,KAAK,EAAE,gBAAgB,EACvB,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,GAC/D,MAAM,aAAa,CAAC;AAGrB,yCAAyC;AACzC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpG,SAAS;AACT,OAAO,EACL,UAAU,EACV,YAAY,EACZ,KAAK,EACL,KAAK,EACL,KAAK,EACL,UAAU,EACV,MAAM,EACN,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,YAAY,GACb,MAAM,UAAU,CAAC;AAGlB,oDAAoD;AACpD,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAGzD,cAAc;AACd,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC"}
|
package/dist/router/link.d.ts
CHANGED
|
@@ -4,6 +4,10 @@
|
|
|
4
4
|
* Declarative navigation link. Renders an <a> that adapts
|
|
5
5
|
* its href to the current router mode (hash vs history).
|
|
6
6
|
* Adds `.active` class when the current route matches.
|
|
7
|
+
*
|
|
8
|
+
* Consumer CSS overrides:
|
|
9
|
+
* const inline = css`a { display: inline; }`;
|
|
10
|
+
* <loom-link to="/foo" styles={[inline]}>Foo</loom-link>
|
|
7
11
|
*/
|
|
8
12
|
import { LoomElement } from "../element/element";
|
|
9
13
|
declare class LoomLink extends LoomElement {
|
|
@@ -12,6 +16,8 @@ declare class LoomLink extends LoomElement {
|
|
|
12
16
|
accessor name: string;
|
|
13
17
|
/** Params for named route substitution (JSON string or object via JSX) */
|
|
14
18
|
accessor params: string;
|
|
19
|
+
/** Optional CSSStyleSheets to adopt — overrides default anchor styles */
|
|
20
|
+
accessor styles: CSSStyleSheet[];
|
|
15
21
|
accessor anchor: HTMLAnchorElement;
|
|
16
22
|
private get router();
|
|
17
23
|
connectedCallback(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../src/router/link.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../src/router/link.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AASjD,cACM,QAAS,SAAQ,WAAW;IAC1B,QAAQ,CAAC,EAAE,SAAO;IACxB,oEAAoE;IAC9D,QAAQ,CAAC,IAAI,SAAM;IACzB,0EAA0E;IACpE,QAAQ,CAAC,MAAM,SAAM;IAC3B,yEAAyE;IACnE,QAAQ,CAAC,MAAM,EAAE,aAAa,EAAE,CAAM;IAEhC,QAAQ,CAAC,MAAM,EAAG,iBAAiB,CAAC;IAEhD,OAAO,KAAK,MAAM,GAEjB;IAED,iBAAiB;IAuCjB,6CAA6C;IAC7C,OAAO,CAAC,OAAO;IAWf,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,KAAK;CASd;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC"}
|
package/dist/router/link.js
CHANGED
|
@@ -4,6 +4,10 @@
|
|
|
4
4
|
* Declarative navigation link. Renders an <a> that adapts
|
|
5
5
|
* its href to the current router mode (hash vs history).
|
|
6
6
|
* Adds `.active` class when the current route matches.
|
|
7
|
+
*
|
|
8
|
+
* Consumer CSS overrides:
|
|
9
|
+
* const inline = css`a { display: inline; }`;
|
|
10
|
+
* <loom-link to="/foo" styles={[inline]}>Foo</loom-link>
|
|
7
11
|
*/
|
|
8
12
|
var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
|
|
9
13
|
var useValue = arguments.length > 2;
|
|
@@ -63,6 +67,9 @@ let LoomLink = (() => {
|
|
|
63
67
|
let _params_decorators;
|
|
64
68
|
let _params_initializers = [];
|
|
65
69
|
let _params_extraInitializers = [];
|
|
70
|
+
let _styles_decorators;
|
|
71
|
+
let _styles_initializers = [];
|
|
72
|
+
let _styles_extraInitializers = [];
|
|
66
73
|
let _anchor_decorators;
|
|
67
74
|
let _anchor_initializers = [];
|
|
68
75
|
let _anchor_extraInitializers = [];
|
|
@@ -74,11 +81,13 @@ let LoomLink = (() => {
|
|
|
74
81
|
_to_decorators = [prop];
|
|
75
82
|
_name_decorators = [prop];
|
|
76
83
|
_params_decorators = [prop];
|
|
84
|
+
_styles_decorators = [prop];
|
|
77
85
|
_anchor_decorators = [query("a")];
|
|
78
86
|
__onRouteChanged_decorators = [on(RouteChanged)];
|
|
79
87
|
__esDecorate(this, null, _to_decorators, { kind: "accessor", name: "to", static: false, private: false, access: { has: obj => "to" in obj, get: obj => obj.to, set: (obj, value) => { obj.to = value; } }, metadata: _metadata }, _to_initializers, _to_extraInitializers);
|
|
80
88
|
__esDecorate(this, null, _name_decorators, { kind: "accessor", name: "name", static: false, private: false, access: { has: obj => "name" in obj, get: obj => obj.name, set: (obj, value) => { obj.name = value; } }, metadata: _metadata }, _name_initializers, _name_extraInitializers);
|
|
81
89
|
__esDecorate(this, null, _params_decorators, { kind: "accessor", name: "params", static: false, private: false, access: { has: obj => "params" in obj, get: obj => obj.params, set: (obj, value) => { obj.params = value; } }, metadata: _metadata }, _params_initializers, _params_extraInitializers);
|
|
90
|
+
__esDecorate(this, null, _styles_decorators, { kind: "accessor", name: "styles", static: false, private: false, access: { has: obj => "styles" in obj, get: obj => obj.styles, set: (obj, value) => { obj.styles = value; } }, metadata: _metadata }, _styles_initializers, _styles_extraInitializers);
|
|
82
91
|
__esDecorate(this, null, _anchor_decorators, { kind: "accessor", name: "anchor", static: false, private: false, access: { has: obj => "anchor" in obj, get: obj => obj.anchor, set: (obj, value) => { obj.anchor = value; } }, metadata: _metadata }, _anchor_initializers, _anchor_extraInitializers);
|
|
83
92
|
__esDecorate(this, null, __onRouteChanged_decorators, { kind: "method", name: "_onRouteChanged", static: false, private: false, access: { has: obj => "_onRouteChanged" in obj, get: obj => obj._onRouteChanged }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
84
93
|
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
@@ -97,7 +106,11 @@ let LoomLink = (() => {
|
|
|
97
106
|
/** Params for named route substitution (JSON string or object via JSX) */
|
|
98
107
|
get params() { return this.#params_accessor_storage; }
|
|
99
108
|
set params(value) { this.#params_accessor_storage = value; }
|
|
100
|
-
#
|
|
109
|
+
#styles_accessor_storage = (__runInitializers(this, _params_extraInitializers), __runInitializers(this, _styles_initializers, []));
|
|
110
|
+
/** Optional CSSStyleSheets to adopt — overrides default anchor styles */
|
|
111
|
+
get styles() { return this.#styles_accessor_storage; }
|
|
112
|
+
set styles(value) { this.#styles_accessor_storage = value; }
|
|
113
|
+
#anchor_accessor_storage = (__runInitializers(this, _styles_extraInitializers), __runInitializers(this, _anchor_initializers, void 0));
|
|
101
114
|
get anchor() { return this.#anchor_accessor_storage; }
|
|
102
115
|
set anchor(value) { this.#anchor_accessor_storage = value; }
|
|
103
116
|
get router() {
|
|
@@ -116,6 +129,13 @@ let LoomLink = (() => {
|
|
|
116
129
|
gap: inherit;
|
|
117
130
|
}
|
|
118
131
|
`;
|
|
132
|
+
// Adopt consumer style overrides
|
|
133
|
+
if (this.styles.length) {
|
|
134
|
+
this.shadow.adoptedStyleSheets = [
|
|
135
|
+
...this.shadow.adoptedStyleSheets,
|
|
136
|
+
...this.styles,
|
|
137
|
+
];
|
|
138
|
+
}
|
|
119
139
|
// Build initial DOM
|
|
120
140
|
const a = document.createElement("a");
|
|
121
141
|
a.setAttribute("part", "anchor");
|
package/dist/router/link.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link.js","sourceRoot":"","sources":["../../src/router/link.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"link.js","sourceRoot":"","sources":["../../src/router/link.ts"],"names":[],"mappings":"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"}
|