@quartzds/core 1.0.0-beta.81 → 1.0.0-beta.82

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 (264) hide show
  1. package/components/index.js +2 -2
  2. package/components/{p-7b04d43e.js → p-002e77af.js} +656 -328
  3. package/components/p-002e77af.js.map +1 -0
  4. package/components/{p-9df62f97.js → p-065d722e.js} +18 -7
  5. package/components/{p-9df62f97.js.map → p-065d722e.js.map} +1 -1
  6. package/components/{p-d279ae53.js → p-2e88c3cc.js} +11 -3
  7. package/components/p-2e88c3cc.js.map +1 -0
  8. package/components/{p-b82bac0a.js → p-84aae53b.js} +20 -11
  9. package/components/p-84aae53b.js.map +1 -0
  10. package/components/{p-698edde1.js → p-86778e81.js} +79 -44
  11. package/components/p-86778e81.js.map +1 -0
  12. package/components/{p-028b9d2e.js → p-86a0fdf3.js} +11 -4
  13. package/components/p-86a0fdf3.js.map +1 -0
  14. package/components/{p-7f6e797a.js → p-938d74a8.js} +17 -12
  15. package/components/p-938d74a8.js.map +1 -0
  16. package/components/{p-82461767.js → p-9a9561a8.js} +8 -80
  17. package/components/p-9a9561a8.js.map +1 -0
  18. package/components/{p-f5ba28ff.js → p-ae6eda4e.js} +41 -30
  19. package/components/p-ae6eda4e.js.map +1 -0
  20. package/components/{p-f85b490c.js → p-ed500f42.js} +72 -28
  21. package/components/p-ed500f42.js.map +1 -0
  22. package/components/{p-355efdb1.js → p-ee2621aa.js} +11 -5
  23. package/components/p-ee2621aa.js.map +1 -0
  24. package/components/{p-4141d6ed.js → p-efdb8fa2.js} +2 -2
  25. package/components/p-efdb8fa2.js.map +1 -0
  26. package/components/qds-badge-counter.js +1 -1
  27. package/components/qds-badge-indicator.js +1 -1
  28. package/components/qds-breadcrumb-item.js +65 -15
  29. package/components/qds-breadcrumb-item.js.map +1 -1
  30. package/components/qds-button.js +1 -1
  31. package/components/qds-checkbox.js +1 -1
  32. package/components/qds-chip.js +46 -25
  33. package/components/qds-chip.js.map +1 -1
  34. package/components/qds-dialog.js +9 -4
  35. package/components/qds-dialog.js.map +1 -1
  36. package/components/qds-divider.js +1 -1
  37. package/components/qds-dropdown.js +25 -18
  38. package/components/qds-dropdown.js.map +1 -1
  39. package/components/qds-form-message.js +18 -8
  40. package/components/qds-form-message.js.map +1 -1
  41. package/components/qds-icon.js +1 -1
  42. package/components/qds-inline-link.js +18 -17
  43. package/components/qds-inline-link.js.map +1 -1
  44. package/components/qds-input.js +116 -51
  45. package/components/qds-input.js.map +1 -1
  46. package/components/qds-label.js +1 -1
  47. package/components/qds-list-item.js +21 -22
  48. package/components/qds-list-item.js.map +1 -1
  49. package/components/qds-loader.js +6 -4
  50. package/components/qds-loader.js.map +1 -1
  51. package/components/qds-nav-list-item.js +32 -16
  52. package/components/qds-nav-list-item.js.map +1 -1
  53. package/components/qds-progress-bar.js +26 -8
  54. package/components/qds-progress-bar.js.map +1 -1
  55. package/components/qds-radio.js +25 -24
  56. package/components/qds-radio.js.map +1 -1
  57. package/components/qds-select.js +117 -27
  58. package/components/qds-select.js.map +1 -1
  59. package/components/qds-standalone-link.js +26 -19
  60. package/components/qds-standalone-link.js.map +1 -1
  61. package/components/qds-switch.js +70 -21
  62. package/components/qds-switch.js.map +1 -1
  63. package/components/qds-tab.js +71 -45
  64. package/components/qds-tab.js.map +1 -1
  65. package/components/qds-tabbar.js +34 -27
  66. package/components/qds-tabbar.js.map +1 -1
  67. package/components/qds-table-body.js +3 -3
  68. package/components/qds-table-body.js.map +1 -1
  69. package/components/qds-table-cell.js +3 -5
  70. package/components/qds-table-cell.js.map +1 -1
  71. package/components/qds-table-head-cell.js +3 -7
  72. package/components/qds-table-head-cell.js.map +1 -1
  73. package/components/qds-table-head.js +3 -3
  74. package/components/qds-table-head.js.map +1 -1
  75. package/components/qds-table-row.js +3 -3
  76. package/components/qds-table-row.js.map +1 -1
  77. package/components/qds-table.js +3 -3
  78. package/components/qds-table.js.map +1 -1
  79. package/components/qds-tag.js +1 -1
  80. package/components/qds-textarea.js +92 -35
  81. package/components/qds-textarea.js.map +1 -1
  82. package/components/qds-title.js +1 -1
  83. package/components/qds-tooltip.js +1 -1
  84. package/dist/cjs/helpers-cdd65bd0.js.map +1 -1
  85. package/dist/cjs/{index-a9985af0.js → index-644fe556.js} +720 -273
  86. package/dist/cjs/index-644fe556.js.map +1 -0
  87. package/dist/cjs/index.cjs.js +2 -2
  88. package/dist/cjs/{library-57845012.js → library-1fda56bc.js} +2 -2
  89. package/dist/cjs/{library-57845012.js.map → library-1fda56bc.js.map} +1 -1
  90. package/dist/cjs/loader.cjs.js +2 -2
  91. package/dist/cjs/qds-badge-counter_2.cjs.entry.js +151 -0
  92. package/dist/cjs/qds-badge-counter_2.cjs.entry.js.map +1 -0
  93. package/dist/cjs/qds-breadcrumb-item.cjs.entry.js +53 -12
  94. package/dist/cjs/qds-breadcrumb-item.cjs.entry.js.map +1 -1
  95. package/dist/cjs/qds-button.cjs.entry.js +73 -38
  96. package/dist/cjs/qds-button.cjs.entry.js.map +1 -1
  97. package/dist/cjs/qds-checkbox.cjs.entry.js +67 -22
  98. package/dist/cjs/qds-checkbox.cjs.entry.js.map +1 -1
  99. package/dist/cjs/qds-chip.cjs.entry.js +43 -21
  100. package/dist/cjs/qds-chip.cjs.entry.js.map +1 -1
  101. package/dist/cjs/qds-dialog.cjs.entry.js +8 -3
  102. package/dist/cjs/qds-dialog.cjs.entry.js.map +1 -1
  103. package/dist/cjs/qds-divider.cjs.entry.js +9 -3
  104. package/dist/cjs/qds-divider.cjs.entry.js.map +1 -1
  105. package/dist/cjs/qds-dropdown.cjs.entry.js +24 -17
  106. package/dist/cjs/qds-dropdown.cjs.entry.js.map +1 -1
  107. package/dist/cjs/qds-form-message.cjs.entry.js +16 -6
  108. package/dist/cjs/qds-form-message.cjs.entry.js.map +1 -1
  109. package/dist/cjs/qds-icon.cjs.entry.js +7 -5
  110. package/dist/cjs/qds-icon.cjs.entry.js.map +1 -1
  111. package/dist/cjs/qds-inline-link.cjs.entry.js +16 -15
  112. package/dist/cjs/qds-inline-link.cjs.entry.js.map +1 -1
  113. package/dist/cjs/qds-input.cjs.entry.js +109 -41
  114. package/dist/cjs/qds-input.cjs.entry.js.map +1 -1
  115. package/dist/cjs/qds-label.cjs.entry.js +16 -5
  116. package/dist/cjs/qds-label.cjs.entry.js.map +1 -1
  117. package/dist/cjs/qds-list-item.cjs.entry.js +17 -18
  118. package/dist/cjs/qds-list-item.cjs.entry.js.map +1 -1
  119. package/dist/cjs/qds-loader.cjs.entry.js +5 -3
  120. package/dist/cjs/qds-loader.cjs.entry.js.map +1 -1
  121. package/dist/cjs/qds-nav-list-item.cjs.entry.js +29 -13
  122. package/dist/cjs/qds-nav-list-item.cjs.entry.js.map +1 -1
  123. package/dist/cjs/qds-progress-bar.cjs.entry.js +26 -8
  124. package/dist/cjs/qds-progress-bar.cjs.entry.js.map +1 -1
  125. package/dist/cjs/qds-radio.cjs.entry.js +22 -21
  126. package/dist/cjs/qds-radio.cjs.entry.js.map +1 -1
  127. package/dist/cjs/qds-select.cjs.entry.js +114 -23
  128. package/dist/cjs/qds-select.cjs.entry.js.map +1 -1
  129. package/dist/cjs/qds-standalone-link.cjs.entry.js +24 -17
  130. package/dist/cjs/qds-standalone-link.cjs.entry.js.map +1 -1
  131. package/dist/cjs/qds-switch.cjs.entry.js +68 -18
  132. package/dist/cjs/qds-switch.cjs.entry.js.map +1 -1
  133. package/dist/cjs/qds-tab.cjs.entry.js +64 -38
  134. package/dist/cjs/qds-tab.cjs.entry.js.map +1 -1
  135. package/dist/cjs/qds-tabbar.cjs.entry.js +27 -20
  136. package/dist/cjs/qds-tabbar.cjs.entry.js.map +1 -1
  137. package/dist/cjs/qds-table-body.cjs.entry.js +2 -2
  138. package/dist/cjs/qds-table-body.cjs.entry.js.map +1 -1
  139. package/dist/cjs/qds-table-cell.cjs.entry.js +2 -4
  140. package/dist/cjs/qds-table-cell.cjs.entry.js.map +1 -1
  141. package/dist/cjs/qds-table-head-cell.cjs.entry.js +2 -6
  142. package/dist/cjs/qds-table-head-cell.cjs.entry.js.map +1 -1
  143. package/dist/cjs/qds-table-head.cjs.entry.js +2 -2
  144. package/dist/cjs/qds-table-head.cjs.entry.js.map +1 -1
  145. package/dist/cjs/qds-table-row.cjs.entry.js +2 -2
  146. package/dist/cjs/qds-table-row.cjs.entry.js.map +1 -1
  147. package/dist/cjs/qds-table.cjs.entry.js +2 -2
  148. package/dist/cjs/qds-table.cjs.entry.js.map +1 -1
  149. package/dist/cjs/qds-tag_2.cjs.entry.js +30 -16
  150. package/dist/cjs/qds-tag_2.cjs.entry.js.map +1 -1
  151. package/dist/cjs/qds-textarea.cjs.entry.js +90 -30
  152. package/dist/cjs/qds-textarea.cjs.entry.js.map +1 -1
  153. package/dist/cjs/{qds-badge-counter_3.cjs.entry.js → qds-tooltip.cjs.entry.js} +40 -152
  154. package/dist/cjs/qds-tooltip.cjs.entry.js.map +1 -0
  155. package/dist/cjs/qds.cjs.js +3 -3
  156. package/dist/cjs/qds.cjs.js.map +1 -1
  157. package/dist/custom-elements.json +102 -201
  158. package/dist/docs.d.ts +8 -0
  159. package/dist/docs.json +870 -630
  160. package/dist/esm/{helpers-4eb4fa44.js → helpers-d08540f8.js} +2 -2
  161. package/dist/esm/helpers-d08540f8.js.map +1 -0
  162. package/dist/esm/{index-5291e8ff.js → index-be1284b6.js} +720 -273
  163. package/dist/esm/index-be1284b6.js.map +1 -0
  164. package/dist/esm/index.js +2 -2
  165. package/dist/esm/{library-9edbe354.js → library-a92b7d9e.js} +2 -2
  166. package/dist/esm/{library-9edbe354.js.map → library-a92b7d9e.js.map} +1 -1
  167. package/dist/esm/loader.js +3 -3
  168. package/dist/esm/qds-badge-counter_2.entry.js +146 -0
  169. package/dist/esm/qds-badge-counter_2.entry.js.map +1 -0
  170. package/dist/esm/qds-breadcrumb-item.entry.js +54 -13
  171. package/dist/esm/qds-breadcrumb-item.entry.js.map +1 -1
  172. package/dist/esm/qds-button.entry.js +74 -39
  173. package/dist/esm/qds-button.entry.js.map +1 -1
  174. package/dist/esm/qds-checkbox.entry.js +69 -24
  175. package/dist/esm/qds-checkbox.entry.js.map +1 -1
  176. package/dist/esm/qds-chip.entry.js +44 -22
  177. package/dist/esm/qds-chip.entry.js.map +1 -1
  178. package/dist/esm/qds-dialog.entry.js +9 -4
  179. package/dist/esm/qds-dialog.entry.js.map +1 -1
  180. package/dist/esm/qds-divider.entry.js +10 -4
  181. package/dist/esm/qds-divider.entry.js.map +1 -1
  182. package/dist/esm/qds-dropdown.entry.js +25 -18
  183. package/dist/esm/qds-dropdown.entry.js.map +1 -1
  184. package/dist/esm/qds-form-message.entry.js +17 -7
  185. package/dist/esm/qds-form-message.entry.js.map +1 -1
  186. package/dist/esm/qds-icon.entry.js +8 -6
  187. package/dist/esm/qds-icon.entry.js.map +1 -1
  188. package/dist/esm/qds-inline-link.entry.js +17 -16
  189. package/dist/esm/qds-inline-link.entry.js.map +1 -1
  190. package/dist/esm/qds-input.entry.js +111 -43
  191. package/dist/esm/qds-input.entry.js.map +1 -1
  192. package/dist/esm/qds-label.entry.js +17 -6
  193. package/dist/esm/qds-label.entry.js.map +1 -1
  194. package/dist/esm/qds-list-item.entry.js +18 -19
  195. package/dist/esm/qds-list-item.entry.js.map +1 -1
  196. package/dist/esm/qds-loader.entry.js +5 -3
  197. package/dist/esm/qds-loader.entry.js.map +1 -1
  198. package/dist/esm/qds-nav-list-item.entry.js +30 -14
  199. package/dist/esm/qds-nav-list-item.entry.js.map +1 -1
  200. package/dist/esm/qds-progress-bar.entry.js +26 -8
  201. package/dist/esm/qds-progress-bar.entry.js.map +1 -1
  202. package/dist/esm/qds-radio.entry.js +23 -22
  203. package/dist/esm/qds-radio.entry.js.map +1 -1
  204. package/dist/esm/qds-select.entry.js +116 -25
  205. package/dist/esm/qds-select.entry.js.map +1 -1
  206. package/dist/esm/qds-standalone-link.entry.js +25 -18
  207. package/dist/esm/qds-standalone-link.entry.js.map +1 -1
  208. package/dist/esm/qds-switch.entry.js +70 -20
  209. package/dist/esm/qds-switch.entry.js.map +1 -1
  210. package/dist/esm/qds-tab.entry.js +65 -39
  211. package/dist/esm/qds-tab.entry.js.map +1 -1
  212. package/dist/esm/qds-tabbar.entry.js +28 -21
  213. package/dist/esm/qds-tabbar.entry.js.map +1 -1
  214. package/dist/esm/qds-table-body.entry.js +3 -3
  215. package/dist/esm/qds-table-body.entry.js.map +1 -1
  216. package/dist/esm/qds-table-cell.entry.js +3 -5
  217. package/dist/esm/qds-table-cell.entry.js.map +1 -1
  218. package/dist/esm/qds-table-head-cell.entry.js +3 -7
  219. package/dist/esm/qds-table-head-cell.entry.js.map +1 -1
  220. package/dist/esm/qds-table-head.entry.js +3 -3
  221. package/dist/esm/qds-table-head.entry.js.map +1 -1
  222. package/dist/esm/qds-table-row.entry.js +3 -3
  223. package/dist/esm/qds-table-row.entry.js.map +1 -1
  224. package/dist/esm/qds-table.entry.js +3 -3
  225. package/dist/esm/qds-table.entry.js.map +1 -1
  226. package/dist/esm/qds-tag_2.entry.js +31 -17
  227. package/dist/esm/qds-tag_2.entry.js.map +1 -1
  228. package/dist/esm/qds-textarea.entry.js +92 -32
  229. package/dist/esm/qds-textarea.entry.js.map +1 -1
  230. package/dist/esm/{qds-badge-counter_3.entry.js → qds-tooltip.entry.js} +42 -152
  231. package/dist/esm/qds-tooltip.entry.js.map +1 -0
  232. package/dist/esm/qds.js +4 -4
  233. package/dist/esm/qds.js.map +1 -1
  234. package/dist/types/components/breadcrumb-item/breadcrumb-item.d.ts +4 -0
  235. package/dist/types/components/checkbox/checkbox.d.ts +0 -6
  236. package/dist/types/components/chip/chip.d.ts +0 -6
  237. package/dist/types/components/input/input.d.ts +1 -29
  238. package/dist/types/components/select/select.d.ts +0 -6
  239. package/dist/types/components/switch/switch.d.ts +0 -6
  240. package/dist/types/components/tag/tag.d.ts +1 -1
  241. package/dist/types/components/textarea/textarea.d.ts +1 -28
  242. package/dist/types/components.d.ts +623 -91
  243. package/dist/types/stencil-public-runtime.d.ts +6 -0
  244. package/dist/vscode.html-custom-data.json +0 -80
  245. package/hydrate/index.d.ts +28 -5
  246. package/hydrate/index.js +2748 -1041
  247. package/hydrate/index.mjs +2748 -1041
  248. package/package.json +3 -3
  249. package/components/p-028b9d2e.js.map +0 -1
  250. package/components/p-355efdb1.js.map +0 -1
  251. package/components/p-4141d6ed.js.map +0 -1
  252. package/components/p-698edde1.js.map +0 -1
  253. package/components/p-7b04d43e.js.map +0 -1
  254. package/components/p-7f6e797a.js.map +0 -1
  255. package/components/p-82461767.js.map +0 -1
  256. package/components/p-b82bac0a.js.map +0 -1
  257. package/components/p-d279ae53.js.map +0 -1
  258. package/components/p-f5ba28ff.js.map +0 -1
  259. package/components/p-f85b490c.js.map +0 -1
  260. package/dist/cjs/index-a9985af0.js.map +0 -1
  261. package/dist/cjs/qds-badge-counter_3.cjs.entry.js.map +0 -1
  262. package/dist/esm/helpers-4eb4fa44.js.map +0 -1
  263. package/dist/esm/index-5291e8ff.js.map +0 -1
  264. package/dist/esm/qds-badge-counter_3.entry.js.map +0 -1
