@mantou/gem 1.7.1 → 1.7.3

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 (86) hide show
  1. package/dist/gem.es.js +367 -369
  2. package/dist/gem.umd.js +24 -28
  3. package/elements/base/dialog.d.ts +7 -7
  4. package/elements/base/dialog.d.ts.map +1 -1
  5. package/elements/base/dialog.js +10 -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 +151 -134
  10. package/elements/base/gesture.js.map +1 -1
  11. package/elements/base/link.d.ts +10 -10
  12. package/elements/base/link.d.ts.map +1 -1
  13. package/elements/base/link.js +69 -63
  14. package/elements/base/link.js.map +1 -1
  15. package/elements/base/modal-factory.d.ts +117 -83
  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 +16 -4
  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.map +1 -1
  29. package/elements/base/use.d.ts +1 -1
  30. package/elements/base/use.d.ts.map +1 -1
  31. package/elements/base/use.js +27 -17
  32. package/elements/base/use.js.map +1 -1
  33. package/helper/i18n.d.ts +2 -2
  34. package/helper/i18n.d.ts.map +1 -1
  35. package/helper/i18n.js.map +1 -1
  36. package/helper/mediaquery.d.ts +16 -18
  37. package/helper/mediaquery.d.ts.map +1 -1
  38. package/helper/mediaquery.js +42 -41
  39. package/helper/mediaquery.js.map +1 -1
  40. package/helper/request.d.ts +1 -1
  41. package/helper/request.d.ts.map +1 -1
  42. package/helper/request.js.map +1 -1
  43. package/helper/ssr-shim.js.map +1 -1
  44. package/helper/theme.d.ts +2 -2
  45. package/helper/theme.d.ts.map +1 -1
  46. package/helper/theme.js +20 -24
  47. package/helper/theme.js.map +1 -1
  48. package/lib/decorators.d.ts +4 -4
  49. package/lib/decorators.d.ts.map +1 -1
  50. package/lib/decorators.js +1 -2
  51. package/lib/decorators.js.map +1 -1
  52. package/lib/element.d.ts +5 -7
  53. package/lib/element.d.ts.map +1 -1
  54. package/lib/element.js +46 -71
  55. package/lib/element.js.map +1 -1
  56. package/lib/history.d.ts +1 -1
  57. package/lib/history.d.ts.map +1 -1
  58. package/lib/history.js +2 -2
  59. package/lib/history.js.map +1 -1
  60. package/lib/store.d.ts +2 -2
  61. package/lib/store.d.ts.map +1 -1
  62. package/lib/store.js.map +1 -1
  63. package/lib/utils.d.ts +8 -32
  64. package/lib/utils.d.ts.map +1 -1
  65. package/lib/utils.js +7 -22
  66. package/lib/utils.js.map +1 -1
  67. package/lib/version.d.ts +1 -1
  68. package/lib/version.js +1 -1
  69. package/package.json +2 -2
  70. package/src/elements/base/dialog.ts +8 -3
  71. package/src/elements/base/gesture.ts +51 -45
  72. package/src/elements/base/link.ts +64 -62
  73. package/src/elements/base/modal-factory.ts +5 -0
  74. package/src/elements/base/route.ts +21 -4
  75. package/src/elements/base/title.ts +8 -11
  76. package/src/elements/base/use.ts +3 -3
  77. package/src/helper/mediaquery.ts +43 -42
  78. package/src/helper/theme.ts +22 -24
  79. package/src/lib/decorators.ts +1 -2
  80. package/src/lib/element.ts +38 -63
  81. package/src/lib/history.ts +2 -1
  82. package/src/lib/utils.ts +11 -43
  83. package/src/lib/version.ts +1 -1
  84. package/src/test/gem-element/advance.test.ts +16 -8
  85. package/src/test/history.test.ts +3 -1
  86. package/src/test/utils.test.ts +8 -1
