@mantou/gem 1.7.12 → 2.0.0-alpha.1
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/LICENSE +21 -0
- package/README.md +1 -1
- package/dist/gem.es.js +2010 -1765
- package/dist/gem.umd.js +52 -53
- package/elements/base/dialog.d.ts +0 -11
- package/elements/base/dialog.d.ts.map +1 -1
- package/elements/base/dialog.js +93 -66
- package/elements/base/dialog.js.map +1 -1
- package/elements/base/gesture.d.ts +1 -2
- package/elements/base/gesture.d.ts.map +1 -1
- package/elements/base/gesture.js +157 -96
- package/elements/base/gesture.js.map +1 -1
- package/elements/base/link.d.ts +5 -5
- package/elements/base/link.d.ts.map +1 -1
- package/elements/base/link.js +249 -145
- package/elements/base/link.js.map +1 -1
- package/elements/base/modal-factory.d.ts +145 -139
- package/elements/base/modal-factory.d.ts.map +1 -1
- package/elements/base/modal-factory.js +84 -25
- package/elements/base/modal-factory.js.map +1 -1
- package/elements/base/reflect.d.ts +0 -1
- package/elements/base/reflect.d.ts.map +1 -1
- package/elements/base/reflect.js +83 -38
- package/elements/base/reflect.js.map +1 -1
- package/elements/base/route.d.ts +12 -24
- package/elements/base/route.d.ts.map +1 -1
- package/elements/base/route.js +263 -164
- package/elements/base/route.js.map +1 -1
- package/elements/base/title.d.ts +3 -11
- package/elements/base/title.d.ts.map +1 -1
- package/elements/base/title.js +110 -59
- package/elements/base/title.js.map +1 -1
- package/elements/base/unsafe.d.ts +0 -1
- package/elements/base/unsafe.d.ts.map +1 -1
- package/elements/base/unsafe.js +82 -33
- package/elements/base/unsafe.js.map +1 -1
- package/elements/base/use.d.ts.map +1 -1
- package/elements/base/use.js +95 -47
- package/elements/base/use.js.map +1 -1
- package/helper/i18n.d.ts +4 -9
- package/helper/i18n.d.ts.map +1 -1
- package/helper/i18n.js +69 -65
- package/helper/i18n.js.map +1 -1
- package/helper/logger.js +10 -9
- package/helper/logger.js.map +1 -1
- package/helper/react-shim.d.ts +15 -0
- package/helper/react-shim.d.ts.map +1 -0
- package/helper/react-shim.js +56 -0
- package/helper/react-shim.js.map +1 -0
- package/helper/react-utils.d.ts +15 -0
- package/helper/react-utils.d.ts.map +1 -0
- package/helper/react-utils.js +50 -0
- package/helper/react-utils.js.map +1 -0
- package/helper/request.d.ts +4 -4
- package/helper/request.d.ts.map +1 -1
- package/helper/request.js +1 -1
- package/helper/request.js.map +1 -1
- package/helper/ssr-shim.d.ts.map +1 -1
- package/helper/ssr-shim.js +8 -1
- package/helper/ssr-shim.js.map +1 -1
- package/helper/theme.d.ts +14 -21
- package/helper/theme.d.ts.map +1 -1
- package/helper/theme.js +55 -38
- package/helper/theme.js.map +1 -1
- package/index.d.ts +4 -3
- package/index.d.ts.map +1 -1
- package/index.js +5 -3
- package/index.js.map +1 -1
- package/lib/decorators.d.ts +74 -42
- package/lib/decorators.d.ts.map +1 -1
- package/lib/decorators.js +324 -84
- package/lib/decorators.js.map +1 -1
- package/lib/directives.d.ts +4 -0
- package/lib/directives.d.ts.map +1 -0
- package/lib/directives.js +5 -0
- package/lib/directives.js.map +1 -0
- package/lib/element.d.ts +112 -110
- package/lib/element.d.ts.map +1 -1
- package/lib/element.js +431 -468
- package/lib/element.js.map +1 -1
- package/lib/history.d.ts +4 -0
- package/lib/history.d.ts.map +1 -1
- package/lib/history.js +12 -13
- package/lib/history.js.map +1 -1
- package/lib/store.d.ts +1 -1
- package/lib/store.d.ts.map +1 -1
- package/lib/store.js +4 -5
- package/lib/store.js.map +1 -1
- package/lib/utils.d.ts +3 -43
- package/lib/utils.d.ts.map +1 -1
- package/lib/utils.js +61 -235
- package/lib/utils.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.d.ts.map +1 -1
- package/lib/version.js +2 -1
- package/lib/version.js.map +1 -1
- package/package.json +13 -11
- package/src/dist.ts +3 -2
- package/src/elements/base/dialog.ts +10 -20
- package/src/elements/base/gesture.ts +16 -14
- package/src/elements/base/link.ts +65 -44
- package/src/elements/base/modal-factory.ts +14 -14
- package/src/elements/base/reflect.ts +24 -32
- package/src/elements/base/route.ts +55 -68
- package/src/elements/base/title.ts +25 -42
- package/src/elements/base/unsafe.ts +12 -21
- package/src/elements/base/use.ts +17 -13
- package/src/helper/i18n.ts +20 -14
- package/src/helper/react-utils.ts +66 -0
- package/src/helper/ssr-shim.ts +8 -1
- package/src/helper/theme.ts +72 -45
- package/src/index.ts +6 -4
- package/src/lib/decorators.ts +394 -93
- package/src/lib/directives.ts +6 -0
- package/src/lib/element.ts +473 -500
- package/src/lib/history.ts +4 -3
- package/src/lib/store.ts +2 -1
- package/src/lib/utils.ts +12 -191
- package/src/lib/version.ts +2 -1
- package/src/test/elements/link.test.ts +1 -1
- package/src/test/elements/title.test.ts +1 -0
- package/src/test/gem-element/advance.test.ts +72 -49
- package/src/test/gem-element/basic.test.ts +37 -50
- package/src/test/gem-element/decorators.test.ts +22 -21
- package/src/test/gem-element/multi.test.ts +5 -5
- package/src/test/utils.test.ts +15 -45
package/elements/base/route.js
CHANGED
|
@@ -1,23 +1,39 @@
|
|
|
1
|
-
var
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
var
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
|
|
2
|
+
function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
|
|
3
|
+
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
|
|
4
|
+
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
|
|
5
|
+
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
|
|
6
|
+
var _, done = false;
|
|
7
|
+
for (var i = decorators.length - 1; i >= 0; i--) {
|
|
8
|
+
var context = {};
|
|
9
|
+
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
|
|
10
|
+
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
|
|
11
|
+
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
|
|
12
|
+
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
|
|
13
|
+
if (kind === "accessor") {
|
|
14
|
+
if (result === void 0) continue;
|
|
15
|
+
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
|
|
16
|
+
if (_ = accept(result.get)) descriptor.get = _;
|
|
17
|
+
if (_ = accept(result.set)) descriptor.set = _;
|
|
18
|
+
if (_ = accept(result.init)) initializers.unshift(_);
|
|
19
|
+
}
|
|
20
|
+
else if (_ = accept(result)) {
|
|
21
|
+
if (kind === "field") initializers.unshift(_);
|
|
22
|
+
else descriptor[key] = _;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
if (target) Object.defineProperty(target, contextIn.name, descriptor);
|
|
26
|
+
done = true;
|
|
11
27
|
};
|
|
12
|
-
var
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
28
|
+
var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
|
|
29
|
+
var useValue = arguments.length > 2;
|
|
30
|
+
for (var i = 0; i < initializers.length; i++) {
|
|
31
|
+
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
|
|
32
|
+
}
|
|
33
|
+
return useValue ? value : void 0;
|
|
17
34
|
};
|
|
18
|
-
|
|
19
|
-
import {
|
|
20
|
-
import { property, emitter, boolattribute } from '../../lib/decorators';
|
|
35
|
+
import { BoundaryCSSState, createState, GemElement, html } from '../../lib/element';
|
|
36
|
+
import { property, emitter, boolattribute, shadow, effect, template, willMount } from '../../lib/decorators';
|
|
21
37
|
import { createStore, updateStore, connect } from '../../lib/store';
|
|
22
38
|
import { titleStore, history } from '../../lib/history';
|
|
23
39
|
import { addListener } from '../../lib/utils';
|
|
@@ -77,7 +93,7 @@ export function createPath(route, options) {
|
|
|
77
93
|
// /a/*/:b/* /a/:0/:b/:1
|
|
78
94
|
let i = 0;
|
|
79
95
|
let path = route.pattern.replaceAll('*', () => `:${i++}`);
|
|
80
|
-
const params = options
|
|
96
|
+
const params = options?.params;
|
|
81
97
|
if (params) {
|
|
82
98
|
Object.keys(params).forEach((key) => {
|
|
83
99
|
path = path.replace(new RegExp(`:${key}`, 'g'), params[key]);
|
|
@@ -95,24 +111,155 @@ export function createHistoryParams(route, options) {
|
|
|
95
111
|
const INIT_CONTENT = html ``;
|
|
96
112
|
const scrollPositionMap = new Map();
|
|
97
113
|
/**
|
|
98
|
-
* @customElement gem-route
|
|
114
|
+
* @customElement gem-light-route
|
|
99
115
|
* @attr inert 暂停路由更新
|
|
100
116
|
* @fires routechange
|
|
101
117
|
* @fires error
|
|
102
118
|
* @fires loading
|
|
103
119
|
*/
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
120
|
+
let GemLightRouteElement = (() => {
|
|
121
|
+
let _classSuper = GemElement;
|
|
122
|
+
let _transition_decorators;
|
|
123
|
+
let _transition_initializers = [];
|
|
124
|
+
let _transition_extraInitializers = [];
|
|
125
|
+
let _routes_decorators;
|
|
126
|
+
let _routes_initializers = [];
|
|
127
|
+
let _routes_extraInitializers = [];
|
|
128
|
+
let _locationStore_decorators;
|
|
129
|
+
let _locationStore_initializers = [];
|
|
130
|
+
let _locationStore_extraInitializers = [];
|
|
131
|
+
let _key_decorators;
|
|
132
|
+
let _key_initializers = [];
|
|
133
|
+
let _key_extraInitializers = [];
|
|
134
|
+
let _loading_decorators;
|
|
135
|
+
let _loading_initializers = [];
|
|
136
|
+
let _loading_extraInitializers = [];
|
|
137
|
+
let _beforeroutechange_decorators;
|
|
138
|
+
let _beforeroutechange_initializers = [];
|
|
139
|
+
let _beforeroutechange_extraInitializers = [];
|
|
140
|
+
let _routechange_decorators;
|
|
141
|
+
let _routechange_initializers = [];
|
|
142
|
+
let _routechange_extraInitializers = [];
|
|
143
|
+
let _error_decorators;
|
|
144
|
+
let _error_initializers = [];
|
|
145
|
+
let _error_extraInitializers = [];
|
|
146
|
+
let _scrollContainer_decorators;
|
|
147
|
+
let _scrollContainer_initializers = [];
|
|
148
|
+
let _scrollContainer_extraInitializers = [];
|
|
149
|
+
let _scrollIgnoreHash_decorators;
|
|
150
|
+
let _scrollIgnoreHash_initializers = [];
|
|
151
|
+
let _scrollIgnoreHash_extraInitializers = [];
|
|
152
|
+
let _trigger_decorators;
|
|
153
|
+
let _trigger_initializers = [];
|
|
154
|
+
let _trigger_extraInitializers = [];
|
|
155
|
+
let _private_unBoundary_decorators;
|
|
156
|
+
let _private_unBoundary_initializers = [];
|
|
157
|
+
let _private_unBoundary_extraInitializers = [];
|
|
158
|
+
let _private_rememberScrollPosition_decorators;
|
|
159
|
+
let _private_rememberScrollPosition_initializers = [];
|
|
160
|
+
let _private_rememberScrollPosition_extraInitializers = [];
|
|
161
|
+
let _private_connectTriggerStore_decorators;
|
|
162
|
+
let _private_connectTriggerStore_initializers = [];
|
|
163
|
+
let _private_connectTriggerStore_extraInitializers = [];
|
|
164
|
+
let _private_updateContent_decorators;
|
|
165
|
+
let _private_updateContent_initializers = [];
|
|
166
|
+
let _private_updateContent_extraInitializers = [];
|
|
167
|
+
let _private_content_decorators;
|
|
168
|
+
let _private_content_initializers = [];
|
|
169
|
+
let _private_content_extraInitializers = [];
|
|
170
|
+
return class GemLightRouteElement extends _classSuper {
|
|
171
|
+
static {
|
|
172
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
173
|
+
_transition_decorators = [boolattribute];
|
|
174
|
+
_routes_decorators = [property];
|
|
175
|
+
_locationStore_decorators = [property];
|
|
176
|
+
_key_decorators = [property];
|
|
177
|
+
_loading_decorators = [emitter];
|
|
178
|
+
_beforeroutechange_decorators = [emitter];
|
|
179
|
+
_routechange_decorators = [emitter];
|
|
180
|
+
_error_decorators = [emitter];
|
|
181
|
+
_scrollContainer_decorators = [property];
|
|
182
|
+
_scrollIgnoreHash_decorators = [property];
|
|
183
|
+
_trigger_decorators = [property];
|
|
184
|
+
_private_unBoundary_decorators = [willMount()];
|
|
185
|
+
_private_rememberScrollPosition_decorators = [effect((i) => [i.scrollContainer])];
|
|
186
|
+
_private_connectTriggerStore_decorators = [effect((i) => [i.scrollContainer])];
|
|
187
|
+
_private_updateContent_decorators = [effect((i) => i.#updateContentDep())];
|
|
188
|
+
_private_content_decorators = [template((i) => !i.inert)];
|
|
189
|
+
__esDecorate(null, null, _transition_decorators, { kind: "field", name: "transition", static: false, private: false, access: { has: obj => "transition" in obj, get: obj => obj.transition, set: (obj, value) => { obj.transition = value; } }, metadata: _metadata }, _transition_initializers, _transition_extraInitializers);
|
|
190
|
+
__esDecorate(null, null, _routes_decorators, { kind: "field", name: "routes", static: false, private: false, access: { has: obj => "routes" in obj, get: obj => obj.routes, set: (obj, value) => { obj.routes = value; } }, metadata: _metadata }, _routes_initializers, _routes_extraInitializers);
|
|
191
|
+
__esDecorate(null, null, _locationStore_decorators, { kind: "field", name: "locationStore", static: false, private: false, access: { has: obj => "locationStore" in obj, get: obj => obj.locationStore, set: (obj, value) => { obj.locationStore = value; } }, metadata: _metadata }, _locationStore_initializers, _locationStore_extraInitializers);
|
|
192
|
+
__esDecorate(null, null, _key_decorators, { kind: "field", name: "key", static: false, private: false, access: { has: obj => "key" in obj, get: obj => obj.key, set: (obj, value) => { obj.key = value; } }, metadata: _metadata }, _key_initializers, _key_extraInitializers);
|
|
193
|
+
__esDecorate(null, null, _loading_decorators, { kind: "field", name: "loading", static: false, private: false, access: { has: obj => "loading" in obj, get: obj => obj.loading, set: (obj, value) => { obj.loading = value; } }, metadata: _metadata }, _loading_initializers, _loading_extraInitializers);
|
|
194
|
+
__esDecorate(null, null, _beforeroutechange_decorators, { kind: "field", name: "beforeroutechange", static: false, private: false, access: { has: obj => "beforeroutechange" in obj, get: obj => obj.beforeroutechange, set: (obj, value) => { obj.beforeroutechange = value; } }, metadata: _metadata }, _beforeroutechange_initializers, _beforeroutechange_extraInitializers);
|
|
195
|
+
__esDecorate(null, null, _routechange_decorators, { kind: "field", name: "routechange", static: false, private: false, access: { has: obj => "routechange" in obj, get: obj => obj.routechange, set: (obj, value) => { obj.routechange = value; } }, metadata: _metadata }, _routechange_initializers, _routechange_extraInitializers);
|
|
196
|
+
__esDecorate(null, null, _error_decorators, { kind: "field", name: "error", static: false, private: false, access: { has: obj => "error" in obj, get: obj => obj.error, set: (obj, value) => { obj.error = value; } }, metadata: _metadata }, _error_initializers, _error_extraInitializers);
|
|
197
|
+
__esDecorate(null, null, _scrollContainer_decorators, { kind: "field", name: "scrollContainer", static: false, private: false, access: { has: obj => "scrollContainer" in obj, get: obj => obj.scrollContainer, set: (obj, value) => { obj.scrollContainer = value; } }, metadata: _metadata }, _scrollContainer_initializers, _scrollContainer_extraInitializers);
|
|
198
|
+
__esDecorate(null, null, _scrollIgnoreHash_decorators, { kind: "field", name: "scrollIgnoreHash", static: false, private: false, access: { has: obj => "scrollIgnoreHash" in obj, get: obj => obj.scrollIgnoreHash, set: (obj, value) => { obj.scrollIgnoreHash = value; } }, metadata: _metadata }, _scrollIgnoreHash_initializers, _scrollIgnoreHash_extraInitializers);
|
|
199
|
+
__esDecorate(null, null, _trigger_decorators, { kind: "field", name: "trigger", static: false, private: false, access: { has: obj => "trigger" in obj, get: obj => obj.trigger, set: (obj, value) => { obj.trigger = value; } }, metadata: _metadata }, _trigger_initializers, _trigger_extraInitializers);
|
|
200
|
+
__esDecorate(null, null, _private_unBoundary_decorators, { kind: "field", name: "#unBoundary", static: false, private: true, access: { has: obj => #unBoundary in obj, get: obj => obj.#unBoundary, set: (obj, value) => { obj.#unBoundary = value; } }, metadata: _metadata }, _private_unBoundary_initializers, _private_unBoundary_extraInitializers);
|
|
201
|
+
__esDecorate(null, null, _private_rememberScrollPosition_decorators, { kind: "field", name: "#rememberScrollPosition", static: false, private: true, access: { has: obj => #rememberScrollPosition in obj, get: obj => obj.#rememberScrollPosition, set: (obj, value) => { obj.#rememberScrollPosition = value; } }, metadata: _metadata }, _private_rememberScrollPosition_initializers, _private_rememberScrollPosition_extraInitializers);
|
|
202
|
+
__esDecorate(null, null, _private_connectTriggerStore_decorators, { kind: "field", name: "#connectTriggerStore", static: false, private: true, access: { has: obj => #connectTriggerStore in obj, get: obj => obj.#connectTriggerStore, set: (obj, value) => { obj.#connectTriggerStore = value; } }, metadata: _metadata }, _private_connectTriggerStore_initializers, _private_connectTriggerStore_extraInitializers);
|
|
203
|
+
__esDecorate(null, null, _private_updateContent_decorators, { kind: "field", name: "#updateContent", static: false, private: true, access: { has: obj => #updateContent in obj, get: obj => obj.#updateContent, set: (obj, value) => { obj.#updateContent = value; } }, metadata: _metadata }, _private_updateContent_initializers, _private_updateContent_extraInitializers);
|
|
204
|
+
__esDecorate(null, null, _private_content_decorators, { kind: "field", name: "#content", static: false, private: true, access: { has: obj => #content in obj, get: obj => obj.#content, set: (obj, value) => { obj.#content = value; } }, metadata: _metadata }, _private_content_initializers, _private_content_extraInitializers);
|
|
205
|
+
if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
206
|
+
}
|
|
207
|
+
transition = __runInitializers(this, _transition_initializers, void 0);
|
|
208
|
+
routes = (__runInitializers(this, _transition_extraInitializers), __runInitializers(this, _routes_initializers, void 0));
|
|
209
|
+
/**
|
|
210
|
+
* 路由更新后更新的 store,能从中读取到安全的路由数据
|
|
211
|
+
*
|
|
212
|
+
* @example
|
|
213
|
+
* const locationStore = GemRouteElement.createLocationStore()
|
|
214
|
+
* html`<gem-route .locationStore=${locationStore}>`
|
|
215
|
+
*/
|
|
216
|
+
locationStore = (__runInitializers(this, _routes_extraInitializers), __runInitializers(this, _locationStore_initializers, void 0));
|
|
217
|
+
key = (__runInitializers(this, _locationStore_extraInitializers), __runInitializers(this, _key_initializers, void 0)); // 除了 href 提供另外一种方式来更新,比如语言更新也需要刷新 <gem-route>
|
|
218
|
+
loading = (__runInitializers(this, _key_extraInitializers), __runInitializers(this, _loading_initializers, void 0));
|
|
219
|
+
beforeroutechange = (__runInitializers(this, _loading_extraInitializers), __runInitializers(this, _beforeroutechange_initializers, void 0));
|
|
220
|
+
routechange = (__runInitializers(this, _beforeroutechange_extraInitializers), __runInitializers(this, _routechange_initializers, void 0)); // path 改变或者 key 改变,包含初始渲染
|
|
221
|
+
error = (__runInitializers(this, _routechange_extraInitializers), __runInitializers(this, _error_initializers, void 0));
|
|
222
|
+
/**自动让滚动容器恢复滚动位置 */
|
|
223
|
+
scrollContainer = (__runInitializers(this, _error_extraInitializers), __runInitializers(this, _scrollContainer_initializers, void 0));
|
|
224
|
+
/**默认当有 `hash` 时不进行滚动 */
|
|
225
|
+
scrollIgnoreHash = (__runInitializers(this, _scrollContainer_extraInitializers), __runInitializers(this, _scrollIgnoreHash_initializers, void 0));
|
|
226
|
+
trigger = (__runInitializers(this, _scrollIgnoreHash_extraInitializers), __runInitializers(this, _trigger_initializers, history));
|
|
227
|
+
/**当前使用的路由对象 */
|
|
228
|
+
currentRoute = __runInitializers(this, _trigger_extraInitializers);
|
|
109
229
|
/**当前匹配的路由的 params */
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
230
|
+
currentParams = {};
|
|
231
|
+
/**不要多个 `<gem-route>` 共享,因为那样会导致后面的元素卸载前触发更新 */
|
|
232
|
+
static createLocationStore = () => {
|
|
233
|
+
const { path, query, hash, data } = history.getParams();
|
|
234
|
+
return createStore({ path, query, hash, data, params: {} });
|
|
235
|
+
};
|
|
236
|
+
static findRoute = (target = [], path) => {
|
|
237
|
+
let defaultRoute = null;
|
|
238
|
+
let routes;
|
|
239
|
+
if (target instanceof Array) {
|
|
240
|
+
routes = target;
|
|
241
|
+
}
|
|
242
|
+
else {
|
|
243
|
+
routes = Object.values(target);
|
|
244
|
+
}
|
|
245
|
+
for (const route of routes) {
|
|
246
|
+
if ('*' === route.pattern) {
|
|
247
|
+
defaultRoute = route;
|
|
248
|
+
}
|
|
249
|
+
else {
|
|
250
|
+
const params = matchPath(route.pattern, path);
|
|
251
|
+
if (params) {
|
|
252
|
+
return { route, params };
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
return { route: defaultRoute };
|
|
114
257
|
};
|
|
115
|
-
|
|
258
|
+
get #scrollContainer() {
|
|
259
|
+
return typeof this.scrollContainer === 'function' ? this.scrollContainer() : this.scrollContainer;
|
|
260
|
+
}
|
|
261
|
+
#state = createState({ content: INIT_CONTENT });
|
|
262
|
+
#updateLocationStore = () => {
|
|
116
263
|
if (!this.locationStore)
|
|
117
264
|
return;
|
|
118
265
|
const { path, query, hash, data } = history.getParams();
|
|
@@ -123,30 +270,31 @@ export class GemRouteElement extends GemElement {
|
|
|
123
270
|
hash,
|
|
124
271
|
data,
|
|
125
272
|
});
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
if (!
|
|
273
|
+
};
|
|
274
|
+
#updateScrollContainerPosition = () => {
|
|
275
|
+
if (!this.#scrollContainer)
|
|
129
276
|
return;
|
|
130
277
|
const scrollTop = scrollPositionMap.get(history.currentKey);
|
|
131
278
|
if (scrollTop) {
|
|
132
|
-
|
|
279
|
+
this.#scrollContainer.scroll(0, scrollTop);
|
|
133
280
|
}
|
|
134
281
|
else if (this.scrollIgnoreHash || !history.getParams().hash) {
|
|
135
|
-
|
|
282
|
+
this.#scrollContainer.scroll(0, 0);
|
|
136
283
|
}
|
|
137
|
-
}
|
|
138
|
-
|
|
284
|
+
};
|
|
285
|
+
#lastLoader;
|
|
286
|
+
#setContent = (route, params, content) => {
|
|
139
287
|
this.beforeroutechange(route);
|
|
140
|
-
|
|
288
|
+
this.#lastLoader = undefined;
|
|
141
289
|
this.currentRoute = route;
|
|
142
290
|
this.currentParams = params;
|
|
143
291
|
const changeContent = async () => {
|
|
144
|
-
this
|
|
292
|
+
this.#state({ content });
|
|
145
293
|
// 要确保新页面能读取到新路由数据
|
|
146
|
-
|
|
294
|
+
this.#updateLocationStore();
|
|
147
295
|
// 等待页面渲染完成
|
|
148
296
|
await Promise.resolve();
|
|
149
|
-
|
|
297
|
+
this.#updateScrollContainerPosition();
|
|
150
298
|
this.routechange(this.currentRoute);
|
|
151
299
|
};
|
|
152
300
|
if (this.transition && 'startViewTransition' in document) {
|
|
@@ -155,8 +303,48 @@ export class GemRouteElement extends GemElement {
|
|
|
155
303
|
else {
|
|
156
304
|
changeContent();
|
|
157
305
|
}
|
|
306
|
+
};
|
|
307
|
+
#unBoundary = __runInitializers(this, _private_unBoundary_initializers, () => this.internals.states.delete(BoundaryCSSState));
|
|
308
|
+
#rememberScrollPosition = (__runInitializers(this, _private_unBoundary_extraInitializers), __runInitializers(this, _private_rememberScrollPosition_initializers, () => {
|
|
309
|
+
if (!this.#scrollContainer)
|
|
310
|
+
return;
|
|
311
|
+
return addListener(history, 'beforechange', () => scrollPositionMap.set(history.currentKey, this.#scrollContainer.scrollTop));
|
|
312
|
+
}));
|
|
313
|
+
// history or i18n
|
|
314
|
+
#connectTriggerStore = (__runInitializers(this, _private_rememberScrollPosition_extraInitializers), __runInitializers(this, _private_connectTriggerStore_initializers, () => connect(this.trigger.store, () => this.#state({}))));
|
|
315
|
+
#updateContentDep = (__runInitializers(this, _private_connectTriggerStore_extraInitializers), () => {
|
|
316
|
+
const { path, query, hash } = this.trigger.getParams();
|
|
317
|
+
return [this.key, path, query, hash];
|
|
318
|
+
});
|
|
319
|
+
#updateContent = __runInitializers(this, _private_updateContent_initializers, ([key, path], old) => {
|
|
320
|
+
// 只有查询参数改变
|
|
321
|
+
if (old && key === old[0] && path === old[1]) {
|
|
322
|
+
this.#updateLocationStore();
|
|
323
|
+
return;
|
|
324
|
+
}
|
|
325
|
+
this.update();
|
|
158
326
|
});
|
|
159
|
-
|
|
327
|
+
#content = (__runInitializers(this, _private_updateContent_extraInitializers), __runInitializers(this, _private_content_initializers, () => {
|
|
328
|
+
const { content } = this.#state;
|
|
329
|
+
if (content === undefined)
|
|
330
|
+
return;
|
|
331
|
+
if (!this.shadowRoot) {
|
|
332
|
+
if (content === INIT_CONTENT)
|
|
333
|
+
return;
|
|
334
|
+
return html `${content}`;
|
|
335
|
+
}
|
|
336
|
+
return html `
|
|
337
|
+
<style>
|
|
338
|
+
:host(:where(:not([hidden]))),
|
|
339
|
+
:not(:defined) {
|
|
340
|
+
display: contents;
|
|
341
|
+
}
|
|
342
|
+
</style>
|
|
343
|
+
${content === INIT_CONTENT ? html `<slot></slot>` : content}
|
|
344
|
+
`;
|
|
345
|
+
}));
|
|
346
|
+
// 重写 `update`,并暴露为公共字段
|
|
347
|
+
update = (__runInitializers(this, _private_content_extraInitializers), () => {
|
|
160
348
|
const { path, hash, query } = this.trigger.getParams();
|
|
161
349
|
const { route, params = {} } = GemRouteElement.findRoute(this.routes, path);
|
|
162
350
|
const { redirect, content, getContent } = route || {};
|
|
@@ -169,17 +357,20 @@ export class GemRouteElement extends GemElement {
|
|
|
169
357
|
return;
|
|
170
358
|
}
|
|
171
359
|
if (this.trigger === history) {
|
|
172
|
-
|
|
360
|
+
// 嵌套路由执行顺序也是从父到子
|
|
361
|
+
if (location.href !== titleStore.url || route?.title) {
|
|
362
|
+
updateStore(titleStore, { url: location.href, title: route?.title });
|
|
363
|
+
}
|
|
173
364
|
}
|
|
174
|
-
const contentOrLoader = content ||
|
|
365
|
+
const contentOrLoader = content || getContent?.(params, this.shadowRoot || this);
|
|
175
366
|
this.loading(route);
|
|
176
367
|
if (contentOrLoader instanceof Promise) {
|
|
177
|
-
|
|
178
|
-
const isSomeLoader = () =>
|
|
368
|
+
this.#lastLoader = contentOrLoader;
|
|
369
|
+
const isSomeLoader = () => this.#lastLoader === contentOrLoader;
|
|
179
370
|
contentOrLoader
|
|
180
|
-
.then((
|
|
371
|
+
.then((newContent) => {
|
|
181
372
|
if (isSomeLoader())
|
|
182
|
-
|
|
373
|
+
this.#setContent(route, params, newContent);
|
|
183
374
|
})
|
|
184
375
|
.catch((err) => {
|
|
185
376
|
if (isSomeLoader())
|
|
@@ -187,123 +378,31 @@ export class GemRouteElement extends GemElement {
|
|
|
187
378
|
});
|
|
188
379
|
return;
|
|
189
380
|
}
|
|
190
|
-
|
|
191
|
-
};
|
|
192
|
-
this.routes = this.routes || routes;
|
|
193
|
-
}
|
|
194
|
-
mounted() {
|
|
195
|
-
this.effect(() => {
|
|
196
|
-
if (!__classPrivateFieldGet(this, _GemRouteElement_instances, "a", _GemRouteElement_scrollContainer_get))
|
|
197
|
-
return;
|
|
198
|
-
return addListener(history, 'beforechange', () => scrollPositionMap.set(history.currentKey, __classPrivateFieldGet(this, _GemRouteElement_instances, "a", _GemRouteElement_scrollContainer_get).scrollTop));
|
|
199
|
-
}, () => [this.scrollContainer]);
|
|
200
|
-
this.effect(
|
|
201
|
-
// 触发 this.#update
|
|
202
|
-
() => connect(this.trigger.store, () => this.setState({})), () => [this.trigger]);
|
|
203
|
-
this.effect(([key, path], old) => {
|
|
204
|
-
// 只有查询参数改变
|
|
205
|
-
if (old && key === old[0] && path === old[1]) {
|
|
206
|
-
__classPrivateFieldGet(this, _GemRouteElement_updateLocationStore, "f").call(this);
|
|
207
|
-
return;
|
|
208
|
-
}
|
|
209
|
-
this.update();
|
|
210
|
-
}, () => {
|
|
211
|
-
const { path, query, hash } = this.trigger.getParams();
|
|
212
|
-
return [this.key, path, query, hash];
|
|
381
|
+
this.#setContent(route, params, contentOrLoader);
|
|
213
382
|
});
|
|
214
|
-
}
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
}
|
|
218
|
-
render() {
|
|
219
|
-
const { content } = this.state;
|
|
220
|
-
if (content === undefined)
|
|
221
|
-
return;
|
|
222
|
-
if (!this.shadowRoot) {
|
|
223
|
-
if (content === INIT_CONTENT)
|
|
224
|
-
return;
|
|
225
|
-
return html `${content}`;
|
|
226
|
-
}
|
|
227
|
-
return html `
|
|
228
|
-
<style>
|
|
229
|
-
:host(:where(:not([hidden]))),
|
|
230
|
-
:not(:defined) {
|
|
231
|
-
display: contents;
|
|
232
|
-
}
|
|
233
|
-
</style>
|
|
234
|
-
${content === INIT_CONTENT ? html `<slot></slot>` : content}
|
|
235
|
-
`;
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
_GemRouteElement_lastLoader = new WeakMap(), _GemRouteElement_updateLocationStore = new WeakMap(), _GemRouteElement_updateScrollContainerPosition = new WeakMap(), _GemRouteElement_setContent = new WeakMap(), _GemRouteElement_instances = new WeakSet(), _GemRouteElement_scrollContainer_get = function _GemRouteElement_scrollContainer_get() {
|
|
239
|
-
return typeof this.scrollContainer === 'function' ? this.scrollContainer() : this.scrollContainer;
|
|
240
|
-
};
|
|
241
|
-
/**不要多个 `<gem-route>` 共享,因为那样会导致后面的元素卸载前触发更新 */
|
|
242
|
-
GemRouteElement.createLocationStore = () => {
|
|
243
|
-
const { path, query, hash, data } = history.getParams();
|
|
244
|
-
return createStore({ path, query, hash, data, params: {} });
|
|
245
|
-
};
|
|
246
|
-
GemRouteElement.findRoute = (target = [], path) => {
|
|
247
|
-
let defaultRoute = null;
|
|
248
|
-
let routes;
|
|
249
|
-
if (target instanceof Array) {
|
|
250
|
-
routes = target;
|
|
251
|
-
}
|
|
252
|
-
else {
|
|
253
|
-
routes = Object.values(target);
|
|
254
|
-
}
|
|
255
|
-
for (const route of routes) {
|
|
256
|
-
if ('*' === route.pattern) {
|
|
257
|
-
defaultRoute = route;
|
|
258
|
-
}
|
|
259
|
-
else {
|
|
260
|
-
const params = matchPath(route.pattern, path);
|
|
261
|
-
if (params) {
|
|
262
|
-
return { route, params };
|
|
263
|
-
}
|
|
264
|
-
}
|
|
265
|
-
}
|
|
266
|
-
return { route: defaultRoute };
|
|
267
|
-
};
|
|
268
|
-
__decorate([
|
|
269
|
-
boolattribute
|
|
270
|
-
], GemRouteElement.prototype, "transition", void 0);
|
|
271
|
-
__decorate([
|
|
272
|
-
property
|
|
273
|
-
], GemRouteElement.prototype, "routes", void 0);
|
|
274
|
-
__decorate([
|
|
275
|
-
property
|
|
276
|
-
], GemRouteElement.prototype, "locationStore", void 0);
|
|
277
|
-
__decorate([
|
|
278
|
-
property
|
|
279
|
-
], GemRouteElement.prototype, "key", void 0);
|
|
280
|
-
__decorate([
|
|
281
|
-
emitter
|
|
282
|
-
], GemRouteElement.prototype, "loading", void 0);
|
|
283
|
-
__decorate([
|
|
284
|
-
emitter
|
|
285
|
-
], GemRouteElement.prototype, "beforeroutechange", void 0);
|
|
286
|
-
__decorate([
|
|
287
|
-
emitter
|
|
288
|
-
], GemRouteElement.prototype, "routechange", void 0);
|
|
289
|
-
__decorate([
|
|
290
|
-
emitter
|
|
291
|
-
], GemRouteElement.prototype, "error", void 0);
|
|
292
|
-
__decorate([
|
|
293
|
-
property
|
|
294
|
-
], GemRouteElement.prototype, "scrollContainer", void 0);
|
|
295
|
-
__decorate([
|
|
296
|
-
property
|
|
297
|
-
], GemRouteElement.prototype, "scrollIgnoreHash", void 0);
|
|
298
|
-
__decorate([
|
|
299
|
-
property
|
|
300
|
-
], GemRouteElement.prototype, "trigger", void 0);
|
|
383
|
+
};
|
|
384
|
+
})();
|
|
385
|
+
export { GemLightRouteElement };
|
|
301
386
|
/**
|
|
302
|
-
* @customElement gem-
|
|
387
|
+
* @customElement gem-route
|
|
303
388
|
*/
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
389
|
+
let GemRouteElement = (() => {
|
|
390
|
+
let _classDecorators = [shadow()];
|
|
391
|
+
let _classDescriptor;
|
|
392
|
+
let _classExtraInitializers = [];
|
|
393
|
+
let _classThis;
|
|
394
|
+
let _classSuper = GemLightRouteElement;
|
|
395
|
+
var GemRouteElement = class extends _classSuper {
|
|
396
|
+
static { _classThis = this; }
|
|
397
|
+
static {
|
|
398
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
399
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
400
|
+
GemRouteElement = _classThis = _classDescriptor.value;
|
|
401
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
402
|
+
__runInitializers(_classThis, _classExtraInitializers);
|
|
403
|
+
}
|
|
404
|
+
};
|
|
405
|
+
return GemRouteElement = _classThis;
|
|
406
|
+
})();
|
|
407
|
+
export { GemRouteElement };
|
|
309
408
|
//# sourceMappingURL=route.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.js","sourceRoot":"","sources":["../../src/elements/base/route.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"route.js","sourceRoot":"","sources":["../../src/elements/base/route.ts"],"names":[],"mappings":"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"}
|
package/elements/base/title.d.ts
CHANGED
|
@@ -7,31 +7,23 @@
|
|
|
7
7
|
* 修改标题:titleStore 的 title 优先级高,比如 history 添加的 dialog Title
|
|
8
8
|
*
|
|
9
9
|
* - `<gem-route>` 匹配路由时自动设置 `route.title`
|
|
10
|
-
* -
|
|
11
|
-
* - 修改路径时,`history` 默认设置 `title` 为空
|
|
10
|
+
* - 修改路径(查询参数)时,`history` 默认设置 `title` 为空,运行 Modal 设置临时标题
|
|
12
11
|
* - 数据获取后,手动调用 `Title.setTitle`
|
|
13
12
|
* - `<gem-title>` 作为默认值设置
|
|
14
13
|
*/
|
|
15
14
|
import { GemElement } from '../../lib/element';
|
|
16
|
-
export declare const PREFIX: string;
|
|
17
|
-
export declare const SUFFIX: string;
|
|
18
15
|
/**
|
|
19
16
|
* @customElement gem-title
|
|
20
17
|
* @attr prefix
|
|
21
18
|
* @attr suffix
|
|
22
19
|
*/
|
|
23
20
|
export declare class GemTitleElement extends GemElement {
|
|
21
|
+
#private;
|
|
24
22
|
prefix: string;
|
|
25
23
|
suffix: string;
|
|
26
24
|
inert: boolean;
|
|
27
25
|
static title: string;
|
|
28
|
-
/**@deprecated */
|
|
29
|
-
static defaultPrefix: string;
|
|
30
|
-
/**@deprecated */
|
|
31
|
-
static defaultSuffix: string;
|
|
32
26
|
static setTitle(title: string): void;
|
|
33
|
-
|
|
34
|
-
mounted: () => void;
|
|
35
|
-
render(): import("lit-html/lib/template-result").TemplateResult;
|
|
27
|
+
render: () => import("lit-html/lib/template-result").TemplateResult;
|
|
36
28
|
}
|
|
37
29
|
//# sourceMappingURL=title.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"title.d.ts","sourceRoot":"","sources":["../../src/elements/base/title.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"title.d.ts","sourceRoot":"","sources":["../../src/elements/base/title.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,UAAU,EAAQ,MAAM,mBAAmB,CAAC;AAuBrD;;;;GAIG;AACH,qBACa,eAAgB,SAAQ,UAAU;;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,OAAO,CAAC;IAG9B,MAAM,CAAC,KAAK,SAAkB;IAE9B,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM;IAc7B,MAAM,8DAIJ;CACH"}
|