@@ -26,19 +26,32 @@ function _interopNamespace(e) {
26
26
  }
27
27
 
28
28
  const NAMESPACE = 'qds';
29
- const BUILD = /* qds */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: true, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: true, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: false, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: true, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: false, hostListenerTargetDocument: true, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: true, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: false, initializeNextTick: false, invisiblePrehydration: false, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: true, mode: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: true, propNumber: true, propString: true, reflect: true, scoped: true, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: true, shadowDom: true, slot: true, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: true, taskQueue: true, transformTagName: true, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: true, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: true, watchCallback: true };
29
+ const BUILD = /* qds */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, constructableCSS: true, cssAnnotations: true, devTools: false, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: true, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: false, hostListenerTargetDocument: true, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: true, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: false, initializeNextTick: false, invisiblePrehydration: false, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: true, mode: false, modernPropertyDecls: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: true, propNumber: true, propString: true, reflect: true, scoped: true, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: true, shadowDom: true, slot: true, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: true, taskQueue: true, transformTagName: true, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: true, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: true, watchCallback: true };
30
30
 
31
31
  /*
32
- Stencil Client Platform v4.21.0 | MIT Licensed | https://stenciljs.com
32
+ Stencil Client Platform v4.27.1 | MIT Licensed | https://stenciljs.com
33
33
  */
34
34
  var __defProp = Object.defineProperty;
35
35
  var __export = (target, all) => {
36
36
  for (var name in all)
37
37
  __defProp(target, name, { get: all[name], enumerable: true });
38
38
  };
39
- var hostRefs = /* @__PURE__ */ new WeakMap();
40
- var getHostRef = (ref) => hostRefs.get(ref);
41
- var registerInstance = (lazyInstance, hostRef) => hostRefs.set(hostRef.$lazyInstance$ = lazyInstance, hostRef);
39
+
40
+ // src/utils/constants.ts
41
+ var SVG_NS = "http://www.w3.org/2000/svg";
42
+ var HTML_NS = "http://www.w3.org/1999/xhtml";
43
+
44
+ // src/client/client-host-ref.ts
45
+ var getHostRef = (ref) => {
46
+ if (ref.__stencil__getHostRef) {
47
+ return ref.__stencil__getHostRef();
48
+ }
49
+ return void 0;
50
+ };
51
+ var registerInstance = (lazyInstance, hostRef) => {
52
+ lazyInstance.__stencil__getHostRef = () => hostRef;
53
+ hostRef.$lazyInstance$ = lazyInstance;
54
+ };
42
55
  var registerHost = (hostElement, cmpMeta) => {
43
56
  const hostRef = {
44
57
  $flags$: 0,
@@ -54,7 +67,9 @@ var registerHost = (hostElement, cmpMeta) => {
54
67
  hostElement["s-p"] = [];
55
68
  hostElement["s-rc"] = [];
56
69
  }
57
- return hostRefs.set(hostElement, hostRef);
70
+ const ref = hostRef;
71
+ hostElement.__stencil__getHostRef = () => ref;
72
+ return ref;
58
73
  };
59
74
  var isMemberInElement = (elm, memberName) => memberName in elm;
60
75
  var consoleError = (e, el) => (0, console.error)(e, el);
@@ -78,12 +93,17 @@ var loadModule = (cmpMeta, hostRef, hmrVersionId) => {
78
93
  /* webpackExclude: /\.system\.entry\.js$/ */
79
94
  /* webpackMode: "lazy" */
80
95
  `./${bundleId}.entry.js${""}`
81
- )); }).then((importedModule) => {
82
- {
83
- cmpModules.set(bundleId, importedModule);
96
+ )); }).then(
97
+ (importedModule) => {
98
+ {
99
+ cmpModules.set(bundleId, importedModule);
100
+ }
101
+ return importedModule[exportName];
102
+ },
103
+ (e) => {
104
+ consoleError(e, hostRef.$hostElement$);
84
105
  }
85
- return importedModule[exportName];
86
- }, consoleError);
106
+ );
87
107
  };
88
108
 
89
109
  // src/client/client-style.ts
@@ -94,6 +114,7 @@ var CONTENT_REF_ID = "r";
94
114
  var ORG_LOCATION_ID = "o";
95
115
  var SLOT_NODE_ID = "s";
96
116
  var TEXT_NODE_ID = "t";
117
+ var COMMENT_NODE_ID = "c";
97
118
  var HYDRATE_ID = "s-id";
98
119
  var HYDRATED_STYLE_ID = "sty-id";
99
120
  var HYDRATE_CHILD_ID = "c-id";
@@ -106,7 +127,6 @@ var FORM_ASSOCIATED_CUSTOM_ELEMENT_CALLBACKS = [
106
127
  "formStateRestoreCallback"
107
128
  ];
108
129
  var win = typeof window !== "undefined" ? window : {};