@@ -1 +1 @@
1
- export const version = '1.7.1';
1
+ export const version = '1.7.3';
@@ -158,12 +158,17 @@ describe('gem element 生命周期', () => {
158
158
  class EffectGemDemo extends GemElement {
159
159
  @attribute attr = 'a';
160
160
  @property prop = {};
161
- effectCount = 0;
161
+ effectCallCount = 0;
162
+ hasConstructorEffect = false;
162
163
  compareCount = 0;
163
164
  constructor() {
164
165
  super();
165
166
  this.effect(
166
- () => this.effectCount++,
167
+ () => {
168
+ this.hasConstructorEffect = true;
169
+ this.effectCallCount++;
170
+ return () => (this.hasConstructorEffect = false);
171
+ },
167
172
  () => {
168
173
  this.compareCount++;
169
174
  return [this.attr, this.prop];
@@ -173,13 +178,13 @@ class EffectGemDemo extends GemElement {
173
178
  mounted() {
174
179
  this.effect(
175
180
  (_arr) => {
176
- this.effectCount++;
177
- return () => (this.effectCount = 0);
181
+ this.effectCallCount++;
182
+ return () => (this.effectCallCount = 0);
178
183
  },
179
184
  () => [],
180
185
  );
181
186
  this.effect(() => {
182
- this.effectCount++;
187
+ this.effectCallCount++;
183
188
  });
184
189
  }
185
190
  }
@@ -188,11 +193,11 @@ describe('gem element 副作用', () => {
188
193
  it('依赖当前值', async () => {
189
194
  const el: EffectGemDemo = await fixture(html`<effect-gem-demo></effect-gem-demo>`);
190
195
  expect(el.compareCount).to.equal(1);
191
- expect(el.effectCount).to.equal(3);
196
+ expect(el.effectCallCount).to.equal(3);
192
197
  el.attr = 'b';
193
198
  el.prop = {};
194
199
  await nextFrame();
195
- expect(el.effectCount).to.equal(5);
200
+ expect(el.effectCallCount).to.equal(5);
196
201
 
197
202
  let oldV: string | undefined = '';
198
203
  let newV: string | undefined = '';
@@ -211,7 +216,10 @@ describe('gem element 副作用', () => {
211
216
  expect(newV).to.equal('n');
212
217
 
213
218
  el.remove();
214
- expect(el.effectCount).to.equal(0);
219
+ expect(el.effectCallCount).to.equal(0);
220
+ expect(el.hasConstructorEffect).to.equal(false);
221
+ document.body.append(el);
222
+ expect(el.hasConstructorEffect).to.equal(true);
215
223
  });
216
224
  });
217
225
 
@@ -6,11 +6,13 @@ describe('history 测试', () => {
6
6
  it('hash', async () => {
7
7
  const historyLength = window.history.length;
8
8
  const hash = window.location.hash;
9
+ // 等待浏览器就绪
10
+ await aTimeout(1000);
9
11
  history.push({ path: '/a', hash: '#a' });
10
12
  await aTimeout(10);
11
13
  expect(window.location.hash).to.equal('#a');
12
14
  history.back();
13
- await aTimeout(600);
15
+ await aTimeout(10);
14
16
  expect(window.location.hash).to.equal(hash);
15
17
  history.push({ path: '/a', hash: '#b' });
16
18
  await aTimeout(10);
@@ -14,6 +14,12 @@ import {
14
14
  absoluteLocation,
15
15
  } from '../lib/utils';
16
16
 
17
+ declare global {
18
+ interface CSSRuleList {
19
+ item(index: number): CSSStyleRule;
20
+ }
21
+ }
22
+
17
23
  describe('utils 测试', () => {
18
24
  it('absoluteLocation', () => {
19
25
  expect(absoluteLocation('/a', '/a/b')).to.equal('/a/b');
@@ -101,6 +107,7 @@ describe('utils 测试', () => {
101
107
  `;--x:1px;font-size:14px;content:'*';`,
102
108
  );
103
109
  expect(classMap({ foo: true, content: false })).to.equal(` foo `);
104
- expect(exportPartsMap({ foo: 'bar', content: 'content' })).to.equal(`,foo:bar,content:content,`);
110
+ expect(exportPartsMap({ foo: 'bar', content: 'content', false: false })).to.equal(`,foo:bar,content,`);
111
+ expect(exportPartsMap({ foo: 'bar', content: true })).to.equal(`,foo:bar,content,`);
105
112
  });
106
113
  });