@sekiui/elements 0.0.55 → 0.0.57

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 (298) hide show
  1. package/dist/cdn/index.js +1053 -91
  2. package/dist/cdn/p-BJCq8m2o.js +138 -0
  3. package/dist/cdn/p-BfRJQMIU.js +111 -0
  4. package/dist/cdn/{p-bMBhrs0a.js → p-Bp7tjKwQ.js} +427 -7
  5. package/dist/cdn/seki-button.js +1 -1
  6. package/dist/cdn/seki-card-action.d.ts +11 -0
  7. package/dist/cdn/seki-card-action.js +38 -0
  8. package/dist/cdn/seki-card-content.d.ts +11 -0
  9. package/dist/cdn/seki-card-content.js +38 -0
  10. package/dist/cdn/seki-card-description.d.ts +11 -0
  11. package/dist/cdn/seki-card-description.js +38 -0
  12. package/dist/cdn/seki-card-footer.d.ts +11 -0
  13. package/dist/cdn/seki-card-footer.js +44 -0
  14. package/dist/cdn/seki-card-header.d.ts +11 -0
  15. package/dist/cdn/seki-card-header.js +38 -0
  16. package/dist/cdn/seki-card-title.d.ts +11 -0
  17. package/dist/cdn/seki-card-title.js +59 -0
  18. package/dist/cdn/seki-card.d.ts +11 -0
  19. package/dist/cdn/seki-card.js +39 -0
  20. package/dist/cdn/seki-field-description.js +2 -2
  21. package/dist/cdn/seki-field-error.js +2 -2
  22. package/dist/cdn/seki-field-group.js +2 -2
  23. package/dist/cdn/seki-field-label.js +2 -2
  24. package/dist/cdn/seki-field-legend.js +2 -2
  25. package/dist/cdn/seki-field.js +2 -2
  26. package/dist/cdn/seki-fieldset.js +2 -2
  27. package/dist/cdn/seki-input.js +2 -2
  28. package/dist/cdn/seki-select-content.js +1 -1
  29. package/dist/cdn/seki-select-group.js +2 -2
  30. package/dist/cdn/seki-select-option.js +2 -2
  31. package/dist/cdn/seki-select-trigger.js +1 -1
  32. package/dist/cdn/seki-select.js +2 -2
  33. package/dist/cdn/seki-sidebar-content.d.ts +11 -0
  34. package/dist/cdn/seki-sidebar-content.js +38 -0
  35. package/dist/cdn/seki-sidebar-footer.d.ts +11 -0
  36. package/dist/cdn/seki-sidebar-footer.js +38 -0
  37. package/dist/cdn/seki-sidebar-group.d.ts +11 -0
  38. package/dist/cdn/seki-sidebar-group.js +131 -0
  39. package/dist/cdn/seki-sidebar-header.d.ts +11 -0
  40. package/dist/cdn/seki-sidebar-header.js +38 -0
  41. package/dist/cdn/seki-sidebar-menu-item.d.ts +11 -0
  42. package/dist/cdn/seki-sidebar-menu-item.js +200 -0
  43. package/dist/cdn/seki-sidebar-menu-sub.d.ts +11 -0
  44. package/dist/cdn/seki-sidebar-menu-sub.js +123 -0
  45. package/dist/cdn/seki-sidebar-menu.d.ts +11 -0
  46. package/dist/cdn/seki-sidebar-menu.js +38 -0
  47. package/dist/cdn/seki-sidebar-trigger.d.ts +11 -0
  48. package/dist/cdn/seki-sidebar-trigger.js +109 -0
  49. package/dist/cdn/seki-sidebar.d.ts +11 -0
  50. package/dist/cdn/seki-sidebar.js +380 -0
  51. package/dist/cdn/seki-skeleton.js +2 -2
  52. package/dist/cdn/seki-switch.js +1 -1
  53. package/dist/cdn/seki-tooltip.js +1 -1
  54. package/dist/cjs/{index-Dd6_-KaR.js → index-tQYksITZ.js} +426 -6
  55. package/dist/cjs/index.cjs.js +1115 -63
  56. package/dist/cjs/keyboard-Cjl5HYES.js +142 -0
  57. package/dist/cjs/loader.cjs.js +2 -2
  58. package/dist/cjs/seki-button.cjs.entry.js +1 -1
  59. package/dist/cjs/seki-card-action.cjs.entry.js +17 -0
  60. package/dist/cjs/seki-card-content.cjs.entry.js +17 -0
  61. package/dist/cjs/seki-card-description.cjs.entry.js +17 -0
  62. package/dist/cjs/seki-card-footer.cjs.entry.js +22 -0
  63. package/dist/cjs/seki-card-header.cjs.entry.js +17 -0
  64. package/dist/cjs/seki-card-title.cjs.entry.js +37 -0
  65. package/dist/cjs/seki-card.cjs.entry.js +17 -0
  66. package/dist/cjs/seki-field-description.cjs.entry.js +2 -2
  67. package/dist/cjs/seki-field-error.cjs.entry.js +2 -2
  68. package/dist/cjs/seki-field-group.cjs.entry.js +2 -2
  69. package/dist/cjs/seki-field-label.cjs.entry.js +2 -2
  70. package/dist/cjs/seki-field-legend.cjs.entry.js +2 -2
  71. package/dist/cjs/seki-field.cjs.entry.js +2 -2
  72. package/dist/cjs/seki-fieldset.cjs.entry.js +2 -2
  73. package/dist/cjs/seki-input.cjs.entry.js +2 -2
  74. package/dist/cjs/seki-select-content.cjs.entry.js +1 -1
  75. package/dist/cjs/seki-select-group.cjs.entry.js +2 -2
  76. package/dist/cjs/seki-select-option.cjs.entry.js +2 -2
  77. package/dist/cjs/seki-select-trigger.cjs.entry.js +1 -1
  78. package/dist/cjs/seki-select.cjs.entry.js +2 -2
  79. package/dist/cjs/seki-sidebar-content.cjs.entry.js +20 -0
  80. package/dist/cjs/seki-sidebar-footer.cjs.entry.js +20 -0
  81. package/dist/cjs/seki-sidebar-group.cjs.entry.js +105 -0
  82. package/dist/cjs/seki-sidebar-header.cjs.entry.js +20 -0
  83. package/dist/cjs/seki-sidebar-menu-item.cjs.entry.js +174 -0
  84. package/dist/cjs/seki-sidebar-menu-sub.cjs.entry.js +99 -0
  85. package/dist/cjs/seki-sidebar-menu.cjs.entry.js +20 -0
  86. package/dist/cjs/seki-sidebar-trigger.cjs.entry.js +86 -0
  87. package/dist/cjs/seki-sidebar.cjs.entry.js +342 -0
  88. package/dist/cjs/seki-skeleton.cjs.entry.js +2 -2
  89. package/dist/cjs/seki-switch.cjs.entry.js +81 -3
  90. package/dist/cjs/seki-tooltip.cjs.entry.js +1 -1
  91. package/dist/cjs/sekiui.cjs.js +2 -2
  92. package/dist/collection/collection-manifest.json +16 -0
  93. package/dist/collection/components/card/seki-card-action.js +50 -0
  94. package/dist/collection/components/card/seki-card-content.js +51 -0
  95. package/dist/collection/components/card/seki-card-description.js +48 -0
  96. package/dist/collection/components/card/seki-card-footer.js +83 -0
  97. package/dist/collection/components/card/seki-card-header.js +54 -0
  98. package/dist/collection/components/card/seki-card-title.js +95 -0
  99. package/dist/collection/components/card/seki-card.a11y.js +363 -0
  100. package/dist/collection/components/card/seki-card.css +608 -0
  101. package/dist/collection/components/card/seki-card.js +72 -0
  102. package/dist/collection/components/field/seki-field.js +1 -1
  103. package/dist/collection/components/field-description/seki-field-description.js +1 -1
  104. package/dist/collection/components/field-error/seki-field-error.js +1 -1
  105. package/dist/collection/components/field-group/seki-field-group.js +1 -1
  106. package/dist/collection/components/field-label/seki-field-label.js +1 -1
  107. package/dist/collection/components/field-legend/seki-field-legend.js +1 -1
  108. package/dist/collection/components/fieldset/seki-fieldset.js +1 -1
  109. package/dist/collection/components/input/seki-input.js +1 -1
  110. package/dist/collection/components/select/seki-select.js +1 -1
  111. package/dist/collection/components/select-group/seki-select-group.js +1 -1
  112. package/dist/collection/components/select-option/seki-select-option.js +1 -1
  113. package/dist/collection/components/sidebar/seki-sidebar-content.css +82 -0
  114. package/dist/collection/components/sidebar/seki-sidebar-content.js +33 -0
  115. package/dist/collection/components/sidebar/seki-sidebar-footer.css +44 -0
  116. package/dist/collection/components/sidebar/seki-sidebar-footer.js +31 -0
  117. package/dist/collection/components/sidebar/seki-sidebar-group.css +158 -0
  118. package/dist/collection/components/sidebar/seki-sidebar-group.js +300 -0
  119. package/dist/collection/components/sidebar/seki-sidebar-header.css +44 -0
  120. package/dist/collection/components/sidebar/seki-sidebar-header.js +32 -0
  121. package/dist/collection/components/sidebar/seki-sidebar-menu-item.css +196 -0
  122. package/dist/collection/components/sidebar/seki-sidebar-menu-item.js +403 -0
  123. package/dist/collection/components/sidebar/seki-sidebar-menu-sub.css +357 -0
  124. package/dist/collection/components/sidebar/seki-sidebar-menu-sub.js +256 -0
  125. package/dist/collection/components/sidebar/seki-sidebar-menu.css +25 -0
  126. package/dist/collection/components/sidebar/seki-sidebar-menu.js +32 -0
  127. package/dist/collection/components/sidebar/seki-sidebar-trigger.css +68 -0
  128. package/dist/collection/components/sidebar/seki-sidebar-trigger.js +175 -0
  129. package/dist/collection/components/sidebar/seki-sidebar.css +352 -0
  130. package/dist/collection/components/sidebar/seki-sidebar.js +812 -0
  131. package/dist/collection/components/sidebar/types.js +18 -0
  132. package/dist/collection/components/skeleton/seki-skeleton.js +1 -1
  133. package/dist/collection/index.js +7 -0
  134. package/dist/collection/services/focus.js +192 -0
  135. package/dist/collection/services/index.js +7 -0
  136. package/dist/collection/services/keyboard.js +136 -0
  137. package/dist/collection/services/media-query.js +254 -0
  138. package/dist/collection/types.js +41 -0
  139. package/dist/collection/utils/a11y.js +291 -0
  140. package/dist/collection/utils/common.js +286 -0
  141. package/dist/components/index.js +1053 -91
  142. package/dist/components/p-BJCq8m2o.js +138 -0
  143. package/dist/components/{p-QhPshhKB.js → p-BzYKy7d3.js} +427 -7
  144. package/dist/components/p-DwTISp-i.js +111 -0
  145. package/dist/components/seki-button.js +1 -1
  146. package/dist/components/seki-card-action.d.ts +11 -0
  147. package/dist/components/seki-card-action.js +38 -0
  148. package/dist/components/seki-card-content.d.ts +11 -0
  149. package/dist/components/seki-card-content.js +38 -0
  150. package/dist/components/seki-card-description.d.ts +11 -0
  151. package/dist/components/seki-card-description.js +38 -0
  152. package/dist/components/seki-card-footer.d.ts +11 -0
  153. package/dist/components/seki-card-footer.js +44 -0
  154. package/dist/components/seki-card-header.d.ts +11 -0
  155. package/dist/components/seki-card-header.js +38 -0
  156. package/dist/components/seki-card-title.d.ts +11 -0
  157. package/dist/components/seki-card-title.js +59 -0
  158. package/dist/components/seki-card.d.ts +11 -0
  159. package/dist/components/seki-card.js +39 -0
  160. package/dist/components/seki-field-description.js +2 -2
  161. package/dist/components/seki-field-error.js +2 -2
  162. package/dist/components/seki-field-group.js +2 -2
  163. package/dist/components/seki-field-label.js +2 -2
  164. package/dist/components/seki-field-legend.js +2 -2
  165. package/dist/components/seki-field.js +2 -2
  166. package/dist/components/seki-fieldset.js +2 -2
  167. package/dist/components/seki-input.js +2 -2
  168. package/dist/components/seki-select-content.js +1 -1
  169. package/dist/components/seki-select-group.js +2 -2
  170. package/dist/components/seki-select-option.js +2 -2
  171. package/dist/components/seki-select-trigger.js +1 -1
  172. package/dist/components/seki-select.js +2 -2
  173. package/dist/components/seki-sidebar-content.d.ts +11 -0
  174. package/dist/components/seki-sidebar-content.js +38 -0
  175. package/dist/components/seki-sidebar-footer.d.ts +11 -0
  176. package/dist/components/seki-sidebar-footer.js +38 -0
  177. package/dist/components/seki-sidebar-group.d.ts +11 -0
  178. package/dist/components/seki-sidebar-group.js +131 -0
  179. package/dist/components/seki-sidebar-header.d.ts +11 -0
  180. package/dist/components/seki-sidebar-header.js +38 -0
  181. package/dist/components/seki-sidebar-menu-item.d.ts +11 -0
  182. package/dist/components/seki-sidebar-menu-item.js +200 -0
  183. package/dist/components/seki-sidebar-menu-sub.d.ts +11 -0
  184. package/dist/components/seki-sidebar-menu-sub.js +123 -0
  185. package/dist/components/seki-sidebar-menu.d.ts +11 -0
  186. package/dist/components/seki-sidebar-menu.js +38 -0
  187. package/dist/components/seki-sidebar-trigger.d.ts +11 -0
  188. package/dist/components/seki-sidebar-trigger.js +109 -0
  189. package/dist/components/seki-sidebar.d.ts +11 -0
  190. package/dist/components/seki-sidebar.js +380 -0
  191. package/dist/components/seki-skeleton.js +2 -2
  192. package/dist/components/seki-switch.js +1 -1
  193. package/dist/components/seki-tooltip.js +1 -1
  194. package/dist/esm/{index-CuXbV_yz.js → index-Dfzpqq0a.js} +426 -6
  195. package/dist/esm/index.js +1053 -63
  196. package/dist/esm/keyboard-BJCq8m2o.js +138 -0
  197. package/dist/esm/loader.js +3 -3
  198. package/dist/esm/seki-button.entry.js +1 -1
  199. package/dist/esm/seki-card-action.entry.js +15 -0
  200. package/dist/esm/seki-card-content.entry.js +15 -0
  201. package/dist/esm/seki-card-description.entry.js +15 -0
  202. package/dist/esm/seki-card-footer.entry.js +20 -0
  203. package/dist/esm/seki-card-header.entry.js +15 -0
  204. package/dist/esm/seki-card-title.entry.js +35 -0
  205. package/dist/esm/seki-card.entry.js +15 -0
  206. package/dist/esm/seki-field-description.entry.js +2 -2
  207. package/dist/esm/seki-field-error.entry.js +2 -2
  208. package/dist/esm/seki-field-group.entry.js +2 -2
  209. package/dist/esm/seki-field-label.entry.js +2 -2
  210. package/dist/esm/seki-field-legend.entry.js +2 -2
  211. package/dist/esm/seki-field.entry.js +2 -2
  212. package/dist/esm/seki-fieldset.entry.js +2 -2
  213. package/dist/esm/seki-input.entry.js +2 -2
  214. package/dist/esm/seki-select-content.entry.js +1 -1
  215. package/dist/esm/seki-select-group.entry.js +2 -2
  216. package/dist/esm/seki-select-option.entry.js +2 -2
  217. package/dist/esm/seki-select-trigger.entry.js +1 -1
  218. package/dist/esm/seki-select.entry.js +2 -2
  219. package/dist/esm/seki-sidebar-content.entry.js +18 -0
  220. package/dist/esm/seki-sidebar-footer.entry.js +18 -0
  221. package/dist/esm/seki-sidebar-group.entry.js +103 -0
  222. package/dist/esm/seki-sidebar-header.entry.js +18 -0
  223. package/dist/esm/seki-sidebar-menu-item.entry.js +172 -0
  224. package/dist/esm/seki-sidebar-menu-sub.entry.js +97 -0
  225. package/dist/esm/seki-sidebar-menu.entry.js +18 -0
  226. package/dist/esm/seki-sidebar-trigger.entry.js +84 -0
  227. package/dist/esm/seki-sidebar.entry.js +340 -0
  228. package/dist/esm/seki-skeleton.entry.js +2 -2
  229. package/dist/esm/seki-switch.entry.js +84 -2
  230. package/dist/esm/seki-tooltip.entry.js +1 -1
  231. package/dist/esm/sekiui.js +3 -3
  232. package/dist/sekiui/index.esm.js +1 -1
  233. package/dist/sekiui/p-01cfb4e7.entry.js +1 -0
  234. package/dist/sekiui/{p-431f46a1.entry.js → p-042ec460.entry.js} +1 -1
  235. package/dist/sekiui/{p-a36f1ac4.entry.js → p-10c008fc.entry.js} +1 -1
  236. package/dist/sekiui/p-352bd295.entry.js +1 -0
  237. package/dist/sekiui/p-37c5f4d9.entry.js +1 -0
  238. package/dist/sekiui/p-40fb71d6.entry.js +1 -0
  239. package/dist/sekiui/{p-eefbc037.entry.js → p-44191aed.entry.js} +1 -1
  240. package/dist/sekiui/{p-81709fc2.entry.js → p-4423d621.entry.js} +1 -1
  241. package/dist/sekiui/{p-e679d501.entry.js → p-4636588f.entry.js} +1 -1
  242. package/dist/sekiui/p-471b97a5.entry.js +1 -0
  243. package/dist/sekiui/{p-de4735fb.entry.js → p-56f0d754.entry.js} +1 -1
  244. package/dist/sekiui/p-5bc0f5aa.entry.js +1 -0
  245. package/dist/sekiui/p-6164cd8a.entry.js +1 -0
  246. package/dist/sekiui/{p-0fba4e2d.entry.js → p-635f4098.entry.js} +1 -1
  247. package/dist/sekiui/{p-434be19f.entry.js → p-743fc6d9.entry.js} +1 -1
  248. package/dist/sekiui/p-83e65cbe.entry.js +1 -0
  249. package/dist/sekiui/p-8b7bd061.entry.js +1 -0
  250. package/dist/sekiui/p-8d9a4878.entry.js +1 -0
  251. package/dist/sekiui/p-9cb9cdfe.entry.js +1 -0
  252. package/dist/sekiui/p-9f2d95d7.entry.js +1 -0
  253. package/dist/sekiui/p-BJCq8m2o.js +1 -0
  254. package/dist/sekiui/p-Dfzpqq0a.js +2 -0
  255. package/dist/sekiui/p-a1a71958.entry.js +1 -0
  256. package/dist/sekiui/{p-bf942ad5.entry.js → p-a71e0c55.entry.js} +1 -1
  257. package/dist/sekiui/{p-6ff91f7f.entry.js → p-ae227955.entry.js} +1 -1
  258. package/dist/sekiui/{p-80a41058.entry.js → p-b365f5fb.entry.js} +1 -1
  259. package/dist/sekiui/{p-6bde807e.entry.js → p-b387a2a5.entry.js} +1 -1
  260. package/dist/sekiui/p-b8590f4d.entry.js +1 -0
  261. package/dist/sekiui/p-c98b6d6a.entry.js +1 -0
  262. package/dist/sekiui/{p-7c2245be.entry.js → p-d73cdb9a.entry.js} +1 -1
  263. package/dist/sekiui/{p-a56602b3.entry.js → p-d96e770e.entry.js} +1 -1
  264. package/dist/sekiui/p-e62dd89b.entry.js +1 -0
  265. package/dist/sekiui/{p-386c00ac.entry.js → p-e7bb140c.entry.js} +1 -1
  266. package/dist/sekiui/{p-6e238adf.entry.js → p-eecc18f3.entry.js} +1 -1
  267. package/dist/sekiui/p-ff636955.entry.js +1 -0
  268. package/dist/sekiui/sekiui.esm.js +1 -1
  269. package/dist/types/components/card/seki-card-action.d.ts +16 -0
  270. package/dist/types/components/card/seki-card-content.d.ts +17 -0
  271. package/dist/types/components/card/seki-card-description.d.ts +14 -0
  272. package/dist/types/components/card/seki-card-footer.d.ts +24 -0
  273. package/dist/types/components/card/seki-card-header.d.ts +20 -0
  274. package/dist/types/components/card/seki-card-title.d.ts +20 -0
  275. package/dist/types/components/card/seki-card.a11y.d.ts +1 -0
  276. package/dist/types/components/card/seki-card.d.ts +23 -0
  277. package/dist/types/components/sidebar/seki-sidebar-content.d.ts +18 -0
  278. package/dist/types/components/sidebar/seki-sidebar-footer.d.ts +16 -0
  279. package/dist/types/components/sidebar/seki-sidebar-group.d.ts +81 -0
  280. package/dist/types/components/sidebar/seki-sidebar-header.d.ts +17 -0
  281. package/dist/types/components/sidebar/seki-sidebar-menu-item.d.ts +104 -0
  282. package/dist/types/components/sidebar/seki-sidebar-menu-sub.d.ts +81 -0
  283. package/dist/types/components/sidebar/seki-sidebar-menu.d.ts +17 -0
  284. package/dist/types/components/sidebar/seki-sidebar-trigger.d.ts +53 -0
  285. package/dist/types/components/sidebar/seki-sidebar.d.ts +185 -0
  286. package/dist/types/components/sidebar/types.d.ts +245 -0
  287. package/dist/types/components.d.ts +899 -0
  288. package/dist/types/index.d.ts +4 -0
  289. package/dist/types/services/focus.d.ts +74 -0
  290. package/dist/types/services/index.d.ts +7 -0
  291. package/dist/types/services/keyboard.d.ts +74 -0
  292. package/dist/types/services/media-query.d.ts +121 -0
  293. package/dist/types/types.d.ts +105 -0
  294. package/dist/types/utils/a11y.d.ts +130 -0
  295. package/dist/types/utils/common.d.ts +142 -0
  296. package/package.json +2 -1
  297. package/dist/sekiui/p-9fe07f6e.entry.js +0 -1
  298. package/dist/sekiui/p-CuXbV_yz.js +0 -2
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  const NAMESPACE = 'sekiui';
4
- const BUILD = /* sekiui */ { hydratedSelectorName: "hydrated", lazyLoad: true, propChangeCallback: true, updatable: true};
4
+ const BUILD = /* sekiui */ { hydratedSelectorName: "hydrated", lazyLoad: true, propChangeCallback: true, slotRelocation: true, updatable: true};
5
5
 