109
- var doc = win.document || { head: {} };
110
130
  var plt = {
111
131
  $flags$: 0,
112
132
  $resourcesUrl$: "",
@@ -116,11 +136,11 @@ var plt = {
116
136
  rel: (el, eventName, listener, opts) => el.removeEventListener(eventName, listener, opts),
117
137
  ce: (eventName, opts) => new CustomEvent(eventName, opts)
118
138
  };
119
- var supportsShadow = BUILD.shadowDom;
120
139
  var supportsListenerOptions = /* @__PURE__ */ (() => {
140
+ var _a;
121
141
  let supportsListenerOptions2 = false;
122
142
  try {
123
- doc.addEventListener(
143
+ (_a = win.document) == null ? void 0 : _a.addEventListener(
124
144
  "e",
125
145
  null,
126
146
  Object.defineProperty({}, "passive", {
@@ -184,22 +204,17 @@ var getAssetPath = (path) => {
184
204
  return assetUrl.origin !== win.location.origin ? assetUrl.href : assetUrl.pathname;
185
205
  };
186
206
 
187
- // src/utils/constants.ts
188
- var EMPTY_OBJ = {};
189
- var SVG_NS = "http://www.w3.org/2000/svg";
190
- var HTML_NS = "http://www.w3.org/1999/xhtml";
191
-
192
207
  // src/utils/helpers.ts
193
- var isDef = (v) => v != null;
208
+ var isDef = (v) => v != null && v !== void 0;
194
209
  var isComplexType = (o) => {
195
210
  o = typeof o;
196
211
  return o === "object" || o === "function";
197
212
  };
198
213
 
199
214
  // src/utils/query-nonce-meta-tag-content.ts
200
- function queryNonceMetaTagContent(doc2) {
215
+ function queryNonceMetaTagContent(doc) {
201
216
  var _a, _b, _c;
202
- return (_c = (_b = (_a = doc2.head) == null ? void 0 : _a.querySelector('meta[name="csp-nonce"]')) == null ? void 0 : _b.getAttribute("content")) != null ? _c : void 0;
217
+ return (_c = (_b = (_a = doc.head) == null ? void 0 : _a.querySelector('meta[name="csp-nonce"]')) == null ? void 0 : _b.getAttribute("content")) != null ? _c : void 0;
203
218
  }
204
219
 
205
220
  // src/utils/result.ts
@@ -250,6 +265,82 @@ var unwrapErr = (result) => {
250
265
  throw result.value;
251
266
  }
252
267
  };
268
+ var getSlottedChildNodes = (childNodes) => {
269
+ const result = [];
270
+ for (let i2 = 0; i2 < childNodes.length; i2++) {
271
+ const slottedNode = childNodes[i2]["s-nr"] || void 0;
272
+ if (slottedNode && slottedNode.isConnected) {
273
+ result.push(slottedNode);
274
+ }
275
+ }
276
+ return result;
277
+ };
278
+ var addSlotRelocateNode = (newChild, slotNode, prepend, position) => {
279
+ if (newChild["s-ol"] && newChild["s-ol"].isConnected) {
280
+ return;
281
+ }
282
+ const slottedNodeLocation = document.createTextNode("");
283
+ slottedNodeLocation["s-nr"] = newChild;
284
+ if (!slotNode["s-cr"] || !slotNode["s-cr"].parentNode) return;
285
+ const parent = slotNode["s-cr"].parentNode;
286
+ const appendMethod = prepend ? internalCall(parent, "prepend") : internalCall(parent, "appendChild");
287
+ if (typeof position !== "undefined") {
288
+ slottedNodeLocation["s-oo"] = position;
289
+ const childNodes = internalCall(parent, "childNodes");
290
+ const slotRelocateNodes = [slottedNodeLocation];
291
+ childNodes.forEach((n) => {
292
+ if (n["s-nr"]) slotRelocateNodes.push(n);
293
+ });
294
+ slotRelocateNodes.sort((a, b) => {
295
+ if (!a["s-oo"] || a["s-oo"] < (b["s-oo"] || 0)) return -1;
296
+ else if (!b["s-oo"] || b["s-oo"] < a["s-oo"]) return 1;
297
+ return 0;
298
+ });
299
+ slotRelocateNodes.forEach((n) => appendMethod.call(parent, n));
300
+ } else {
301
+ appendMethod.call(parent, slottedNodeLocation);
302
+ }
303
+ newChild["s-ol"] = slottedNodeLocation;
304
+ newChild["s-sh"] = slotNode["s-hn"];
305
+ };
306
+ var getSlotName = (node) => typeof node["s-sn"] === "string" ? node["s-sn"] : node.nodeType === 1 && node.getAttribute("slot") || void 0;
307
+ function patchSlotNode(node) {
308
+ if (node.assignedElements || node.assignedNodes || !node["s-sr"]) return;
309
+ const assignedFactory = (elementsOnly) => (function(opts) {
310
+ const toReturn = [];
311
+ const slotName = this["s-sn"];
312
+ if (opts == null ? void 0 : opts.flatten) {
313
+ console.error(`
314
+ Flattening is not supported for Stencil non-shadow slots.
315
+ You can use \`.childNodes\` to nested slot fallback content.
316
+ If you have a particular use case, please open an issue on the Stencil repo.
317
+ `);
318
+ }
319
+ const parent = this["s-cr"].parentElement;
320
+ const slottedNodes = parent.__childNodes ? parent.childNodes : getSlottedChildNodes(parent.childNodes);
321
+ slottedNodes.forEach((n) => {
322
+ if (slotName === getSlotName(n)) {
323
+ toReturn.push(n);
324
+ }
325
+ });
326
+ if (elementsOnly) {
327
+ return toReturn.filter((n) => n.nodeType === 1 /* ElementNode */);
328
+ }
329
+ return toReturn;
330
+ }).bind(node);
331
+ node.assignedElements = assignedFactory(true);
332
+ node.assignedNodes = assignedFactory(false);
333
+ }
334
+ function internalCall(node, method) {
335
+ if ("__" + method in node) {
336
+ const toReturn = node["__" + method];
337
+ if (typeof toReturn !== "function") return toReturn;
338
+ return toReturn.bind(node);
339
+ } else {
340
+ if (typeof node[method] !== "function") return node[method];
341
+ return node[method].bind(node);
342
+ }
343
+ }
253
344
  var createTime = (fnName, tagName = "") => {
254
345
  {
255
346
  return () => {
@@ -372,50 +463,145 @@ var initializeClientHydrate = (hostElm, tagName, hostId, hostRef) => {
372
463
  const shadowRoot = hostElm.shadowRoot;
373
464
  const childRenderNodes = [];
374
465
  const slotNodes = [];
466
+ const slottedNodes = [];
375
467
  const shadowRootNodes = shadowRoot ? [] : null;
376
- const vnode = hostRef.$vnode$ = newVNode(tagName, null);
377
- if (!plt.$orgLocNodes$) {
378
- initializeDocumentHydrate(doc.body, plt.$orgLocNodes$ = /* @__PURE__ */ new Map());
468
+ const vnode = newVNode(tagName, null);
469
+ vnode.$elm$ = hostElm;
470
+ let scopeId2;
471
+ {
472
+ const cmpMeta = hostRef.$cmpMeta$;
473
+ if (cmpMeta && cmpMeta.$flags$ & 10 /* needsScopedEncapsulation */ && hostElm["s-sc"]) {
474
+ scopeId2 = hostElm["s-sc"];
475
+ hostElm.classList.add(scopeId2 + "-h");
476
+ } else if (hostElm["s-sc"]) {
477
+ delete hostElm["s-sc"];
478
+ }
479
+ }
480
+ if (win.document && (!plt.$orgLocNodes$ || !plt.$orgLocNodes$.size)) {
481
+ initializeDocumentHydrate(win.document.body, plt.$orgLocNodes$ = /* @__PURE__ */ new Map());
379
482
  }
380
483
  hostElm[HYDRATE_ID] = hostId;
381
484
  hostElm.removeAttribute(HYDRATE_ID);
382
- clientHydrate(vnode, childRenderNodes, slotNodes, shadowRootNodes, hostElm, hostElm, hostId);
383
- childRenderNodes.map((c) => {
384
- const orgLocationId = c.$hostId$ + "." + c.$nodeId$;
485
+ hostRef.$vnode$ = clientHydrate(
486
+ vnode,
487
+ childRenderNodes,
488
+ slotNodes,
489
+ shadowRootNodes,
490
+ hostElm,
491
+ hostElm,
492
+ hostId,
493
+ slottedNodes
494
+ );
495
+ let crIndex = 0;
496
+ const crLength = childRenderNodes.length;
497
+ let childRenderNode;
498
+ for (crIndex; crIndex < crLength; crIndex++) {
499
+ childRenderNode = childRenderNodes[crIndex];
500
+ const orgLocationId = childRenderNode.$hostId$ + "." + childRenderNode.$nodeId$;
385
501
  const orgLocationNode = plt.$orgLocNodes$.get(orgLocationId);
386
- const node = c.$elm$;
387
- if (orgLocationNode && supportsShadow && orgLocationNode["s-en"] === "") {
388
- orgLocationNode.parentNode.insertBefore(node, orgLocationNode.nextSibling);
389
- }
502
+ const node = childRenderNode.$elm$;
390
503
  if (!shadowRoot) {
391
- node["s-hn"] = tagName;
392
- if (orgLocationNode) {
393
- node["s-ol"] = orgLocationNode;
394
- node["s-ol"]["s-nr"] = node;
504
+ node["s-hn"] = tagName.toUpperCase();
505
+ if (childRenderNode.$tag$ === "slot") {
506
+ node["s-cr"] = hostElm["s-cr"];
507
+ }
508
+ }
509
+ if (childRenderNode.$tag$ === "slot") {
510
+ childRenderNode.$name$ = childRenderNode.$elm$["s-sn"] || childRenderNode.$elm$["name"] || null;
511
+ if (childRenderNode.$children$) {
512
+ childRenderNode.$flags$ |= 2 /* isSlotFallback */;
513
+ if (!childRenderNode.$elm$.childNodes.length) {
514
+ childRenderNode.$children$.forEach((c) => {
515
+ childRenderNode.$elm$.appendChild(c.$elm$);
516
+ });
517
+ }
518
+ } else {
519
+ childRenderNode.$flags$ |= 1 /* isSlotReference */;
520
+ }
521
+ }
522
+ if (orgLocationNode && orgLocationNode.isConnected) {
523
+ if (shadowRoot && orgLocationNode["s-en"] === "") {
524
+ orgLocationNode.parentNode.insertBefore(node, orgLocationNode.nextSibling);
525
+ }
526
+ orgLocationNode.parentNode.removeChild(orgLocationNode);
527
+ if (!shadowRoot) {
528
+ node["s-oo"] = parseInt(childRenderNode.$nodeId$);
395
529
  }
396
530
  }
397
531
  plt.$orgLocNodes$.delete(orgLocationId);
398
- });
399
- if (shadowRoot) {
400
- shadowRootNodes.map((shadowRootNode) => {
401
- if (shadowRootNode) {
402
- shadowRoot.appendChild(shadowRootNode);
532
+ }
533
+ const hosts = [];
534
+ const snLen = slottedNodes.length;
535
+ let snIndex = 0;
536
+ let slotGroup;
537
+ let snGroupIdx;
538
+ let snGroupLen;
539
+ let slottedItem;
540
+ for (snIndex; snIndex < snLen; snIndex++) {
541
+ slotGroup = slottedNodes[snIndex];
542
+ if (!slotGroup || !slotGroup.length) continue;
543
+ snGroupLen = slotGroup.length;
544
+ snGroupIdx = 0;
545
+ for (snGroupIdx; snGroupIdx < snGroupLen; snGroupIdx++) {
546
+ slottedItem = slotGroup[snGroupIdx];
547
+ if (!hosts[slottedItem.hostId]) {
548
+ hosts[slottedItem.hostId] = plt.$orgLocNodes$.get(slottedItem.hostId);
403
549
  }
550
+ if (!hosts[slottedItem.hostId]) continue;
551
+ const hostEle = hosts[slottedItem.hostId];
552
+ if (!hostEle.shadowRoot || !shadowRoot) {
553
+ slottedItem.slot["s-cr"] = hostEle["s-cr"];
554
+ if (!slottedItem.slot["s-cr"] && hostEle.shadowRoot) {
555
+ slottedItem.slot["s-cr"] = hostEle;
556
+ } else {
557
+ slottedItem.slot["s-cr"] = (hostEle.__childNodes || hostEle.childNodes)[0];
558
+ }
559
+ addSlotRelocateNode(slottedItem.node, slottedItem.slot, false, slottedItem.node["s-oo"]);
560
+ }
561
+ if (hostEle.shadowRoot && slottedItem.node.parentElement !== hostEle) {
562
+ hostEle.appendChild(slottedItem.node);
563
+ }
564
+ }
565
+ }
566
+ if (scopeId2 && slotNodes.length) {
567
+ slotNodes.forEach((slot) => {
568
+ slot.$elm$.parentElement.classList.add(scopeId2 + "-s");
404
569
  });
405
570
  }
571
+ if (shadowRoot && !shadowRoot.childNodes.length) {
572
+ let rnIdex = 0;
573
+ const rnLen = shadowRootNodes.length;
574
+ if (rnLen) {
575
+ for (rnIdex; rnIdex < rnLen; rnIdex++) {
576
+ shadowRoot.appendChild(shadowRootNodes[rnIdex]);
577
+ }
578
+ Array.from(hostElm.childNodes).forEach((node) => {
579
+ if (typeof node["s-sn"] !== "string") {
580
+ if (node.nodeType === 1 /* ElementNode */ && node.slot && node.hidden) {
581
+ node.removeAttribute("hidden");
582
+ } else if (node.nodeType === 8 /* CommentNode */ || node.nodeType === 3 /* TextNode */ && !node.wholeText.trim()) {
583
+ node.parentNode.removeChild(node);
584
+ }
585
+ }
586
+ });
587
+ }
588
+ }
589
+ plt.$orgLocNodes$.delete(hostElm["s-id"]);
590
+ hostRef.$hostElement$ = hostElm;
406
591
  endHydrate();
407
592
  };
408
- var clientHydrate = (parentVNode, childRenderNodes, slotNodes, shadowRootNodes, hostElm, node, hostId) => {
593
+ var clientHydrate = (parentVNode, childRenderNodes, slotNodes, shadowRootNodes, hostElm, node, hostId, slottedNodes = []) => {
409
594
  let childNodeType;
410
595
  let childIdSplt;
411
596
  let childVNode;
412
597
  let i2;
598
+ const scopeId2 = hostElm["s-sc"];
413
599
  if (node.nodeType === 1 /* ElementNode */) {
414
600
  childNodeType = node.getAttribute(HYDRATE_CHILD_ID);
415
601
  if (childNodeType) {
416
602
  childIdSplt = childNodeType.split(".");
417
603
  if (childIdSplt[0] === hostId || childIdSplt[0] === "0") {
418
- childVNode = {
604
+ childVNode = createSimpleVNode({
419
605
  $flags$: 0,
420
606
  $hostId$: childIdSplt[0],
421
607
  $nodeId$: childIdSplt[1],
@@ -423,18 +609,43 @@ var clientHydrate = (parentVNode, childRenderNodes, slotNodes, shadowRootNodes,
423
609
  $index$: childIdSplt[3],
424
610
  $tag$: node.tagName.toLowerCase(),
425
611
  $elm$: node,
426
- $attrs$: null,
427
- $children$: null,
428
- $key$: null,
429
- $name$: null,
430
- $text$: null
431
- };
612
+ // If we don't add the initial classes to the VNode, the first `vdom-render.ts` patch
613
+ // won't try to reconcile them. Classes set on the node will be blown away.
614
+ $attrs$: { class: node.className || "" }
615
+ });
432
616
  childRenderNodes.push(childVNode);
433
617
  node.removeAttribute(HYDRATE_CHILD_ID);
434
618
  if (!parentVNode.$children$) {
435
619
  parentVNode.$children$ = [];
436
620
  }
437
- parentVNode.$children$[childVNode.$index$] = childVNode;
621
+ if (scopeId2) {
622
+ node["s-si"] = scopeId2;
623
+ childVNode.$attrs$.class += " " + scopeId2;
624
+ }
625
+ const slotName = childVNode.$elm$.getAttribute("s-sn");
626
+ if (typeof slotName === "string") {
627
+ if (childVNode.$tag$ === "slot-fb") {
628
+ addSlot(
629
+ slotName,
630
+ childIdSplt[2],
631
+ childVNode,
632
+ node,
633
+ parentVNode,
634
+ childRenderNodes,
635
+ slotNodes,
636
+ shadowRootNodes,
637
+ slottedNodes
638
+ );
639
+ if (scopeId2) {
640
+ node.classList.add(scopeId2);
641
+ }
642
+ }
643
+ childVNode.$elm$["s-sn"] = slotName;
644
+ childVNode.$elm$.removeAttribute("s-sn");
645
+ }
646
+ if (childVNode.$index$ !== void 0) {
647
+ parentVNode.$children$[childVNode.$index$] = childVNode;
648
+ }
438
649
  parentVNode = childVNode;
439
650
  if (shadowRootNodes && childVNode.$depth$ === "0") {
440
651
  shadowRootNodes[childVNode.$index$] = childVNode.$elm$;
@@ -450,31 +661,33 @@ var clientHydrate = (parentVNode, childRenderNodes, slotNodes, shadowRootNodes,
450
661
  shadowRootNodes,
451
662
  hostElm,
452
663
  node.shadowRoot.childNodes[i2],
453
- hostId
664
+ hostId,
665
+ slottedNodes
454
666
  );
455
667
  }
456
668
  }
457
- for (i2 = node.childNodes.length - 1; i2 >= 0; i2--) {
669
+ const nonShadowNodes = node.__childNodes || node.childNodes;
670
+ for (i2 = nonShadowNodes.length - 1; i2 >= 0; i2--) {
458
671
  clientHydrate(
459
672
  parentVNode,
460
673
  childRenderNodes,
461
674
  slotNodes,
462
675
  shadowRootNodes,
463
676
  hostElm,
464
- node.childNodes[i2],
465
- hostId
677
+ nonShadowNodes[i2],
678
+ hostId,
679
+ slottedNodes
466
680
  );
467
681
  }
468
682
  } else if (node.nodeType === 8 /* CommentNode */) {
469
683
  childIdSplt = node.nodeValue.split(".");
470
684
  if (childIdSplt[1] === hostId || childIdSplt[1] === "0") {
471
685
  childNodeType = childIdSplt[0];
472
- childVNode = {
473
- $flags$: 0,
686
+ childVNode = createSimpleVNode({
474
687
  $hostId$: childIdSplt[1],
475
688
  $nodeId$: childIdSplt[2],
476
689
  $depth$: childIdSplt[3],
477
- $index$: childIdSplt[4],
690
+ $index$: childIdSplt[4] || "0",
478
691
  $elm$: node,
479
692
  $attrs$: null,
480
693
  $children$: null,
@@ -482,46 +695,43 @@ var clientHydrate = (parentVNode, childRenderNodes, slotNodes, shadowRootNodes,
482
695
  $name$: null,
483
696
  $tag$: null,
484
697
  $text$: null
485
- };
698
+ });
486
699
  if (childNodeType === TEXT_NODE_ID) {
487
- childVNode.$elm$ = node.nextSibling;
700
+ childVNode.$elm$ = findCorrespondingNode(node, 3 /* TextNode */);
488
701
  if (childVNode.$elm$ && childVNode.$elm$.nodeType === 3 /* TextNode */) {
489
702
  childVNode.$text$ = childVNode.$elm$.textContent;
490
703
  childRenderNodes.push(childVNode);
491
704
  node.remove();
492
- if (!parentVNode.$children$) {
493
- parentVNode.$children$ = [];
705
+ if (hostId === childVNode.$hostId$) {
706
+ if (!parentVNode.$children$) {
707
+ parentVNode.$children$ = [];
708
+ }
709
+ parentVNode.$children$[childVNode.$index$] = childVNode;
494
710
  }
495
- parentVNode.$children$[childVNode.$index$] = childVNode;
496
711
  if (shadowRootNodes && childVNode.$depth$ === "0") {
497
712
  shadowRootNodes[childVNode.$index$] = childVNode.$elm$;
498
713
  }
499
714
  }
715
+ } else if (childNodeType === COMMENT_NODE_ID) {
716
+ childVNode.$elm$ = findCorrespondingNode(node, 8 /* CommentNode */);
717
+ if (childVNode.$elm$ && childVNode.$elm$.nodeType === 8 /* CommentNode */) {
718
+ childRenderNodes.push(childVNode);
719
+ node.remove();
720
+ }
500
721
  } else if (childVNode.$hostId$ === hostId) {
501
722
  if (childNodeType === SLOT_NODE_ID) {
502
- childVNode.$tag$ = "slot";
503
- if (childIdSplt[5]) {
504
- node["s-sn"] = childVNode.$name$ = childIdSplt[5];
505
- } else {
506
- node["s-sn"] = "";
507
- }
508
- node["s-sr"] = true;
509
- if (shadowRootNodes) {
510
- childVNode.$elm$ = doc.createElement(childVNode.$tag$);
511
- if (childVNode.$name$) {
512
- childVNode.$elm$.setAttribute("name", childVNode.$name$);
513
- }
514
- node.parentNode.insertBefore(childVNode.$elm$, node);
515
- node.remove();
516
- if (childVNode.$depth$ === "0") {
517
- shadowRootNodes[childVNode.$index$] = childVNode.$elm$;
518
- }
519
- }
520
- slotNodes.push(childVNode);
521
- if (!parentVNode.$children$) {
522
- parentVNode.$children$ = [];
523
- }
524
- parentVNode.$children$[childVNode.$index$] = childVNode;
723
+ const slotName = node["s-sn"] = childIdSplt[5] || "";
724
+ addSlot(
725
+ slotName,
726
+ childIdSplt[2],
727
+ childVNode,
728
+ node,
729
+ parentVNode,
730
+ childRenderNodes,
731
+ slotNodes,
732
+ shadowRootNodes,
733
+ slottedNodes
734
+ );
525
735
  } else if (childNodeType === CONTENT_REF_ID) {
526
736
  if (shadowRootNodes) {
527
737
  node.remove();
@@ -534,18 +744,28 @@ var clientHydrate = (parentVNode, childRenderNodes, slotNodes, shadowRootNodes,
534
744
  vnode.$elm$ = node;
535
745
  vnode.$index$ = "0";
536
746
  parentVNode.$children$ = [vnode];
747
+ } else {
748
+ if (node.nodeType === 3 /* TextNode */ && !node.wholeText.trim()) {
749
+ node.remove();
750
+ }
537
751
  }
752
+ return parentVNode;
538
753
  };
539
754
  var initializeDocumentHydrate = (node, orgLocNodes) => {
540
755
  if (node.nodeType === 1 /* ElementNode */) {
756
+ const componentId = node[HYDRATE_ID] || node.getAttribute(HYDRATE_ID);
757
+ if (componentId) {
758
+ orgLocNodes.set(componentId, node);
759
+ }
541
760
  let i2 = 0;
542
761
  if (node.shadowRoot) {
543
762
  for (; i2 < node.shadowRoot.childNodes.length; i2++) {
544
763
  initializeDocumentHydrate(node.shadowRoot.childNodes[i2], orgLocNodes);
545
764
  }
546
765
  }
547
- for (i2 = 0; i2 < node.childNodes.length; i2++) {
548
- initializeDocumentHydrate(node.childNodes[i2], orgLocNodes);
766
+ const nonShadowNodes = node.__childNodes || node.childNodes;
767
+ for (i2 = 0; i2 < nonShadowNodes.length; i2++) {
768
+ initializeDocumentHydrate(nonShadowNodes[i2], orgLocNodes);
549
769
  }
550
770
  } else if (node.nodeType === 8 /* CommentNode */) {
551
771
  const childIdSplt = node.nodeValue.split(".");
@@ -556,6 +776,75 @@ var initializeDocumentHydrate = (node, orgLocNodes) => {
556
776
  }
557
777
  }
558
778
  };
779
+ var createSimpleVNode = (vnode) => {
780
+ const defaultVNode = {
781
+ $flags$: 0,
782
+ $hostId$: null,
783
+ $nodeId$: null,
784
+ $depth$: null,
785
+ $index$: "0",
786
+ $elm$: null,
787
+ $attrs$: null,
788
+ $children$: null,
789
+ $key$: null,
790
+ $name$: null,
791
+ $tag$: null,
792
+ $text$: null
793
+ };
794
+ return { ...defaultVNode, ...vnode };
795
+ };
796
+ function addSlot(slotName, slotId, childVNode, node, parentVNode, childRenderNodes, slotNodes, shadowRootNodes, slottedNodes) {
797
+ node["s-sr"] = true;
798
+ childVNode.$name$ = slotName || null;
799
+ childVNode.$tag$ = "slot";
800
+ const parentNodeId = (parentVNode == null ? void 0 : parentVNode.$elm$) ? parentVNode.$elm$["s-id"] || parentVNode.$elm$.getAttribute("s-id") : "";
801
+ if (shadowRootNodes && win.document) {
802
+ const slot = childVNode.$elm$ = win.document.createElement(childVNode.$tag$);
803
+ if (childVNode.$name$) {
804
+ childVNode.$elm$.setAttribute("name", slotName);
805
+ }
806
+ if (parentNodeId && parentNodeId !== childVNode.$hostId$) {
807
+ parentVNode.$elm$.insertBefore(slot, parentVNode.$elm$.children[0]);
808
+ } else {
809
+ node.parentNode.insertBefore(childVNode.$elm$, node);
810
+ }
811
+ addSlottedNodes(slottedNodes, slotId, slotName, node, childVNode.$hostId$);
812
+ node.remove();
813
+ if (childVNode.$depth$ === "0") {
814
+ shadowRootNodes[childVNode.$index$] = childVNode.$elm$;
815
+ }
816
+ } else {
817
+ const slot = childVNode.$elm$;
818
+ const shouldMove = parentNodeId && parentNodeId !== childVNode.$hostId$ && parentVNode.$elm$.shadowRoot;
819
+ addSlottedNodes(slottedNodes, slotId, slotName, node, shouldMove ? parentNodeId : childVNode.$hostId$);
820
+ patchSlotNode(node);
821
+ if (shouldMove) {
822
+ parentVNode.$elm$.insertBefore(slot, parentVNode.$elm$.children[0]);
823
+ }
824
+ childRenderNodes.push(childVNode);
825
+ }
826
+ slotNodes.push(childVNode);
827
+ if (!parentVNode.$children$) {
828
+ parentVNode.$children$ = [];
829
+ }
830
+ parentVNode.$children$[childVNode.$index$] = childVNode;
831
+ }
832
+ var addSlottedNodes = (slottedNodes, slotNodeId, slotName, slotNode, hostId) => {
833
+ let slottedNode = slotNode.nextSibling;
834
+ slottedNodes[slotNodeId] = slottedNodes[slotNodeId] || [];
835
+ while (slottedNode && ((slottedNode["getAttribute"] && slottedNode.getAttribute("slot") || slottedNode["s-sn"]) === slotName || slotName === "" && !slottedNode["s-sn"] && (slottedNode.nodeType === 8 /* CommentNode */ && slottedNode.nodeValue.indexOf(".") !== 1 || slottedNode.nodeType === 3 /* TextNode */))) {
836
+ slottedNode["s-sn"] = slotName;
837
+ slottedNodes[slotNodeId].push({ slot: slotNode, node: slottedNode, hostId });
838
+ slottedNode = slottedNode.nextSibling;
839
+ }
840
+ };
841
+ var findCorrespondingNode = (node, type) => {
842
+ let sibling = node;
843
+ do {
844
+ sibling = sibling.nextSibling;
845
+ } while (sibling && (sibling.nodeType !== type || !sibling.nodeValue));
846
+ return sibling;
847
+ };
559
848
  var parsePropertyValue = (propValue, propType) => {
560
849
  if (propValue != null && !isComplexType(propValue)) {
561
850
  if (propType & 4 /* Boolean */) {
@@ -611,7 +900,10 @@ var addStyle = (styleContainerNode, cmpMeta, mode) => {
611
900
  var _a;
612
901
  const scopeId2 = getScopeId(cmpMeta);
613
902
  const style = styles.get(scopeId2);
614
- styleContainerNode = styleContainerNode.nodeType === 11 /* DocumentFragment */ ? styleContainerNode : doc;
903
+ if (!win.document) {
904
+ return scopeId2;
905
+ }
906
+ styleContainerNode = styleContainerNode.nodeType === 11 /* DocumentFragment */ ? styleContainerNode : win.document;
615
907
  if (style) {
616
908
  if (typeof style === "string") {
617
909
  styleContainerNode = styleContainerNode.head || styleContainerNode;
@@ -624,24 +916,38 @@ var addStyle = (styleContainerNode, cmpMeta, mode) => {
624
916
  if (styleContainerNode.host && (styleElm = styleContainerNode.querySelector(`[${HYDRATED_STYLE_ID}="${scopeId2}"]`))) {
625
917
  styleElm.innerHTML = style;
626
918
  } else {
627
- styleElm = doc.createElement("style");
919
+ styleElm = document.querySelector(`[${HYDRATED_STYLE_ID}="${scopeId2}"]`) || win.document.createElement("style");
628
920
  styleElm.innerHTML = style;
629
- const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(doc);
921
+ const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(win.document);
630
922
  if (nonce != null) {
631
923
  styleElm.setAttribute("nonce", nonce);
632
924
  }
633
925
  if (!(cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */)) {
634
926
  if (styleContainerNode.nodeName === "HEAD") {
635
927
  const preconnectLinks = styleContainerNode.querySelectorAll("link[rel=preconnect]");
636
- const referenceNode2 = preconnectLinks.length > 0 ? preconnectLinks[preconnectLinks.length - 1].nextSibling : document.querySelector("style");
637
- styleContainerNode.insertBefore(styleElm, referenceNode2);
928
+ const referenceNode2 = preconnectLinks.length > 0 ? preconnectLinks[preconnectLinks.length - 1].nextSibling : styleContainerNode.querySelector("style");
929
+ styleContainerNode.insertBefore(
930
+ styleElm,
931
+ (referenceNode2 == null ? void 0 : referenceNode2.parentNode) === styleContainerNode ? referenceNode2 : null
932
+ );
638
933
  } else if ("host" in styleContainerNode) {
639
- styleContainerNode.prepend(styleElm);
934
+ if (supportsConstructableStylesheets) {
935
+ const stylesheet = new CSSStyleSheet();
936
+ stylesheet.replaceSync(style);
937
+ styleContainerNode.adoptedStyleSheets = [stylesheet, ...styleContainerNode.adoptedStyleSheets];
938
+ } else {
939
+ const existingStyleContainer = styleContainerNode.querySelector("style");
940
+ if (existingStyleContainer) {
941
+ existingStyleContainer.innerHTML = style + existingStyleContainer.innerHTML;
942
+ } else {
943
+ styleContainerNode.prepend(styleElm);
944
+ }
945
+ }
640
946
  } else {
641
947
  styleContainerNode.append(styleElm);
642
948
  }
643
949
  }
644
- if (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */ && styleContainerNode.nodeName !== "HEAD") {
950
+ if (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) {
645
951
  styleContainerNode.insertBefore(styleElm, null);
646
952
  }
647
953
  }
@@ -666,135 +972,177 @@ var attachStyles = (hostRef) => {
666
972
  const scopeId2 = addStyle(
667
973
  elm.shadowRoot ? elm.shadowRoot : elm.getRootNode(),
668
974
  cmpMeta);
669
- if (flags & 10 /* needsScopedEncapsulation */ && flags & 2 /* scopedCssEncapsulation */) {
975
+ if ((flags & 10 /* needsScopedEncapsulation */ && flags & 2 /* scopedCssEncapsulation */ || flags & 128 /* shadowNeedsScopedCss */)) {
670
976
  elm["s-sc"] = scopeId2;
671
977
  elm.classList.add(scopeId2 + "-h");
672
- if (flags & 2 /* scopedCssEncapsulation */) {
673
- elm.classList.add(scopeId2 + "-s");
674
- }
675
978
  }
676
979
  endAttachStyles();
677
980
  };
678
981
  var getScopeId = (cmp, mode) => "sc-" + (cmp.$tagName$);
679
- var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
680
- if (oldValue !== newValue) {
681
- let isProp = isMemberInElement(elm, memberName);
682
- let ln = memberName.toLowerCase();
683
- if (memberName === "class") {
684
- const classList = elm.classList;
685
- const oldClasses = parseClassList(oldValue);
686
- const newClasses = parseClassList(newValue);
982
+ var convertScopedToShadow = (css) => css.replace(/\/\*!@([^\/]+)\*\/[^\{]+\{/g, "$1{");
983
+ var hydrateScopedToShadow = () => {
984
+ if (!win.document) {
985
+ return;
986
+ }
987
+ const styles2 = win.document.querySelectorAll(`[${HYDRATED_STYLE_ID}]`);
988
+ let i2 = 0;
989
+ for (; i2 < styles2.length; i2++) {
990
+ registerStyle(styles2[i2].getAttribute(HYDRATED_STYLE_ID), convertScopedToShadow(styles2[i2].innerHTML), true);
991
+ }
992
+ };
993
+ var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags, initialRender) => {
994
+ if (oldValue === newValue) {
995
+ return;
996
+ }
997
+ let isProp = isMemberInElement(elm, memberName);
998
+ let ln = memberName.toLowerCase();
999
+ if (memberName === "class") {
1000
+ const classList = elm.classList;
1001
+ const oldClasses = parseClassList(oldValue);
1002
+ let newClasses = parseClassList(newValue);
1003
+ if (elm["s-si"] && initialRender) {
1004
+ newClasses.push(elm["s-si"]);
1005
+ oldClasses.forEach((c) => {
1006
+ if (c.startsWith(elm["s-si"])) newClasses.push(c);
1007
+ });
1008
+ newClasses = [...new Set(newClasses)];
1009
+ classList.add(...newClasses);
1010
+ } else {
687
1011
  classList.remove(...oldClasses.filter((c) => c && !newClasses.includes(c)));
688
1012
  classList.add(...newClasses.filter((c) => c && !oldClasses.includes(c)));
689
- } else if (memberName === "style") {
690
- {
691
- for (const prop in oldValue) {
692
- if (!newValue || newValue[prop] == null) {
693
- if (prop.includes("-")) {
694
- elm.style.removeProperty(prop);
695
- } else {
696
- elm.style[prop] = "";
697
- }
698
- }
699
- }
700
- }
701
- for (const prop in newValue) {
702
- if (!oldValue || newValue[prop] !== oldValue[prop]) {
1013
+ }
1014
+ } else if (memberName === "style") {
1015
+ {
1016
+ for (const prop in oldValue) {
1017
+ if (!newValue || newValue[prop] == null) {
703
1018
  if (prop.includes("-")) {
704
- elm.style.setProperty(prop, newValue[prop]);
1019
+ elm.style.removeProperty(prop);
705
1020
  } else {
706
- elm.style[prop] = newValue[prop];
1021
+ elm.style[prop] = "";
707
1022
  }
708
1023
  }
709
1024
  }
710
- } else if (memberName === "key") ; else if (memberName === "ref") {
711
- if (newValue) {
712
- newValue(elm);
713
- }
714
- } else if ((!isProp ) && memberName[0] === "o" && memberName[1] === "n") {
715
- if (memberName[2] === "-") {
716
- memberName = memberName.slice(3);
717
- } else if (isMemberInElement(win, ln)) {
718
- memberName = ln.slice(2);
719
- } else {
720
- memberName = ln[2] + memberName.slice(3);
721
- }
722
- if (oldValue || newValue) {
723
- const capture = memberName.endsWith(CAPTURE_EVENT_SUFFIX);
724
- memberName = memberName.replace(CAPTURE_EVENT_REGEX, "");
725
- if (oldValue) {
726
- plt.rel(elm, memberName, oldValue, capture);
727
- }
728
- if (newValue) {
729
- plt.ael(elm, memberName, newValue, capture);
1025
+ }
1026
+ for (const prop in newValue) {
1027
+ if (!oldValue || newValue[prop] !== oldValue[prop]) {
1028
+ if (prop.includes("-")) {
1029
+ elm.style.setProperty(prop, newValue[prop]);
1030
+ } else {
1031
+ elm.style[prop] = newValue[prop];
730
1032
  }
731
1033
  }
1034
+ }
1035
+ } else if (memberName === "key") ; else if (memberName === "ref") {
1036
+ if (newValue) {
1037
+ newValue(elm);
1038
+ }
1039
+ } else if ((!isProp ) && memberName[0] === "o" && memberName[1] === "n") {
1040
+ if (memberName[2] === "-") {
1041
+ memberName = memberName.slice(3);
1042
+ } else if (isMemberInElement(win, ln)) {
1043
+ memberName = ln.slice(2);
732
1044
  } else {
733
- const isComplex = isComplexType(newValue);
734
- if ((isProp || isComplex && newValue !== null) && !isSvg) {
735
- try {
736
- if (!elm.tagName.includes("-")) {
737
- const n = newValue == null ? "" : newValue;
738
- if (memberName === "list") {
739
- isProp = false;
740
- } else if (oldValue == null || elm[memberName] != n) {
741
- if (typeof elm.__lookupSetter__(memberName) === "function") {
742
- elm[memberName] = n;
743
- } else {
744
- elm.setAttribute(memberName, n);
745
- }
1045
+ memberName = ln[2] + memberName.slice(3);
1046
+ }
1047
+ if (oldValue || newValue) {
1048
+ const capture = memberName.endsWith(CAPTURE_EVENT_SUFFIX);
1049
+ memberName = memberName.replace(CAPTURE_EVENT_REGEX, "");
1050
+ if (oldValue) {
1051
+ plt.rel(elm, memberName, oldValue, capture);
1052
+ }
1053
+ if (newValue) {
1054
+ plt.ael(elm, memberName, newValue, capture);
1055
+ }
1056
+ }
1057
+ } else {
1058
+ const isComplex = isComplexType(newValue);
1059
+ if ((isProp || isComplex && newValue !== null) && !isSvg) {
1060
+ try {
1061
+ if (!elm.tagName.includes("-")) {
1062
+ const n = newValue == null ? "" : newValue;
1063
+ if (memberName === "list") {
1064
+ isProp = false;
1065
+ } else if (oldValue == null || elm[memberName] != n) {
1066
+ if (typeof elm.__lookupSetter__(memberName) === "function") {
1067
+ elm[memberName] = n;
1068
+ } else {
1069
+ elm.setAttribute(memberName, n);
746
1070
  }
747
- } else {
748
- elm[memberName] = newValue;
749
1071
  }
750
- } catch (e) {
1072
+ } else if (elm[memberName] !== newValue) {
1073
+ elm[memberName] = newValue;
751
1074
  }
1075
+ } catch (e) {
752
1076
  }
753
- let xlink = false;
754
- {
755
- if (ln !== (ln = ln.replace(/^xlink\:?/, ""))) {
756
- memberName = ln;
757
- xlink = true;
758
- }
1077
+ }
1078
+ let xlink = false;
1079
+ {
1080
+ if (ln !== (ln = ln.replace(/^xlink\:?/, ""))) {
1081
+ memberName = ln;
1082
+ xlink = true;
759
1083
  }
760
- if (newValue == null || newValue === false) {
761
- if (newValue !== false || elm.getAttribute(memberName) === "") {
762
- if (xlink) {
763
- elm.removeAttributeNS(XLINK_NS, memberName);
764
- } else {
765
- elm.removeAttribute(memberName);
766
- }
767
- }
768
- } else if ((!isProp || flags & 4 /* isHost */ || isSvg) && !isComplex) {
769
- newValue = newValue === true ? "" : newValue;
1084
+ }
1085
+ if (newValue == null || newValue === false) {
1086
+ if (newValue !== false || elm.getAttribute(memberName) === "") {
770
1087
  if (xlink) {
771
- elm.setAttributeNS(XLINK_NS, memberName, newValue);
1088
+ elm.removeAttributeNS(XLINK_NS, memberName);
772
1089
  } else {
773
- elm.setAttribute(memberName, newValue);
1090
+ elm.removeAttribute(memberName);
774
1091
  }
775
1092
  }
1093
+ } else if ((!isProp || flags & 4 /* isHost */ || isSvg) && !isComplex && elm.nodeType === 1 /* ElementNode */) {
1094
+ newValue = newValue === true ? "" : newValue;
1095
+ if (xlink) {
1096
+ elm.setAttributeNS(XLINK_NS, memberName, newValue);
1097
+ } else {
1098
+ elm.setAttribute(memberName, newValue);
1099
+ }
776
1100
  }
777
1101
  }
778
1102
  };
779
1103
  var parseClassListRegex = /\s/;
780
- var parseClassList = (value) => !value ? [] : value.split(parseClassListRegex);
1104
+ var parseClassList = (value) => {
1105
+ if (typeof value === "object" && value && "baseVal" in value) {
1106
+ value = value.baseVal;
1107
+ }
1108
+ if (!value || typeof value !== "string") {
1109
+ return [];
1110
+ }
1111
+ return value.split(parseClassListRegex);
1112
+ };
781
1113
  var CAPTURE_EVENT_SUFFIX = "Capture";
782
1114
  var CAPTURE_EVENT_REGEX = new RegExp(CAPTURE_EVENT_SUFFIX + "$");
783
1115
 
784
1116
  // src/runtime/vdom/update-element.ts
785
- var updateElement = (oldVnode, newVnode, isSvgMode2) => {
1117
+ var updateElement = (oldVnode, newVnode, isSvgMode2, isInitialRender) => {
786
1118
  const elm = newVnode.$elm$.nodeType === 11 /* DocumentFragment */ && newVnode.$elm$.host ? newVnode.$elm$.host : newVnode.$elm$;
787
- const oldVnodeAttrs = oldVnode && oldVnode.$attrs$ || EMPTY_OBJ;
788
- const newVnodeAttrs = newVnode.$attrs$ || EMPTY_OBJ;
1119
+ const oldVnodeAttrs = oldVnode && oldVnode.$attrs$ || {};
1120
+ const newVnodeAttrs = newVnode.$attrs$ || {};
789
1121
  {
790
1122
  for (const memberName of sortedAttrNames(Object.keys(oldVnodeAttrs))) {
791
1123
  if (!(memberName in newVnodeAttrs)) {
792
- setAccessor(elm, memberName, oldVnodeAttrs[memberName], void 0, isSvgMode2, newVnode.$flags$);
1124
+ setAccessor(
1125
+ elm,
1126
+ memberName,
1127
+ oldVnodeAttrs[memberName],
1128
+ void 0,
1129
+ isSvgMode2,
1130
+ newVnode.$flags$,
1131
+ isInitialRender
1132
+ );
793
1133
  }
794
1134
  }
795
1135
  }
796
1136
  for (const memberName of sortedAttrNames(Object.keys(newVnodeAttrs))) {
797
- setAccessor(elm, memberName, oldVnodeAttrs[memberName], newVnodeAttrs[memberName], isSvgMode2, newVnode.$flags$);
1137
+ setAccessor(
1138
+ elm,
1139
+ memberName,
1140
+ oldVnodeAttrs[memberName],
1141
+ newVnodeAttrs[memberName],
1142
+ isSvgMode2,
1143
+ newVnode.$flags$,
1144
+ isInitialRender
1145
+ );
798
1146
  }
799
1147
  };
800
1148
  function sortedAttrNames(attrNames) {
@@ -812,18 +1160,23 @@ var scopeId;
812
1160
  var hostTagName;
813
1161
  var useNativeShadowDom = false;
814
1162
  var isSvgMode = false;
815
- var createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
1163
+ var createElm = (oldParentVNode, newParentVNode, childIndex) => {
816
1164
  const newVNode2 = newParentVNode.$children$[childIndex];
817
1165
  let i2 = 0;
818
1166
  let elm;
819
1167
  let childNode;
820
1168
  if (newVNode2.$text$ !== null) {
821
- elm = newVNode2.$elm$ = doc.createTextNode(newVNode2.$text$);
1169
+ elm = newVNode2.$elm$ = win.document.createTextNode(newVNode2.$text$);
822
1170
  } else {
823
1171
  if (!isSvgMode) {
824
1172
  isSvgMode = newVNode2.$tag$ === "svg";
825
1173
  }
826
- elm = newVNode2.$elm$ = doc.createElementNS(
1174
+ if (!win.document) {
1175
+ throw new Error(
1176
+ "You are trying to render a Stencil component in an environment that doesn't support the DOM. Make sure to populate the [`window`](https://developer.mozilla.org/en-US/docs/Web/API/Window/window) object before rendering a component."
1177
+ );
1178
+ }
1179
+ elm = newVNode2.$elm$ = win.document.createElementNS(
827
1180
  isSvgMode ? SVG_NS : HTML_NS,
828
1181
  !useNativeShadowDom && BUILD.slotRelocation && newVNode2.$flags$ & 2 /* isSlotFallback */ ? "slot-fb" : newVNode2.$tag$
829
1182
  ) ;
@@ -833,17 +1186,12 @@ var createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
833
1186
  {
834
1187
  updateElement(null, newVNode2, isSvgMode);
835
1188
  }
836
- const rootNode = elm.getRootNode();
837
- const isElementWithinShadowRoot = !rootNode.querySelector("body");
838
- if (!isElementWithinShadowRoot && BUILD.scoped && isDef(scopeId) && elm["s-si"] !== scopeId) {
1189
+ if (isDef(scopeId) && elm["s-si"] !== scopeId) {
839
1190
  elm.classList.add(elm["s-si"] = scopeId);
840
1191
  }
841
- {
842
- updateElementScopeIds(elm, parentElm);
843
- }
844
1192
  if (newVNode2.$children$) {
845
1193
  for (i2 = 0; i2 < newVNode2.$children$.length; ++i2) {
846
- childNode = createElm(oldParentVNode, newVNode2, i2, elm);
1194
+ childNode = createElm(oldParentVNode, newVNode2, i2);
847
1195
  if (childNode) {
848
1196
  elm.appendChild(childNode);
849
1197
  }
@@ -868,7 +1216,7 @@ var addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {
868
1216
  }
869
1217
  for (; startIdx <= endIdx; ++startIdx) {
870
1218
  if (vnodes[startIdx]) {
871
- childNode = createElm(null, parentVNode, startIdx, parentElm);
1219
+ childNode = createElm(null, parentVNode, startIdx);
872
1220
  if (childNode) {
873
1221
  vnodes[startIdx].$elm$ = childNode;
874
1222
  insertBefore(containerElm, childNode, before);
@@ -941,7 +1289,7 @@ var updateChildren = (parentElm, oldCh, newVNode2, newCh, isInitialRender = fals
941
1289
  if (idxInOld >= 0) {
942
1290
  elmToMove = oldCh[idxInOld];
943
1291
  if (elmToMove.$tag$ !== newStartVnode.$tag$) {
944
- node = createElm(oldCh && oldCh[newStartIdx], newVNode2, idxInOld, parentElm);
1292
+ node = createElm(oldCh && oldCh[newStartIdx], newVNode2, idxInOld);
945
1293
  } else {
946
1294
  patch(elmToMove, newStartVnode, isInitialRender);
947
1295
  oldCh[idxInOld] = void 0;
@@ -949,7 +1297,7 @@ var updateChildren = (parentElm, oldCh, newVNode2, newCh, isInitialRender = fals
949
1297
  }
950
1298
  newStartVnode = newCh[++newStartIdx];
951
1299
  } else {
952
- node = createElm(oldCh && oldCh[newStartIdx], newVNode2, newStartIdx, parentElm);
1300
+ node = createElm(oldCh && oldCh[newStartIdx], newVNode2, newStartIdx);
953
1301
  newStartVnode = newCh[++newStartIdx];
954
1302
  }
955
1303
  if (node) {
@@ -977,6 +1325,9 @@ var isSameVnode = (leftVNode, rightVNode, isInitialRender = false) => {
977
1325
  if (!isInitialRender) {
978
1326
  return leftVNode.$key$ === rightVNode.$key$;
979
1327
  }
1328
+ if (isInitialRender && !leftVNode.$key$ && rightVNode.$key$) {
1329
+ leftVNode.$key$ = rightVNode.$key$;
1330
+ }
980
1331
  return true;
981
1332
  }
982
1333
  return false;
@@ -992,9 +1343,7 @@ var patch = (oldVNode, newVNode2, isInitialRender = false) => {
992
1343
  isSvgMode = tag === "svg" ? true : tag === "foreignObject" ? false : isSvgMode;
993
1344
  }
994
1345
  {
995
- if (tag === "slot" && !useNativeShadowDom) ; else {
996
- updateElement(oldVNode, newVNode2, isSvgMode);
997
- }
1346
+ updateElement(oldVNode, newVNode2, isSvgMode, isInitialRender);
998
1347
  }
999
1348
  if (oldChildren !== null && newChildren !== null) {
1000
1349
  updateChildren(elm, oldChildren, newVNode2, newChildren, isInitialRender);
@@ -1023,38 +1372,34 @@ var nullifyVNodeRefs = (vNode) => {
1023
1372
  }
1024
1373
  };
1025
1374
  var insertBefore = (parent, newNode, reference) => {
1026
- const inserted = parent == null ? void 0 : parent.insertBefore(newNode, reference);
1375
+ if (typeof newNode["s-sn"] === "string" && !!newNode["s-sr"] && !!newNode["s-cr"]) {
1376
+ addRemoveSlotScopedClass(newNode["s-cr"], newNode, parent, newNode.parentElement);
1377
+ }
1027
1378
  {
1028
- updateElementScopeIds(newNode, parent);
1029
- }
1030
- return inserted;
1031
- };
1032
- var findScopeIds = (element) => {
1033
- const scopeIds = [];
1034
- if (element) {
1035
- scopeIds.push(
1036
- ...element["s-scs"] || [],
1037
- element["s-si"],
1038
- element["s-sc"],
1039
- ...findScopeIds(element.parentElement)
1040
- );
1379
+ return parent == null ? void 0 : parent.insertBefore(newNode, reference);
1041
1380
  }
1042
- return scopeIds;
1043
1381
  };
1044
- var updateElementScopeIds = (element, parent, iterateChildNodes = false) => {
1045
- var _a;
1046
- if (element && parent && element.nodeType === 1 /* ElementNode */) {
1047
- const scopeIds = new Set(findScopeIds(parent).filter(Boolean));
1048
- if (scopeIds.size) {
1049
- (_a = element.classList) == null ? void 0 : _a.add(...element["s-scs"] = [...scopeIds]);
1050
- if (element["s-ol"] || iterateChildNodes) {
1051
- for (const childNode of Array.from(element.childNodes)) {
1052
- updateElementScopeIds(childNode, element, true);
1382
+ function addRemoveSlotScopedClass(reference, slotNode, newParent, oldParent) {
1383
+ var _a, _b;
1384
+ let scopeId2;
1385
+ if (reference && typeof slotNode["s-sn"] === "string" && !!slotNode["s-sr"] && reference.parentNode && reference.parentNode["s-sc"] && (scopeId2 = slotNode["s-si"] || reference.parentNode["s-sc"])) {
1386
+ const scopeName = slotNode["s-sn"];
1387
+ const hostName = slotNode["s-hn"];
1388
+ (_a = newParent.classList) == null ? void 0 : _a.add(scopeId2 + "-s");
1389
+ if (oldParent && ((_b = oldParent.classList) == null ? void 0 : _b.contains(scopeId2 + "-s"))) {
1390
+ let child = (oldParent.__childNodes || oldParent.childNodes)[0];
1391
+ let found = false;
1392
+ while (child) {
1393
+ if (child["s-sn"] !== scopeName && child["s-hn"] === hostName && !!child["s-sr"]) {
1394
+ found = true;
1395
+ break;
1053
1396
  }
1397
+ child = child.nextSibling;
1054
1398
  }
1399
+ if (!found) oldParent.classList.remove(scopeId2 + "-s");
1055
1400
  }
1056
1401
  }
1057
- };
1402
+ }
1058
1403
  var renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
1059
1404
  const hostElm = hostRef.$hostElement$;
1060
1405
  const cmpMeta = hostRef.$cmpMeta$;
@@ -1081,14 +1426,21 @@ var renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
1081
1426
  {
1082
1427
  scopeId = hostElm["s-sc"];
1083
1428
  }
1084
- useNativeShadowDom = (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) !== 0;
1429
+ useNativeShadowDom = !!(cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) && !(cmpMeta.$flags$ & 128 /* shadowNeedsScopedCss */);
1085
1430
  patch(oldVNode, rootVnode, isInitialLoad);
1086
1431
  };
1087
1432
 
1088
1433
  // src/runtime/update-component.ts
1089
1434
  var attachToAncestor = (hostRef, ancestorComponent) => {
1090
1435
  if (ancestorComponent && !hostRef.$onRenderResolve$ && ancestorComponent["s-p"]) {
1091
- ancestorComponent["s-p"].push(new Promise((r) => hostRef.$onRenderResolve$ = r));
1436
+ const index = ancestorComponent["s-p"].push(
1437
+ new Promise(
1438
+ (r) => hostRef.$onRenderResolve$ = () => {
1439
+ ancestorComponent["s-p"].splice(index - 1, 1);
1440
+ r();
1441
+ }
1442
+ )
1443
+ );
1092
1444
  }
1093
1445
  };
1094
1446
  var scheduleUpdate = (hostRef, isInitialLoad) => {
@@ -1117,14 +1469,15 @@ var dispatchHooks = (hostRef, isInitialLoad) => {
1117
1469
  {
1118
1470
  hostRef.$flags$ |= 256 /* isListenReady */;
1119
1471
  if (hostRef.$queuedListeners$) {
1120
- hostRef.$queuedListeners$.map(([methodName, event]) => safeCall(instance, methodName, event));
1472
+ hostRef.$queuedListeners$.map(([methodName, event]) => safeCall(instance, methodName, event, elm));
1121
1473
  hostRef.$queuedListeners$ = void 0;
1122
1474
  }
1123
1475
  }
1124
- {
1125
- maybePromise = safeCall(instance, "componentWillLoad");
1126
- }
1476
+ maybePromise = safeCall(instance, "componentWillLoad", void 0, elm);
1477
+ } else {
1478
+ maybePromise = safeCall(instance, "componentWillUpdate", void 0, elm);
1127
1479
  }
1480
+ maybePromise = enqueue(maybePromise, () => safeCall(instance, "componentWillRender", void 0, elm));
1128
1481
  endSchedule();
1129
1482
  return enqueue(maybePromise, () => updateComponent(hostRef, instance, isInitialLoad));
1130
1483
  };
@@ -1190,14 +1543,10 @@ var postUpdateComponent = (hostRef) => {
1190
1543
  const endPostUpdate = createTime("postUpdate", tagName);
1191
1544
  const instance = hostRef.$lazyInstance$ ;
1192
1545
  const ancestorComponent = hostRef.$ancestorComponent$;
1193
- {
1194
- safeCall(instance, "componentDidRender");
1195
- }
1546
+ safeCall(instance, "componentDidRender", void 0, elm);
1196
1547
  if (!(hostRef.$flags$ & 64 /* hasLoadedComponent */)) {
1197
1548
  hostRef.$flags$ |= 64 /* hasLoadedComponent */;
1198
- {
1199
- safeCall(instance, "componentDidLoad");
1200
- }
1549
+ safeCall(instance, "componentDidLoad", void 0, elm);
1201
1550
  endPostUpdate();
1202
1551
  {
1203
1552
  hostRef.$onReadyResolve$(elm);
@@ -1206,6 +1555,7 @@ var postUpdateComponent = (hostRef) => {
1206
1555
  }
1207
1556
  }
1208
1557
  } else {
1558
+ safeCall(instance, "componentDidUpdate", void 0, elm);
1209
1559
  endPostUpdate();
1210
1560
  }
1211
1561
  {
@@ -1225,12 +1575,12 @@ var postUpdateComponent = (hostRef) => {
1225
1575
  var appDidLoad = (who) => {
1226
1576
  nextTick(() => emitEvent(win, "appload", { detail: { namespace: NAMESPACE } }));
1227
1577
  };
1228
- var safeCall = (instance, method, arg) => {
1578
+ var safeCall = (instance, method, arg, elm) => {
1229
1579
  if (instance && instance[method]) {
1230
1580
  try {
1231
1581
  return instance[method](arg);
1232
1582
  } catch (e) {
1233
- consoleError(e);
1583
+ consoleError(e, elm);
1234
1584
  }
1235
1585
  }
1236
1586
  return void 0;
@@ -1268,6 +1618,11 @@ var setValue = (ref, propName, newVal, cmpMeta) => {
1268
1618
  }
1269
1619
  }
1270
1620
  if ((flags & (2 /* hasRendered */ | 16 /* isQueuedForUpdate */)) === 2 /* hasRendered */) {
1621
+ if (instance.componentShouldUpdate) {
1622
+ if (instance.componentShouldUpdate(newVal, oldVal, propName) === false) {
1623
+ return;
1624
+ }
1625
+ }
1271
1626
  scheduleUpdate(hostRef, false);
1272
1627
  }
1273
1628
  }
@@ -1279,23 +1634,23 @@ var proxyComponent = (Cstr, cmpMeta, flags) => {
1279
1634
  var _a, _b;
1280
1635
  const prototype = Cstr.prototype;
1281
1636
  if (cmpMeta.$flags$ & 64 /* formAssociated */ && flags & 1 /* isElementConstructor */) {
1282
- FORM_ASSOCIATED_CUSTOM_ELEMENT_CALLBACKS.forEach(
1283
- (cbName) => Object.defineProperty(prototype, cbName, {
1637
+ FORM_ASSOCIATED_CUSTOM_ELEMENT_CALLBACKS.forEach((cbName) => {
1638
+ Object.defineProperty(prototype, cbName, {
1284
1639
  value(...args) {
1285
1640
  const hostRef = getHostRef(this);
1286
1641
  const instance = hostRef.$lazyInstance$ ;
1287
1642
  if (!instance) {
1288
- hostRef.$onReadyPromise$.then((instance2) => {
1289
- const cb = instance2[cbName];
1290
- typeof cb === "function" && cb.call(instance2, ...args);
1643
+ hostRef.$onReadyPromise$.then((asyncInstance) => {
1644
+ const cb = asyncInstance[cbName];
1645
+ typeof cb === "function" && cb.call(asyncInstance, ...args);
1291
1646
  });
1292
1647
  } else {
1293
- const cb = instance[cbName];
1648
+ const cb = instance[cbName] ;
1294
1649
  typeof cb === "function" && cb.call(instance, ...args);
1295
1650
  }
1296
1651
  }
1297
- })
1298
- );
1652
+ });
1653
+ });
1299
1654
  }
1300
1655
  if (cmpMeta.$members$ || (cmpMeta.$watchers$ || Cstr.watchers)) {
1301
1656
  if (Cstr.watchers && !cmpMeta.$watchers$) {
@@ -1304,15 +1659,68 @@ var proxyComponent = (Cstr, cmpMeta, flags) => {
1304
1659
  const members = Object.entries((_a = cmpMeta.$members$) != null ? _a : {});
1305
1660
  members.map(([memberName, [memberFlags]]) => {
1306
1661
  if ((memberFlags & 31 /* Prop */ || (flags & 2 /* proxyState */) && memberFlags & 32 /* State */)) {
1662
+ const { get: origGetter, set: origSetter } = Object.getOwnPropertyDescriptor(prototype, memberName) || {};
1663
+ if (origGetter) cmpMeta.$members$[memberName][0] |= 2048 /* Getter */;
1664
+ if (origSetter) cmpMeta.$members$[memberName][0] |= 4096 /* Setter */;
1665
+ if (flags & 1 /* isElementConstructor */ || !origGetter) {
1666
+ Object.defineProperty(prototype, memberName, {
1667
+ get() {
1668
+ {
1669
+ if ((cmpMeta.$members$[memberName][0] & 2048 /* Getter */) === 0) {
1670
+ return getValue(this, memberName);
1671
+ }
1672
+ const ref = getHostRef(this);
1673
+ const instance = ref ? ref.$lazyInstance$ : prototype;
1674
+ if (!instance) return;
1675
+ return instance[memberName];
1676
+ }
1677
+ },
1678
+ configurable: true,
1679
+ enumerable: true
1680
+ });
1681
+ }
1307
1682
  Object.defineProperty(prototype, memberName, {
1308
- get() {
1309
- return getValue(this, memberName);
1310
- },
1311
1683
  set(newValue) {
1312
- setValue(this, memberName, newValue, cmpMeta);
1313
- },
1314
- configurable: true,
1315
- enumerable: true
1684
+ const ref = getHostRef(this);
1685
+ if (origSetter) {
1686
+ const currentValue = memberFlags & 32 /* State */ ? this[memberName] : ref.$hostElement$[memberName];
1687
+ if (typeof currentValue === "undefined" && ref.$instanceValues$.get(memberName)) {
1688
+ newValue = ref.$instanceValues$.get(memberName);
1689
+ } else if (!ref.$instanceValues$.get(memberName) && currentValue) {
1690
+ ref.$instanceValues$.set(memberName, currentValue);
1691
+ }
1692
+ origSetter.apply(this, [parsePropertyValue(newValue, memberFlags)]);
1693
+ newValue = memberFlags & 32 /* State */ ? this[memberName] : ref.$hostElement$[memberName];
1694
+ setValue(this, memberName, newValue, cmpMeta);
1695
+ return;
1696
+ }
1697
+ {
1698
+ if ((flags & 1 /* isElementConstructor */) === 0 || (cmpMeta.$members$[memberName][0] & 4096 /* Setter */) === 0) {
1699
+ setValue(this, memberName, newValue, cmpMeta);
1700
+ if (flags & 1 /* isElementConstructor */ && !ref.$lazyInstance$) {
1701
+ ref.$onReadyPromise$.then(() => {
1702
+ if (cmpMeta.$members$[memberName][0] & 4096 /* Setter */ && ref.$lazyInstance$[memberName] !== ref.$instanceValues$.get(memberName)) {
1703
+ ref.$lazyInstance$[memberName] = newValue;
1704
+ }
1705
+ });
1706
+ }
1707
+ return;
1708
+ }
1709
+ const setterSetVal = () => {
1710
+ const currentValue = ref.$lazyInstance$[memberName];
1711
+ if (!ref.$instanceValues$.get(memberName) && currentValue) {
1712
+ ref.$instanceValues$.set(memberName, currentValue);
1713
+ }
1714
+ ref.$lazyInstance$[memberName] = parsePropertyValue(newValue, memberFlags);
1715
+ setValue(this, memberName, ref.$lazyInstance$[memberName], cmpMeta);
1716
+ };
1717
+ if (ref.$lazyInstance$) {
1718
+ setterSetVal();
1719
+ } else {
1720
+ ref.$onReadyPromise$.then(() => setterSetVal());
1721
+ }
1722
+ }
1723
+ }
1316
1724
  });
1317
1725
  } else if (flags & 1 /* isElementConstructor */ && memberFlags & 64 /* Method */) {
1318
1726
  Object.defineProperty(prototype, memberName, {
@@ -1333,7 +1741,7 @@ var proxyComponent = (Cstr, cmpMeta, flags) => {
1333
1741
  plt.jmp(() => {
1334
1742
  var _a2;
1335
1743
  const propName = attrNameToPropName.get(attrName);
1336
- if (this.hasOwnProperty(propName)) {
1744
+ if (this.hasOwnProperty(propName) && BUILD.lazyLoad) {
1337
1745
  newValue = this[propName];
1338
1746
  delete this[propName];
1339
1747
  } else if (prototype.hasOwnProperty(propName) && typeof this[propName] === "number" && // cast type to number to avoid TS compiler issues
@@ -1353,7 +1761,11 @@ var proxyComponent = (Cstr, cmpMeta, flags) => {
1353
1761
  }
1354
1762
  return;
1355
1763
  }
1356
- this[propName] = newValue === null && typeof this[propName] === "boolean" ? false : newValue;
1764
+ const propDesc = Object.getOwnPropertyDescriptor(prototype, propName);
1765
+ newValue = newValue === null && typeof this[propName] === "boolean" ? false : newValue;
1766
+ if (newValue !== this[propName] && (!propDesc.get || !!propDesc.set)) {
1767
+ this[propName] = newValue;
1768
+ }
1357
1769
  });
1358
1770
  };
1359
1771
  Cstr.observedAttributes = Array.from(
@@ -1382,7 +1794,7 @@ var initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
1382
1794
  hostRef.$flags$ |= 32 /* hasInitializedComponent */;
1383
1795
  const bundleId = cmpMeta.$lazyBundleId$;
1384
1796
  if (bundleId) {
1385
- const CstrImport = loadModule(cmpMeta);
1797
+ const CstrImport = loadModule(cmpMeta, hostRef);
1386
1798
  if (CstrImport && "then" in CstrImport) {
1387
1799
  const endLoad = uniqueTime();
1388
1800
  Cstr = await CstrImport;
@@ -1407,7 +1819,7 @@ var initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
1407
1819
  try {
1408
1820
  new Cstr(hostRef);
1409
1821
  } catch (e) {
1410
- consoleError(e);
1822
+ consoleError(e, elm);
1411
1823
  }
1412
1824
  {
1413
1825
  hostRef.$flags$ &= ~8 /* isConstructingInstance */;
@@ -1416,6 +1828,7 @@ var initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
1416
1828
  hostRef.$flags$ |= 128 /* isWatchReady */;
1417
1829
  }
1418
1830
  endNewInstance();
1831
+ fireConnectedCallback(hostRef.$lazyInstance$, elm);
1419
1832
  } else {
1420
1833
  Cstr = elm.constructor;
1421
1834
  const cmpTag = elm.localName;
@@ -1442,7 +1855,10 @@ var initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
1442
1855
  schedule();
1443
1856
  }
1444
1857
  };
1445
- var fireConnectedCallback = (instance) => {
1858
+ var fireConnectedCallback = (instance, elm) => {
1859
+ {
1860
+ safeCall(instance, "connectedCallback", void 0, elm);
1861
+ }
1446
1862
  };
1447
1863
 
1448
1864
  // src/runtime/connected-callback.ts
@@ -1460,6 +1876,9 @@ var connectedCallback = (elm) => {
1460
1876
  if (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) {
1461
1877
  const scopeId2 = addStyle(elm.shadowRoot, cmpMeta);
1462
1878
  elm.classList.remove(scopeId2 + "-h", scopeId2 + "-s");
1879
+ } else if (cmpMeta.$flags$ & 2 /* scopedCssEncapsulation */) {
1880
+ const scopeId2 = getScopeId(cmpMeta);
1881
+ elm["s-sc"] = scopeId2;
1463
1882
  }
1464
1883
  initializeClientHydrate(elm, cmpMeta.$tagName$, hostId, hostRef);
1465
1884
  }
@@ -1487,16 +1906,18 @@ var connectedCallback = (elm) => {
1487
1906
  }
1488
1907
  } else {
1489
1908
  addHostEventListeners(elm, hostRef, cmpMeta.$listeners$);
1490
- if (hostRef == null ? void 0 : hostRef.$lazyInstance$) ; else if (hostRef == null ? void 0 : hostRef.$onReadyPromise$) {
1491
- hostRef.$onReadyPromise$.then(() => fireConnectedCallback());
1909
+ if (hostRef == null ? void 0 : hostRef.$lazyInstance$) {
1910
+ fireConnectedCallback(hostRef.$lazyInstance$, elm);
1911
+ } else if (hostRef == null ? void 0 : hostRef.$onReadyPromise$) {
1912
+ hostRef.$onReadyPromise$.then(() => fireConnectedCallback(hostRef.$lazyInstance$, elm));
1492
1913
  }
1493
1914
  }
1494
1915
  endConnected();
1495
1916
  }
1496
1917
  };
1497
- var disconnectInstance = (instance) => {
1918
+ var disconnectInstance = (instance, elm) => {
1498
1919
  {
1499
- safeCall(instance, "disconnectedCallback");
1920
+ safeCall(instance, "disconnectedCallback", void 0, elm || instance);
1500
1921
  }
1501
1922
  };
1502
1923
  var disconnectedCallback = async (elm) => {
@@ -1509,31 +1930,44 @@ var disconnectedCallback = async (elm) => {
1509
1930
  }
1510
1931
  }
1511
1932
  if (hostRef == null ? void 0 : hostRef.$lazyInstance$) {
1512
- disconnectInstance(hostRef.$lazyInstance$);
1933
+ disconnectInstance(hostRef.$lazyInstance$, elm);
1513
1934
  } else if (hostRef == null ? void 0 : hostRef.$onReadyPromise$) {
1514
- hostRef.$onReadyPromise$.then(() => disconnectInstance(hostRef.$lazyInstance$));
1935
+ hostRef.$onReadyPromise$.then(() => disconnectInstance(hostRef.$lazyInstance$, elm));
1515
1936
  }
1516
1937
  }
1938
+ if (rootAppliedStyles.has(elm)) {
1939
+ rootAppliedStyles.delete(elm);
1940
+ }
1941
+ if (elm.shadowRoot && rootAppliedStyles.has(elm.shadowRoot)) {
1942
+ rootAppliedStyles.delete(elm.shadowRoot);
1943
+ }
1517
1944
  };
1518
1945
 
1519
1946
  // src/runtime/bootstrap-lazy.ts
1520
1947
  var bootstrapLazy = (lazyBundles, options = {}) => {
1521
1948
  var _a;
1949
+ if (!win.document) {
1950
+ console.warn("Stencil: No document found. Skipping bootstrapping lazy components.");
1951
+ return;
1952
+ }
1522
1953
  const endBootstrap = createTime();
1523
1954
  const cmpTags = [];
1524
1955
  const exclude = options.exclude || [];
1525
1956
  const customElements2 = win.customElements;
1526
- const head = doc.head;
1957
+ const head = win.document.head;
1527
1958
  const metaCharset = /* @__PURE__ */ head.querySelector("meta[charset]");
1528
- const dataStyles = /* @__PURE__ */ doc.createElement("style");
1959
+ const dataStyles = /* @__PURE__ */ win.document.createElement("style");
1529
1960
  const deferredConnectedCallbacks = [];
1530
1961
  let appLoadFallback;
1531
1962
  let isBootstrapping = true;
1532
1963
  Object.assign(plt, options);
1533
- plt.$resourcesUrl$ = new URL(options.resourcesUrl || "./", doc.baseURI).href;
1964
+ plt.$resourcesUrl$ = new URL(options.resourcesUrl || "./", win.document.baseURI).href;
1534
1965
  {
1535
1966
  plt.$flags$ |= 2 /* appLoaded */;
1536
1967
  }
1968
+ {
1969
+ hydrateScopedToShadow();
1970
+ }
1537
1971
  let hasSlotRelocation = false;
1538
1972
  lazyBundles.map((lazyBundle) => {
1539
1973
  lazyBundle[1].map((compactMeta) => {
@@ -1604,6 +2038,17 @@ var bootstrapLazy = (lazyBundles, options = {}) => {
1604
2038
  }
1605
2039
  disconnectedCallback() {
1606
2040
  plt.jmp(() => disconnectedCallback(this));
2041
+ plt.raf(() => {
2042
+ var _a3;
2043
+ const hostRef = getHostRef(this);
2044
+ const i2 = deferredConnectedCallbacks.findIndex((host) => host === this);
2045
+ if (i2 > -1) {
2046
+ deferredConnectedCallbacks.splice(i2, 1);
2047
+ }
2048
+ if (((_a3 = hostRef == null ? void 0 : hostRef.$vnode$) == null ? void 0 : _a3.$elm$) instanceof Node && !hostRef.$vnode$.$elm$.isConnected) {
2049
+ delete hostRef.$vnode$.$elm$;
2050
+ }
2051
+ });
1607
2052
  }
1608
2053
  componentOnReady() {
1609
2054
  return getHostRef(this).$onReadyPromise$;
@@ -1628,7 +2073,7 @@ var bootstrapLazy = (lazyBundles, options = {}) => {
1628
2073
  }
1629
2074
  if (dataStyles.innerHTML.length) {
1630
2075
  dataStyles.setAttribute("data-styles", "");
1631
- const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(doc);
2076
+ const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(win.document);
1632
2077
  if (nonce != null) {
1633
2078
  dataStyles.setAttribute("nonce", nonce);
1634
2079
  }
@@ -1649,9 +2094,9 @@ var bootstrapLazy = (lazyBundles, options = {}) => {
1649
2094
  // src/runtime/fragment.ts
1650
2095
  var Fragment = (_, children) => children;
1651
2096
  var addHostEventListeners = (elm, hostRef, listeners, attachParentListeners) => {
1652
- if (listeners) {
2097
+ if (listeners && win.document) {
1653
2098
  listeners.map(([flags, name, method]) => {
1654
- const target = getHostListenerTarget(elm, flags) ;
2099
+ const target = getHostListenerTarget(win.document, elm, flags) ;
1655
2100
  const handler = hostListenerProxy(hostRef, method);
1656
2101
  const opts = hostListenerOpts(flags);
1657
2102
  plt.ael(target, name, handler, opts);
@@ -1670,11 +2115,13 @@ var hostListenerProxy = (hostRef, methodName) => (ev) => {
1670
2115
  }
1671
2116
  }
1672
2117
  } catch (e) {
1673
- consoleError(e);
2118
+ consoleError(e, hostRef.$hostElement$);
1674
2119
  }
1675
2120
  };
1676
- var getHostListenerTarget = (elm, flags) => {
1677
- if (flags & 4 /* TargetDocument */) return doc;
2121
+ var getHostListenerTarget = (doc, elm, flags) => {
2122
+ if (flags & 4 /* TargetDocument */) {
2123
+ return doc;
2124
+ }
1678
2125
  return elm;
1679
2126
  };
1680
2127
  var hostListenerOpts = (flags) => supportsListenerOptions ? {
@@ -1696,4 +2143,4 @@ exports.promiseResolve = promiseResolve;
1696
2143
  exports.registerInstance = registerInstance;
1697
2144
  exports.setNonce = setNonce;
1698
2145
 
1699
- //# sourceMappingURL=index-a9985af0.js.map
2146
+ //# sourceMappingURL=index-644fe556.js.map