@mantou/gem 1.6.19 → 1.7.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.
Files changed (65) hide show
  1. package/dist/gem.es.js +79 -222
  2. package/dist/gem.umd.js +28 -30
  3. package/elements/base/dialog.d.ts +2 -0
  4. package/elements/base/dialog.d.ts.map +1 -1
  5. package/elements/base/dialog.js +2 -0
  6. package/elements/base/dialog.js.map +1 -1
  7. package/elements/base/gesture.js +1 -1
  8. package/elements/base/link.d.ts +3 -0
  9. package/elements/base/link.d.ts.map +1 -1
  10. package/elements/base/link.js +17 -4
  11. package/elements/base/link.js.map +1 -1
  12. package/elements/base/modal-factory.d.ts +14 -13
  13. package/elements/base/modal-factory.d.ts.map +1 -1
  14. package/elements/base/reflect.d.ts.map +1 -1
  15. package/elements/base/reflect.js +1 -3
  16. package/elements/base/reflect.js.map +1 -1
  17. package/elements/base/route.js +1 -1
  18. package/elements/base/title.d.ts +1 -1
  19. package/elements/base/title.js +1 -1
  20. package/elements/base/unsafe.js +1 -1
  21. package/elements/base/use.d.ts.map +1 -1
  22. package/elements/base/use.js +1 -3
  23. package/elements/base/use.js.map +1 -1
  24. package/helper/i18n.d.ts +2 -2
  25. package/helper/i18n.d.ts.map +1 -1
  26. package/helper/i18n.js.map +1 -1
  27. package/helper/ssr-shim.d.ts +2 -0
  28. package/helper/ssr-shim.d.ts.map +1 -0
  29. package/helper/ssr-shim.js +29 -0
  30. package/helper/ssr-shim.js.map +1 -0
  31. package/index.d.ts +0 -10
  32. package/index.d.ts.map +1 -1
  33. package/index.js +0 -7
  34. package/index.js.map +1 -1
  35. package/lib/decorators.d.ts +1 -1
  36. package/lib/decorators.js +3 -3
  37. package/lib/decorators.js.map +1 -1
  38. package/lib/element.d.ts +13 -6
  39. package/lib/element.d.ts.map +1 -1
  40. package/lib/element.js +33 -34
  41. package/lib/element.js.map +1 -1
  42. package/lib/utils.js +1 -1
  43. package/lib/utils.js.map +1 -1
  44. package/lib/version.d.ts +1 -1
  45. package/lib/version.d.ts.map +1 -1
  46. package/lib/version.js +1 -1
  47. package/lib/version.js.map +1 -1
  48. package/package.json +2 -2
  49. package/src/elements/base/dialog.ts +2 -0
  50. package/src/elements/base/gesture.ts +1 -1
  51. package/src/elements/base/link.ts +10 -4
  52. package/src/elements/base/reflect.ts +1 -4
  53. package/src/elements/base/route.ts +1 -1
  54. package/src/elements/base/title.ts +1 -1
  55. package/src/elements/base/unsafe.ts +1 -1
  56. package/src/elements/base/use.ts +1 -3
  57. package/src/helper/i18n.ts +3 -3
  58. package/src/helper/ssr-shim.ts +29 -0
  59. package/src/index.ts +0 -16
  60. package/src/lib/decorators.ts +3 -3
  61. package/src/lib/element.ts +47 -42
  62. package/src/lib/utils.ts +1 -1
  63. package/src/lib/version.ts +1 -1
  64. package/src/test/gem-element/basic.test.ts +1 -1
  65. package/src/test/gem-element/decorators.test.ts +6 -6
package/dist/gem.es.js CHANGED
@@ -39,36 +39,27 @@ var __privateMethod = (obj, member, method) => {
39
39
  __accessCheck(obj, member, "access private method");
40
40
  return method;
41
41
  };