6
6
  const globalScripts = () => {};
7
7
  const globalStyles = ":host{--seki-neutral-50:hsl(0, 0%, 98%);--seki-neutral-100:hsl(0, 0%, 96.1%);--seki-neutral-200:hsl(0, 0%, 89.8%);--seki-neutral-300:hsl(0, 0%, 83.1%);--seki-neutral-400:hsl(0, 0%, 63.9%);--seki-neutral-500:hsl(0, 0%, 45.1%);--seki-neutral-600:hsl(0, 0%, 32.2%);--seki-neutral-700:hsl(0, 0%, 25.1%);--seki-neutral-800:hsl(0, 0%, 14.9%);--seki-neutral-900:hsl(0, 0%, 9%);--seki-neutral-950:hsl(0, 0%, 3.9%);--seki-primary-50:hsl(210, 100%, 97%);--seki-primary-100:hsl(210, 95%, 93%);--seki-primary-200:hsl(210, 95%, 85%);--seki-primary-300:hsl(210, 90%, 73%);--seki-primary-400:hsl(210, 85%, 58%);--seki-primary-500:hsl(210, 80%, 48%);--seki-primary-600:hsl(210, 75%, 40%);--seki-primary-700:hsl(210, 70%, 32%);--seki-primary-800:hsl(210, 65%, 25%);--seki-primary-900:hsl(210, 60%, 18%);--seki-primary-950:hsl(210, 55%, 10%);--seki-success-500:hsl(142, 71%, 45%);--seki-success-600:hsl(142, 71%, 35%);--seki-warning-500:hsl(38, 92%, 50%);--seki-warning-600:hsl(38, 92%, 40%);--seki-destructive-500:hsl(0, 84.2%, 60.2%);--seki-destructive-600:hsl(0, 72%, 41%)}:host{--seki-background:hsl(0, 0%, 100%);--seki-foreground:hsl(0, 0%, 3.9%);--seki-muted:hsl(0, 0%, 96.1%);--seki-muted-foreground:hsl(0, 0%, 45.1%);--seki-card:hsl(0, 0%, 100%);--seki-card-foreground:hsl(0, 0%, 3.9%);--seki-popover:hsl(0, 0%, 100%);--seki-popover-foreground:hsl(0, 0%, 3.9%);--seki-border:hsl(0, 0%, 89.8%);--seki-input:hsl(0, 0%, 89.8%);--seki-primary:hsl(0, 0%, 9%);--seki-primary-foreground:hsl(0, 0%, 98%);--seki-secondary:hsl(0, 0%, 96.1%);--seki-secondary-foreground:hsl(0, 0%, 9%);--seki-accent:hsl(0, 0%, 96.1%);--seki-accent-foreground:hsl(0, 0%, 9%);--seki-destructive:hsl(0, 84.2%, 60.2%);--seki-destructive-foreground:hsl(0, 0%, 98%);--seki-ring:hsl(0, 0%, 3.9%);--seki-bg-primary:var(--seki-background);--seki-bg-secondary:var(--seki-muted);--seki-bg-tertiary:var(--seki-accent);--seki-text-primary:var(--seki-foreground);--seki-text-secondary:var(--seki-muted-foreground);--seki-text-tertiary:var(--seki-neutral-400);--seki-border-default:var(--seki-border);--seki-border-emphasis:var(--seki-neutral-300)}:host([data-theme='dark']){--seki-background:hsl(0, 0%, 3.9%);--seki-foreground:hsl(0, 0%, 98%);--seki-muted:hsl(0, 0%, 14.9%);--seki-muted-foreground:hsl(0, 0%, 63.9%);--seki-card:hsl(0, 0%, 3.9%);--seki-card-foreground:hsl(0, 0%, 98%);--seki-popover:hsl(0, 0%, 3.9%);--seki-popover-foreground:hsl(0, 0%, 98%);--seki-border:hsl(0, 0%, 14.9%);--seki-input:hsl(0, 0%, 14.9%);--seki-primary:hsl(0, 0%, 98%);--seki-primary-foreground:hsl(0, 0%, 9%);--seki-secondary:hsl(0, 0%, 14.9%);--seki-secondary-foreground:hsl(0, 0%, 98%);--seki-accent:hsl(0, 0%, 14.9%);--seki-accent-foreground:hsl(0, 0%, 98%);--seki-destructive:hsl(0, 62.8%, 30.6%);--seki-destructive-foreground:hsl(0, 0%, 98%);--seki-ring:hsl(0, 0%, 83.1%);--seki-bg-primary:var(--seki-background);--seki-bg-secondary:var(--seki-muted);--seki-bg-tertiary:var(--seki-accent);--seki-text-primary:var(--seki-foreground);--seki-text-secondary:var(--seki-muted-foreground);--seki-text-tertiary:var(--seki-neutral-600);--seki-border-default:var(--seki-border);--seki-border-emphasis:var(--seki-neutral-700);--seki-button-primary-hover-bg:hsl(0, 0%, 98%, 0.9);--seki-button-secondary-hover-bg:hsl(0, 0%, 14.9%, 0.8)}:host{--seki-button-primary-bg:var(--seki-primary);--seki-button-primary-text:var(--seki-primary-foreground);--seki-button-primary-border:transparent;--seki-button-primary-hover-bg:hsl(0, 0%, 9%, 0.9);--seki-button-primary-hover-text:var(--seki-primary-foreground);--seki-button-primary-hover-border:transparent;--seki-button-secondary-bg:var(--seki-secondary);--seki-button-secondary-text:var(--seki-secondary-foreground);--seki-button-secondary-border:transparent;--seki-button-secondary-hover-bg:hsl(0, 0%, 96.1%, 0.8);--seki-button-secondary-hover-text:var(--seki-secondary-foreground);--seki-button-secondary-hover-border:transparent;--seki-button-outline-bg:transparent;--seki-button-outline-text:var(--seki-foreground);--seki-button-outline-border:var(--seki-input);--seki-button-outline-hover-bg:var(--seki-accent);--seki-button-outline-hover-text:var(--seki-accent-foreground);--seki-button-outline-hover-border:var(--seki-input);--seki-button-ghost-bg:transparent;--seki-button-ghost-text:var(--seki-foreground);--seki-button-ghost-border:transparent;--seki-button-ghost-hover-bg:var(--seki-accent);--seki-button-ghost-hover-text:var(--seki-accent-foreground);--seki-button-ghost-hover-border:transparent;--seki-button-destructive-bg:var(--seki-destructive);--seki-button-destructive-text:var(--seki-destructive-foreground);--seki-button-destructive-border:transparent;--seki-button-destructive-hover-bg:hsl(0, 84.2%, 60.2%, 0.9);--seki-button-destructive-hover-border:transparent;--seki-button-sm-padding-x:var(--seki-spacing-3, 0.75rem);--seki-button-sm-padding-y:0.375rem;--seki-button-sm-font-size:var(--seki-text-sm, 0.875rem);--seki-button-sm-height:2.25rem;--seki-button-md-padding-x:var(--seki-spacing-4, 1rem);--seki-button-md-padding-y:var(--seki-spacing-2, 0.5rem);--seki-button-md-font-size:var(--seki-text-base, 1rem);--seki-button-md-height:2.5rem;--seki-button-lg-padding-x:2rem;--seki-button-lg-padding-y:0.5rem;--seki-button-lg-font-size:1rem;--seki-button-lg-height:2.75rem;--seki-button-icon-sm-size:2rem;--seki-button-icon-size:2.5rem;--seki-button-icon-lg-size:3rem;--seki-button-icon-gap:0.5rem;--seki-button-link-bg:transparent;--seki-button-link-text:var(--seki-primary);--seki-button-link-border:transparent;--seki-button-link-hover-bg:transparent;--seki-button-link-hover-text:var(--seki-primary);--seki-button-link-hover-border:transparent;--seki-button-radius:var(--seki-radius-md, 0.375rem);--seki-button-font-weight:var(--seki-font-medium, 500);--seki-button-transition-duration:150ms;--seki-button-transition-timing:ease-in-out;--seki-button-shadow:var(--seki-shadow-sm, 0 1px 2px 0 rgb(0 0 0 / 0.05));--seki-button-shadow-hover:var(--seki-shadow-md, 0 4px 6px -1px rgb(0 0 0 / 0.1));--seki-button-disabled-opacity:0.5;--seki-input-bg:var(--seki-background);--seki-input-border:var(--seki-border);--seki-input-text:var(--seki-foreground);--seki-input-placeholder:var(--seki-muted-foreground);--seki-input-ring:var(--seki-ring);--seki-input-invalid-border:var(--seki-destructive);--seki-input-invalid-ring:var(--seki-destructive);--seki-input-disabled-opacity:0.5;--seki-input-radius:var(--seki-radius-md);--seki-input-ring-offset:2px;--seki-select-trigger-bg:var(--seki-background);--seki-select-trigger-border:1px solid var(--seki-border);--seki-select-trigger-bg-hover:var(--seki-muted);--seki-select-trigger-radius:var(--seki-radius-md);--seki-select-trigger-min-height:2.5rem;--seki-select-trigger-padding:0.5rem 0.75rem;--seki-select-trigger-gap:0.5rem;--seki-select-content-bg:var(--seki-popover);--seki-select-content-border:1px solid var(--seki-border);--seki-select-content-shadow:0 10px 15px -3px rgb(0 0 0 / 0.1);--seki-select-content-radius:var(--seki-radius-md);--seki-select-content-padding:0.5rem 0;--seki-select-option-padding:0.5rem 0.75rem;--seki-select-option-gap:0.5rem;--seki-select-option-radius:var(--seki-radius-sm);--seki-select-option-bg-hover:var(--seki-muted);--seki-select-option-bg-selected:var(--seki-muted);--seki-select-group-label-padding:0.5rem 0.75rem;--seki-select-group-label-font-size:var(--seki-font-size-xs);--seki-select-group-label-font-weight:var(--seki-font-semibold);--seki-select-group-label-color:var(--seki-muted-foreground);--seki-select-group-separator:1px solid var(--seki-border)}:host{--seki-spacing-0:0;--seki-spacing-0-5:0.125rem;--seki-spacing-1:0.25rem;--seki-spacing-1-5:0.375rem;--seki-spacing-2:0.5rem;--seki-spacing-2-5:0.625rem;--seki-spacing-3:0.75rem;--seki-spacing-3-5:0.875rem;--seki-spacing-4:1rem;--seki-spacing-5:1.25rem;--seki-spacing-6:1.5rem;--seki-spacing-8:2rem;--seki-spacing-10:2.5rem;--seki-spacing-12:3rem;--seki-spacing-16:4rem;--seki-spacing-20:5rem;--seki-spacing-24:6rem;--seki-input-height-sm:2rem;--seki-input-height-md:2.5rem;--seki-input-height-lg:3rem;--seki-input-padding-x:0.75rem;--seki-input-padding-y:0.5rem;--seki-input-font-size:0.875rem;--seki-input-ring-offset:2px}:host{--seki-shadow-sm:0 1px 2px 0 rgb(0 0 0 / 0.05);--seki-shadow-md:0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);--seki-shadow-lg:0 10px 15px -3px rgb(0 0 0 / 0.15), 0 4px 6px -4px rgb(0 0 0 / 0.1)}:host{--seki-font-sans:-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue',\n Arial, sans-serif;--seki-font-mono:ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace;--seki-text-xs:0.75rem;--seki-text-sm:0.875rem;--seki-text-base:1rem;--seki-text-lg:1.125rem;--seki-text-xl:1.25rem;--seki-text-2xl:1.5rem;--seki-text-3xl:1.875rem;--seki-text-4xl:2.25rem;--seki-font-normal:400;--seki-font-medium:500;--seki-font-semibold:600;--seki-font-bold:700;--seki-leading-tight:1.25;--seki-leading-normal:1.5;--seki-leading-relaxed:1.75}:host{--seki-radius-sm:0.25rem;--seki-radius-md:0.375rem;--seki-radius-lg:0.5rem;--seki-radius-xl:1rem;}";
