@mantou/gem 2.2.13 → 2.2.15

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.
Files changed (73) hide show
  1. package/dist/gem.js +7 -7
  2. package/dist/gem.mjs +7 -7
  3. package/elements/base/gesture.d.ts +7 -1
  4. package/elements/base/gesture.d.ts.map +1 -1
  5. package/elements/base/gesture.js +23 -15
  6. package/elements/base/gesture.js.map +1 -1
  7. package/elements/base/link.d.ts.map +1 -1
  8. package/elements/base/link.js +6 -3
  9. package/elements/base/link.js.map +1 -1
  10. package/elements/base/modal-factory.d.ts +1 -1
  11. package/elements/base/modal-factory.d.ts.map +1 -1
  12. package/elements/base/use.d.ts.map +1 -1
  13. package/elements/base/use.js +11 -0
  14. package/elements/base/use.js.map +1 -1
  15. package/helper/hmr.d.ts +3 -2
  16. package/helper/hmr.d.ts.map +1 -1
  17. package/helper/hmr.js +95 -23
  18. package/helper/hmr.js.map +1 -1
  19. package/helper/i18n.d.ts +2 -1
  20. package/helper/i18n.d.ts.map +1 -1
  21. package/helper/i18n.js +9 -1
  22. package/helper/i18n.js.map +1 -1
  23. package/helper/theme.d.ts.map +1 -1
  24. package/helper/theme.js +5 -0
  25. package/helper/theme.js.map +1 -1
  26. package/lib/decorators.d.ts +9 -1
  27. package/lib/decorators.d.ts.map +1 -1
  28. package/lib/decorators.js +4 -3
  29. package/lib/decorators.js.map +1 -1
  30. package/lib/history.d.ts +10 -7
  31. package/lib/history.d.ts.map +1 -1
  32. package/lib/history.js +20 -16
  33. package/lib/history.js.map +1 -1
  34. package/lib/lit-html.d.ts +15 -0
  35. package/lib/lit-html.d.ts.map +1 -1
  36. package/lib/lit-html.js +3 -1
  37. package/lib/lit-html.js.map +1 -1
  38. package/lib/reactive.d.ts +4 -1
  39. package/lib/reactive.d.ts.map +1 -1
  40. package/lib/reactive.js +41 -18
  41. package/lib/reactive.js.map +1 -1
  42. package/lib/server.d.ts +14 -0
  43. package/lib/server.d.ts.map +1 -0
  44. package/lib/server.js +43 -0
  45. package/lib/server.js.map +1 -0
  46. package/lib/store.d.ts +10 -1
  47. package/lib/store.d.ts.map +1 -1
  48. package/lib/store.js +36 -9
  49. package/lib/store.js.map +1 -1
  50. package/lib/utils.d.ts +2 -2
  51. package/lib/utils.d.ts.map +1 -1
  52. package/lib/utils.js +20 -7
  53. package/lib/utils.js.map +1 -1
  54. package/lib/version.d.ts +1 -1
  55. package/lib/version.js +1 -1
  56. package/package.json +1 -1
  57. package/src/elements/base/gesture.ts +26 -15
  58. package/src/elements/base/link.ts +5 -3
  59. package/src/elements/base/use.ts +11 -0
  60. package/src/helper/hmr.ts +105 -37
  61. package/src/helper/i18n.ts +12 -1
  62. package/src/helper/theme.ts +4 -0
  63. package/src/lib/decorators.ts +10 -10
  64. package/src/lib/history.ts +20 -16
  65. package/src/lib/lit-html.ts +3 -1
  66. package/src/lib/reactive.ts +40 -18
  67. package/src/lib/server.ts +45 -0
  68. package/src/lib/store.ts +40 -9
  69. package/src/lib/utils.ts +22 -7
  70. package/src/lib/version.ts +1 -1
  71. package/src/test/elements/gesture.test.ts +26 -1
  72. package/src/test/gem-element/basic.test.ts +20 -0
  73. package/src/test/store.test.ts +12 -0
package/lib/reactive.js CHANGED
@@ -1,6 +1,7 @@
1
1
  // biome-ignore-all lint/plugin/no_this_effect: 兼容生命周期
