@microsoft/fast-router 0.4.5 → 1.0.0-alpha.10
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/.eslintrc.json +0 -4
- package/CHANGELOG.json +224 -11
- package/CHANGELOG.md +88 -5
- package/README.md +3 -32
- package/dist/dts/commands.d.ts +5 -5
- package/dist/dts/configuration.d.ts +1 -1
- package/dist/dts/contributors.d.ts +23 -6
- package/dist/dts/events.d.ts +2 -2
- package/dist/dts/fast-router.d.ts +1 -1
- package/dist/dts/links.d.ts +2 -2
- package/dist/dts/navigation.d.ts +7 -7
- package/dist/dts/phases.d.ts +6 -6
- package/dist/dts/process.d.ts +2 -2
- package/dist/dts/query-string.d.ts +2 -2
- package/dist/dts/recognizer.d.ts +6 -6
- package/dist/dts/router.d.ts +6 -6
- package/dist/dts/routes.d.ts +26 -26
- package/dist/dts/titles.d.ts +2 -2
- package/dist/{tsdoc-metadata.json → dts/tsdoc-metadata.json} +1 -1
- package/dist/dts/view.d.ts +11 -16
- package/dist/esm/commands.js +10 -8
- package/dist/esm/configuration.js +1 -1
- package/dist/esm/contributors.js +25 -21
- package/dist/esm/events.js +1 -1
- package/dist/esm/fast-router.js +1 -1
- package/dist/esm/links.js +1 -1
- package/dist/esm/navigation.js +4 -4
- package/dist/esm/process.js +1 -1
- package/dist/esm/query-string.js +1 -1
- package/dist/esm/recognizer.js +16 -16
- package/dist/esm/router.js +6 -21
- package/dist/esm/routes.js +1 -1
- package/dist/esm/titles.js +1 -1
- package/dist/esm/view.js +9 -27
- package/dist/fast-router.api.json +9674 -2
- package/dist/fast-router.d.ts +105 -93
- package/dist/fast-router.untrimmed.d.ts +819 -0
- package/docs/api-report.md +95 -94
- package/karma.conf.cjs +6 -17
- package/package.json +12 -16
- package/dist/dts/index-rollup.d.ts +0 -2
- package/dist/esm/index-rollup.js +0 -2
- package/dist/fast-router.js +0 -6793
- package/dist/fast-router.min.js +0 -1
package/.eslintrc.json
CHANGED
package/CHANGELOG.json
CHANGED
|
@@ -2,24 +2,237 @@
|
|
|
2
2
|
"name": "@microsoft/fast-router",
|
|
3
3
|
"entries": [
|
|
4
4
|
{
|
|
5
|
-
"date": "
|
|
6
|
-
"tag": "@microsoft/fast-
|
|
7
|
-
"version": "0.
|
|
5
|
+
"date": "Mon, 03 Oct 2022 23:44:38 GMT",
|
|
6
|
+
"tag": "@microsoft/fast-router_v1.0.0-alpha.10",
|
|
7
|
+
"version": "1.0.0-alpha.10",
|
|
8
8
|
"comments": {
|
|
9
|
-
"
|
|
9
|
+
"prerelease": [
|
|
10
10
|
{
|
|
11
|
-
"author": "
|
|
11
|
+
"author": "beachball",
|
|
12
12
|
"package": "@microsoft/fast-router",
|
|
13
|
-
"
|
|
14
|
-
"
|
|
13
|
+
"comment": "Bump @microsoft/fast-element to v2.0.0-beta.10",
|
|
14
|
+
"commit": "e23f4375f183f0672f9aeafd0e58411adb66ae90"
|
|
15
15
|
}
|
|
16
|
-
]
|
|
17
|
-
|
|
16
|
+
]
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"date": "Wed, 28 Sep 2022 20:45:51 GMT",
|
|
21
|
+
"tag": "@microsoft/fast-router_v1.0.0-alpha.9",
|
|
22
|
+
"version": "1.0.0-alpha.9",
|
|
23
|
+
"comments": {
|
|
24
|
+
"prerelease": [
|
|
25
|
+
{
|
|
26
|
+
"author": "beachball",
|
|
27
|
+
"package": "@microsoft/fast-router",
|
|
28
|
+
"comment": "Bump @microsoft/fast-element to v2.0.0-beta.9",
|
|
29
|
+
"commit": "08fab33015853b7f820fdfdac2aecddfeb31843f"
|
|
30
|
+
}
|
|
31
|
+
]
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"date": "Tue, 27 Sep 2022 22:31:52 GMT",
|
|
36
|
+
"tag": "@microsoft/fast-router_v1.0.0-alpha.8",
|
|
37
|
+
"version": "1.0.0-alpha.8",
|
|
38
|
+
"comments": {
|
|
39
|
+
"prerelease": [
|
|
40
|
+
{
|
|
41
|
+
"author": "beachball",
|
|
42
|
+
"package": "@microsoft/fast-router",
|
|
43
|
+
"comment": "Bump @microsoft/fast-element to v2.0.0-beta.8",
|
|
44
|
+
"commit": "8834c6732c727d39f92f72b197388453a9c17f9b"
|
|
45
|
+
}
|
|
46
|
+
]
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"date": "Fri, 23 Sep 2022 22:53:27 GMT",
|
|
51
|
+
"tag": "@microsoft/fast-router_v1.0.0-alpha.7",
|
|
52
|
+
"version": "1.0.0-alpha.7",
|
|
53
|
+
"comments": {
|
|
54
|
+
"prerelease": [
|
|
55
|
+
{
|
|
56
|
+
"author": "roeisenb@microsoft.com",
|
|
57
|
+
"package": "@microsoft/fast-router",
|
|
58
|
+
"commit": "2edd63a8abe24c68cfc7c76d773c912c6f2d6543",
|
|
59
|
+
"comment": "fix: update router to use the new behavior API"
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"author": "beachball",
|
|
63
|
+
"package": "@microsoft/fast-router",
|
|
64
|
+
"comment": "Bump @microsoft/fast-element to v2.0.0-beta.7",
|
|
65
|
+
"commit": "1646b26450a08a77c8bd6302560fe12cc6989ae1"
|
|
66
|
+
}
|
|
67
|
+
]
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
"date": "Thu, 01 Sep 2022 21:53:34 GMT",
|
|
72
|
+
"tag": "@microsoft/fast-router_v1.0.0-alpha.6",
|
|
73
|
+
"version": "1.0.0-alpha.6",
|
|
74
|
+
"comments": {
|
|
75
|
+
"prerelease": [
|
|
18
76
|
{
|
|
19
77
|
"author": "beachball",
|
|
20
78
|
"package": "@microsoft/fast-router",
|
|
21
|
-
"comment": "Bump @microsoft/fast-element to
|
|
22
|
-
"commit": "
|
|
79
|
+
"comment": "Bump @microsoft/fast-element to v2.0.0-beta.6",
|
|
80
|
+
"commit": "6b0f08574475d8b28cc2df67bf72b9041c2ad285"
|
|
81
|
+
}
|
|
82
|
+
]
|
|
83
|
+
}
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"date": "Thu, 18 Aug 2022 20:46:10 GMT",
|
|
87
|
+
"tag": "@microsoft/fast-router_v1.0.0-alpha.5",
|
|
88
|
+
"version": "1.0.0-alpha.5",
|
|
89
|
+
"comments": {
|
|
90
|
+
"prerelease": [
|
|
91
|
+
{
|
|
92
|
+
"author": "beachball",
|
|
93
|
+
"package": "@microsoft/fast-router",
|
|
94
|
+
"comment": "Bump @microsoft/fast-element to v2.0.0-beta.5",
|
|
95
|
+
"commit": "0b57f1bc812e8e6371b7d27bb625f99a25bfaa66"
|
|
96
|
+
}
|
|
97
|
+
]
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"date": "Mon, 18 Jul 2022 21:10:01 GMT",
|
|
102
|
+
"tag": "@microsoft/fast-router_v1.0.0-alpha.4",
|
|
103
|
+
"version": "1.0.0-alpha.4",
|
|
104
|
+
"comments": {
|
|
105
|
+
"prerelease": [
|
|
106
|
+
{
|
|
107
|
+
"author": "roeisenb@microsoft.com",
|
|
108
|
+
"package": "@microsoft/fast-router",
|
|
109
|
+
"commit": "f164aa75e62ed71c9386902051c021f1fdfba364",
|
|
110
|
+
"comment": "refactor: reduce duplication in style normalization code scenarios"
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
"author": "beachball",
|
|
114
|
+
"package": "@microsoft/fast-router",
|
|
115
|
+
"comment": "Bump @microsoft/fast-element to v2.0.0-beta.4",
|
|
116
|
+
"commit": "2ff46a32cdd9af12b236d0e2f3436a4de782e8ee"
|
|
117
|
+
}
|
|
118
|
+
]
|
|
119
|
+
}
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"date": "Wed, 22 Jun 2022 20:17:50 GMT",
|
|
123
|
+
"tag": "@microsoft/fast-router_v1.0.0-alpha.3",
|
|
124
|
+
"version": "1.0.0-alpha.3",
|
|
125
|
+
"comments": {
|
|
126
|
+
"prerelease": [
|
|
127
|
+
{
|
|
128
|
+
"comment": "Bump @microsoft/fast-element to v2.0.0-beta.3",
|
|
129
|
+
"author": "nicholasrice@users.noreply.github.com",
|
|
130
|
+
"commit": "f28cdb9fdba9cb27904acfad7444de82d447f39e",
|
|
131
|
+
"package": "@microsoft/fast-router"
|
|
132
|
+
}
|
|
133
|
+
]
|
|
134
|
+
}
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
"date": "Wed, 15 Jun 2022 17:41:10 GMT",
|
|
138
|
+
"tag": "@microsoft/fast-router_v1.0.0-alpha.2",
|
|
139
|
+
"version": "1.0.0-alpha.2",
|
|
140
|
+
"comments": {
|
|
141
|
+
"prerelease": [
|
|
142
|
+
{
|
|
143
|
+
"comment": "chore: fix package.json type fields",
|
|
144
|
+
"author": "roeisenb@microsoft.com",
|
|
145
|
+
"commit": "e86a638b9e84cbf36d950025889742944e68e512",
|
|
146
|
+
"package": "@microsoft/fast-router"
|
|
147
|
+
}
|
|
148
|
+
]
|
|
149
|
+
}
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
"date": "Wed, 01 Jun 2022 17:53:14 GMT",
|
|
153
|
+
"tag": "@microsoft/fast-router_v1.0.0-alpha.1",
|
|
154
|
+
"version": "1.0.0-alpha.1",
|
|
155
|
+
"comments": {
|
|
156
|
+
"prerelease": [
|
|
157
|
+
{
|
|
158
|
+
"comment": "fix: update router to work with new template primitives",
|
|
159
|
+
"author": "roeisenb@microsoft.com",
|
|
160
|
+
"commit": "4699e77715068f8610aae908ede6356a249574b6",
|
|
161
|
+
"package": "@microsoft/fast-router"
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
"comment": "fix: update router to new directive APIs.",
|
|
165
|
+
"author": "roeisenb@microsoft.com",
|
|
166
|
+
"commit": "4699e77715068f8610aae908ede6356a249574b6",
|
|
167
|
+
"package": "@microsoft/fast-router"
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
"comment": "chore: remove rollup of router",
|
|
171
|
+
"author": "roeisenb@microsoft.com",
|
|
172
|
+
"commit": "4699e77715068f8610aae908ede6356a249574b6",
|
|
173
|
+
"package": "@microsoft/fast-router"
|
|
174
|
+
},
|
|
175
|
+
{
|
|
176
|
+
"comment": "Upgrade TypeScript",
|
|
177
|
+
"author": "nicholasrice@users.noreply.github.com",
|
|
178
|
+
"commit": "4699e77715068f8610aae908ede6356a249574b6",
|
|
179
|
+
"package": "@microsoft/fast-router"
|
|
180
|
+
},
|
|
181
|
+
{
|
|
182
|
+
"comment": "Set prerelease version",
|
|
183
|
+
"author": "nicholasrice@users.noreply.github.com",
|
|
184
|
+
"commit": "5b313a3262b977acbee3c2efac87d0d14a82f792",
|
|
185
|
+
"package": "@microsoft/fast-router"
|
|
186
|
+
},
|
|
187
|
+
{
|
|
188
|
+
"comment": "chore: configure fast-router for internals stripping",
|
|
189
|
+
"author": "roeisenb@microsoft.com",
|
|
190
|
+
"commit": "4699e77715068f8610aae908ede6356a249574b6",
|
|
191
|
+
"package": "@microsoft/fast-router"
|
|
192
|
+
},
|
|
193
|
+
{
|
|
194
|
+
"comment": "refactor: new design for execution context",
|
|
195
|
+
"author": "roeisenb@microsoft.com",
|
|
196
|
+
"commit": "4699e77715068f8610aae908ede6356a249574b6",
|
|
197
|
+
"package": "@microsoft/fast-router"
|
|
198
|
+
},
|
|
199
|
+
{
|
|
200
|
+
"comment": "Update the fast-router with the updates to fast-element 2.0 APIs",
|
|
201
|
+
"author": "7559015+janechu@users.noreply.github.com",
|
|
202
|
+
"commit": "4699e77715068f8610aae908ede6356a249574b6",
|
|
203
|
+
"package": "@microsoft/fast-router"
|
|
204
|
+
},
|
|
205
|
+
{
|
|
206
|
+
"comment": "fix: update to latest fast-element utilities",
|
|
207
|
+
"author": "roeisenb@microsoft.com",
|
|
208
|
+
"commit": "4699e77715068f8610aae908ede6356a249574b6",
|
|
209
|
+
"package": "@microsoft/fast-router"
|
|
210
|
+
},
|
|
211
|
+
{
|
|
212
|
+
"comment": "Fixed an updated export from FAST element 2.0",
|
|
213
|
+
"author": "7559015+janechu@users.noreply.github.com",
|
|
214
|
+
"commit": "4699e77715068f8610aae908ede6356a249574b6",
|
|
215
|
+
"package": "@microsoft/fast-router"
|
|
216
|
+
}
|
|
217
|
+
],
|
|
218
|
+
"none": [
|
|
219
|
+
{
|
|
220
|
+
"comment": "update api extractor and typescript to use the latest versions",
|
|
221
|
+
"author": "chhol@microsoft.com",
|
|
222
|
+
"commit": "4699e77715068f8610aae908ede6356a249574b6",
|
|
223
|
+
"package": "@microsoft/fast-router"
|
|
224
|
+
},
|
|
225
|
+
{
|
|
226
|
+
"comment": "docs: update a few readme files",
|
|
227
|
+
"author": "roeisenb@microsoft.com",
|
|
228
|
+
"commit": "4699e77715068f8610aae908ede6356a249574b6",
|
|
229
|
+
"package": "@microsoft/fast-router"
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
"comment": "Bump @microsoft/fast-element to v2.0.0-beta.1",
|
|
233
|
+
"author": "roeisenb@microsoft.com",
|
|
234
|
+
"commit": "4699e77715068f8610aae908ede6356a249574b6",
|
|
235
|
+
"package": "@microsoft/fast-router"
|
|
23
236
|
}
|
|
24
237
|
]
|
|
25
238
|
}
|
package/CHANGELOG.md
CHANGED
|
@@ -1,16 +1,99 @@
|
|
|
1
1
|
# Change Log - @microsoft/fast-router
|
|
2
2
|
|
|
3
|
-
This log was last generated on
|
|
3
|
+
This log was last generated on Mon, 03 Oct 2022 23:44:38 GMT and should not be manually modified.
|
|
4
4
|
|
|
5
5
|
<!-- Start content -->
|
|
6
6
|
|
|
7
|
-
## 0.
|
|
7
|
+
## 1.0.0-alpha.10
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
Mon, 03 Oct 2022 23:44:38 GMT
|
|
10
10
|
|
|
11
|
-
###
|
|
11
|
+
### Changes
|
|
12
|
+
|
|
13
|
+
- Bump @microsoft/fast-element to v2.0.0-beta.10
|
|
14
|
+
|
|
15
|
+
## 1.0.0-alpha.9
|
|
16
|
+
|
|
17
|
+
Wed, 28 Sep 2022 20:45:51 GMT
|
|
18
|
+
|
|
19
|
+
### Changes
|
|
20
|
+
|
|
21
|
+
- Bump @microsoft/fast-element to v2.0.0-beta.9
|
|
22
|
+
|
|
23
|
+
## 1.0.0-alpha.8
|
|
24
|
+
|
|
25
|
+
Tue, 27 Sep 2022 22:31:52 GMT
|
|
26
|
+
|
|
27
|
+
### Changes
|
|
28
|
+
|
|
29
|
+
- Bump @microsoft/fast-element to v2.0.0-beta.8
|
|
30
|
+
|
|
31
|
+
## 1.0.0-alpha.7
|
|
32
|
+
|
|
33
|
+
Fri, 23 Sep 2022 22:53:27 GMT
|
|
34
|
+
|
|
35
|
+
### Changes
|
|
36
|
+
|
|
37
|
+
- fix: update router to use the new behavior API (roeisenb@microsoft.com)
|
|
38
|
+
- Bump @microsoft/fast-element to v2.0.0-beta.7
|
|
39
|
+
|
|
40
|
+
## 1.0.0-alpha.6
|
|
41
|
+
|
|
42
|
+
Thu, 01 Sep 2022 21:53:34 GMT
|
|
43
|
+
|
|
44
|
+
### Changes
|
|
45
|
+
|
|
46
|
+
- Bump @microsoft/fast-element to v2.0.0-beta.6
|
|
47
|
+
|
|
48
|
+
## 1.0.0-alpha.5
|
|
49
|
+
|
|
50
|
+
Thu, 18 Aug 2022 20:46:10 GMT
|
|
51
|
+
|
|
52
|
+
### Changes
|
|
53
|
+
|
|
54
|
+
- Bump @microsoft/fast-element to v2.0.0-beta.5
|
|
55
|
+
|
|
56
|
+
## 1.0.0-alpha.4
|
|
57
|
+
|
|
58
|
+
Mon, 18 Jul 2022 21:10:01 GMT
|
|
59
|
+
|
|
60
|
+
### Changes
|
|
61
|
+
|
|
62
|
+
- refactor: reduce duplication in style normalization code scenarios (roeisenb@microsoft.com)
|
|
63
|
+
- Bump @microsoft/fast-element to v2.0.0-beta.4
|
|
64
|
+
|
|
65
|
+
## 1.0.0-alpha.3
|
|
66
|
+
|
|
67
|
+
Wed, 22 Jun 2022 20:17:50 GMT
|
|
68
|
+
|
|
69
|
+
### Changes
|
|
70
|
+
|
|
71
|
+
- Bump @microsoft/fast-element to v2.0.0-beta.3 (nicholasrice@users.noreply.github.com)
|
|
72
|
+
|
|
73
|
+
## 1.0.0-alpha.2
|
|
74
|
+
|
|
75
|
+
Wed, 15 Jun 2022 17:41:10 GMT
|
|
76
|
+
|
|
77
|
+
### Changes
|
|
78
|
+
|
|
79
|
+
- chore: fix package.json type fields (roeisenb@microsoft.com)
|
|
80
|
+
|
|
81
|
+
## 1.0.0-alpha.1
|
|
82
|
+
|
|
83
|
+
Wed, 01 Jun 2022 17:53:14 GMT
|
|
84
|
+
|
|
85
|
+
### Changes
|
|
12
86
|
|
|
13
|
-
-
|
|
87
|
+
- fix: update router to work with new template primitives (roeisenb@microsoft.com)
|
|
88
|
+
- fix: update router to new directive APIs. (roeisenb@microsoft.com)
|
|
89
|
+
- chore: remove rollup of router (roeisenb@microsoft.com)
|
|
90
|
+
- Upgrade TypeScript (nicholasrice@users.noreply.github.com)
|
|
91
|
+
- Set prerelease version (nicholasrice@users.noreply.github.com)
|
|
92
|
+
- chore: configure fast-router for internals stripping (roeisenb@microsoft.com)
|
|
93
|
+
- refactor: new design for execution context (roeisenb@microsoft.com)
|
|
94
|
+
- Update the fast-router with the updates to fast-element 2.0 APIs (7559015+janechu@users.noreply.github.com)
|
|
95
|
+
- fix: update to latest fast-element utilities (roeisenb@microsoft.com)
|
|
96
|
+
- Fixed an updated export from FAST element 2.0 (7559015+janechu@users.noreply.github.com)
|
|
14
97
|
|
|
15
98
|
## 0.4.2
|
|
16
99
|
|
package/README.md
CHANGED
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
# FAST Router
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
[](https://badge.fury.io/js/%40microsoft%2Ffast-router)
|
|
5
|
-
|
|
6
|
-
The `fast-router` package contains a history-based navigation and routing solution designed around web components. By using `fast-router`, you can create multi-page and full application experiences.
|
|
3
|
+
The `@microsoft/fast-router` package contains a history-based navigation and routing solution designed around Web Components. By using `fast-router`, you can create multi-page and full application experiences. The router works with any Web Components, but has special support for Web Components built on FAST.
|
|
7
4
|
|
|
8
5
|
## Installation
|
|
9
6
|
|
|
@@ -27,36 +24,10 @@ import { FASTRouter } from '@microsoft/fast-router';
|
|
|
27
24
|
|
|
28
25
|
Looking for a setup that integrates with a particular front-end framework or bundler? Check out [our integration docs](https://fast.design/docs/integrations/introduction).
|
|
29
26
|
|
|
30
|
-
### From CDN
|
|
31
|
-
|
|
32
|
-
A pre-bundled script that contains all APIs needed to use FAST Router and FAST Element is available on CDN. You can use this script by adding [`type="module"`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules) to the script element and then importing from the CDN.
|
|
33
|
-
|
|
34
|
-
```html
|
|
35
|
-
<!DOCTYPE html>
|
|
36
|
-
<html lang="en">
|
|
37
|
-
<head>
|
|
38
|
-
<script type="module">
|
|
39
|
-
import { FASTRouter } from "https://cdn.jsdelivr.net/npm/@microsoft/fast-router/dist/fast-router.min.js";
|
|
40
|
-
|
|
41
|
-
// your code here
|
|
42
|
-
</script>
|
|
43
|
-
</head>
|
|
44
|
-
<!-- ... -->
|
|
45
|
-
</html>
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
The markup above always references the latest release. When deploying to production, you will want to ship with a specific version. Here's an example of the markup for that:
|
|
49
|
-
|
|
50
|
-
```html
|
|
51
|
-
<script type="module" src="https://cdn.jsdelivr.net/npm/@microsoft/fast-router@0.2.11/dist/fast-router.min.js"></script>
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
:::note
|
|
55
|
-
For simplicity, examples throughout the documentation will assume the library has been installed from NPM, but you can always replace the import location with the CDN URL.
|
|
56
|
-
:::
|
|
57
|
-
|
|
58
27
|
## Configuration at a Glance
|
|
59
28
|
|
|
29
|
+
The router is currently in `alpha` while we address a few bugs, finish up some final polish, and write the full documentation. Below is a quick sample of how to configure the router, to help get you going while we complete the full documentation.
|
|
30
|
+
|
|
60
31
|
#### A Sample Route Configuration
|
|
61
32
|
|
|
62
33
|
```ts
|
package/dist/dts/commands.d.ts
CHANGED
|
@@ -6,13 +6,13 @@ import { RecognizedRoute } from "./recognizer.js";
|
|
|
6
6
|
import { NavigationContributor } from "./contributors.js";
|
|
7
7
|
import { NavigationCommitPhase, NavigationPhase } from "./phases.js";
|
|
8
8
|
/**
|
|
9
|
-
* @
|
|
9
|
+
* @beta
|
|
10
10
|
*/
|
|
11
11
|
export interface NavigationCommand {
|
|
12
12
|
createContributor(router: Router, route: RecognizedRoute): Promise<NavigationContributor>;
|
|
13
13
|
}
|
|
14
14
|
/**
|
|
15
|
-
* @
|
|
15
|
+
* @beta
|
|
16
16
|
*/
|
|
17
17
|
export interface RenderCommand extends NavigationCommand {
|
|
18
18
|
layout: Layout;
|
|
@@ -20,7 +20,7 @@ export interface RenderCommand extends NavigationCommand {
|
|
|
20
20
|
createView(): Promise<RouteView>;
|
|
21
21
|
}
|
|
22
22
|
/**
|
|
23
|
-
* @
|
|
23
|
+
* @beta
|
|
24
24
|
*/
|
|
25
25
|
export declare class Ignore implements NavigationCommand {
|
|
26
26
|
createContributor(): Promise<{
|
|
@@ -28,7 +28,7 @@ export declare class Ignore implements NavigationCommand {
|
|
|
28
28
|
}>;
|
|
29
29
|
}
|
|
30
30
|
/**
|
|
31
|
-
* @
|
|
31
|
+
* @beta
|
|
32
32
|
*/
|
|
33
33
|
export declare class Redirect implements NavigationCommand {
|
|
34
34
|
private redirect;
|
|
@@ -47,7 +47,7 @@ declare class RenderContributor {
|
|
|
47
47
|
commit(phase: NavigationCommitPhase): Promise<void>;
|
|
48
48
|
}
|
|
49
49
|
/**
|
|
50
|
-
* @
|
|
50
|
+
* @beta
|
|
51
51
|
*/
|
|
52
52
|
export declare class Render implements RenderCommand {
|
|
53
53
|
private owner;
|
|
@@ -10,7 +10,7 @@ import { NavigationContributor } from "./contributors.js";
|
|
|
10
10
|
import { NavigationPhaseHook, NavigationPhaseName } from "./phases.js";
|
|
11
11
|
import { RouteRecognizer } from "./recognizer.js";
|
|
12
12
|
/**
|
|
13
|
-
* @
|
|
13
|
+
* @beta
|
|
14
14
|
*/
|
|
15
15
|
export declare abstract class RouterConfiguration<TSettings = any> {
|
|
16
16
|
private isConfigured;
|
|
@@ -1,23 +1,40 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { AddViewBehaviorFactory, ViewBehavior, ViewBehaviorFactory, ViewController } from "@microsoft/fast-element";
|
|
2
2
|
import { NavigationCommitPhaseHook, NavigationPhaseHook, NavigationPhaseName } from "./phases.js";
|
|
3
3
|
/**
|
|
4
|
-
* @
|
|
4
|
+
* @beta
|
|
5
5
|
*/
|
|
6
6
|
export declare type NavigationContributor<TSettings = any> = Partial<Record<Exclude<NavigationPhaseName, "commit">, NavigationPhaseHook<TSettings>>> & {
|
|
7
7
|
commit?: NavigationCommitPhaseHook<TSettings>;
|
|
8
8
|
};
|
|
9
9
|
/**
|
|
10
|
-
* @
|
|
10
|
+
* @beta
|
|
11
11
|
*/
|
|
12
12
|
export declare function isNavigationPhaseContributor<T extends NavigationPhaseName>(object: any, phase: T): object is Record<T, NavigationPhaseHook>;
|
|
13
13
|
/**
|
|
14
|
-
* @
|
|
14
|
+
* @beta
|
|
15
15
|
*/
|
|
16
16
|
export declare type ContributorOptions = {
|
|
17
17
|
lifecycle?: boolean;
|
|
18
18
|
parameters?: boolean;
|
|
19
19
|
};
|
|
20
|
+
declare class NavigationContributorDirective implements ViewBehaviorFactory {
|
|
21
|
+
readonly options: Required<ContributorOptions>;
|
|
22
|
+
id: string;
|
|
23
|
+
nodeId: string;
|
|
24
|
+
constructor(options: Required<ContributorOptions>);
|
|
25
|
+
createHTML(add: AddViewBehaviorFactory): string;
|
|
26
|
+
createBehavior(): NavigationContributorBehavior;
|
|
27
|
+
}
|
|
28
|
+
declare class NavigationContributorBehavior implements ViewBehavior {
|
|
29
|
+
private directive;
|
|
30
|
+
private router;
|
|
31
|
+
private contributor;
|
|
32
|
+
constructor(directive: NavigationContributorDirective);
|
|
33
|
+
bind(controller: ViewController): void;
|
|
34
|
+
unbind(source: unknown): void;
|
|
35
|
+
}
|
|
20
36
|
/**
|
|
21
|
-
* @
|
|
37
|
+
* @beta
|
|
22
38
|
*/
|
|
23
|
-
export declare function navigationContributor(options?: ContributorOptions):
|
|
39
|
+
export declare function navigationContributor(options?: ContributorOptions): NavigationContributorDirective;
|
|
40
|
+
export {};
|
package/dist/dts/events.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ import { NavigationPhase } from "./phases.js";
|
|
|
4
4
|
import { RecognizedRoute } from "./recognizer.js";
|
|
5
5
|
import { Router } from "./router.js";
|
|
6
6
|
/**
|
|
7
|
-
* @
|
|
7
|
+
* @beta
|
|
8
8
|
*/
|
|
9
9
|
export interface RoutingEventSink {
|
|
10
10
|
onUnhandledNavigationMessage(router: Router, message: NavigationMessage): void;
|
|
@@ -14,7 +14,7 @@ export interface RoutingEventSink {
|
|
|
14
14
|
onNavigationEnd(router: Router, route: RecognizedRoute, command: NavigationCommand): void;
|
|
15
15
|
}
|
|
16
16
|
/**
|
|
17
|
-
* @
|
|
17
|
+
* @beta
|
|
18
18
|
*/
|
|
19
19
|
export declare class DefaultRoutingEventSink implements RoutingEventSink {
|
|
20
20
|
onUnhandledNavigationMessage(router: Router, message: NavigationMessage): void;
|
|
@@ -2,7 +2,7 @@ import { FASTElement } from "@microsoft/fast-element";
|
|
|
2
2
|
import { RouterElement } from "./router.js";
|
|
3
3
|
declare const FASTRouter_base: new () => FASTElement & RouterElement;
|
|
4
4
|
/**
|
|
5
|
-
* @
|
|
5
|
+
* @beta
|
|
6
6
|
*/
|
|
7
7
|
export declare class FASTRouter extends FASTRouter_base {
|
|
8
8
|
}
|
package/dist/dts/links.d.ts
CHANGED
package/dist/dts/navigation.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Router } from "./router.js";
|
|
2
2
|
/**
|
|
3
|
-
* @
|
|
3
|
+
* @beta
|
|
4
4
|
*/
|
|
5
5
|
export interface Route {
|
|
6
6
|
readonly path: string;
|
|
@@ -8,27 +8,27 @@ export interface Route {
|
|
|
8
8
|
readonly caseSensitive?: boolean;
|
|
9
9
|
}
|
|
10
10
|
/**
|
|
11
|
-
* @
|
|
11
|
+
* @beta
|
|
12
12
|
*/
|
|
13
13
|
export declare class NavigationMessage {
|
|
14
14
|
path: string;
|
|
15
15
|
constructor(path: string);
|
|
16
16
|
}
|
|
17
17
|
/**
|
|
18
|
-
* @
|
|
18
|
+
* @beta
|
|
19
19
|
*/
|
|
20
20
|
export interface NavigationHandler {
|
|
21
21
|
enqueue(msg: NavigationMessage): void;
|
|
22
22
|
}
|
|
23
23
|
/**
|
|
24
|
-
* @
|
|
24
|
+
* @beta
|
|
25
25
|
*/
|
|
26
26
|
export declare const NavigationHandler: Readonly<{
|
|
27
27
|
register(handler: NavigationHandler): void;
|
|
28
28
|
unregister(handler: NavigationHandler): void;
|
|
29
29
|
}>;
|
|
30
30
|
/**
|
|
31
|
-
* @
|
|
31
|
+
* @beta
|
|
32
32
|
*/
|
|
33
33
|
export interface NavigationQueue {
|
|
34
34
|
connect(): void;
|
|
@@ -36,7 +36,7 @@ export interface NavigationQueue {
|
|
|
36
36
|
receive(): Promise<NavigationMessage>;
|
|
37
37
|
}
|
|
38
38
|
/**
|
|
39
|
-
* @
|
|
39
|
+
* @beta
|
|
40
40
|
*/
|
|
41
41
|
export declare const Route: Readonly<{
|
|
42
42
|
path: Readonly<{
|
|
@@ -54,7 +54,7 @@ export declare const Route: Readonly<{
|
|
|
54
54
|
}>;
|
|
55
55
|
}>;
|
|
56
56
|
/**
|
|
57
|
-
* @
|
|
57
|
+
* @beta
|
|
58
58
|
*/
|
|
59
59
|
export declare class DefaultNavigationQueue implements NavigationQueue, NavigationHandler {
|
|
60
60
|
private queue;
|
package/dist/dts/phases.d.ts
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
import { RecognizedRoute } from "./recognizer.js";
|
|
2
2
|
import { Router } from "./router.js";
|
|
3
3
|
/**
|
|
4
|
-
* @
|
|
4
|
+
* @beta
|
|
5
5
|
*/
|
|
6
6
|
export declare type NavigationPhaseName = "navigate" | "leave" | "construct" | "enter" | "commit";
|
|
7
7
|
/**
|
|
8
|
-
* @
|
|
8
|
+
* @beta
|
|
9
9
|
*/
|
|
10
10
|
export declare type NavigationPhaseHook<TSettings = any> = (phase: NavigationPhase<TSettings>) => Promise<any> | any;
|
|
11
11
|
/**
|
|
12
|
-
* @
|
|
12
|
+
* @beta
|
|
13
13
|
*/
|
|
14
14
|
export declare type NavigationCommitPhaseHook<TSettings = any> = (phase: NavigationCommitPhase<TSettings>) => Promise<any> | any;
|
|
15
15
|
/**
|
|
16
|
-
* @
|
|
16
|
+
* @beta
|
|
17
17
|
*/
|
|
18
18
|
export declare type NavigationPhaseFollowupAction = () => Promise<any> | any;
|
|
19
19
|
/**
|
|
20
|
-
* @
|
|
20
|
+
* @beta
|
|
21
21
|
*/
|
|
22
22
|
export interface NavigationPhase<TSettings = any> {
|
|
23
23
|
readonly name: NavigationPhaseName;
|
|
@@ -30,7 +30,7 @@ export interface NavigationPhase<TSettings = any> {
|
|
|
30
30
|
evaluateContributor(contributor: any, route?: RecognizedRoute<TSettings>, router?: Router<TSettings>): Promise<void>;
|
|
31
31
|
}
|
|
32
32
|
/**
|
|
33
|
-
* @
|
|
33
|
+
* @beta
|
|
34
34
|
*/
|
|
35
35
|
export interface NavigationCommitPhase<TSettings = any> extends Omit<NavigationPhase<TSettings>, "cancel" | "canceled" | "onCancel"> {
|
|
36
36
|
setTitle(title: string): any;
|
package/dist/dts/process.d.ts
CHANGED
|
@@ -20,13 +20,13 @@ declare class NavigationPhaseImpl<TSettings = any> implements NavigationCommitPh
|
|
|
20
20
|
evaluateContributor(contributor: any, route?: RecognizedRoute<TSettings>, router?: Router): Promise<void>;
|
|
21
21
|
}
|
|
22
22
|
/**
|
|
23
|
-
* @
|
|
23
|
+
* @beta
|
|
24
24
|
*/
|
|
25
25
|
export interface NavigationProcess {
|
|
26
26
|
run(router: Router, message: NavigationMessage): Promise<void>;
|
|
27
27
|
}
|
|
28
28
|
/**
|
|
29
|
-
* @
|
|
29
|
+
* @beta
|
|
30
30
|
*/
|
|
31
31
|
export declare class DefaultNavigationProcess<TSettings> {
|
|
32
32
|
private phases;
|