lit-ui-router 1.2.5 → 1.3.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/README.md +32 -0
- package/dist/custom-elements.json +19 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/transition-controller.d.ts +156 -0
- package/dist/transition-controller.js +123 -0
- package/dist/transition-controller.js.map +1 -0
- package/dist/ui-router.d.ts +16 -2
- package/dist/ui-router.js +16 -2
- package/dist/ui-router.js.map +1 -1
- package/dist/ui-sref.js.map +1 -1
- package/dist/ui-view.d.ts +2 -2
- package/dist/ui-view.js +2 -2
- package/package.json +16 -16
package/README.md
CHANGED
|
@@ -35,6 +35,38 @@ router.start();
|
|
|
35
35
|
| Template with props | Views needing params/resolves | `` (props) => html`...` `` |
|
|
36
36
|
| LitElement class | Complex views with lifecycle | `MyComponent` |
|
|
37
37
|
|
|
38
|
+
## Reacting to Transitions
|
|
39
|
+
|
|
40
|
+
Any element (routed or not) can stay synchronized with the router using the
|
|
41
|
+
`TransitionController` reactive controller. It registers transition hooks when
|
|
42
|
+
the host connects, calls `host.requestUpdate()` on matching transitions, and
|
|
43
|
+
deregisters everything when the host disconnects — no manual `requestUpdate()`
|
|
44
|
+
plumbing or leaked hooks.
|
|
45
|
+
|
|
46
|
+
```ts
|
|
47
|
+
import { TransitionController } from 'lit-ui-router';
|
|
48
|
+
|
|
49
|
+
class NavHeader extends LitElement {
|
|
50
|
+
private transitions = new TransitionController(this);
|
|
51
|
+
|
|
52
|
+
render() {
|
|
53
|
+
// Re-evaluated after every successful transition
|
|
54
|
+
return html`Current state: ${this.transitions.current?.name}`;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Scope it to specific states or react to parameter changes with a callback:
|
|
60
|
+
|
|
61
|
+
```ts
|
|
62
|
+
class UserDetail extends LitElement {
|
|
63
|
+
private transitions = new TransitionController(this, {
|
|
64
|
+
criteria: { to: 'users.detail' },
|
|
65
|
+
callback: () => this.loadUser(this.transitions.params.userId),
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
```
|
|
69
|
+
|
|
38
70
|
## Documentation
|
|
39
71
|
|
|
40
72
|
Visit [lit-ui-router.dev](https://lit-ui-router.dev) for full documentation, tutorials, and API reference.
|
|
@@ -272,6 +272,25 @@
|
|
|
272
272
|
},
|
|
273
273
|
"description": "Root <code>uiRouter</code> singleton.\nIf not provided, the element creates and assigns a new instance."
|
|
274
274
|
},
|
|
275
|
+
{
|
|
276
|
+
"kind": "method",
|
|
277
|
+
"name": "seekRouter",
|
|
278
|
+
"static": true,
|
|
279
|
+
"return": {
|
|
280
|
+
"type": {
|
|
281
|
+
"text": "UIRouterLit | undefined"
|
|
282
|
+
}
|
|
283
|
+
},
|
|
284
|
+
"parameters": [
|
|
285
|
+
{
|
|
286
|
+
"name": "candidate",
|
|
287
|
+
"type": {
|
|
288
|
+
"text": "Element"
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
],
|
|
292
|
+
"description": "Discovers the UIRouterLit instance provided by the nearest\nenclosing <code><ui-router></code> element.\n\nDispatches a bubbling, composed <code>ui-router-context</code> event from\nthe candidate element; the enclosing <code><ui-router></code>\nanswers it with its router instance. Returns <code>undefined</code> when\nthe candidate is not inside a <code><ui-router></code> (e.g. not\nyet connected).\n\nThis is the dependency-injection primitive for integrating external\nreactivity systems (state stores, controllers) with the router context —\ncall it from <code>hostConnected()</code> / <code>connectedCallback()</code>\ninstead of prop-drilling the router instance."
|
|
293
|
+
},
|
|
275
294
|
{
|
|
276
295
|
"kind": "field",
|
|
277
296
|
"name": "onUiRouterContextEvent",
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import { HookMatchCriteria, RawParams, StateDeclaration, StateOrName, Transition, UIRouter, UIRouterGlobals } from '@uirouter/core';
|
|
2
|
+
import { ReactiveController, ReactiveControllerHost } from 'lit';
|
|
3
|
+
/**
|
|
4
|
+
* Transition lifecycle events that a [[TransitionController]] can observe.
|
|
5
|
+
*
|
|
6
|
+
* Each value corresponds to a
|
|
7
|
+
* {@link https://ui-router.github.io/core/docs/latest/interfaces/_transition_interface_.ihookregistry.html | TransitionService hook registry}
|
|
8
|
+
* method of the same name.
|
|
9
|
+
*
|
|
10
|
+
* @category controllers
|
|
11
|
+
*/
|
|
12
|
+
export type TransitionEventType = 'onBefore' | 'onStart' | 'onSuccess' | 'onError';
|
|
13
|
+
/**
|
|
14
|
+
* The reason a [[TransitionController]] invoked its callback.
|
|
15
|
+
*
|
|
16
|
+
* Either one of the observed [[TransitionEventType]] hooks fired, or the
|
|
17
|
+
* host element (re)connected to the DOM and the controller synchronized
|
|
18
|
+
* with the router's current state (`'hostConnected'`).
|
|
19
|
+
*
|
|
20
|
+
* @category controllers
|
|
21
|
+
*/
|
|
22
|
+
export type TransitionCallbackReason = TransitionEventType | 'hostConnected';
|
|
23
|
+
/**
|
|
24
|
+
* A callback invoked by [[TransitionController]] whenever the host is
|
|
25
|
+
* synchronized with the router.
|
|
26
|
+
*
|
|
27
|
+
* For `'onBefore'` and `'onStart'` reasons, the returned value is passed
|
|
28
|
+
* back to UI-Router as a
|
|
29
|
+
* {@link https://ui-router.github.io/core/docs/latest/modules/_transition_interface_.html#hookresult | HookResult},
|
|
30
|
+
* so the callback may cancel or redirect the pending transition.
|
|
31
|
+
*
|
|
32
|
+
* @param transition - The [[Transition]] which triggered the callback.
|
|
33
|
+
* For the `'hostConnected'` reason this is the most recent successful
|
|
34
|
+
* transition, or `undefined` when no transition has succeeded yet.
|
|
35
|
+
* @param reason - Why the callback was invoked (see [[TransitionCallbackReason]]).
|
|
36
|
+
*
|
|
37
|
+
* @category controllers
|
|
38
|
+
*/
|
|
39
|
+
export type TransitionCallback = (transition: Transition | undefined, reason: TransitionCallbackReason) => unknown;
|
|
40
|
+
/**
|
|
41
|
+
* Options for [[TransitionController]].
|
|
42
|
+
*
|
|
43
|
+
* @category controllers
|
|
44
|
+
*/
|
|
45
|
+
export interface TransitionControllerOptions {
|
|
46
|
+
/**
|
|
47
|
+
* The [[UIRouter]] instance to observe.
|
|
48
|
+
*
|
|
49
|
+
* When omitted, the controller discovers the router from an ancestor
|
|
50
|
+
* <code><ui-router></code> (or <code><ui-view></code>) via the
|
|
51
|
+
* `ui-router-context` event when the host connects.
|
|
52
|
+
*/
|
|
53
|
+
router?: UIRouter;
|
|
54
|
+
/**
|
|
55
|
+
* {@link https://ui-router.github.io/core/docs/latest/interfaces/_transition_interface_.hookmatchcriteria.html | HookMatchCriteria}
|
|
56
|
+
* limiting which transitions notify the host.
|
|
57
|
+
*
|
|
58
|
+
* Defaults to `{}` (all transitions).
|
|
59
|
+
*/
|
|
60
|
+
criteria?: HookMatchCriteria;
|
|
61
|
+
/**
|
|
62
|
+
* The transition lifecycle events to observe.
|
|
63
|
+
*
|
|
64
|
+
* Defaults to `['onSuccess']`.
|
|
65
|
+
*/
|
|
66
|
+
events?: TransitionEventType[];
|
|
67
|
+
/**
|
|
68
|
+
* Invoked before `host.requestUpdate()` whenever an observed event fires,
|
|
69
|
+
* and once each time the host connects (see [[TransitionCallbackReason]]).
|
|
70
|
+
*/
|
|
71
|
+
callback?: TransitionCallback;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* A zero-dependency Lit
|
|
75
|
+
* {@link https://lit.dev/docs/composition/controllers/ | ReactiveController}
|
|
76
|
+
* that keeps its host element synchronized with UI-Router transitions.
|
|
77
|
+
*
|
|
78
|
+
* The controller registers [[TransitionService]] hooks (by default
|
|
79
|
+
* `onSuccess`) when the host connects and calls `host.requestUpdate()`
|
|
80
|
+
* whenever a matching transition event fires — no manual `requestUpdate()`
|
|
81
|
+
* plumbing, no leaked hooks. All registered hooks are deregistered in
|
|
82
|
+
* `hostDisconnected()`, so the controller is garbage-collection safe for
|
|
83
|
+
* elements that come and go from the DOM (including `sticky` routed
|
|
84
|
+
* components).
|
|
85
|
+
*
|
|
86
|
+
* On (re)connect the controller also synchronizes once with the router's
|
|
87
|
+
* current state, so hosts render fresh data even when they connect after
|
|
88
|
+
* a transition has already completed.
|
|
89
|
+
*
|
|
90
|
+
* @example Re-render on every successful transition
|
|
91
|
+
* ```ts
|
|
92
|
+
* class NavHeader extends LitElement {
|
|
93
|
+
* private transitions = new TransitionController(this);
|
|
94
|
+
*
|
|
95
|
+
* render() {
|
|
96
|
+
* // Re-evaluated after every successful transition
|
|
97
|
+
* return html`Current state: ${this.transitions.current?.name}`;
|
|
98
|
+
* }
|
|
99
|
+
* }
|
|
100
|
+
* ```
|
|
101
|
+
*
|
|
102
|
+
* @example React to parameter changes on a specific state
|
|
103
|
+
* ```ts
|
|
104
|
+
* class UserDetail extends LitElement {
|
|
105
|
+
* private transitions = new TransitionController(this, {
|
|
106
|
+
* criteria: { to: 'users.detail' },
|
|
107
|
+
* callback: () => this.loadUser(this.transitions.params.userId),
|
|
108
|
+
* });
|
|
109
|
+
* }
|
|
110
|
+
* ```
|
|
111
|
+
*
|
|
112
|
+
* @example With an explicit router instance
|
|
113
|
+
* ```ts
|
|
114
|
+
* const controller = new TransitionController(host, { router });
|
|
115
|
+
* ```
|
|
116
|
+
*
|
|
117
|
+
* @category controllers
|
|
118
|
+
*/
|
|
119
|
+
export declare class TransitionController implements ReactiveController {
|
|
120
|
+
private host;
|
|
121
|
+
private options;
|
|
122
|
+
private deregisterFns;
|
|
123
|
+
private _router?;
|
|
124
|
+
private _transition?;
|
|
125
|
+
constructor(host: ReactiveControllerHost & Element, options?: TransitionControllerOptions);
|
|
126
|
+
/**
|
|
127
|
+
* The observed [[UIRouter]] instance.
|
|
128
|
+
*
|
|
129
|
+
* `undefined` until provided via [[TransitionControllerOptions.router]] or
|
|
130
|
+
* discovered from an ancestor <code><ui-router></code> on connect.
|
|
131
|
+
*/
|
|
132
|
+
get router(): UIRouter | undefined;
|
|
133
|
+
/** The router's [[UIRouterGlobals]], if a router has been discovered. */
|
|
134
|
+
get globals(): UIRouterGlobals | undefined;
|
|
135
|
+
/** The current parameter values (`globals.params`). */
|
|
136
|
+
get params(): RawParams;
|
|
137
|
+
/** The current [[StateDeclaration]] (`globals.current`). */
|
|
138
|
+
get current(): StateDeclaration | undefined;
|
|
139
|
+
/**
|
|
140
|
+
* The most recent [[Transition]] observed by this controller
|
|
141
|
+
* (set by observed events and on host connect).
|
|
142
|
+
*/
|
|
143
|
+
get transition(): Transition | undefined;
|
|
144
|
+
/**
|
|
145
|
+
* Delegates to [[StateService.includes]]: is the state (or glob pattern,
|
|
146
|
+
* e.g. `'admin.**'`) included in the current active state?
|
|
147
|
+
*
|
|
148
|
+
* Returns `false` when no router has been discovered.
|
|
149
|
+
*/
|
|
150
|
+
includes(stateOrName: StateOrName, params?: RawParams): boolean;
|
|
151
|
+
/** @internal */
|
|
152
|
+
hostConnected(): void;
|
|
153
|
+
/** @internal */
|
|
154
|
+
hostDisconnected(): void;
|
|
155
|
+
private notify;
|
|
156
|
+
}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import { UIRouterLitElement } from './ui-router.js';
|
|
2
|
+
/**
|
|
3
|
+
* A zero-dependency Lit
|
|
4
|
+
* {@link https://lit.dev/docs/composition/controllers/ | ReactiveController}
|
|
5
|
+
* that keeps its host element synchronized with UI-Router transitions.
|
|
6
|
+
*
|
|
7
|
+
* The controller registers [[TransitionService]] hooks (by default
|
|
8
|
+
* `onSuccess`) when the host connects and calls `host.requestUpdate()`
|
|
9
|
+
* whenever a matching transition event fires — no manual `requestUpdate()`
|
|
10
|
+
* plumbing, no leaked hooks. All registered hooks are deregistered in
|
|
11
|
+
* `hostDisconnected()`, so the controller is garbage-collection safe for
|
|
12
|
+
* elements that come and go from the DOM (including `sticky` routed
|
|
13
|
+
* components).
|
|
14
|
+
*
|
|
15
|
+
* On (re)connect the controller also synchronizes once with the router's
|
|
16
|
+
* current state, so hosts render fresh data even when they connect after
|
|
17
|
+
* a transition has already completed.
|
|
18
|
+
*
|
|
19
|
+
* @example Re-render on every successful transition
|
|
20
|
+
* ```ts
|
|
21
|
+
* class NavHeader extends LitElement {
|
|
22
|
+
* private transitions = new TransitionController(this);
|
|
23
|
+
*
|
|
24
|
+
* render() {
|
|
25
|
+
* // Re-evaluated after every successful transition
|
|
26
|
+
* return html`Current state: ${this.transitions.current?.name}`;
|
|
27
|
+
* }
|
|
28
|
+
* }
|
|
29
|
+
* ```
|
|
30
|
+
*
|
|
31
|
+
* @example React to parameter changes on a specific state
|
|
32
|
+
* ```ts
|
|
33
|
+
* class UserDetail extends LitElement {
|
|
34
|
+
* private transitions = new TransitionController(this, {
|
|
35
|
+
* criteria: { to: 'users.detail' },
|
|
36
|
+
* callback: () => this.loadUser(this.transitions.params.userId),
|
|
37
|
+
* });
|
|
38
|
+
* }
|
|
39
|
+
* ```
|
|
40
|
+
*
|
|
41
|
+
* @example With an explicit router instance
|
|
42
|
+
* ```ts
|
|
43
|
+
* const controller = new TransitionController(host, { router });
|
|
44
|
+
* ```
|
|
45
|
+
*
|
|
46
|
+
* @category controllers
|
|
47
|
+
*/
|
|
48
|
+
export class TransitionController {
|
|
49
|
+
constructor(host, options = {}) {
|
|
50
|
+
this.deregisterFns = [];
|
|
51
|
+
this.host = host;
|
|
52
|
+
this.options = options;
|
|
53
|
+
this._router = options.router;
|
|
54
|
+
host.addController(this);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* The observed [[UIRouter]] instance.
|
|
58
|
+
*
|
|
59
|
+
* `undefined` until provided via [[TransitionControllerOptions.router]] or
|
|
60
|
+
* discovered from an ancestor <code><ui-router></code> on connect.
|
|
61
|
+
*/
|
|
62
|
+
get router() {
|
|
63
|
+
return this._router;
|
|
64
|
+
}
|
|
65
|
+
/** The router's [[UIRouterGlobals]], if a router has been discovered. */
|
|
66
|
+
get globals() {
|
|
67
|
+
return this._router?.globals;
|
|
68
|
+
}
|
|
69
|
+
/** The current parameter values (`globals.params`). */
|
|
70
|
+
get params() {
|
|
71
|
+
return this.globals?.params ?? {};
|
|
72
|
+
}
|
|
73
|
+
/** The current [[StateDeclaration]] (`globals.current`). */
|
|
74
|
+
get current() {
|
|
75
|
+
return this.globals?.current;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* The most recent [[Transition]] observed by this controller
|
|
79
|
+
* (set by observed events and on host connect).
|
|
80
|
+
*/
|
|
81
|
+
get transition() {
|
|
82
|
+
return this._transition;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Delegates to [[StateService.includes]]: is the state (or glob pattern,
|
|
86
|
+
* e.g. `'admin.**'`) included in the current active state?
|
|
87
|
+
*
|
|
88
|
+
* Returns `false` when no router has been discovered.
|
|
89
|
+
*/
|
|
90
|
+
includes(stateOrName, params) {
|
|
91
|
+
return this._router?.stateService.includes(stateOrName, params) ?? false;
|
|
92
|
+
}
|
|
93
|
+
/** @internal */
|
|
94
|
+
hostConnected() {
|
|
95
|
+
this._router ??=
|
|
96
|
+
this.options.router ?? UIRouterLitElement.seekRouter(this.host);
|
|
97
|
+
const router = this._router;
|
|
98
|
+
if (!router) {
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
const criteria = this.options.criteria ?? {};
|
|
102
|
+
const events = this.options.events ?? ['onSuccess'];
|
|
103
|
+
for (const event of events) {
|
|
104
|
+
this.deregisterFns.push(router.transitionService[event](criteria, (transition) => this.notify(transition, event)));
|
|
105
|
+
}
|
|
106
|
+
// Synchronize with the router's current state: the host may have
|
|
107
|
+
// (re)connected after the transition that put it on screen succeeded.
|
|
108
|
+
this.notify(router.globals.successfulTransitions.peekTail(), 'hostConnected');
|
|
109
|
+
}
|
|
110
|
+
/** @internal */
|
|
111
|
+
hostDisconnected() {
|
|
112
|
+
while (this.deregisterFns.length) {
|
|
113
|
+
this.deregisterFns.shift()?.();
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
notify(transition, reason) {
|
|
117
|
+
this._transition = transition ?? this._transition;
|
|
118
|
+
const result = this.options.callback?.(transition, reason);
|
|
119
|
+
this.host.requestUpdate();
|
|
120
|
+
return result;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
//# sourceMappingURL=transition-controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transition-controller.js","sourceRoot":"","sources":["../src/transition-controller.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAyFpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,MAAM,OAAO,oBAAoB;IAW/B,YACE,IAAsC,EACtC,UAAuC,EAAE;QARnC,kBAAa,GAAmB,EAAE,CAAC;QAUzC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED;;;;;OAKG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,yEAAyE;IACzE,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC;IAC/B,CAAC;IAED,uDAAuD;IACvD,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,CAAC;IACpC,CAAC;IAED,4DAA4D;IAC5D,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED;;;;;OAKG;IACH,QAAQ,CAAC,WAAwB,EAAE,MAAkB;QACnD,OAAO,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,KAAK,CAAC;IAC3E,CAAC;IAED,gBAAgB;IAChB,aAAa;QACX,IAAI,CAAC,OAAO;YACV,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,kBAAkB,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAElE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,CAAC;QAEpD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC,aAAa,CAAC,IAAI,CACrB,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAC7B,QAAQ,EACR,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAe,CAC7C,CAClB,CAAC;QACJ,CAAC;QAED,iEAAiE;QACjE,sEAAsE;QACtE,IAAI,CAAC,MAAM,CACT,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,EAC/C,eAAe,CAChB,CAAC;IACJ,CAAC;IAED,gBAAgB;IAChB,gBAAgB;QACd,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;YACjC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC;QACjC,CAAC;IACH,CAAC;IAEO,MAAM,CACZ,UAAkC,EAClC,MAAgC;QAEhC,IAAI,CAAC,WAAW,GAAG,UAAU,IAAI,IAAI,CAAC,WAAW,CAAC;QAClD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAC3D,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QAC1B,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
|
package/dist/ui-router.d.ts
CHANGED
|
@@ -12,7 +12,7 @@ export type UiRouterContextEvent = CustomEvent<UiRouterContextEventDetail>;
|
|
|
12
12
|
*
|
|
13
13
|
* @slot - <code><ui-router></code> renders slotted content.
|
|
14
14
|
*
|
|
15
|
-
* @
|
|
15
|
+
* @fires {CustomEvent} ui-router-context
|
|
16
16
|
*
|
|
17
17
|
* <code><ui-router></code> listens to the
|
|
18
18
|
* <code>ui-router-context</code> event
|
|
@@ -33,7 +33,21 @@ export declare class UIRouterLitElement extends LitElement {
|
|
|
33
33
|
static uiRouterContextEventName: string;
|
|
34
34
|
/** @internal */
|
|
35
35
|
static uiRouterContextEvent(uiRouter?: UIRouterLit): UiRouterContextEvent;
|
|
36
|
-
/**
|
|
36
|
+
/**
|
|
37
|
+
* Discovers the {@link UIRouterLit} instance provided by the nearest
|
|
38
|
+
* enclosing <code><ui-router></code> element.
|
|
39
|
+
*
|
|
40
|
+
* Dispatches a bubbling, composed <code>ui-router-context</code> event from
|
|
41
|
+
* the candidate element; the enclosing <code><ui-router></code>
|
|
42
|
+
* answers it with its router instance. Returns <code>undefined</code> when
|
|
43
|
+
* the candidate is not inside a <code><ui-router></code> (e.g. not
|
|
44
|
+
* yet connected).
|
|
45
|
+
*
|
|
46
|
+
* This is the dependency-injection primitive for integrating external
|
|
47
|
+
* reactivity systems (state stores, controllers) with the router context —
|
|
48
|
+
* call it from <code>hostConnected()</code> / <code>connectedCallback()</code>
|
|
49
|
+
* instead of prop-drilling the router instance.
|
|
50
|
+
*/
|
|
37
51
|
static seekRouter(candidate: Element): UIRouterLit | undefined;
|
|
38
52
|
/** @internal */
|
|
39
53
|
static onUiRouterContextEvent(uiRouter?: UIRouterLit): (event: UiRouterContextEvent) => void;
|
package/dist/ui-router.js
CHANGED
|
@@ -12,7 +12,7 @@ import { UIRouterLit } from './core.js';
|
|
|
12
12
|
*
|
|
13
13
|
* @slot - <code><ui-router></code> renders slotted content.
|
|
14
14
|
*
|
|
15
|
-
* @
|
|
15
|
+
* @fires {CustomEvent} ui-router-context
|
|
16
16
|
*
|
|
17
17
|
* <code><ui-router></code> listens to the
|
|
18
18
|
* <code>ui-router-context</code> event
|
|
@@ -42,7 +42,21 @@ let UIRouterLitElement = class UIRouterLitElement extends LitElement {
|
|
|
42
42
|
},
|
|
43
43
|
});
|
|
44
44
|
}
|
|
45
|
-
/**
|
|
45
|
+
/**
|
|
46
|
+
* Discovers the {@link UIRouterLit} instance provided by the nearest
|
|
47
|
+
* enclosing <code><ui-router></code> element.
|
|
48
|
+
*
|
|
49
|
+
* Dispatches a bubbling, composed <code>ui-router-context</code> event from
|
|
50
|
+
* the candidate element; the enclosing <code><ui-router></code>
|
|
51
|
+
* answers it with its router instance. Returns <code>undefined</code> when
|
|
52
|
+
* the candidate is not inside a <code><ui-router></code> (e.g. not
|
|
53
|
+
* yet connected).
|
|
54
|
+
*
|
|
55
|
+
* This is the dependency-injection primitive for integrating external
|
|
56
|
+
* reactivity systems (state stores, controllers) with the router context —
|
|
57
|
+
* call it from <code>hostConnected()</code> / <code>connectedCallback()</code>
|
|
58
|
+
* instead of prop-drilling the router instance.
|
|
59
|
+
*/
|
|
46
60
|
static seekRouter(candidate) {
|
|
47
61
|
const uiRouterContextEvent = this.uiRouterContextEvent();
|
|
48
62
|
candidate.dispatchEvent(uiRouterContextEvent);
|
package/dist/ui-router.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui-router.js","sourceRoot":"","sources":["../src/ui-router.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAWxC;;;;;;;;;;;;;;;GAeG;AAEI,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,UAAU;IAA3C;;
|
|
1
|
+
{"version":3,"file":"ui-router.js","sourceRoot":"","sources":["../src/ui-router.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAWxC;;;;;;;;;;;;;;;GAeG;AAEI,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,UAAU;IAA3C;;QAmDG,2BAAsB,GAAG,CAAC,KAA2B,EAAE,EAAE;YAC/D,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC;QAChE,CAAC,CAAC;IAmBJ,CAAC;IAhEC,gBAAgB;aACT,6BAAwB,GAAG,mBAAmB,AAAtB,CAAuB;IAEtD,gBAAgB;IAChB,MAAM,CAAC,oBAAoB,CAAC,QAAsB;QAChD,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,wBAAwB,EAAE;YACpD,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE;gBACN,QAAQ;aACT;SACF,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,UAAU,CAAC,SAAkB;QAClC,MAAM,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACzD,SAAS,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;QAC9C,OAAO,oBAAoB,CAAC,MAAM,CAAC,QAAQ,CAAC;IAC9C,CAAC;IAED,gBAAgB;IAChB,MAAM,CAAC,sBAAsB,CAAC,QAAsB;QAClD,OAAO,CAAC,KAA2B,EAAE,EAAE;YACrC,KAAK,CAAC,eAAe,EAAE,CAAC;YACxB,KAAK,CAAC,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACnC,CAAC,CAAC;IACJ,CAAC;IAMD,gBAAgB;IAChB,KAAK,CAAC,iBAAiB;QACrB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,WAAW,EAAE,CAAC;QAEnD,IAAI,CAAC,gBAAgB,CACnB,IAAI,CAAC,WAAW,CAAC,wBAAwB,EACzC,IAAI,CAAC,sBAAuC,CAC7C,CAAC;QAEF,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,gBAAgB;IAChB,MAAM;QACJ,OAAO,IAAI,CAAA,eAAe,CAAC;IAC7B,CAAC;;AAjED;IADC,QAAQ,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;oDACG;AANvB,kBAAkB;IAD9B,aAAa,CAAC,WAAW,CAAC;GACd,kBAAkB,CAwE9B"}
|
package/dist/ui-sref.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui-sref.js","sourceRoot":"","sources":["../src/ui-sref.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EAGN,QAAQ,GAET,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAe,MAAM,KAAK,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAY,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"ui-sref.js","sourceRoot":"","sources":["../src/ui-sref.ts"],"names":[],"mappings":"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"}
|
package/dist/ui-view.d.ts
CHANGED
|
@@ -8,14 +8,14 @@ export interface UiViewAddress {
|
|
|
8
8
|
}
|
|
9
9
|
/**
|
|
10
10
|
* @hideconstructor
|
|
11
|
-
* @
|
|
11
|
+
* @fires {CustomEvent} ui-router-context
|
|
12
12
|
*
|
|
13
13
|
* This event is fired to obtain the <code>uiRouter</code> instance,
|
|
14
14
|
* when not directly provided.
|
|
15
15
|
* Once obtained, the <code><ui-view></code> listens and
|
|
16
16
|
* provides the <code>uiRouter</code> to descendants.
|
|
17
17
|
*
|
|
18
|
-
* @
|
|
18
|
+
* @fires {CustomEvent} ui-view-context
|
|
19
19
|
*
|
|
20
20
|
* This event is fired to obtain the parent <code><ui-view></code>.
|
|
21
21
|
*
|
package/dist/ui-view.js
CHANGED
|
@@ -13,14 +13,14 @@ import { UIRouterLitElement } from './ui-router.js';
|
|
|
13
13
|
let viewIdCounter = 0;
|
|
14
14
|
/**
|
|
15
15
|
* @hideconstructor
|
|
16
|
-
* @
|
|
16
|
+
* @fires {CustomEvent} ui-router-context
|
|
17
17
|
*
|
|
18
18
|
* This event is fired to obtain the <code>uiRouter</code> instance,
|
|
19
19
|
* when not directly provided.
|
|
20
20
|
* Once obtained, the <code><ui-view></code> listens and
|
|
21
21
|
* provides the <code>uiRouter</code> to descendants.
|
|
22
22
|
*
|
|
23
|
-
* @
|
|
23
|
+
* @fires {CustomEvent} ui-view-context
|
|
24
24
|
*
|
|
25
25
|
* This event is fired to obtain the parent <code><ui-view></code>.
|
|
26
26
|
*
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lit-ui-router",
|
|
3
3
|
"description": "State-based routing for Lit",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.3.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"module": "./dist/index.js",
|
|
7
7
|
"homepage": "https://lit-ui-router.dev",
|
|
@@ -31,24 +31,24 @@
|
|
|
31
31
|
"test": "vitest run",
|
|
32
32
|
"test:coverage": "vitest run --coverage --browser=chromium"
|
|
33
33
|
},
|
|
34
|
-
"customElements": "
|
|
34
|
+
"customElements": "dist/custom-elements.json",
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@uirouter/core": "
|
|
37
|
-
"lit": "
|
|
36
|
+
"@uirouter/core": "catalog:",
|
|
37
|
+
"lit": "catalog:"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
|
-
"@custom-elements-manifest/analyzer": "0.10.
|
|
41
|
-
"@vitest/browser-playwright": "
|
|
42
|
-
"@vitest/coverage-v8": "
|
|
43
|
-
"playwright": "
|
|
44
|
-
"prettier": "
|
|
45
|
-
"release-it": "
|
|
46
|
-
"rimraf": "
|
|
47
|
-
"typedoc": "
|
|
40
|
+
"@custom-elements-manifest/analyzer": "^0.10.10",
|
|
41
|
+
"@vitest/browser-playwright": "catalog:",
|
|
42
|
+
"@vitest/coverage-v8": "catalog:",
|
|
43
|
+
"playwright": "catalog:",
|
|
44
|
+
"prettier": "catalog:",
|
|
45
|
+
"release-it": "catalog:",
|
|
46
|
+
"rimraf": "catalog:",
|
|
47
|
+
"typedoc": "catalog:",
|
|
48
48
|
"typedoc-plugin-lit-ui-router": "workspace:*",
|
|
49
|
-
"typedoc-plugin-markdown": "
|
|
50
|
-
"typedoc-vitepress-theme": "
|
|
51
|
-
"typescript": "
|
|
52
|
-
"vitest": "
|
|
49
|
+
"typedoc-plugin-markdown": "catalog:",
|
|
50
|
+
"typedoc-vitepress-theme": "catalog:",
|
|
51
|
+
"typescript": "catalog:",
|
|
52
|
+
"vitest": "catalog:"
|
|
53
53
|
}
|
|
54
54
|
}
|