@@ -172,6 +172,9 @@ var flush = () => {
172
172
  };
173
173
  var nextTick = (cb) => promiseResolve().then(cb);
174
174
  var writeTask = /* @__PURE__ */ queueTask(queueDomWrites, true);
175
+
176
+ // src/utils/helpers.ts
177
+ var isDef = (v) => v != null && v !== void 0;
175
178
  var isComplexType = (o) => {
176
179
  o = typeof o;
177
180
  return o === "object" || o === "function";
@@ -259,6 +262,112 @@ function createShadowRoot(cmpMeta) {
259
262
  }
260
263
  }
261
264
  }
265
+ var updateFallbackSlotVisibility = (elm) => {
266
+ const childNodes = internalCall(elm, "childNodes");
267
+ if (elm.tagName && elm.tagName.includes("-") && elm["s-cr"] && elm.tagName !== "SLOT-FB") {
268
+ getHostSlotNodes(childNodes, elm.tagName).forEach((slotNode) => {
269
+ if (slotNode.nodeType === 1 /* ElementNode */ && slotNode.tagName === "SLOT-FB") {
270
+ if (getSlotChildSiblings(slotNode, getSlotName(slotNode), false).length) {
271
+ slotNode.hidden = true;
272
+ } else {
273
+ slotNode.hidden = false;
274
+ }
275
+ }
276
+ });
277
+ }
278
+ let i2 = 0;
279
+ for (i2 = 0; i2 < childNodes.length; i2++) {
280
+ const childNode = childNodes[i2];
281
+ if (childNode.nodeType === 1 /* ElementNode */ && internalCall(childNode, "childNodes").length) {
282
+ updateFallbackSlotVisibility(childNode);
283
+ }
284
+ }
285
+ };
286
+ var getSlottedChildNodes = (childNodes) => {
287
+ const result = [];
288
+ for (let i2 = 0; i2 < childNodes.length; i2++) {
289
+ const slottedNode = childNodes[i2]["s-nr"] || void 0;
290
+ if (slottedNode && slottedNode.isConnected) {
291
+ result.push(slottedNode);
292
+ }
293
+ }
294
+ return result;
295
+ };
296
+ function getHostSlotNodes(childNodes, hostName, slotName) {
297
+ let i2 = 0;
298
+ let slottedNodes = [];
299
+ let childNode;
300
+ for (; i2 < childNodes.length; i2++) {
301
+ childNode = childNodes[i2];
302
+ if (childNode["s-sr"] && (!hostName || childNode["s-hn"] === hostName) && (slotName === void 0)) {
303
+ slottedNodes.push(childNode);
304
+ }
305
+ slottedNodes = [...slottedNodes, ...getHostSlotNodes(childNode.childNodes, hostName, slotName)];
306
+ }
307
+ return slottedNodes;
308
+ }
309
+ var getSlotChildSiblings = (slot, slotName, includeSlot = true) => {
310
+ const childNodes = [];
311
+ if (includeSlot && slot["s-sr"] || !slot["s-sr"]) childNodes.push(slot);
312
+ let node = slot;
313
+ while (node = node.nextSibling) {
314
+ if (getSlotName(node) === slotName && (includeSlot || !node["s-sr"])) childNodes.push(node);
315
+ }
316
+ return childNodes;
317
+ };
318
+ var isNodeLocatedInSlot = (nodeToRelocate, slotName) => {
319
+ if (nodeToRelocate.nodeType === 1 /* ElementNode */) {
320
+ if (nodeToRelocate.getAttribute("slot") === null && slotName === "") {
321
+ return true;
322
+ }
323
+ if (nodeToRelocate.getAttribute("slot") === slotName) {
324
+ return true;
325
+ }
326
+ return false;
327
+ }
328
+ if (nodeToRelocate["s-sn"] === slotName) {
329
+ return true;
330
+ }
331
+ return slotName === "";
332
+ };
333
+ var getSlotName = (node) => typeof node["s-sn"] === "string" ? node["s-sn"] : node.nodeType === 1 && node.getAttribute("slot") || void 0;
334
+ function patchSlotNode(node) {
335
+ if (node.assignedElements || node.assignedNodes || !node["s-sr"]) return;
336
+ const assignedFactory = (elementsOnly) => (function(opts) {
337
+ const toReturn = [];
338
+ const slotName = this["s-sn"];
339
+ if (opts == null ? void 0 : opts.flatten) {
340
+ console.error(`
341
+ Flattening is not supported for Stencil non-shadow slots.
342
+ You can use \`.childNodes\` to nested slot fallback content.
343
+ If you have a particular use case, please open an issue on the Stencil repo.
344
+ `);
345
+ }
346
+ const parent = this["s-cr"].parentElement;
347
+ const slottedNodes = parent.__childNodes ? parent.childNodes : getSlottedChildNodes(parent.childNodes);
348
+ slottedNodes.forEach((n) => {
349
+ if (slotName === getSlotName(n)) {
350
+ toReturn.push(n);
351
+ }
352
+ });
353
+ if (elementsOnly) {
354
+ return toReturn.filter((n) => n.nodeType === 1 /* ElementNode */);
355
+ }
356
+ return toReturn;
357
+ }).bind(node);
358
+ node.assignedElements = assignedFactory(true);
359
+ node.assignedNodes = assignedFactory(false);
360
+ }
361
+ function internalCall(node, method) {
362
+ if ("__" + method in node) {
363
+ const toReturn = node["__" + method];
364
+ if (typeof toReturn !== "function") return toReturn;
365
+ return toReturn.bind(node);
366
+ } else {
367
+ if (typeof node[method] !== "function") return node[method];
368
+ return node[method].bind(node);
369
+ }
370
+ }
262
371
  var createTime = (fnName, tagName = "") => {
263
372
  {
264
373
  return () => {
@@ -380,6 +489,7 @@ var getScopeId = (cmp, mode) => "sc-" + (cmp.$tagName$);
380
489
  var h = (nodeName, vnodeData, ...children) => {
381
490
  let child = null;
382
491
  let key = null;
492
+ let slotName = null;
383
493
  let simple = false;
384
494
  let lastSimple = false;
385
495
  const vNodeChildren = [];
@@ -406,6 +516,9 @@ var h = (nodeName, vnodeData, ...children) => {
406
516
  if (vnodeData.key) {
407
517
  key = vnodeData.key;
408
518
  }
519
+ if (vnodeData.name) {
520
+ slotName = vnodeData.name;
521
+ }
409
522
  {
410
523
  const classData = vnodeData.className || vnodeData.class;
411
524
  if (classData) {
@@ -413,6 +526,13 @@ var h = (nodeName, vnodeData, ...children) => {
413
526
  }
414
527
  }
415
528
  }
529
+ if (typeof nodeName === "function") {
530
+ return nodeName(
531
+ vnodeData === null ? {} : vnodeData,
532
+ vNodeChildren,
533
+ vdomFnUtils
534
+ );
535
+ }
416
536
  const vnode = newVNode(nodeName, null);
417
537
  vnode.$attrs$ = vnodeData;
418
538
  if (vNodeChildren.length > 0) {
@@ -421,6 +541,9 @@ var h = (nodeName, vnodeData, ...children) => {
421
541
  {
422
542
  vnode.$key$ = key;
423
543
  }
544
+ {
545
+ vnode.$name$ = slotName;
546
+ }
424
547
  return vnode;
425
548
  };
426
549
  var newVNode = (tag, text) => {
@@ -437,10 +560,43 @@ var newVNode = (tag, text) => {
437
560
  {
438
561
  vnode.$key$ = null;
439
562
  }
563
+ {
564
+ vnode.$name$ = null;
565
+ }
440
566
  return vnode;
441
567
  };
442
568
  var Host = {};
443
569
  var isHost = (node) => node && node.$tag$ === Host;
570
+ var vdomFnUtils = {
571
+ forEach: (children, cb) => children.map(convertToPublic).forEach(cb),
572
+ map: (children, cb) => children.map(convertToPublic).map(cb).map(convertToPrivate)
573
+ };
574
+ var convertToPublic = (node) => ({
575
+ vattrs: node.$attrs$,
576
+ vchildren: node.$children$,
577
+ vkey: node.$key$,
578
+ vname: node.$name$,
579
+ vtag: node.$tag$,
580
+ vtext: node.$text$
581
+ });
582
+ var convertToPrivate = (node) => {
583
+ if (typeof node.vtag === "function") {
584
+ const vnodeData = { ...node.vattrs };
585
+ if (node.vkey) {
586
+ vnodeData.key = node.vkey;
587
+ }
588
+ if (node.vname) {
589
+ vnodeData.name = node.vname;
590
+ }
591
+ return h(node.vtag, vnodeData, ...node.vchildren || []);
592
+ }
593
+ const vnode = newVNode(node.vtag, node.vtext);
594
+ vnode.$attrs$ = node.vattrs;
595
+ vnode.$children$ = node.vchildren;
596
+ vnode.$key$ = node.vkey;
597
+ vnode.$name$ = node.vname;
598
+ return vnode;
599
+ };
444
600
  var createSupportsRuleRe = (selector) => {
445
601
  const safeSelector2 = escapeRegExpSpecialCharacters(selector);
446
602
  return new RegExp(
@@ -649,15 +805,44 @@ function sortedAttrNames(attrNames) {
649
805
  attrNames
650
806
  );
651
807
  }
808
+
809
+ // src/runtime/vdom/vdom-render.ts
810
+ var scopeId;
811
+ var contentRef;
652
812
  var hostTagName;
813
+ var useNativeShadowDom = false;
814
+ var checkSlotFallbackVisibility = false;
815
+ var checkSlotRelocate = false;
653
816
  var isSvgMode = false;
654
817
  var createElm = (oldParentVNode, newParentVNode, childIndex) => {
818
+ var _a;
655
819
  const newVNode2 = newParentVNode.$children$[childIndex];
656
820
  let i2 = 0;
657
821
  let elm;
658
822
  let childNode;
823
+ let oldVNode;
824
+ if (!useNativeShadowDom) {
825
+ checkSlotRelocate = true;
826
+ if (newVNode2.$tag$ === "slot") {
827
+ newVNode2.$flags$ |= newVNode2.$children$ ? (
828
+ // slot element has fallback content
829
+ // still create an element that "mocks" the slot element
830
+ 2 /* isSlotFallback */
831
+ ) : (
832
+ // slot element does not have fallback content
833
+ // create an html comment we'll use to always reference
834
+ // where actual slot content should sit next to
835
+ 1 /* isSlotReference */
836
+ );
837
+ }
838
+ }
659
839
  if (newVNode2.$text$ !== null) {
660
840
  elm = newVNode2.$elm$ = win.document.createTextNode(newVNode2.$text$);
841
+ } else if (newVNode2.$flags$ & 1 /* isSlotReference */) {
842
+ elm = newVNode2.$elm$ = win.document.createTextNode("");
843
+ {
844
+ updateElement(null, newVNode2, isSvgMode);
845
+ }
661
846
  } else {
662
847
  if (!isSvgMode) {
663
848
  isSvgMode = newVNode2.$tag$ === "svg";
@@ -669,7 +854,7 @@ var createElm = (oldParentVNode, newParentVNode, childIndex) => {
669
854
  }
670
855
  elm = newVNode2.$elm$ = win.document.createElementNS(
671
856
  isSvgMode ? SVG_NS : HTML_NS,
672
- newVNode2.$tag$
857
+ !useNativeShadowDom && BUILD.slotRelocation && newVNode2.$flags$ & 2 /* isSlotFallback */ ? "slot-fb" : newVNode2.$tag$
673
858
  ) ;
674
859
  if (isSvgMode && newVNode2.$tag$ === "foreignObject") {
675
860
  isSvgMode = false;
@@ -677,6 +862,9 @@ var createElm = (oldParentVNode, newParentVNode, childIndex) => {
677
862
  {
678
863
  updateElement(null, newVNode2, isSvgMode);
679
864
  }
865
+ if (isDef(scopeId) && elm["s-si"] !== scopeId) {
866
+ elm.classList.add(elm["s-si"] = scopeId);
867
+ }
680
868
  if (newVNode2.$children$) {
681
869
  for (i2 = 0; i2 < newVNode2.$children$.length; ++i2) {
682
870
  childNode = createElm(oldParentVNode, newVNode2, i2);
@@ -694,10 +882,46 @@ var createElm = (oldParentVNode, newParentVNode, childIndex) => {
694
882
  }
695
883
  }
696
884
  elm["s-hn"] = hostTagName;
885
+ {
886
+ if (newVNode2.$flags$ & (2 /* isSlotFallback */ | 1 /* isSlotReference */)) {
887
+ elm["s-sr"] = true;
888
+ elm["s-cr"] = contentRef;
889
+ elm["s-sn"] = newVNode2.$name$ || "";
890
+ elm["s-rf"] = (_a = newVNode2.$attrs$) == null ? void 0 : _a.ref;
891
+ patchSlotNode(elm);
892
+ oldVNode = oldParentVNode && oldParentVNode.$children$ && oldParentVNode.$children$[childIndex];
893
+ if (oldVNode && oldVNode.$tag$ === newVNode2.$tag$ && oldParentVNode.$elm$) {
894
+ {
895
+ putBackInOriginalLocation(oldParentVNode.$elm$, false);
896
+ }
897
+ }
898
+ {
899
+ addRemoveSlotScopedClass(contentRef, elm, newParentVNode.$elm$, oldParentVNode == null ? void 0 : oldParentVNode.$elm$);
900
+ }
901
+ }
902
+ }
697
903
  return elm;
698
904
  };
905
+ var putBackInOriginalLocation = (parentElm, recursive) => {
906
+ plt.$flags$ |= 1 /* isTmpDisconnected */;
907
+ const oldSlotChildNodes = Array.from(parentElm.__childNodes || parentElm.childNodes);
908
+ for (let i2 = oldSlotChildNodes.length - 1; i2 >= 0; i2--) {
909
+ const childNode = oldSlotChildNodes[i2];
910
+ if (childNode["s-hn"] !== hostTagName && childNode["s-ol"]) {
911
+ insertBefore(referenceNode(childNode).parentNode, childNode, referenceNode(childNode));
912
+ childNode["s-ol"].remove();
913
+ childNode["s-ol"] = void 0;
914
+ childNode["s-sh"] = void 0;
915
+ checkSlotRelocate = true;
916
+ }
917
+ if (recursive) {
918
+ putBackInOriginalLocation(childNode, recursive);
919
+ }
920
+ }
921
+ plt.$flags$ &= -2 /* isTmpDisconnected */;
922
+ };
699
923
  var addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {
700
- let containerElm = parentElm;
924
+ let containerElm = parentElm["s-cr"] && parentElm["s-cr"].parentNode || parentElm;
701
925
  let childNode;
702
926
  if (containerElm.shadowRoot && containerElm.tagName === hostTagName) {
703
927
  containerElm = containerElm.shadowRoot;
@@ -707,7 +931,7 @@ var addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {
707
931
  childNode = createElm(null, parentVNode, startIdx);
708
932
  if (childNode) {
709
933
  vnodes[startIdx].$elm$ = childNode;
710
- insertBefore(containerElm, childNode, before);
934
+ insertBefore(containerElm, childNode, referenceNode(before) );
711
935
  }
712
936
  }
713
937
  }
@@ -719,6 +943,14 @@ var removeVnodes = (vnodes, startIdx, endIdx) => {
719
943
  const elm = vnode.$elm$;
720
944
  nullifyVNodeRefs(vnode);
721
945
  if (elm) {
946
+ {
947
+ checkSlotFallbackVisibility = true;
948
+ if (elm["s-ol"]) {
949
+ elm["s-ol"].remove();
950
+ } else {
951
+ putBackInOriginalLocation(elm, true);
952
+ }
953
+ }
722
954
  elm.remove();
723
955
  }
724
956
  }
@@ -755,11 +987,17 @@ var updateChildren = (parentElm, oldCh, newVNode2, newCh, isInitialRender = fals
755
987
  oldEndVnode = oldCh[--oldEndIdx];
756
988
  newEndVnode = newCh[--newEndIdx];
757
989
  } else if (isSameVnode(oldStartVnode, newEndVnode, isInitialRender)) {
990
+ if ((oldStartVnode.$tag$ === "slot" || newEndVnode.$tag$ === "slot")) {
991
+ putBackInOriginalLocation(oldStartVnode.$elm$.parentNode, false);
992
+ }
758
993
  patch(oldStartVnode, newEndVnode, isInitialRender);
759
994
  insertBefore(parentElm, oldStartVnode.$elm$, oldEndVnode.$elm$.nextSibling);
760
995
  oldStartVnode = oldCh[++oldStartIdx];
761
996
  newEndVnode = newCh[--newEndIdx];
762
997
  } else if (isSameVnode(oldEndVnode, newStartVnode, isInitialRender)) {
998
+ if ((oldStartVnode.$tag$ === "slot" || newEndVnode.$tag$ === "slot")) {
999
+ putBackInOriginalLocation(oldEndVnode.$elm$.parentNode, false);
1000
+ }
763
1001
  patch(oldEndVnode, newStartVnode, isInitialRender);
764
1002
  insertBefore(parentElm, oldEndVnode.$elm$, oldStartVnode.$elm$);
765
1003
  oldEndVnode = oldCh[--oldEndIdx];
@@ -790,7 +1028,11 @@ var updateChildren = (parentElm, oldCh, newVNode2, newCh, isInitialRender = fals
790
1028
  }
791
1029
  if (node) {
792
1030
  {
793
- insertBefore(oldStartVnode.$elm$.parentNode, node, oldStartVnode.$elm$);
1031
+ insertBefore(
1032
+ referenceNode(oldStartVnode.$elm$).parentNode,
1033
+ node,
1034
+ referenceNode(oldStartVnode.$elm$)
1035
+ );
794
1036
  }
795
1037
  }
796
1038
  }
@@ -810,6 +1052,9 @@ var updateChildren = (parentElm, oldCh, newVNode2, newCh, isInitialRender = fals
810
1052
  };
811
1053
  var isSameVnode = (leftVNode, rightVNode, isInitialRender = false) => {
812
1054
  if (leftVNode.$tag$ === rightVNode.$tag$) {
1055
+ if (leftVNode.$tag$ === "slot") {
1056
+ return leftVNode.$name$ === rightVNode.$name$;
1057
+ }
813
1058
  if (!isInitialRender) {
814
1059
  return leftVNode.$key$ === rightVNode.$key$;
815
1060
  }
@@ -820,12 +1065,14 @@ var isSameVnode = (leftVNode, rightVNode, isInitialRender = false) => {
820
1065
  }
821
1066
  return false;
822
1067
  };
1068
+ var referenceNode = (node) => node && node["s-ol"] || node;
823
1069
  var patch = (oldVNode, newVNode2, isInitialRender = false) => {
824
1070
  const elm = newVNode2.$elm$ = oldVNode.$elm$;
825
1071
  const oldChildren = oldVNode.$children$;
826
1072
  const newChildren = newVNode2.$children$;
827
1073
  const tag = newVNode2.$tag$;
828
1074
  const text = newVNode2.$text$;
1075
+ let defaultHolder;
829
1076
  if (text === null) {
830
1077
  {
831
1078
  isSvgMode = tag === "svg" ? true : tag === "foreignObject" ? false : isSvgMode;
@@ -849,10 +1096,62 @@ var patch = (oldVNode, newVNode2, isInitialRender = false) => {
849
1096
  if (isSvgMode && tag === "svg") {
850
1097
  isSvgMode = false;
851
1098
  }
1099
+ } else if ((defaultHolder = elm["s-cr"])) {
1100
+ defaultHolder.parentNode.textContent = text;
852
1101
  } else if (oldVNode.$text$ !== text) {
853
1102
  elm.data = text;
854
1103
  }
855
1104
  };
1105
+ var relocateNodes = [];
1106
+ var markSlotContentForRelocation = (elm) => {
1107
+ let node;
1108
+ let hostContentNodes;
1109
+ let j;
1110
+ const children = elm.__childNodes || elm.childNodes;
1111
+ for (const childNode of children) {
1112
+ if (childNode["s-sr"] && (node = childNode["s-cr"]) && node.parentNode) {
1113
+ hostContentNodes = node.parentNode.__childNodes || node.parentNode.childNodes;
1114
+ const slotName = childNode["s-sn"];
1115
+ for (j = hostContentNodes.length - 1; j >= 0; j--) {
1116
+ node = hostContentNodes[j];
1117
+ if (!node["s-cn"] && !node["s-nr"] && node["s-hn"] !== childNode["s-hn"] && (true)) {
1118
+ if (isNodeLocatedInSlot(node, slotName)) {
1119
+ let relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
1120
+ checkSlotFallbackVisibility = true;
1121
+ node["s-sn"] = node["s-sn"] || slotName;
1122
+ if (relocateNodeData) {
1123
+ relocateNodeData.$nodeToRelocate$["s-sh"] = childNode["s-hn"];
1124
+ relocateNodeData.$slotRefNode$ = childNode;
1125
+ } else {
1126
+ node["s-sh"] = childNode["s-hn"];
1127
+ relocateNodes.push({
1128
+ $slotRefNode$: childNode,
1129
+ $nodeToRelocate$: node
1130
+ });
1131
+ }
1132
+ if (node["s-sr"]) {
1133
+ relocateNodes.map((relocateNode) => {
1134
+ if (isNodeLocatedInSlot(relocateNode.$nodeToRelocate$, node["s-sn"])) {
1135
+ relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
1136
+ if (relocateNodeData && !relocateNode.$slotRefNode$) {
1137
+ relocateNode.$slotRefNode$ = relocateNodeData.$slotRefNode$;
1138
+ }
1139
+ }
1140
+ });
1141
+ }
1142
+ } else if (!relocateNodes.some((r) => r.$nodeToRelocate$ === node)) {
1143
+ relocateNodes.push({
1144
+ $nodeToRelocate$: node
1145
+ });
1146
+ }
1147
+ }
1148
+ }
1149
+ }
1150
+ if (childNode.nodeType === 1 /* ElementNode */) {
1151
+ markSlotContentForRelocation(childNode);
1152
+ }
1153
+ }
1154
+ };
856
1155
  var nullifyVNodeRefs = (vNode) => {
857
1156
  {
858
1157
  vNode.$attrs$ && vNode.$attrs$.ref && vNode.$attrs$.ref(null);
@@ -860,11 +1159,36 @@ var nullifyVNodeRefs = (vNode) => {
860
1159
  }
861
1160
  };
862
1161
  var insertBefore = (parent, newNode, reference) => {
1162
+ if (typeof newNode["s-sn"] === "string" && !!newNode["s-sr"] && !!newNode["s-cr"]) {
1163
+ addRemoveSlotScopedClass(newNode["s-cr"], newNode, parent, newNode.parentElement);
1164
+ }
863
1165
  {
864
1166
  return parent == null ? void 0 : parent.insertBefore(newNode, reference);
865
1167
  }
866
1168
  };
1169
+ function addRemoveSlotScopedClass(reference, slotNode, newParent, oldParent) {
1170
+ var _a, _b;
1171
+ let scopeId2;
1172
+ if (reference && typeof slotNode["s-sn"] === "string" && !!slotNode["s-sr"] && reference.parentNode && reference.parentNode["s-sc"] && (scopeId2 = slotNode["s-si"] || reference.parentNode["s-sc"])) {
1173
+ const scopeName = slotNode["s-sn"];
1174
+ const hostName = slotNode["s-hn"];
1175
+ (_a = newParent.classList) == null ? void 0 : _a.add(scopeId2 + "-s");
1176
+ if (oldParent && ((_b = oldParent.classList) == null ? void 0 : _b.contains(scopeId2 + "-s"))) {
1177
+ let child = (oldParent.__childNodes || oldParent.childNodes)[0];
1178
+ let found = false;
1179
+ while (child) {
1180
+ if (child["s-sn"] !== scopeName && child["s-hn"] === hostName && !!child["s-sr"]) {
1181
+ found = true;
1182
+ break;
1183
+ }
1184
+ child = child.nextSibling;
1185
+ }
1186
+ if (!found) oldParent.classList.remove(scopeId2 + "-s");
1187
+ }
1188
+ }
1189
+ }
867
1190
  var renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
1191
+ var _a, _b, _c, _d;
868
1192
  const hostElm = hostRef.$hostElement$;
869
1193
  const cmpMeta = hostRef.$cmpMeta$;
870
1194
  const oldVNode = hostRef.$vnode$ || newVNode(null, null);
@@ -890,7 +1214,81 @@ var renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
890
1214
  rootVnode.$flags$ |= 4 /* isHost */;
891
1215
  hostRef.$vnode$ = rootVnode;
892
1216
  rootVnode.$elm$ = oldVNode.$elm$ = hostElm.shadowRoot || hostElm ;
1217
+ {
1218
+ scopeId = hostElm["s-sc"];
1219
+ }
1220
+ useNativeShadowDom = !!(cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) && !(cmpMeta.$flags$ & 128 /* shadowNeedsScopedCss */);
1221
+ {
1222
+ contentRef = hostElm["s-cr"];
1223
+ checkSlotFallbackVisibility = false;
1224
+ }
893
1225
  patch(oldVNode, rootVnode, isInitialLoad);
1226
+ {
1227
+ plt.$flags$ |= 1 /* isTmpDisconnected */;
1228
+ if (checkSlotRelocate) {
1229
+ markSlotContentForRelocation(rootVnode.$elm$);
1230
+ for (const relocateData of relocateNodes) {
1231
+ const nodeToRelocate = relocateData.$nodeToRelocate$;
1232
+ if (!nodeToRelocate["s-ol"] && win.document) {
1233
+ const orgLocationNode = win.document.createTextNode("");
1234
+ orgLocationNode["s-nr"] = nodeToRelocate;
1235
+ insertBefore(nodeToRelocate.parentNode, nodeToRelocate["s-ol"] = orgLocationNode, nodeToRelocate);
1236
+ }
1237
+ }
1238
+ for (const relocateData of relocateNodes) {
1239
+ const nodeToRelocate = relocateData.$nodeToRelocate$;
1240
+ const slotRefNode = relocateData.$slotRefNode$;
1241
+ if (slotRefNode) {
1242
+ const parentNodeRef = slotRefNode.parentNode;
1243
+ let insertBeforeNode = slotRefNode.nextSibling;
1244
+ {
1245
+ let orgLocationNode = (_a = nodeToRelocate["s-ol"]) == null ? void 0 : _a.previousSibling;
1246
+ while (orgLocationNode) {
1247
+ let refNode = (_b = orgLocationNode["s-nr"]) != null ? _b : null;
1248
+ if (refNode && refNode["s-sn"] === nodeToRelocate["s-sn"] && parentNodeRef === (refNode.__parentNode || refNode.parentNode)) {
1249
+ refNode = refNode.nextSibling;
1250
+ while (refNode === nodeToRelocate || (refNode == null ? void 0 : refNode["s-sr"])) {
1251
+ refNode = refNode == null ? void 0 : refNode.nextSibling;
1252
+ }
1253
+ if (!refNode || !refNode["s-nr"]) {
1254
+ insertBeforeNode = refNode;
1255
+ break;
1256
+ }
1257
+ }
1258
+ orgLocationNode = orgLocationNode.previousSibling;
1259
+ }
1260
+ }
1261
+ const parent = nodeToRelocate.__parentNode || nodeToRelocate.parentNode;
1262
+ const nextSibling = nodeToRelocate.__nextSibling || nodeToRelocate.nextSibling;
1263
+ if (!insertBeforeNode && parentNodeRef !== parent || nextSibling !== insertBeforeNode) {
1264
+ if (nodeToRelocate !== insertBeforeNode) {
1265
+ if (!nodeToRelocate["s-hn"] && nodeToRelocate["s-ol"]) {
1266
+ nodeToRelocate["s-hn"] = nodeToRelocate["s-ol"].parentNode.nodeName;
1267
+ }
1268
+ insertBefore(parentNodeRef, nodeToRelocate, insertBeforeNode);
1269
+ if (nodeToRelocate.nodeType === 1 /* ElementNode */ && nodeToRelocate.tagName !== "SLOT-FB") {
1270
+ nodeToRelocate.hidden = (_c = nodeToRelocate["s-ih"]) != null ? _c : false;
1271
+ }
1272
+ }
1273
+ }
1274
+ nodeToRelocate && typeof slotRefNode["s-rf"] === "function" && slotRefNode["s-rf"](slotRefNode);
1275
+ } else {
1276
+ if (nodeToRelocate.nodeType === 1 /* ElementNode */) {
1277
+ if (isInitialLoad) {
1278
+ nodeToRelocate["s-ih"] = (_d = nodeToRelocate.hidden) != null ? _d : false;
1279
+ }
1280
+ nodeToRelocate.hidden = true;
1281
+ }
1282
+ }
1283
+ }
1284
+ }
1285
+ if (checkSlotFallbackVisibility) {
1286
+ updateFallbackSlotVisibility(rootVnode.$elm$);
1287
+ }
1288
+ plt.$flags$ &= -2 /* isTmpDisconnected */;
1289
+ relocateNodes.length = 0;
1290
+ }
1291
+ contentRef = void 0;
894
1292
  };
895
1293
 
896
1294
  // src/runtime/update-component.ts
@@ -1385,6 +1783,12 @@ var connectedCallback = (elm) => {
1385
1783
  const endConnected = createTime("connectedCallback", cmpMeta.$tagName$);
1386
1784
  if (!(hostRef.$flags$ & 1 /* hasConnected */)) {
1387
1785
  hostRef.$flags$ |= 1 /* hasConnected */;
1786
+ {
1787
+ if (// TODO(STENCIL-854): Remove code related to legacy shadowDomShim field
1788
+ cmpMeta.$flags$ & (4 /* hasSlotRelocation */ | 8 /* needsShadowDomShim */)) {
1789
+ setContentReference(elm);
1790
+ }
1791
+ }
1388
1792
  {
1389
1793
  let ancestorComponent = elm;
1390
1794
  while (ancestorComponent = ancestorComponent.parentNode || ancestorComponent.host) {
@@ -1417,6 +1821,16 @@ var connectedCallback = (elm) => {
1417
1821
  endConnected();
1418
1822
  }
1419
1823
  };
1824
+ var setContentReference = (elm) => {
1825
+ if (!win.document) {
1826
+ return;
1827
+ }
1828
+ const contentRefElm = elm["s-cr"] = win.document.createComment(
1829
+ ""
1830
+ );
1831
+ contentRefElm["s-cn"] = true;
1832
+ insertBefore(elm, contentRefElm, elm.firstChild);
1833
+ };
1420
1834
  var disconnectInstance = (instance, elm) => {
1421
1835
  {
1422
1836
  safeCall(instance, "disconnectedCallback", void 0, elm || instance);
@@ -1596,7 +2010,7 @@ var bootstrapLazy = (lazyBundles, options = {}) => {
1596
2010
  var addHostEventListeners = (elm, hostRef, listeners, attachParentListeners) => {
1597
2011
  if (listeners && win.document) {
1598
2012
  listeners.map(([flags, name, method]) => {
1599
- const target = elm;
2013
+ const target = getHostListenerTarget(win.document, elm, flags) ;
1600
2014
  const handler = hostListenerProxy(hostRef, method);
1601
2015
  const opts = hostListenerOpts(flags);
1602
2016
  plt.ael(target, name, handler, opts);
@@ -1618,6 +2032,12 @@ var hostListenerProxy = (hostRef, methodName) => (ev) => {
1618
2032
  consoleError(e, hostRef.$hostElement$);
1619
2033
  }
1620
2034
  };
2035
+ var getHostListenerTarget = (doc, elm, flags) => {
2036
+ if (flags & 16 /* TargetBody */) {
2037
+ return doc.body;
2038
+ }
2039
+ return elm;
2040
+ };
1621
2041
  var hostListenerOpts = (flags) => supportsListenerOptions ? {
1622
2042
  passive: (flags & 1 /* Passive */) !== 0,
1623
2043
  capture: (flags & 2 /* Capture */) !== 0