@mantou/gem 1.7.0 → 1.7.2

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 (98) hide show
  1. package/dist/gem.es.js +402 -543
  2. package/dist/gem.umd.js +27 -33
  3. package/elements/base/dialog.d.ts +9 -7
  4. package/elements/base/dialog.d.ts.map +1 -1
  5. package/elements/base/dialog.js +12 -3
  6. package/elements/base/dialog.js.map +1 -1
  7. package/elements/base/gesture.d.ts +4 -13
  8. package/elements/base/gesture.d.ts.map +1 -1
  9. package/elements/base/gesture.js +152 -135
  10. package/elements/base/gesture.js.map +1 -1
  11. package/elements/base/link.d.ts +12 -9
  12. package/elements/base/link.d.ts.map +1 -1
  13. package/elements/base/link.js +81 -62
  14. package/elements/base/link.js.map +1 -1
  15. package/elements/base/modal-factory.d.ts +104 -80
  16. package/elements/base/modal-factory.d.ts.map +1 -1
  17. package/elements/base/modal-factory.js +12 -8
  18. package/elements/base/modal-factory.js.map +1 -1
  19. package/elements/base/reflect.js.map +1 -1
  20. package/elements/base/route.d.ts +12 -5
  21. package/elements/base/route.d.ts.map +1 -1
  22. package/elements/base/route.js +17 -5
  23. package/elements/base/route.js.map +1 -1
  24. package/elements/base/title.d.ts +3 -1
  25. package/elements/base/title.d.ts.map +1 -1
  26. package/elements/base/title.js +14 -16
  27. package/elements/base/title.js.map +1 -1
  28. package/elements/base/unsafe.js +1 -1
  29. package/elements/base/unsafe.js.map +1 -1
  30. package/elements/base/use.d.ts +1 -1
  31. package/elements/base/use.d.ts.map +1 -1
  32. package/elements/base/use.js +28 -20
  33. package/elements/base/use.js.map +1 -1
  34. package/helper/i18n.d.ts +4 -4
  35. package/helper/i18n.d.ts.map +1 -1
  36. package/helper/i18n.js.map +1 -1
  37. package/helper/mediaquery.d.ts +16 -18
  38. package/helper/mediaquery.d.ts.map +1 -1
  39. package/helper/mediaquery.js +42 -41
  40. package/helper/mediaquery.js.map +1 -1
  41. package/helper/request.d.ts +1 -1
  42. package/helper/request.d.ts.map +1 -1
  43. package/helper/request.js.map +1 -1
  44. package/helper/ssr-shim.d.ts +2 -0
  45. package/helper/ssr-shim.d.ts.map +1 -0
  46. package/helper/ssr-shim.js +29 -0
  47. package/helper/ssr-shim.js.map +1 -0
  48. package/helper/theme.d.ts +2 -2
  49. package/helper/theme.d.ts.map +1 -1
  50. package/helper/theme.js +20 -24
  51. package/helper/theme.js.map +1 -1
  52. package/index.d.ts +0 -10
  53. package/index.d.ts.map +1 -1
  54. package/index.js +0 -7
  55. package/index.js.map +1 -1
  56. package/lib/decorators.d.ts +4 -4
  57. package/lib/decorators.d.ts.map +1 -1
  58. package/lib/decorators.js +1 -2
  59. package/lib/decorators.js.map +1 -1
  60. package/lib/element.d.ts +16 -10
  61. package/lib/element.d.ts.map +1 -1
  62. package/lib/element.js +57 -79
  63. package/lib/element.js.map +1 -1
  64. package/lib/history.d.ts +1 -1
  65. package/lib/history.d.ts.map +1 -1
  66. package/lib/history.js +2 -2
  67. package/lib/history.js.map +1 -1
  68. package/lib/store.d.ts +2 -2
  69. package/lib/store.d.ts.map +1 -1
  70. package/lib/store.js.map +1 -1
  71. package/lib/utils.d.ts +8 -32
  72. package/lib/utils.d.ts.map +1 -1
  73. package/lib/utils.js +6 -21
  74. package/lib/utils.js.map +1 -1
  75. package/lib/version.d.ts +1 -1
  76. package/lib/version.js +1 -1
  77. package/package.json +2 -2
  78. package/src/elements/base/dialog.ts +10 -3
  79. package/src/elements/base/gesture.ts +52 -46
  80. package/src/elements/base/link.ts +69 -61
  81. package/src/elements/base/modal-factory.ts +5 -0
  82. package/src/elements/base/route.ts +22 -5
  83. package/src/elements/base/title.ts +8 -11
  84. package/src/elements/base/unsafe.ts +1 -1
  85. package/src/elements/base/use.ts +4 -6
  86. package/src/helper/i18n.ts +3 -3
  87. package/src/helper/mediaquery.ts +43 -42
  88. package/src/helper/ssr-shim.ts +29 -0
  89. package/src/helper/theme.ts +22 -24
  90. package/src/index.ts +0 -16
  91. package/src/lib/decorators.ts +1 -2
  92. package/src/lib/element.ts +56 -71
  93. package/src/lib/history.ts +2 -1
  94. package/src/lib/utils.ts +10 -42
  95. package/src/lib/version.ts +1 -1
  96. package/src/test/gem-element/decorators.test.ts +6 -6
  97. package/src/test/history.test.ts +3 -1
  98. package/src/test/utils.test.ts +8 -1