42
- var _map, _firstItem, _lastItem, _delete, delete_fn, _stringify, _parse, _nextSibling, _parentElement, _inertStore, _a, _cacheCurrentKey, cacheCurrentKey_get, _urlParamsLang, urlParamsLang_get, _cacheLang, cacheLang_get, _isMain, isMain_get, _lang, lang_set;
43
- var Gem = /* @__PURE__ */ Object.freeze({
42
+ var _map, _firstItem, _lastItem, _delete, delete_fn, _stringify, _parse, _routeOptions, routeOptions_get, _a, _nextSibling, _parentElement, _inertStore, _b, _cacheCurrentKey, cacheCurrentKey_get, _urlParamsLang, urlParamsLang_get, _cacheLang, cacheLang_get, _isMain, isMain_get, _lang, lang_set;
43
+ var GemExports = /* @__PURE__ */ Object.freeze({
44
44
  __proto__: null,
45
45
  [Symbol.toStringTag]: "Module",
46
- get StoreListenerMap() {
47
- return StoreListenerMap;
48
- },
49
- get createStore() {
50
- return createStore;
51
- },
52
- get createStoreSet() {
53
- return createStoreSet;
54
- },
55
- get updateStore() {
56
- return updateStore;
46
+ get GemElement() {
47
+ return GemElement;
57
48
  },
58
- get connect() {
59
- return connect;
49
+ get defineAttribute() {
50
+ return defineAttribute;
60
51
  },
61
- get disconnect() {
62
- return disconnect;
52
+ get defineProperty() {
53
+ return defineProperty;
63
54
  },
64
- get history() {
65
- return history;
55
+ get defineRef() {
56
+ return defineRef;
66
57
  },
67
- get titleStore() {
68
- return titleStore;
58
+ get defineCSSState() {
59
+ return defineCSSState;
69
60
  },
70
- get basePathStore() {
71
- return basePathStore;
61
+ get nativeDefineElement() {
62
+ return nativeDefineElement;
72
63
  },
73
64
  get html() {
74
65
  return html;
@@ -96,141 +87,6 @@ var Gem = /* @__PURE__ */ Object.freeze({
96
87
  },
97
88
  get ifDefined() {
98
89
  return ifDefined;
99
- },
100
- get GemElement() {
101
- return GemElement;
102
- },
103
- get defineAttribute() {
104
- return defineAttribute;
105
- },
106
- get defineProperty() {
107
- return defineProperty;
108
- },
109
- get defineRef() {
110
- return defineRef;
111
- },
112
- get defineCSSState() {
113
- return defineCSSState;
114
- },
115
- get nativeDefineElement() {
116
- return nativeDefineElement;
117
- },
118
- get refobject() {
119
- return refobject;
120
- },
121
- get attribute() {
122
- return attribute;
123
- },
124
- get boolattribute() {
125
- return boolattribute;
126
- },
127
- get numattribute() {
128
- return numattribute;
129
- },
130
- get property() {
131
- return property;
132
- },
133
- get state() {
134
- return state;
135
- },
136
- get slot() {
137
- return slot;
138
- },
139
- get part() {
140
- return part;
141
- },
142
- get emitter() {
143
- return emitter;
144
- },
145
- get globalemitter() {
146
- return globalemitter;
147
- },
148
- get adoptedStyle() {
149
- return adoptedStyle;
150
- },
151
- get connectStore() {
152
- return connectStore;
153
- },
154
- get rootElement() {
155
- return rootElement;
156
- },
157
- get customElement() {
158
- return customElement;
159
- },
160
- get addMicrotask() {
161
- return addMicrotask;
162
- },
163
- get addMicrotaskToStack() {
164
- return addMicrotaskToStack;
165
- },
166
- get absoluteLocation() {
167
- return absoluteLocation;
168
- },
169
- get LinkedList() {
170
- return LinkedList;
171
- },
172
- get PropProxyMap() {
173
- return PropProxyMap;
174
- },
175
- get QueryString() {
176
- return QueryString;
177
- },
178
- get raw() {
179
- return raw;
180
- },
181
- get css() {
182
- return css;
183
- },
184
- get SheetToken() {
185
- return SheetToken;
186
- },
187
- get useNativeCSSStyleSheet() {
188
- return useNativeCSSStyleSheet;
189
- },
190
- get createCSSSheet() {
191
- return createCSSSheet;
192
- },
193
- get randomStr() {
194
- return randomStr;
195
- },
196
- get styled() {
197
- return styled;
198
- },
199
- get camelToKebabCase() {
200
- return camelToKebabCase;
201
- },
202
- get kebabToCamelCase() {
203
- return kebabToCamelCase;
204
- },
205
- get cleanObject() {
206
- return cleanObject;
207
- },
208
- get GemError() {
209
- return GemError;
210
- },
211
- get isArrayChange() {
212
- return isArrayChange;
213
- },
214
- get removeItems() {
215
- return removeItems;
216
- },
217
- get objectMapToString() {
218
- return objectMapToString;
219
- },
220
- get styleMap() {
221
- return styleMap;
222
- },
223
- get classMap() {
224
- return classMap;
225
- },
226
- get partMap() {
227
- return partMap;
228
- },
229
- get exportPartsMap() {
230
- return exportPartsMap;
231
- },
232
- get version() {
233
- return version;
234
90
  }
235
91
  });
236
92
  /**
@@ -1175,7 +1031,7 @@ function css(arr, ...args) {
1175
1031
  }
1176
1032
  const SheetToken = Symbol.for("gem@sheetToken");
1177
1033
  let useNativeCSSStyleSheet = true;
1178
- let CSSStyleSheet = window.CSSStyleSheet;
1034
+ let CSSStyleSheet = globalThis.CSSStyleSheet;
1179
1035
  try {
1180
1036
  new CSSStyleSheet();
1181
1037
  } catch {
@@ -1325,6 +1181,12 @@ function disconnect(store2, func) {
1325
1181
  const listeners = StoreListenerMap.get(store2);
1326
1182
  listeners == null ? void 0 : listeners.delete(func);
1327
1183
  }
1184
+ const version = "1.7.1";
1185
+ var VersionExports = /* @__PURE__ */ Object.freeze({
1186
+ __proto__: null,
1187
+ [Symbol.toStringTag]: "Module",
1188
+ version
1189
+ });
1328
1190
  /**
1329
1191
  * @license
1330
1192
  * Copyright (c) 2017 The Polymer Project Authors. All rights reserved.
@@ -1556,7 +1418,7 @@ const constructorSymbol = Symbol("constructor");
1556
1418
  const initSymbol = Symbol("init");
1557
1419
  const updateSymbol = Symbol("update");
1558
1420
  class GemElement extends HTMLElement {
1559
- constructor({ isAsync, isLight, delegatesFocus } = {}) {
1421
+ constructor({ isAsync, isLight, delegatesFocus, slotAssignment } = {}) {
1560
1422
  super();
1561
1423
  __privateAdd$1(this, _renderRoot, void 0);
1562
1424
  __privateAdd$1(this, _internals, void 0);
@@ -1627,13 +1489,13 @@ class GemElement extends HTMLElement {
1627
1489
  });
1628
1490
  });
1629
1491
  __privateAdd$1(this, _render, () => {
1630
- var _a2, _b;
1492
+ var _a2, _b2;
1631
1493
  __privateGet$1(this, _execMemo).call(this);
1632
- const styles = useNativeCSSStyleSheet ? "" : html`${(_b = (_a2 = this.shadowRoot) == null ? void 0 : _a2.adoptedStyleSheets) == null ? void 0 : _b.map((e) => html`
1633
- <style media=${e.media.mediaText}>
1634
- ${e.style}
1635
- </style>
1636
- `)}`;
1494
+ const styles = useNativeCSSStyleSheet ? "" : html`${(_b2 = (_a2 = this.shadowRoot) == null ? void 0 : _a2.adoptedStyleSheets) == null ? void 0 : _b2.map((e) => html`
1495
+ <style media=${e.media.mediaText}>
1496
+ ${e.style}
1497
+ </style>
1498
+ `)}`;
1637
1499
  if (this.render) {
1638
1500
  const r = this.render();
1639
1501
  return r && html`${r}${styles}`;
@@ -1666,7 +1528,7 @@ class GemElement extends HTMLElement {
1666
1528
  (_a2 = this.updated) == null ? void 0 : _a2.call(this);
1667
1529
  });
1668
1530
  __privateAdd$1(this, _connectedCallback, () => {
1669
- var _a2, _b, _c;
1531
+ var _a2, _b2, _c;
1670
1532
  this[constructorSymbol] = false;
1671
1533
  if (__privateGet$1(this, _isAppendReason)) {
1672
1534
  __privateSet$1(this, _isAppendReason, false);
@@ -1680,7 +1542,7 @@ class GemElement extends HTMLElement {
1680
1542
  const temp = __privateGet$1(this, _render).call(this);
1681
1543
  temp !== void 0 && render(temp, __privateGet$1(this, _renderRoot));
1682
1544
  __privateSet$1(this, _isMounted, true);
1683
- __privateSet$1(this, _unmountCallback, (_b = this.mounted) == null ? void 0 : _b.call(this));
1545
+ __privateSet$1(this, _unmountCallback, (_b2 = this.mounted) == null ? void 0 : _b2.call(this));
1684
1546
  __privateGet$1(this, _initEffect).call(this);
1685
1547
  if (rootElement2 && ((_c = this.getRootNode().host) == null ? void 0 : _c.tagName) !== rootElement2.toUpperCase()) {
1686
1548
  throw new GemError(`not allow current root type`);
@@ -1695,7 +1557,7 @@ class GemElement extends HTMLElement {
1695
1557
  }
1696
1558
  };
1697
1559
  __privateSet$1(this, _isAsync, isAsync);
1698
- __privateSet$1(this, _renderRoot, isLight ? this : this.attachShadow({ mode: "open", delegatesFocus }));
1560
+ __privateSet$1(this, _renderRoot, isLight ? this : this.attachShadow({ mode: "open", delegatesFocus, slotAssignment }));
1699
1561
  const { adoptedStyleSheets } = new.target;
1700
1562
  if (adoptedStyleSheets) {
1701
1563
  const sheets = adoptedStyleSheets.map((item) => item[SheetToken] || item);
@@ -1738,24 +1600,18 @@ class GemElement extends HTMLElement {
1738
1600
  }
1739
1601
  get internals() {
1740
1602
  if (!__privateGet$1(this, _internals)) {
1741
- const getCustomStateSet = () => {
1742
- const getV = (v) => v.replace(/-/g, "");
1743
- return {
1744
- has: (v) => getV(v) in this.dataset,
1745
- add: (v) => {
1746
- this.dataset[getV(v)] = "";
1747
- },
1748
- delete: (v) => delete this.dataset[getV(v)]
1749
- };
1750
- };
1751
- if (!this.attachInternals) {
1752
- this.attachInternals = () => {
1753
- return { states: getCustomStateSet() };
1754
- };
1755
- }
1756
1603
  __privateSet$1(this, _internals, this.attachInternals());
1757
- if (!__privateGet$1(this, _internals).states) {
1758
- __privateGet$1(this, _internals).states = getCustomStateSet();
1604
+ try {
1605
+ __privateGet$1(this, _internals).states.add("foo");
1606
+ __privateGet$1(this, _internals).states.delete("foo");
1607
+ } catch {
1608
+ Reflect.defineProperty(__privateGet$1(this, _internals), "states", {
1609
+ value: {
1610
+ has: (v) => kebabToCamelCase(v) in this.dataset,
1611
+ add: (v) => this.dataset[kebabToCamelCase(v)] = "",
1612
+ delete: (v) => delete this.dataset[kebabToCamelCase(v)]
1613
+ }
1614
+ });
1759
1615
  }
1760
1616
  }
1761
1617
  return __privateGet$1(this, _internals);
@@ -1791,7 +1647,7 @@ class GemElement extends HTMLElement {
1791
1647
  }
1792
1648
  }
1793
1649
  disconnectedCallback() {
1794
- var _a2, _b, _c, _d;
1650
+ var _a2, _b2, _c, _d;
1795
1651
  if (this.isConnected) {
1796
1652
  __privateSet$1(this, _isAppendReason, true);
1797
1653
  return;
@@ -1803,7 +1659,7 @@ class GemElement extends HTMLElement {
1803
1659
  });
1804
1660
  execCallback(__privateGet$1(this, _unmountCallback));
1805
1661
  (_a2 = this.unmounted) == null ? void 0 : _a2.call(this);
1806
- (_b = __privateGet$1(this, _effectList)) == null ? void 0 : _b.forEach((effectItem) => {
1662
+ (_b2 = __privateGet$1(this, _effectList)) == null ? void 0 : _b2.forEach((effectItem) => {
1807
1663
  execCallback(effectItem.preCallback);
1808
1664
  });
1809
1665
  __privateSet$1(this, _effectList, (_c = __privateGet$1(this, _effectList)) == null ? void 0 : _c.filter(({ inConstructor }) => inConstructor));
@@ -1912,7 +1768,7 @@ function defineRef(target, prop, ref) {
1912
1768
  return ref;
1913
1769
  },
1914
1770
  get element() {
1915
- const gemReflects = [...ele.querySelectorAll("[data-gemreflect]")].map((e) => e.target);
1771
+ const gemReflects = [...ele.querySelectorAll("[data-gem-reflect]")].map((e) => e.target);
1916
1772
  for (const e of [ele, ...gemReflects]) {
1917
1773
  const result = e.querySelector(`[ref=${ref}]`);
1918
1774
  if (result)
@@ -1930,18 +1786,17 @@ function defineCSSState(target, prop, state2) {
1930
1786
  Object.defineProperty(target, prop, {
1931
1787
  configurable: true,
1932
1788
  get() {
1933
- var _a2;
1934
1789
  const that = this;
1935
1790
  const { states } = that.internals;
1936
- return (_a2 = states.has) == null ? void 0 : _a2.call(states, state2);
1791
+ return states == null ? void 0 : states.has(state2);
1937
1792
  },
1938
1793
  set(v) {
1939
1794
  const that = this;
1940
1795
  const { states } = that.internals;
1941
1796
  if (v) {
1942
- states.add(state2);
1797
+ states == null ? void 0 : states.add(state2);
1943
1798
  } else {
1944
- states.delete(state2);
1799
+ states == null ? void 0 : states.delete(state2);
1945
1800
  }
1946
1801
  }
1947
1802
  });
@@ -1949,15 +1804,18 @@ function defineCSSState(target, prop, state2) {
1949
1804
  const nativeDefineElement = customElements.define.bind(customElements);
1950
1805
  customElements.define = (name, cls, options) => {
1951
1806
  if (cls.prototype instanceof GemElement) {
1952
- const { observedAttributes, observedPropertys, defineEvents, defineCSSStates, defineRefs } = cls;
1807
+ const { observedAttributes, observedProperties, defineEvents, defineCSSStates, defineRefs } = cls;
1953
1808
  observedAttributes == null ? void 0 : observedAttributes.forEach((attr) => defineAttribute(cls.prototype, kebabToCamelCase(attr), attr));
1954
- observedPropertys == null ? void 0 : observedPropertys.forEach((prop) => defineProperty(cls.prototype, prop));
1809
+ observedProperties == null ? void 0 : observedProperties.forEach((prop) => defineProperty(cls.prototype, prop));
1955
1810
  defineEvents == null ? void 0 : defineEvents.forEach((event) => defineProperty(cls.prototype, kebabToCamelCase(event), event));
1956
- defineCSSStates == null ? void 0 : defineCSSStates.forEach((state2) => defineCSSState(cls.prototype, kebabToCamelCase(state2), `--${state2}`));
1811
+ defineCSSStates == null ? void 0 : defineCSSStates.forEach((state2) => defineCSSState(cls.prototype, kebabToCamelCase(state2), state2));
1957
1812
  defineRefs == null ? void 0 : defineRefs.forEach((ref) => defineRef(cls.prototype, kebabToCamelCase(ref), ref));
1958
1813
  }
1959
1814
  nativeDefineElement(name, cls, options);
1960
1815
  };
1816
+ if (window.__GEM_DEVTOOLS__HOOK__) {
1817
+ Object.assign(window.__GEM_DEVTOOLS__HOOK__, __spreadValues(__spreadValues({}, GemExports), VersionExports));
1818
+ }
1961
1819
  function pushStaticField(target, field, member, isSet = false) {
1962
1820
  const cls = target.constructor;
1963
1821
  const current = cls[field];
@@ -1991,13 +1849,13 @@ function numattribute(target, prop) {
1991
1849
  defineAttr(target, prop, attr);
1992
1850
  }
1993
1851
  function property(target, prop) {
1994
- pushStaticField(target, "observedPropertys", prop);
1852
+ pushStaticField(target, "observedProperties", prop);
1995
1853
  defineProperty(target, prop);
1996
1854
  }
1997
1855
  function state(target, prop) {
1998
1856
  const attr = camelToKebabCase(prop);
1999
1857
  pushStaticField(target, "defineCSSStates", attr);
2000
- defineCSSState(target, prop, `--${attr}`);
1858
+ defineCSSState(target, prop, attr);
2001
1859
  }
2002
1860
  function slot(target, prop) {
2003
1861
  const attr = camelToKebabCase(target[prop] || prop);
@@ -2147,9 +2005,9 @@ class GemHistory {
2147
2005
  updateHistory(params, nativeReplaceState);
2148
2006
  }
2149
2007
  pushIgnoreCloseHandle(params) {
2150
- var _a2, _b;
2008
+ var _a2, _b2;
2151
2009
  if (store.$hasCloseHandle) {
2152
- (_b = (_a2 = paramsMap.get(store.$key)) == null ? void 0 : _a2.close) == null ? void 0 : _b.call(_a2);
2010
+ (_b2 = (_a2 = paramsMap.get(store.$key)) == null ? void 0 : _a2.close) == null ? void 0 : _b2.call(_a2);
2153
2011
  this.replace(params);
2154
2012
  } else {
2155
2013
  this.push(params);
@@ -2207,7 +2065,7 @@ if (!window._GEMHISTORY) {
2207
2065
  });
2208
2066
  let navigating = false;
2209
2067
  window.addEventListener("popstate", (event) => {
2210
- var _a2, _b;
2068
+ var _a2, _b2;
2211
2069
  const newState = event.state;
2212
2070
  if (!(newState == null ? void 0 : newState.$key)) {
2213
2071
  return;
@@ -2229,7 +2087,7 @@ if (!window._GEMHISTORY) {
2229
2087
  const prevState = store;
2230
2088
  const isForward = parseFloat(newState.$key) > parseFloat(prevState.$key);
2231
2089
  if (isForward && newState.$hasOpenHandle) {
2232
- (_b = (_a2 = paramsMap.get(newState.$key)) == null ? void 0 : _a2.open) == null ? void 0 : _b.call(_a2);
2090
+ (_b2 = (_a2 = paramsMap.get(newState.$key)) == null ? void 0 : _a2.open) == null ? void 0 : _b2.call(_a2);
2233
2091
  } else if (prevState.$hasCloseHandle) {
2234
2092
  const prevParams = paramsMap.get(prevState.$key);
2235
2093
  const closeHandle = prevParams == null ? void 0 : prevParams.close;
@@ -2405,7 +2263,7 @@ let GemRouteElement = class extends GemElement {
2405
2263
  return html`${content}`;
2406
2264
  return html`
2407
2265
  <style>
2408
- :host,
2266
+ :host(:where(:not([hidden]))),
2409
2267
  :not(:defined) {
2410
2268
  display: contents;
2411
2269
  }
@@ -2481,9 +2339,10 @@ var __decorateClass$5 = (decorators, target, key2, kind) => {
2481
2339
  __defProp$5(target, key2, result);
2482
2340
  return result;
2483
2341
  };
2484
- let GemLinkElement = class extends GemElement {
2342
+ let GemLinkElement = (_a = class extends GemElement {
2485
2343
  constructor() {
2486
2344
  super();
2345
+ __privateAdd(this, _routeOptions);
2487
2346
  this.clickHandle = async (e) => {
2488
2347
  var _a2;
2489
2348
  const pathInfo = this.getPathInfo();
@@ -2512,7 +2371,7 @@ let GemLinkElement = class extends GemElement {
2512
2371
  e.stopPropagation();
2513
2372
  await ((_a2 = this.prepare) == null ? void 0 : _a2.call(this));
2514
2373
  if (this.route) {
2515
- history.pushIgnoreCloseHandle(__spreadProps(__spreadValues({}, createHistoryParams(this.route, this.options)), {
2374
+ history.pushIgnoreCloseHandle(__spreadProps(__spreadValues({}, createHistoryParams(this.route, __privateGet(this, _routeOptions, routeOptions_get))), {
2516
2375
  title: this.route.title || this.docTitle
2517
2376
  }));
2518
2377
  } else if (this.href) {
@@ -2534,11 +2393,11 @@ let GemLinkElement = class extends GemElement {
2534
2393
  this.addEventListener("click", this.clickHandle);
2535
2394
  }
2536
2395
  getPathInfo() {
2537
- var _a2, _b;
2396
+ var _a2, _b2;
2538
2397
  if (this.route) {
2539
- const queryProp = ((_a2 = this.options) == null ? void 0 : _a2.query) || "";
2540
- const hashProp = ((_b = this.options) == null ? void 0 : _b.hash) || "";
2541
- return createPath(this.route, this.options) + queryProp + hashProp;
2398
+ const queryProp = ((_a2 = __privateGet(this, _routeOptions, routeOptions_get)) == null ? void 0 : _a2.query) || "";
2399
+ const hashProp = ((_b2 = __privateGet(this, _routeOptions, routeOptions_get)) == null ? void 0 : _b2.hash) || "";
2400
+ return createPath(this.route, __privateGet(this, _routeOptions, routeOptions_get)) + queryProp + hashProp;
2542
2401
  } else {
2543
2402
  const url = this.href || this.path + this.query + this.hash;
2544
2403
  const { path, query } = history.getParams();
@@ -2582,7 +2441,9 @@ let GemLinkElement = class extends GemElement {
2582
2441
  </a>
2583
2442
  `;
2584
2443
  }
2585
- };
2444
+ }, _routeOptions = new WeakSet(), routeOptions_get = function() {
2445
+ return this.routeOptions || this.options;
2446
+ }, _a);
2586
2447
  __decorateClass$5([
2587
2448
  attribute
2588
2449
  ], GemLinkElement.prototype, "href", 2);
@@ -2610,6 +2471,9 @@ __decorateClass$5([
2610
2471
  __decorateClass$5([
2611
2472
  property
2612
2473
  ], GemLinkElement.prototype, "options", 2);
2474
+ __decorateClass$5([
2475
+ property
2476
+ ], GemLinkElement.prototype, "routeOptions", 2);
2613
2477
  __decorateClass$5([
2614
2478
  property
2615
2479
  ], GemLinkElement.prototype, "prepare", 2);
@@ -2728,10 +2592,8 @@ class GemUseElement extends GemElement {
2728
2592
  render() {
2729
2593
  return html`
2730
2594
  <style>
2731
- :host {
2595
+ :host(:where(:not([hidden]))) {
2732
2596
  position: relative;
2733
- }
2734
- :host(:not([hidden])) {
2735
2597
  display: inline-flex;
2736
2598
  align-items: center;
2737
2599
  }
@@ -2776,7 +2638,7 @@ class GemUnsafeElement extends GemElement {
2776
2638
  if (this.shadowRoot) {
2777
2639
  this.shadowRoot.innerHTML = `
2778
2640
  <style>
2779
- :host {
2641
+ :host(:where(:not([hidden]))) {
2780
2642
  display: contents;
2781
2643
  }
2782
2644
  ${this.contentcss}
@@ -2808,13 +2670,12 @@ var __decorateClass$1 = (decorators, target, key2, kind) => {
2808
2670
  __defProp$1(target, key2, result);
2809
2671
  return result;
2810
2672
  };
2811
- document.querySelectorAll("[data-reflect]").forEach((e) => e.remove());
2812
2673
  class GemReflectElement extends GemElement {
2813
2674
  constructor() {
2814
2675
  super({ isLight: true });
2815
2676
  this.target = document.head;
2816
2677
  this.hidden = true;
2817
- this.dataset.gemreflect = "";
2678
+ this.dataset.gemReflect = "";
2818
2679
  this.effect(() => {
2819
2680
  const childNodes = [...this.childNodes];
2820
2681
  childNodes.forEach((node) => {
@@ -2893,7 +2754,7 @@ var __decorateClass = (decorators, target, key2, kind) => {
2893
2754
  __defProp2(target, key2, result);
2894
2755
  return result;
2895
2756
  };
2896
- let GemDialogBaseElement = (_a = class extends GemElement {
2757
+ let GemDialogBaseElement = (_b = class extends GemElement {
2897
2758
  constructor() {
2898
2759
  super();
2899
2760
  __privateAdd(this, _nextSibling, void 0);
@@ -2948,7 +2809,7 @@ let GemDialogBaseElement = (_a = class extends GemElement {
2948
2809
  shouldClose() {
2949
2810
  return true;
2950
2811
  }
2951
- }, _nextSibling = new WeakMap(), _parentElement = new WeakMap(), _inertStore = new WeakMap(), _a);
2812
+ }, _nextSibling = new WeakMap(), _parentElement = new WeakMap(), _inertStore = new WeakMap(), _b);
2952
2813
  __decorateClass([
2953
2814
  attribute
2954
2815
  ], GemDialogBaseElement.prototype, "label", 2);
@@ -3290,8 +3151,4 @@ const mediaQuery = {
3290
3151
  return matche(this.DATA_REDUCE);
3291
3152
  }
3292
3153
  };
3293
- const version = "1.6.19";
3294
- if (window.__GEM_DEVTOOLS__HOOK__) {
3295
- Object.assign(window.__GEM_DEVTOOLS__HOOK__, __spreadValues({}, Gem));
3296
- }
3297
3154
  export { GemActiveLinkElement, GemDialogBaseElement, GemElement, GemError, GemLightRouteElement, GemLinkElement, GemReflectElement, GemRouteElement, GemTitleElement, GemUnsafeElement, GemUseElement, I18n, LinkedList, PropProxyMap, QueryString, SVGTemplateResult, SheetToken, StoreListenerMap, TemplateResult, absoluteLocation, addMicrotask, addMicrotaskToStack, adoptedStyle, attribute, basePathStore, boolattribute, camelToKebabCase, classMap, cleanObject, connect, connectStore, createCSSSheet, createHistoryParams, createModalClass, createPath, createStore, createStoreSet, createTheme, css, customElement, defaultReqInit, defineAttribute, defineCSSState, defineProperty, defineRef, del, directive, disconnect, emitter, exportPartsMap, get, getThemeProp, getThemeStore, globalemitter, guard, history, html, ifDefined, isArrayChange, kebabToCamelCase, matchPath, mediaQuery, nativeDefineElement, numattribute, objectMapToString, part, partMap, post, property, put, randomStr, raw, refobject, removeItems, render, repeat, request, rootElement, slot, splice, state, styleMap, styled, svg, titleStore, updateStore, updateTheme, useNativeCSSStyleSheet, version };