2
+ import { isServer } from './server';
2
3
  import { connect } from './store';
3
- import { addListener, addMicrotask, createUpdater, GemError, isArrayChange, LinkedList, randomStr, raw, } from './utils';
4
+ import { addListener, addMicrotask, assignState, createUpdater, GemError, isArrayChange, LinkedList, randomStr, raw, } from './utils';
4
5
  export let html = ((arr, ...args) => raw(arr, ...args.map((e) => (e instanceof Element ? e.outerHTML : e))));
5
6
  export let render = ((value, container) => (container.innerHTML = value));
6
7
  export function setEngine(h, r) {
@@ -10,14 +11,18 @@ export function setEngine(h, r) {
10
11
  let hydrationEngine = (_value, _container) => {
11
12
  return;
12
13
  };
13
- export function setHydrationEngine(engine) {
14
+ // 在元素首次渲染前恢复 SSR 的状态
15
+ let restoreState;
16
+ export function setHydrationEngine(engine, restore) {
14
17
  hydrationEngine = engine;
18
+ restoreState = restore;
15
19
  }
20
+ /** 渲染元素内容,SSR 时由水合引擎接管 */
21
+ export const _renderRoot = (value, container) => hydrationEngine(value, container) || render(value, container);
16
22
  const { assign, defineProperty } = Object;
17
23
  // https://github.com/tc39/proposal-decorator-metadata
18
24
  defineProperty(Symbol, 'metadata', { value: Symbol.for('Symbol.metadata') });
19
25
  const execCallback = (fun) => typeof fun === 'function' && fun();
20
- const ssrNativeQueueMicrotask = globalThis.nQM;
21
26
  // 读取构造样式表,跨多个 gem 工作
22
27
  export const SheetToken = Symbol.for('gem@sheetToken');
23
28
  // 更新元素,跨多个 gem 工作
@@ -136,7 +141,7 @@ const updateStyleSheets = (map, sheets, value) => {
136
141
  if (needUpdate) {
137
142
  // 避免重复更新,例如 list 元素增删,全 light dom 时 document 更新
138
143
  // 在 SSR 中应该区别 effect 强制执行
139
- addMicrotask(rootUpdateFnMap.get(map), ssrNativeQueueMicrotask);
144
+ addMicrotask(rootUpdateFnMap.get(map));
140
145
  }
141
146
  };
142
147
  const appleCSSStyleSheet = (ele, sheets) => {
@@ -187,10 +192,16 @@ const tick = (timeStamp = performance.now()) => {
187
192
  if (performance.now() > timeStamp + 50)
188
193
  return requestAnimationFrame(tick);
189
194
  const task = noBlockingTaskList.get();
190
- if (task) {
195
+ if (!task)
196
+ return;
197
+ // 出错时继续执行后面的任务,否则剩下的任务不会再被调度
198
+ try {
191
199
  task();
192
- tick(timeStamp);
193
200
  }
201
+ catch (err) {
202
+ reportError(err);
203
+ }
204
+ tick(timeStamp);
194
205
  };
195
206
  noBlockingTaskList.addEventListener('start', () => addMicrotask(tick));
196
207
  let currentConstructGemElement;
@@ -218,15 +229,15 @@ export class GemElement extends HTMLElement {
218
229
  const effect = ele.#effectList.at(0);
219
230
  // https://github.com/mantou132/gem/issues/203
220
231
  // SSR 不会执行 initEffect,应该跳过
221
- if (!ssrNativeQueueMicrotask && ele.#isMounted && effect && !effect.initialized) {
232
+ if (!isServer && ele.#isMounted && effect && !effect.initialized) {
222
233
  throw new GemError(`Don't set state sync before insert the DOM`);
223
234
  }
224
- assign(state, payload);
235
+ assignState(state, payload);
225
236
  // 避免无限刷新
226
237
  // 挂载前 set state 不应该触发更新
227
238
  // SSR 中渲染 <gem-route>,其他情况的 SSR 应该也可以执行
228
239
  if (!ele.#rendering && ele.#isMounted)
229
- addMicrotask(ele.#update, ssrNativeQueueMicrotask);
240
+ addMicrotask(ele.#update);
230
241
  });
231
242
  ele.#internals.stateList.push(state);
232
243
  return state;
@@ -299,12 +310,18 @@ export class GemElement extends HTMLElement {
299
310
  const temp = item ? item.render() : isLight ? undefined : html `<slot></slot>`;
300
311
  if (temp === undefined)
301
312
  return;
302
- const r = temp !== null ? temp : html `<style>${isLight ? '@scope' : ':host'}{&{display:none!important;}}</style>`;
303
- hydrationEngine(r, this.#renderRoot) || render(r, this.#renderRoot);
313
+ // `<style>` 中不使用绑定,SSR 水合不支持
314
+ const r = temp ??
315
+ (isLight
316
+ ? html `<style>@scope{&{display:none!important;}}</style>`
317
+ : html `<style>:host{&{display:none!important;}}</style>`);
318
+ _renderRoot(r, this.#renderRoot);
304
319
  }
305
320
  catch (err) {
306
- this.dispatchEvent(new CustomEvent(_RenderErrorEvent, { bubbles: true, composed: true, detail: err }));
307
- throw err;
321
+ const evt = new CustomEvent(_RenderErrorEvent, { bubbles: true, composed: true, cancelable: true, detail: err });
322
+ // `@fallback` 处理了错误
323
+ if (this.dispatchEvent(evt))
324
+ throw err;
308
325
  }
309
326
  finally {
310
327
  this.#rendering = false;
@@ -316,11 +333,13 @@ export class GemElement extends HTMLElement {
316
333
  // 当有渲染函数,但是没一个符合条件时跳过
317
334
  (item || !this.#renderList.length)) {
318
335
  this.#render(item);
319
- addMicrotask(this.#execEffect);
336
+ if (!isServer)
337
+ addMicrotask(this.#execEffect);
320
338
  }
321
339
  };
322
340
  #update = () => {
323
- if (this.#metadata.noBlocking) {
341
+ // SSR 需要同步渲染
342
+ if (this.#metadata.noBlocking && !isServer) {
324
343
  noBlockingTaskList.add(this.#updateCallback);
325
344
  }
326
345
  else {
@@ -365,7 +384,8 @@ export class GemElement extends HTMLElement {
365
384
  this.#renderList.push({ render: this.render.bind(this), condition: this.shouldUpdate?.bind(this) });
366
385
  };
367
386
  #disconnectStore;
368
- #connectedCallback = async () => {
387
+ // 同步执行,SSR 需要捕获渲染错误
388
+ #connectedCallback = () => {
369
389
  if (this.#isAppendReason) {
370
390
  this.#isAppendReason = false;
371
391
  // https://github.com/mantou132/gem/issues/202
@@ -383,12 +403,15 @@ export class GemElement extends HTMLElement {
383
403
  if (!mode && this.#renderList.length && !penetrable)
384
404
  this.#internals.states.add(BoundaryCSSState);
385
405
  this.#disconnectStore = observedStores?.map((store) => connect(store, this.#update));
406
+ restoreState?.(this);
386
407
  this.#render(this.#renderItem);
387
408
  this.#isMounted = true;
388
409
  this.#clearStyle = this.#prepareStyle();
389
410
  // 等待所有元素的样式被应用,再执行回调
390
411
  // 这让 mounted 和 effect 回调和其他回调一样保持一样的异步行为
391
- addMicrotask(this.#initEffect);
412
+ // SSR 不执行副作用
413
+ if (!isServer)
414
+ addMicrotask(this.#initEffect);
392
415
  };
393
416
  /**
394
417
  * @private
@@ -396,7 +419,7 @@ export class GemElement extends HTMLElement {
396
419
  * use `@mounted`
397
420
  */
398
421
  connectedCallback() {
399
- if (this.#metadata.noBlocking) {
422
+ if (this.#metadata.noBlocking && !isServer) {
400
423
  noBlockingTaskList.add(this.#connectedCallback);
401
424
  }
402
425
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"reactive.js","sourceRoot":"","sources":["../src/lib/reactive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reactive.js","sourceRoot":"","sources":["../src/lib/reactive.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /** 服务端渲染时不执行副作用,同步更新 */
2
+ export declare const isServer: boolean;
3
+ /**
4
+ * SSR 时返回当前请求中 `key` 对应的值,第一次访问时使用 `init` 创建,
5
+ * 不在请求中(包括客户端)时返回 `key` 本身
6
+ */
7
+ export declare const getRequestValue: <T extends object>(key: T, init: () => T) => T;
8
+ /**
9
+ * SSR 时对象的读写转到当前请求的副本上,副本在第一次访问时从原对象浅复制
10
+ *
11
+ * 嵌套的对象没有复制,原地修改会影响所有请求,应该替换顶层属性,例如 `store({ list: [...store.list, item] })`
12
+ */
13
+ export declare const isolate: <T extends object>(target: T) => T;
14
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/lib/server.ts"],"names":[],"mappings":"AASA,wBAAwB;AACxB,eAAO,MAAM,QAAQ,SAAoB,CAAC;AAE1C;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAO3D,CAAC;AAEjB;;;;GAIG;AACH,eAAO,MAAM,OAAO,EAAE,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,KAAK,CAcjC,CAAC"}
package/lib/server.js ADDED
@@ -0,0 +1,43 @@
1
+ // SSR 相关的功能都在这里
2
+ //
3
+ // `@mantou/gem-ssr` 在加载 Gem 前提供 `__GEM_SSR__`,返回当前请求的作用域,
4
+ // 客户端构建时 `unplugin-gem` 把 `globalThis.__GEM_SSR__` 替换成 `undefined`,SSR 代码会被压缩移除
5
+ const { get, set, has, deleteProperty, defineProperty, getOwnPropertyDescriptor, ownKeys } = Reflect;
6
+ const getRequestScope = globalThis.__GEM_SSR__;
7
+ /** 服务端渲染时不执行副作用,同步更新 */
8
+ export const isServer = !!getRequestScope;
9
+ /**
10
+ * SSR 时返回当前请求中 `key` 对应的值,第一次访问时使用 `init` 创建,
11
+ * 不在请求中(包括客户端)时返回 `key` 本身
12
+ */
13
+ export const getRequestValue = getRequestScope
14
+ ? (key, init) => {
15
+ const scope = getRequestScope();
16
+ if (!scope)
17
+ return key;
18
+ if (!scope.has(key))
19
+ scope.set(key, init());
20
+ return scope.get(key);
21
+ }
22
+ : (key) => key;
23
+ /**
24
+ * SSR 时对象的读写转到当前请求的副本上,副本在第一次访问时从原对象浅复制
25
+ *
26
+ * 嵌套的对象没有复制,原地修改会影响所有请求,应该替换顶层属性,例如 `store({ list: [...store.list, item] })`
27
+ */
28
+ export const isolate = getRequestScope
29
+ ? (target) => {
30
+ const copy = () => ({ ...target });
31
+ const current = () => getRequestValue(target, copy);
32
+ return new Proxy(target, {
33
+ get: (_, key) => get(current(), key),
34
+ set: (_, key, value) => set(current(), key, value),
35
+ has: (_, key) => has(current(), key),
36
+ deleteProperty: (_, key) => deleteProperty(current(), key),
37
+ defineProperty: (_, key, descriptor) => defineProperty(current(), key, descriptor),
38
+ getOwnPropertyDescriptor: (_, key) => getOwnPropertyDescriptor(current(), key),
39
+ ownKeys: () => ownKeys(current()),
40
+ });
41
+ }
42
+ : (target) => target;
43
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/lib/server.ts"],"names":[],"mappings":"AAAA,gBAAgB;AAChB,EAAE;AACF,0DAA0D;AAC1D,gFAAgF;AAEhF,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,cAAc,EAAE,cAAc,EAAE,wBAAwB,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;AAErG,MAAM,eAAe,GAA0D,UAAkB,CAAC,WAAW,CAAC;AAE9G,wBAAwB;AACxB,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAC,eAAe,CAAC;AAE1C;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAmD,eAAe;IAC5F,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;QACZ,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;QAChC,IAAI,CAAC,KAAK;YAAE,OAAO,GAAG,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5C,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IACH,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC;AAEjB;;;;GAIG;AACH,MAAM,CAAC,MAAM,OAAO,GAAuC,eAAe;IACxE,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE;QACT,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACpD,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE;YACvB,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC;YACpC,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC;YAClD,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC;YACpC,cAAc,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC;YAC1D,cAAc,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,UAAU,CAAC;YAClF,wBAAwB,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,wBAAwB,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC;YAC9E,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;SAClC,CAAC,CAAC;IACL,CAAC;IACH,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC"}
package/lib/store.d.ts CHANGED
@@ -1,6 +1,14 @@
1
1
  import { type Updater } from './utils';
2
2
  export type Store<T = any> = Updater<T>;
3
- export declare function createStore<T = any>(originStore: T): ((value?: Partial<T>) => void) & Omit<{
3
+ /** SSR 时当前请求中更新过的有 key 的 store,供 `@mantou/gem-ssr` 使用 */
4
+ export declare const _getUpdatedStores: () => Map<any, any>;
5
+ declare let restoreStore: ((key: string) => object | undefined) | undefined;
6
+ /** 设置客户端恢复 store 的方法,供 `@mantou/gem-ssr` 使用 */
7
+ export declare function _setStoreRestorer(restorer: typeof restoreStore): void;
8
+ /**
9
+ * 创建 store,`key` 用来在 SSR 时同步服务端的值,`swc-plugin-gem` 的 `ssr` 选项会为模块顶层的 store 自动添加
10
+ */
11
+ export declare function createStore<T = any>(originStore: T, key?: string): ((value?: Partial<T>) => void) & Omit<{
4
12
  name: never;
5
13
  apply: never;
6
14
  call: never;
@@ -14,4 +22,5 @@ export declare function createStore<T = any>(originStore: T): ((value?: Partial<
14
22
  [Symbol.metadata]: never;
15
23
  }, keyof T> & T;
16
24
  export declare function connect(store: Store<any>, func: () => void): () => boolean | undefined;
25
+ export {};
17
26
  //# sourceMappingURL=store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/lib/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,OAAO,EAAE,MAAM,SAAS,CAAC;AAEpE,MAAM,MAAM,KAAK,CAAC,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;AAKxC,wBAAgB,WAAW,CAAC,CAAC,GAAG,GAAG,EAAE,WAAW,EAAE,CAAC,aACC,OAAO,CAAC,CAAC,CAAC;;;;;;;;;;;;gBAO7D;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,IAAI,6BAI1D"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/lib/store.ts"],"names":[],"mappings":"AACA,OAAO,EAA4C,KAAK,OAAO,EAAE,MAAM,SAAS,CAAC;AAEjF,MAAM,MAAM,KAAK,CAAC,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;AAUxC,yDAAyD;AACzD,eAAO,MAAM,iBAAiB,qBAAwD,CAAC;AAGvF,QAAA,IAAI,YAAY,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC;AAEpE,+CAA+C;AAC/C,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,OAAO,YAAY,QAE9D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,CAAC,GAAG,GAAG,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,aAIzB,OAAO,CAAC,CAAC,CAAC;;;;;;;;;;;;gBAcjD;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,IAAI,6BAK1D"}
package/lib/store.js CHANGED
@@ -1,17 +1,44 @@
1
- import { addMicrotask, createUpdater } from './utils';
1
+ import { getRequestValue, isolate, isServer } from './server';
2
+ import { addMicrotask, assignState, createUpdater } from './utils';
2
3
  /**@internal */
3
4
  export const _StoreListenerMap = new WeakMap();
4
- export function createStore(originStore) {
5
- const store = createUpdater(originStore, (value) => {
6
- // biome-ignore lint/plugin/assign: 未知类型
7
- Object.assign(store, value);
8
- _StoreListenerMap.get(store)?.forEach((func) => addMicrotask(func));
9
- });
10
- _StoreListenerMap.set(store, new Set());
5
+ const createListeners = () => new Set();
6
+ // SSR 时当前请求中更新过的有 key 的 store,渲染后输出到页面中
7
+ const updatedStores = new Map();
8
+ /** SSR 时当前请求中更新过的有 key 的 store,供 `@mantou/gem-ssr` 使用 */
9
+ export const _getUpdatedStores = () => getRequestValue(updatedStores, () => new Map());
10
+ // 客户端读取服务端渲染时 store 的值
11
+ let restoreStore;
12
+ /** 设置客户端恢复 store 的方法,供 `@mantou/gem-ssr` 使用 */
13
+ export function _setStoreRestorer(restorer) {
14
+ restoreStore = restorer;
15
+ }
16
+ /**
17
+ * 创建 store,`key` 用来在 SSR 时同步服务端的值,`swc-plugin-gem` 的 `ssr` 选项会为模块顶层的 store 自动添加
18
+ */
19
+ export function createStore(originStore, key) {
20
+ const listeners = createListeners();
21
+ // SSR 时每个请求使用独立的值
22
+ const store = isolate(createUpdater(originStore, (value) => {
23
+ assignState(store, value);
24
+ listeners.forEach(addMicrotask);
25
+ if (!isServer)
26
+ return;
27
+ // SSR 时请求中添加的监听器只属于当前请求,其他请求更新 store 时不会触发
28
+ getRequestValue(listeners, createListeners).forEach(addMicrotask);
29
+ const updated = _getUpdatedStores();
30
+ // 不在请求中时更新的是全局的值,客户端也一样
31
+ if (key && updated !== updatedStores)
32
+ updated.set(key, store);
33
+ }));
34
+ if (key && restoreStore)
35
+ assignState(store, restoreStore(key));
36
+ _StoreListenerMap.set(store, listeners);
11
37
  return store;
12
38
  }
13
39
  export function connect(store, func) {
14
- const listeners = _StoreListenerMap.get(store);
40
+ const storeListeners = _StoreListenerMap.get(store);
41
+ const listeners = storeListeners && getRequestValue(storeListeners, createListeners);
15
42
  listeners?.add(func);
16
43
  return () => listeners?.delete(func);
17
44
  }
package/lib/store.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../src/lib/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAgB,MAAM,SAAS,CAAC;AAIpE,eAAe;AACf,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,OAAO,EAA+B,CAAC;AAE5E,MAAM,UAAU,WAAW,CAAU,WAAc;IACjD,MAAM,KAAK,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC,KAAkB,EAAE,EAAE;QAC9D,wCAAwC;QACxC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC5B,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IACH,iBAAiB,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,GAAG,EAAc,CAAC,CAAC;IACpD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,KAAiB,EAAE,IAAgB;IACzD,MAAM,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC/C,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;IACrB,OAAO,GAAG,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../src/lib/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAgB,MAAM,SAAS,CAAC;AAIjF,eAAe;AACf,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,OAAO,EAA+B,CAAC;AAE5E,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,IAAI,GAAG,EAAc,CAAC;AAEpD,wCAAwC;AACxC,MAAM,aAAa,GAAG,IAAI,GAAG,EAAsB,CAAC;AAEpD,yDAAyD;AACzD,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,EAAE,CAAC,eAAe,CAAC,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;AAEvF,uBAAuB;AACvB,IAAI,YAA+D,CAAC;AAEpE,+CAA+C;AAC/C,MAAM,UAAU,iBAAiB,CAAC,QAA6B;IAC7D,YAAY,GAAG,QAAQ,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAU,WAAc,EAAE,GAAY;IAC/D,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;IACpC,kBAAkB;IAClB,MAAM,KAAK,GAAG,OAAO,CACnB,aAAa,CAAC,WAAW,EAAE,CAAC,KAAkB,EAAE,EAAE;QAChD,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC1B,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAChC,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,2CAA2C;QAC3C,eAAe,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAClE,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;QACpC,wBAAwB;QACxB,IAAI,GAAG,IAAI,OAAO,KAAK,aAAa;YAAE,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAChE,CAAC,CAAC,CACH,CAAC;IACF,IAAI,GAAG,IAAI,YAAY;QAAE,WAAW,CAAC,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,iBAAiB,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,KAAiB,EAAE,IAAgB;IACzD,MAAM,cAAc,GAAG,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,cAAc,IAAI,eAAe,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;IACrF,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;IACrB,OAAO,GAAG,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC"}
package/lib/utils.d.ts CHANGED
@@ -1,5 +1,4 @@
1
- declare function queueMicrotask(cb: () => void): void;
2
- export declare function addMicrotask(func: () => void, method?: typeof queueMicrotask): void;
1
+ export declare function addMicrotask(func: () => void): void;
3
2
  type OverrideFn = {
4
3
  name: never;
5
4
  apply: never;
@@ -13,6 +12,7 @@ type OverrideFn = {
13
12
  [Symbol.hasInstance]: never;
14
13
  [Symbol.metadata]: never;
15
14
  };
15
+ export declare function assignState(state: any, payload: any): void;
16
16
  export declare function createUpdater<T, Fn = (payload?: Partial<T>) => any>(initState: T, fn: Fn): Fn & Omit<OverrideFn, keyof T> & T;
17
17
  export type Updater<T, Fn = (payload?: Partial<T>) => any> = ReturnType<typeof createUpdater<T, Fn>>;
18
18
  export declare function absoluteLocation(currentPath?: string, relativePath?: string): string;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/lib/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/lib/utils.ts"],"names":[],"mappings":"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"}
package/lib/utils.js CHANGED
@@ -1,17 +1,30 @@
1
- const { assign, fromEntries, entries, keys } = Object;
1
+ import { getRequestValue } from './server';
2
+ const { assign, fromEntries, entries, keys, defineProperty, hasOwn } = Object;
2
3
  // 用原生 Chrome 找不到调用栈
3
4
  function queueMicrotask(cb) {
4
5
  Promise.resolve().then(cb);
5
6
  }
6
7
  const microtaskSet = new Set();
7
- export function addMicrotask(func, method = queueMicrotask) {
8
- if (microtaskSet.has(func))
8
+ const createMicrotaskSet = () => new Set();
9
+ export function addMicrotask(func) {
10
+ // SSR 时不同请求的同一个函数都需要执行
11
+ const taskSet = getRequestValue(microtaskSet, createMicrotaskSet);
12
+ if (taskSet.has(func))
9
13
  return;
10
- method(() => {
11
- microtaskSet.delete(func);
14
+ queueMicrotask(() => {
15
+ taskSet.delete(func);
12
16
  func();
13
17
  });
14
- microtaskSet.add(func);
18
+ taskSet.add(func);
19
+ }
20
+ // 删除后继承的 `name` `length` 只读,直接赋值会报错,需要先定义成自有属性
21
+ export function assignState(state, payload) {
22
+ for (const key of ['name', 'length']) {
23
+ if (payload && hasOwn(payload, key)) {
24
+ defineProperty(state, key, { value: payload[key], writable: true, enumerable: true, configurable: true });
25
+ }
26
+ }
27
+ assign(state, payload);
15
28
  }
16
29
  // 注意 typeof state === 'function' 但是没有 Function 的方法和属性
17
30
  export function createUpdater(initState, fn) {
@@ -20,7 +33,7 @@ export function createUpdater(initState, fn) {
20
33
  // setPrototypeOf(state, null);
21
34
  delete state.name;
22
35
  delete state.length;
23
- assign(state, initState);
36
+ assignState(state, initState);
24
37
  // ts 不允许直接 Omit 掉 Fn 上的属性
25
38
  // 只能利用 ts plugin 移除多余的自动完成项
26
39
  return state;
package/lib/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/lib/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/lib/utils.ts"],"names":[],"mappings":"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"}
package/lib/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const version = "2.2.13";
1
+ export declare const version = "2.2.15";
2
2
  //# sourceMappingURL=version.d.ts.map
package/lib/version.js CHANGED
@@ -1,2 +1,2 @@
1
- export const version = '2.2.13';
1
+ export const version = '2.2.15';
2
2
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mantou/gem",
3
- "version": "2.2.13",
3
+ "version": "2.2.15",
4
4
  "description": "💎 使用自定义元素的轻量级 WebApp 开发框架",
5
5
  "keywords": [
6
6
  "frontend",