@@ -1,64 +1,65 @@
1
1
  // https://gist.github.com/gokulkrishh/242e68d1ee94ad05f488
2
2
  // https://mediag.com/news/popular-screen-resolutions-designing-for-all/
3
- const matche = (query) => window.matchMedia(query).matches;
3
+ const match = (query) => window.matchMedia(query).matches;
4
4
  export const mediaQuery = {
5
5
  PRINT: 'print',
6
6
  get isPrint() {
7
- return matche(this.PRINT);
7
+ return match(this.PRINT);
8
8
  },
9
9
  HOVER: '(hover: hover)',
10
10
  get isHover() {
11
- return matche(this.HOVER);
11
+ return match(this.HOVER);
12
12
  },
13
- PHONE: '(min-width: 319px) and (max-width: 480px)',
14
- get isPhone() {
15
- return matche(this.PHONE);
16
- },
17
- LAPTOP: '(min-width: 1023px) and (max-width: 1280px) and (orientation: landscape)',
18
- get isLaptop() {
19
- return matche(this.LAPTOP);
20
- },
21
- DESKTOP: '(min-width: 1279px) and (orientation: landscape)',
22
- get isDesktop() {
23
- return matche(this.DESKTOP);
13
+ PWA: '(display-mode: standalone)',
14
+ // PWA: '(display-mode: browser)', // debugging
15
+ get isPWA() {
16
+ return match(this.PWA);
24
17
  },
25
- WIDTHSCREEN: '(min-width: 1919px) and (orientation: landscape)',
26
- get isWidthScreen() {
27
- return matche(this.WIDTHSCREEN);
18
+ MOTION_REDUCE: '(prefers-reduced-motion: reduce)',
19
+ get isMotionReduce() {
20
+ return match(this.MOTION_REDUCE);
28
21
  },
29
- PHONE_LANDSCAPE: '(min-width: 479px) and (max-width: 959px) and (orientation: landscape)',
30
- // PHONE_LANDSCAPE: '(min-width: 481px) and (max-width: 959px)',
31
- get isPhoneLandscape() {
32
- return matche(this.PHONE_LANDSCAPE);
22
+ DATA_REDUCE: '(prefers-reduced-data: reduce)',
23
+ get isDataReduce() {
24
+ return match(this.DATA_REDUCE);
33
25
  },
34
- TABLET: '(min-width: 768px) and (max-width: 1024px)',
35
- get isTablet() {
36
- return matche(this.TABLET);
26
+ WATCH: '(width < 320px)',
27
+ get isWatch() {
28
+ return match(this.WATCH);
37
29
  },
38
- SMALL_PHONE: '(min-width: 319px) and (max-width: 480px) and (max-height: 640px)',
30
+ SMALL_PHONE: '(320px <= width <= 480px) and (height <= 640px)',
39
31
  get isSmallPhone() {
40
- return matche(this.SMALL_PHONE);
32
+ return match(this.SMALL_PHONE);
41
33
  },
42
- WATCH: '(max-width: 319px)',
43
- get isWatch() {
44
- return matche(this.WATCH);
34
+ PHONE: '(320px <= width <= 480px)',
35
+ get isPhone() {
36
+ return match(this.PHONE);
37
+ },
38
+ PHONE_LANDSCAPE: '(480px < width < 960px) and (orientation: landscape)',
39
+ // PHONE_LANDSCAPE: '(480px < width < 960px)',
40
+ get isPhoneLandscape() {
41
+ return match(this.PHONE_LANDSCAPE);
45
42
  },
46
- SHORT: '(min-width: 479px) and (max-height: 320px)',
43
+ // Widget
44
+ SHORT: '(width >= 480px) and (height <= 320px)',
47
45
  get isShort() {
48
- return matche(this.SHORT);
46
+ return match(this.SHORT);
49
47
  },
50
- PWA: '(display-mode: standalone)',
51
- // PWA: '(display-mode: browser)', // debugging
52
- get isPWA() {
53
- return matche(this.PWA);
48
+ // 1280 x 850
49
+ // 1024 x 768
50
+ TABLET: '(480px < width <= 1280px)',
51
+ get isTablet() {
52
+ return match(this.TABLET);
54
53
  },
55
- MOTION_REDUCE: '(prefers-reduced-motion: reduce)',
56
- get isMotionReduce() {
57
- return matche(this.MOTION_REDUCE);
54
+ // 1366x768
55
+ DESKTOP: '(width > 1280px) and (orientation: landscape)',
56
+ get isDesktop() {
57
+ return match(this.DESKTOP);
58
58
  },
59
- DATA_REDUCE: '(prefers-reduced-data: reduce)',
60
- get isDataReduce() {
61
- return matche(this.DATA_REDUCE);
59
+ // 1920x1080
60
+ WIDTHSCREEN: '(width >= 1920px) and (orientation: landscape)',
61
+ get isWidthScreen() {
62
+ return match(this.WIDTHSCREEN);
62
63
  },
63
64
  };
64
65
  //# sourceMappingURL=mediaquery.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mediaquery.js","sourceRoot":"","sources":["../src/helper/mediaquery.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,wEAAwE;AAExE,MAAM,MAAM,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;AAEnE,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,KAAK,EAAE,OAAO;IACd,IAAI,OAAO;QACT,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IACD,KAAK,EAAE,gBAAgB;IACvB,IAAI,OAAO;QACT,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,EAAE,2CAA2C;IAClD,IAAI,OAAO;QACT,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM,EAAE,0EAA0E;IAClF,IAAI,QAAQ;QACV,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO,EAAE,kDAAkD;IAC3D,IAAI,SAAS;QACX,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED,WAAW,EAAE,kDAAkD;IAC/D,IAAI,aAAa;QACf,OAAO,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;IAED,eAAe,EAAE,wEAAwE;IACzF,gEAAgE;IAChE,IAAI,gBAAgB;QAClB,OAAO,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACtC,CAAC;IAED,MAAM,EAAE,4CAA4C;IACpD,IAAI,QAAQ;QACV,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,WAAW,EAAE,mEAAmE;IAChF,IAAI,YAAY;QACd,OAAO,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,EAAE,oBAAoB;IAC3B,IAAI,OAAO;QACT,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,EAAE,4CAA4C;IACnD,IAAI,OAAO;QACT,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,GAAG,EAAE,4BAA4B;IACjC,+CAA+C;IAC/C,IAAI,KAAK;QACP,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,aAAa,EAAE,kCAAkC;IACjD,IAAI,cAAc;QAChB,OAAO,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IAED,WAAW,EAAE,gCAAgC;IAC7C,IAAI,YAAY;QACd,OAAO,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"mediaquery.js","sourceRoot":"","sources":["../src/helper/mediaquery.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,wEAAwE;AAExE,MAAM,KAAK,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;AAElE,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,KAAK,EAAE,OAAO;IACd,IAAI,OAAO;QACT,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,KAAK,EAAE,gBAAgB;IACvB,IAAI,OAAO;QACT,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,GAAG,EAAE,4BAA4B;IACjC,+CAA+C;IAC/C,IAAI,KAAK;QACP,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,aAAa,EAAE,kCAAkC;IACjD,IAAI,cAAc;QAChB,OAAO,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACnC,CAAC;IAED,WAAW,EAAE,gCAAgC;IAC7C,IAAI,YAAY;QACd,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,EAAE,iBAAiB;IACxB,IAAI,OAAO;QACT,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,WAAW,EAAE,iDAAiD;IAC9D,IAAI,YAAY;QACd,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,EAAE,2BAA2B;IAClC,IAAI,OAAO;QACT,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,eAAe,EAAE,sDAAsD;IACvE,8CAA8C;IAC9C,IAAI,gBAAgB;QAClB,OAAO,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACrC,CAAC;IAED,SAAS;IACT,KAAK,EAAE,wCAAwC;IAC/C,IAAI,OAAO;QACT,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,aAAa;IACb,aAAa;IACb,MAAM,EAAE,2BAA2B;IACnC,IAAI,QAAQ;QACV,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED,WAAW;IACX,OAAO,EAAE,+CAA+C;IACxD,IAAI,SAAS;QACX,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED,YAAY;IACZ,WAAW,EAAE,gDAAgD;IAC7D,IAAI,aAAa;QACf,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACjC,CAAC;CACF,CAAC"}
@@ -1,6 +1,6 @@
1
1
  export declare const defaultReqInit: RequestInit;
2
2
  export declare function request<T>(uri: string, options?: RequestInit): Promise<T>;
3
- declare type ReqBody = Record<string, unknown> | BodyInit;
3
+ type ReqBody = Record<string, unknown> | BodyInit;
4
4
  export declare function get<T>(url: string, params?: Record<string, string | number>): Promise<T>;
5
5
  export declare function del<T>(url: string, params?: Record<string, string | number>): Promise<T>;
6
6
  export declare function put<T>(url: string, body?: ReqBody): Promise<T>;
@@ -1 +1 @@
1
- {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../src/helper/request.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,EAAE,WAI5B,CAAC;AAEF,wBAAsB,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,CAAC,CAAC,CAcnF;AAED,aAAK,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC;AA0BlD,wBAAgB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,cAE3E;AACD,wBAAgB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,cAE3E;AACD,wBAAgB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,cAEjD;AACD,wBAAgB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,cAElD"}
1
+ {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../src/helper/request.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,EAAE,WAI5B,CAAC;AAEF,wBAAsB,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,CAAC,CAAC,CAcnF;AAED,KAAK,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC;AA0BlD,wBAAgB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,cAE3E;AACD,wBAAgB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,cAE3E;AACD,wBAAgB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,cAEjD;AACD,wBAAgB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,cAElD"}
@@ -1 +1 @@
1
- {"version":3,"file":"request.js","sourceRoot":"","sources":["../src/helper/request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["../src/helper/request.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ssr-shim.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ssr-shim.d.ts","sourceRoot":"","sources":["../src/helper/ssr-shim.ts"],"names":[],"mappings":"AA4BA,OAAO,EAAE,CAAC"}
@@ -0,0 +1,29 @@
1
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
2
+ // @ts-nocheck
3
+ if (typeof window === 'undefined') {
4
+ const getAny = () => {
5
+ const anonymous = () => getAny();
6
+ Object.defineProperties(anonymous, {
7
+ length: { writable: true },
8
+ name: { writable: true },
9
+ });
10
+ return new Proxy(anonymous, {
11
+ get(target, key) {
12
+ if (key === Symbol.toPrimitive)
13
+ return () => '';
14
+ return target[key] || (target[key] = getAny());
15
+ },
16
+ });
17
+ };
18
+ const any = getAny();
19
+ globalThis.document = any;
20
+ globalThis.addEventListener = any;
21
+ globalThis.history = any;
22
+ globalThis.navigator = any;
23
+ globalThis.customElements = any;
24
+ globalThis.HTMLElement = null;
25
+ globalThis.location = new URL('about:blank');
26
+ globalThis.window = globalThis;
27
+ }
28
+ export {};
29
+ //# sourceMappingURL=ssr-shim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ssr-shim.js","sourceRoot":"","sources":["../src/helper/ssr-shim.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,cAAc;AACd,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;IAClC,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC;QACjC,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE;YACjC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;YAC1B,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;SACzB,CAAC,CAAC;QACH,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE;YAC1B,GAAG,CAAC,MAAM,EAAE,GAAG;gBACb,IAAI,GAAG,KAAK,MAAM,CAAC,WAAW;oBAAE,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC;gBAChD,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC;YACjD,CAAC;SACF,CAAC,CAAC;IACL,CAAC,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC;IAErB,UAAU,CAAC,QAAQ,GAAG,GAAG,CAAC;IAC1B,UAAU,CAAC,gBAAgB,GAAG,GAAG,CAAC;IAClC,UAAU,CAAC,OAAO,GAAG,GAAG,CAAC;IACzB,UAAU,CAAC,SAAS,GAAG,GAAG,CAAC;IAC3B,UAAU,CAAC,cAAc,GAAG,GAAG,CAAC;IAChC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC;IAC9B,UAAU,CAAC,QAAQ,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC;IAC7C,UAAU,CAAC,MAAM,GAAG,UAAU,CAAC;AACjC,CAAC"}
package/helper/theme.d.ts CHANGED
@@ -1,9 +1,9 @@
1
1
  import { Store } from '../lib/store';
2
- declare type SomeType<T> = {
2
+ type SomeType<T> = {
3
3
  [P in keyof T]: string;
4
4
  };
5
5
  export declare function getThemeStore<T>(theme: SomeType<T>): Store<T>;
6
- export declare function getThemeProp<T>(theme: SomeType<T>): SomeType<T>;
6
+ export declare function getThemeProps<T>(theme: SomeType<T>): SomeType<T>;
7
7
  /**
8
8
  * 创建主题,插入 `document.head`
9
9
  * https://github.com/mantou132/gem/issues/33
@@ -1 +1 @@
1
- {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../src/helper/theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqC,KAAK,EAAE,MAAM,cAAc,CAAC;AAGxE,aAAK,QAAQ,CAAC,CAAC,IAAI;KAChB,CAAC,IAAI,MAAM,CAAC,GAAG,MAAM;CACvB,CAAC;AAIF,wBAAgB,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,YAElD;AAID,wBAAgB,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,eAEjD;AAYD;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,eAiBzE;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,QAGnG"}
1
+ {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../src/helper/theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqC,KAAK,EAAE,MAAM,cAAc,CAAC;AAGxE,KAAK,QAAQ,CAAC,CAAC,IAAI;KAChB,CAAC,IAAI,MAAM,CAAC,GAAG,MAAM;CACvB,CAAC;AAIF,wBAAgB,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,YAElD;AAID,wBAAgB,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,eAElD;AAID;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,eAuBzE;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,QAGnG"}
package/helper/theme.js CHANGED
@@ -4,20 +4,11 @@ const themeStoreMap = new WeakMap();
4
4
  export function getThemeStore(theme) {
5
5
  return themeStoreMap.get(theme);
6
6
  }
7
- const themePropMap = new WeakMap();
8
- export function getThemeProp(theme) {
9
- return themePropMap.get(theme);
10
- }
11
- function replaceStyle(style, theme) {
12
- const themeStore = themeStoreMap.get(theme);
13
- const themeProp = themePropMap.get(theme);
14
- const rules = Object.keys(themeStore).reduce((prev, key) => {
15
- if (!themeStore[key] || !themeProp[key])
16
- return prev;
17
- return prev + `${themeProp[key]}:${themeStore[key]};`;
18
- }, '');
19
- style.textContent = `:root, :host {${rules}}`;
7
+ const themePropsMap = new WeakMap();
8
+ export function getThemeProps(theme) {
9
+ return themePropsMap.get(theme);
20
10
  }
11
+ const setThemeFnMap = new WeakMap();
21
12
  /**
22
13
  * 创建主题,插入 `document.head`
23
14
  * https://github.com/mantou132/gem/issues/33
@@ -30,17 +21,22 @@ function replaceStyle(style, theme) {
30
21
  export function createTheme(themeObj) {
31
22
  const salt = randomStr();
32
23
  const style = document.createElement('style');
33
- const themeStore = createStore(themeObj);
24
+ const store = createStore(themeObj);
34
25
  const theme = {};
35
- const themeProp = {};
36
- themePropMap.set(theme, themeProp);
37
- themeStoreMap.set(theme, themeStore);
38
- Object.keys(themeStore).forEach((key) => {
39
- themeProp[key] = `--${camelToKebabCase(key)}-${salt}`;
40
- theme[key] = `var(${themeProp[key]})`;
26
+ const props = {};
27
+ themePropsMap.set(theme, props);
28
+ themeStoreMap.set(theme, store);
29
+ const setTheme = () => Object.keys(store).forEach((key) => {
30
+ if (props[key])
31
+ return;
32
+ props[key] = `--${camelToKebabCase(key)}-${salt}`;
33
+ theme[key] = `var(${props[key]})`;
41
34
  });
42
- const replace = () => replaceStyle(style, theme);
43
- connect(themeStore, replace);
35
+ setThemeFnMap.set(theme, setTheme);
36
+ setTheme();
37
+ const getStyle = () => `:root, :host {${Object.keys(store).reduce((prev, key) => prev + `${props[key]}:${store[key]};`, '')}}`;
38
+ const replace = () => (style.textContent = getStyle());
39
+ connect(store, replace);
44
40
  replace();
45
41
  (document.head || document.documentElement).append(style);
46
42
  return theme;
@@ -51,7 +47,7 @@ export function createTheme(themeObj) {
51
47
  * @param newThemeObj 新主题
52
48
  */
53
49
  export function updateTheme(theme, newThemeObj) {
54
- const store = getThemeStore(theme);
55
- updateStore(store, newThemeObj);
50
+ updateStore(getThemeStore(theme), newThemeObj);
51
+ setThemeFnMap.get(theme)();
56
52
  }
57
53
  //# sourceMappingURL=theme.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"theme.js","sourceRoot":"","sources":["../src/helper/theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAS,MAAM,cAAc,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAM3D,MAAM,aAAa,GAAG,IAAI,OAAO,EAAE,CAAC;AAEpC,MAAM,UAAU,aAAa,CAAI,KAAkB;IACjD,OAAO,aAAa,CAAC,GAAG,CAAC,KAAK,CAAa,CAAC;AAC9C,CAAC;AAED,MAAM,YAAY,GAAG,IAAI,OAAO,EAAE,CAAC;AAEnC,MAAM,UAAU,YAAY,CAAI,KAAkB;IAChD,OAAO,YAAY,CAAC,GAAG,CAAC,KAAK,CAAgB,CAAC;AAChD,CAAC;AAED,SAAS,YAAY,CAAC,KAAuB,EAAE,KAA8B;IAC3E,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QACzD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QACrD,OAAO,IAAI,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;IACxD,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,KAAK,CAAC,WAAW,GAAG,iBAAiB,KAAK,GAAG,CAAC;AAChD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,WAAW,CAAoC,QAAW;IACxE,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC;IACzB,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,WAAW,CAAI,QAAQ,CAAC,CAAC;IAC5C,MAAM,KAAK,GAA2B,EAAE,CAAC;IACzC,MAAM,SAAS,GAA2B,EAAE,CAAC;IAC7C,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACnC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACrC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACtC,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,gBAAgB,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;QACtD,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC;IACxC,CAAC,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACjD,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC7B,OAAO,EAAE,CAAC;IACV,CAAC,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1D,OAAO,KAAoB,CAAC;AAC9B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAA8B,KAAkB,EAAE,WAAuB;IAClG,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACnC,WAAW,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"theme.js","sourceRoot":"","sources":["../src/helper/theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAS,MAAM,cAAc,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAM3D,MAAM,aAAa,GAAG,IAAI,OAAO,EAAE,CAAC;AAEpC,MAAM,UAAU,aAAa,CAAI,KAAkB;IACjD,OAAO,aAAa,CAAC,GAAG,CAAC,KAAK,CAAa,CAAC;AAC9C,CAAC;AAED,MAAM,aAAa,GAAG,IAAI,OAAO,EAAE,CAAC;AAEpC,MAAM,UAAU,aAAa,CAAI,KAAkB;IACjD,OAAO,aAAa,CAAC,GAAG,CAAC,KAAK,CAAgB,CAAC;AACjD,CAAC;AAED,MAAM,aAAa,GAAG,IAAI,OAAO,EAAE,CAAC;AAEpC;;;;;;;;GAQG;AACH,MAAM,UAAU,WAAW,CAAoC,QAAW;IACxE,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC;IACzB,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,WAAW,CAAI,QAAQ,CAAC,CAAC;IACvC,MAAM,KAAK,GAA2B,EAAE,CAAC;IACzC,MAAM,KAAK,GAA2B,EAAE,CAAC;IACzC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAChC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAChC,MAAM,QAAQ,GAAG,GAAG,EAAE,CACpB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACjC,IAAI,KAAK,CAAC,GAAG,CAAC;YAAE,OAAO;QACvB,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,gBAAgB,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;QAClD,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;IACpC,CAAC,CAAC,CAAC;IACL,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACnC,QAAQ,EAAE,CAAC;IACX,MAAM,QAAQ,GAAG,GAAG,EAAE,CACpB,iBAAiB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC;IAC1G,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW,GAAG,QAAQ,EAAE,CAAC,CAAC;IACvD,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACxB,OAAO,EAAE,CAAC;IACV,CAAC,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1D,OAAO,KAAoB,CAAC;AAC9B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAA8B,KAAkB,EAAE,WAAuB;IAClG,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;IAC/C,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;AAC7B,CAAC"}
package/index.d.ts CHANGED
@@ -1,13 +1,3 @@
1
- /**
2
- * 不支持多个 gem
3
- */
4
- import * as Gem from './';
5
- export declare type DevToolsHook = typeof Gem;
6
- declare global {
7
- interface Window {
8
- __GEM_DEVTOOLS__HOOK__?: DevToolsHook;
9
- }
10
- }
11
1
  export * from './lib/store';
12
2
  export * from './lib/history';
13
3
  export * from './lib/element';
package/index.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,GAAG,MAAM,IAAI,CAAC;AAE1B,oBAAY,YAAY,GAAG,OAAO,GAAG,CAAC;AACtC,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,sBAAsB,CAAC,EAAE,YAAY,CAAC;KACvC;CACF;AAMD,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAE5B,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAE5B,cAAc,eAAe,CAAC"}
package/index.js CHANGED
@@ -1,10 +1,3 @@
1
- /**
2
- * 不支持多个 gem
3
- */
4
- import * as Gem from './';
5
- if (window.__GEM_DEVTOOLS__HOOK__) {
6
- Object.assign(window.__GEM_DEVTOOLS__HOOK__, { ...Gem });
7
- }
8
1
  export * from './lib/store';
9
2
  export * from './lib/history';
10
3
  export * from './lib/element';
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,GAAG,MAAM,IAAI,CAAC;AAS1B,IAAI,MAAM,CAAC,sBAAsB,EAAE;IACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,sBAAsB,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC;CAC1D;AAED,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAE5B,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAE5B,cAAc,eAAe,CAAC"}
@@ -1,8 +1,8 @@
1
1
  import { GemElement } from './element';
2
2
  import { Store } from './store';
3
3
  import { Sheet } from './utils';
4
- declare type GemElementPrototype = GemElement<any>;
5
- export declare type RefObject<T = HTMLElement> = {
4
+ type GemElementPrototype = GemElement<any>;
5
+ export type RefObject<T = HTMLElement> = {
6
6
  ref: string;
7
7
  element: T | undefined;
8
8
  };
@@ -76,7 +76,7 @@ export declare function slot(target: any, prop: string): void;
76
76
  * ```
77
77
  */
78
78
  export declare function part(target: any, prop: string): void;
79
- export declare type Emitter<T = any> = (detail: T, options?: Omit<CustomEventInit<unknown>, 'detail'>) => void;
79
+ export type Emitter<T = any> = (detail: T, options?: Omit<CustomEventInit<unknown>, 'detail'>) => void;
80
80
  /**
81
81
  * 定义一个事件发射器,类似 `HTMLElement.click`,
82
82
  * 调用时将同步发送一个和字段名称的烤串式格式的自定义事件
@@ -115,7 +115,7 @@ export declare function connectStore(store: Store<unknown>): (cls: unknown) => v
115
115
  *
116
116
  * For example
117
117
  * ```ts
118
- * @rootElement(MyElement)
118
+ * @rootElement('my-element')
119
119
  * class App extends GemElement {}
120
120
  * ```
121
121
  */
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../src/lib/decorators.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8D,UAAU,EAAuB,MAAM,WAAW,CAAC;AACxH,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,KAAK,EAA+B,MAAM,SAAS,CAAC;AAE7D,aAAK,mBAAmB,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;AAiB3C,oBAAY,SAAS,CAAC,CAAC,GAAG,WAAW,IAAI;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,CAAC,GAAG,SAAS,CAAA;CAAE,CAAC;AAEjF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,QAIlE;AAgBD,wBAAgB,SAAS,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,QAElE;AACD,wBAAgB,aAAa,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,QAItE;AACD,wBAAgB,YAAY,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,QAIrE;AAED;;;;;;;;;GASG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,QAGjE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,QAI9D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,QAI7C;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,QAI7C;AAED,oBAAY,OAAO,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,KAAK,IAAI,CAAC;AAEvG;;;;;;;;;;GAUG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,QAEhE;AACD,wBAAgB,aAAa,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,QAEtE;AAOD;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,SAC1B,OAAO,UAI9B;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,SAE1B,OAAO,UAI9B;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,SACpB,OAAO,UAI9B;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,SAClB,OAAO,UAG9B"}
1
+ {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../src/lib/decorators.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8D,UAAU,EAAuB,MAAM,WAAW,CAAC;AACxH,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,KAAK,EAA+B,MAAM,SAAS,CAAC;AAE7D,KAAK,mBAAmB,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;AAiB3C,MAAM,MAAM,SAAS,CAAC,CAAC,GAAG,WAAW,IAAI;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,CAAC,GAAG,SAAS,CAAA;CAAE,CAAC;AAEjF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,QAIlE;AAgBD,wBAAgB,SAAS,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,QAElE;AACD,wBAAgB,aAAa,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,QAItE;AACD,wBAAgB,YAAY,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,QAIrE;AAED;;;;;;;;;GASG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,QAGjE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,QAI9D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,QAI7C;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,QAI7C;AAED,MAAM,MAAM,OAAO,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,KAAK,IAAI,CAAC;AAEvG;;;;;;;;;;GAUG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,QAEhE;AACD,wBAAgB,aAAa,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,QAEtE;AAOD;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,SAC1B,OAAO,UAI9B;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,SAC1B,OAAO,UAI9B;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,SACpB,OAAO,UAI9B;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,SAClB,OAAO,UAG9B"}
package/lib/decorators.js CHANGED
@@ -170,7 +170,6 @@ export function adoptedStyle(style) {
170
170
  * ```
171
171
  */
172
172
  export function connectStore(store) {
173
- // 这里的签名该怎么写?
174
173
  return function (cls) {
175
174
  const con = cls;
176
175
  pushStaticField(con.prototype, 'observedStores', store);
@@ -181,7 +180,7 @@ export function connectStore(store) {
181
180
  *
182
181
  * For example
183
182
  * ```ts
184
- * @rootElement(MyElement)
183
+ * @rootElement('my-element')
185
184
  * class App extends GemElement {}
186
185
  * ```
187
186
  */
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../src/lib/decorators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../src/lib/decorators.ts"],"names":[],"mappings":"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"}
package/lib/element.d.ts CHANGED
@@ -1,29 +1,29 @@
1
1
  import { TemplateResult } from 'lit-html';
2
2
  import { Store } from './store';
3
3
  import { Sheet } from './utils';
4
+ import * as GemExports from './element';
5
+ import * as VersionExports from './version';
4
6
  export { html, svg, render, directive, TemplateResult, SVGTemplateResult } from 'lit-html';
5
7
  export { repeat } from 'lit-html/directives/repeat';
6
8
  export { guard } from 'lit-html/directives/guard';
7
9
  export { ifDefined } from 'lit-html/directives/if-defined';
8
10
  declare global {
9
11
  interface ElementInternals extends ARIAMixin {
10
- states?: Set<string>;
11
- role?: string;
12
+ states: Set<string>;
12
13
  }
13
14
  /**
14
15
  * @attr ref
15
- * @attr inert
16
16
  */
17
17
  interface HTMLElement {
18
- attachInternals: () => ElementInternals;
19
- inert: boolean;
18
+ ref: string;
20
19
  }
21
20
  }
22
- declare type EffectCallback<T> = (depValues: T, oldDepValues?: T) => any;
21
+ type EffectCallback<T> = (depValues: T, oldDepValues?: T) => any;
23
22
  export interface GemElementOptions {
24
23
  isLight?: boolean;
25
24
  isAsync?: boolean;
26
25
  delegatesFocus?: boolean;
26
+ slotAssignment?: 'named' | 'manual';
27
27
  }
28
28
  export declare abstract class GemElement<T = Record<string, unknown>> extends HTMLElement {
29
29
  #private;
@@ -40,7 +40,7 @@ export declare abstract class GemElement<T = Record<string, unknown>> extends HT
40
40
  static defineSlots?: string[];
41
41
  static rootElement?: string;
42
42
  readonly state?: T;
43
- constructor({ isAsync, isLight, delegatesFocus }?: GemElementOptions);
43
+ constructor({ isAsync, isLight, delegatesFocus, slotAssignment }?: GemElementOptions);
44
44
  get internals(): ElementInternals;
45
45
  /**
46
46
  * @helper
@@ -114,7 +114,7 @@ export declare abstract class GemElement<T = Record<string, unknown>> extends HT
114
114
  * @final
115
115
  * use `effect`
116
116
  */
117
- attributeChangedCallback(): void;
117
+ attributeChangedCallback(): symbol;
118
118
  closestElement<K extends keyof HTMLElementTagNameMap>(tag: K): HTMLElementTagNameMap[K] | null;
119
119
  closestElement<K extends abstract new (...args: any) => any>(constructor: K): InstanceType<K> | null;
120
120
  /**
@@ -122,21 +122,27 @@ export declare abstract class GemElement<T = Record<string, unknown>> extends HT
122
122
  * @final
123
123
  * use `mounted`
124
124
  */
125
- connectedCallback(): void;
125
+ connectedCallback(): symbol;
126
126
  /**
127
127
  * @private
128
128
  * @final
129
129
  */
130
+ adoptedCallback(): symbol;
130
131
  /**
131
132
  * @private
132
133
  * @final
133
134
  * use `unmounted`
134
135
  */
135
- disconnectedCallback(): void;
136
+ disconnectedCallback(): symbol | undefined;
136
137
  }
137
138
  export declare function defineAttribute(target: GemElement, prop: string, attr: string): void;
138
139
  export declare function defineProperty(target: GemElement, prop: string, event?: string, eventOptions?: Omit<CustomEventInit<unknown>, 'detail'>): void;
139
140
  export declare function defineRef(target: GemElement, prop: string, ref: string): void;
140
141
  export declare function defineCSSState(target: GemElement, prop: string, state: string): void;
141
142
  export declare const nativeDefineElement: any;
143
+ declare global {
144
+ interface Window {
145
+ __GEM_DEVTOOLS__HOOK__?: (typeof GemExports & typeof VersionExports) | Record<string, never>;
146
+ }
147
+ }
142
148
  //# sourceMappingURL=element.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"element.d.ts","sourceRoot":"","sources":["../src/lib/element.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"element.d.ts","sourceRoot":"","sources":["../src/lib/element.ts"],"names":[],"mappings":"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"}