@roadtrip/components 3.11.0 → 3.11.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (632) hide show
  1. package/dist/cjs/{app-d9e5adfa.js → app-a0c1eef6.js} +2 -2
  2. package/dist/cjs/app-a0c1eef6.js.map +1 -0
  3. package/dist/cjs/{focus-visible-6771892b.js → focus-visible-6f34b3f4.js} +1 -1
  4. package/dist/cjs/focus-visible-6f34b3f4.js.map +1 -0
  5. package/dist/cjs/{index-e4bd5b5f.js → index-4fdb2a28.js} +408 -194
  6. package/dist/cjs/index-4fdb2a28.js.map +1 -0
  7. package/dist/cjs/{index-fd07207a.js → index-fb57f684.js} +1 -1
  8. package/dist/cjs/index-fb57f684.js.map +1 -0
  9. package/dist/cjs/index.cjs.js +3 -3
  10. package/dist/cjs/loader.cjs.js +4 -29
  11. package/dist/cjs/loader.cjs.js.map +1 -1
  12. package/dist/cjs/{polyfill-9453e116.js → polyfill-b1fff766.js} +2 -2
  13. package/dist/cjs/polyfill-b1fff766.js.map +1 -0
  14. package/dist/cjs/road-accordion.cjs.entry.js +3 -3
  15. package/dist/cjs/road-accordion.cjs.entry.js.map +1 -1
  16. package/dist/cjs/road-alert.cjs.entry.js +1 -1
  17. package/dist/cjs/road-alert.cjs.entry.js.map +1 -1
  18. package/dist/cjs/road-area-code.cjs.entry.js +9 -13
  19. package/dist/cjs/road-area-code.cjs.entry.js.map +1 -1
  20. package/dist/cjs/road-autocomplete.cjs.entry.js +1 -1
  21. package/dist/cjs/road-autocomplete.cjs.entry.js.map +1 -1
  22. package/dist/cjs/road-avatar.cjs.entry.js +1 -1
  23. package/dist/cjs/road-avatar.cjs.entry.js.map +1 -1
  24. package/dist/cjs/road-badge_14.cjs.entry.js +5 -5
  25. package/dist/cjs/road-badge_14.cjs.entry.js.map +1 -1
  26. package/dist/cjs/road-banner.cjs.entry.js +2 -2
  27. package/dist/cjs/road-banner.cjs.entry.js.map +1 -1
  28. package/dist/cjs/road-button-floating.cjs.entry.js +2 -2
  29. package/dist/cjs/road-button-floating.cjs.entry.js.map +1 -1
  30. package/dist/cjs/road-card.cjs.entry.js +1 -1
  31. package/dist/cjs/road-card.cjs.entry.js.map +1 -1
  32. package/dist/cjs/road-carousel-item.cjs.entry.js +1 -1
  33. package/dist/cjs/road-carousel-item.cjs.entry.js.map +1 -1
  34. package/dist/cjs/road-carousel.cjs.entry.js +2 -2
  35. package/dist/cjs/road-carousel.cjs.entry.js.map +1 -1
  36. package/dist/cjs/road-checkbox.cjs.entry.js +3 -3
  37. package/dist/cjs/road-checkbox.cjs.entry.js.map +1 -1
  38. package/dist/cjs/road-chip.cjs.entry.js +3 -3
  39. package/dist/cjs/road-chip.cjs.entry.js.map +1 -1
  40. package/dist/cjs/road-collapse.cjs.entry.js +1 -1
  41. package/dist/cjs/road-collapse.cjs.entry.js.map +1 -1
  42. package/dist/cjs/road-dialog.cjs.entry.js +2 -2
  43. package/dist/cjs/road-dialog.cjs.entry.js.map +1 -1
  44. package/dist/cjs/road-dropdown.cjs.entry.js +1 -1
  45. package/dist/cjs/road-dropdown.cjs.entry.js.map +1 -1
  46. package/dist/cjs/road-duration.cjs.entry.js +1 -1
  47. package/dist/cjs/road-duration.cjs.entry.js.map +1 -1
  48. package/dist/cjs/road-flap.cjs.entry.js +1 -1
  49. package/dist/cjs/road-flap.cjs.entry.js.map +1 -1
  50. package/dist/cjs/road-global-navigation.cjs.entry.js +2 -2
  51. package/dist/cjs/road-global-navigation.cjs.entry.js.map +1 -1
  52. package/dist/cjs/road-illustration.cjs.entry.js +2 -2
  53. package/dist/cjs/road-illustration.cjs.entry.js.map +1 -1
  54. package/dist/cjs/road-img.cjs.entry.js +1 -1
  55. package/dist/cjs/road-img.cjs.entry.js.map +1 -1
  56. package/dist/cjs/road-modal.cjs.entry.js +2 -2
  57. package/dist/cjs/road-modal.cjs.entry.js.map +1 -1
  58. package/dist/cjs/road-navbar-item.cjs.entry.js +1 -1
  59. package/dist/cjs/road-navbar-item.cjs.entry.js.map +1 -1
  60. package/dist/cjs/road-navbar.cjs.entry.js +2 -2
  61. package/dist/cjs/road-navbar.cjs.entry.js.map +1 -1
  62. package/dist/cjs/road-phone-number-input.cjs.entry.js +22 -16
  63. package/dist/cjs/road-phone-number-input.cjs.entry.js.map +1 -1
  64. package/dist/cjs/road-plate-number.cjs.entry.js +2 -2
  65. package/dist/cjs/road-plate-number.cjs.entry.js.map +1 -1
  66. package/dist/cjs/road-profil-dropdown.cjs.entry.js +1 -1
  67. package/dist/cjs/road-profil-dropdown.cjs.entry.js.map +1 -1
  68. package/dist/cjs/road-progress-indicator-horizontal.cjs.entry.js +1 -1
  69. package/dist/cjs/road-progress-indicator-horizontal.cjs.entry.js.map +1 -1
  70. package/dist/cjs/road-progress-indicator-vertical-item.cjs.entry.js +1 -1
  71. package/dist/cjs/road-progress-indicator-vertical-item.cjs.entry.js.map +1 -1
  72. package/dist/cjs/road-progress-indicator-vertical.cjs.entry.js +1 -1
  73. package/dist/cjs/road-progress-indicator-vertical.cjs.entry.js.map +1 -1
  74. package/dist/cjs/road-progress-tracker-item.cjs.entry.js +1 -1
  75. package/dist/cjs/road-progress-tracker-item.cjs.entry.js.map +1 -1
  76. package/dist/cjs/road-progress-tracker.cjs.entry.js +1 -1
  77. package/dist/cjs/road-progress-tracker.cjs.entry.js.map +1 -1
  78. package/dist/cjs/road-progress.cjs.entry.js +1 -1
  79. package/dist/cjs/road-progress.cjs.entry.js.map +1 -1
  80. package/dist/cjs/road-radio-group.cjs.entry.js +1 -1
  81. package/dist/cjs/road-radio-group.cjs.entry.js.map +1 -1
  82. package/dist/cjs/road-radio.cjs.entry.js +2 -2
  83. package/dist/cjs/road-radio.cjs.entry.js.map +1 -1
  84. package/dist/cjs/road-range.cjs.entry.js +2 -2
  85. package/dist/cjs/road-range.cjs.entry.js.map +1 -1
  86. package/dist/cjs/road-rating.cjs.entry.js +2 -2
  87. package/dist/cjs/road-rating.cjs.entry.js.map +1 -1
  88. package/dist/cjs/road-segmented-button-bar.cjs.entry.js +2 -2
  89. package/dist/cjs/road-segmented-button-bar.cjs.entry.js.map +1 -1
  90. package/dist/cjs/road-segmented-button.cjs.entry.js +1 -1
  91. package/dist/cjs/road-segmented-button.cjs.entry.js.map +1 -1
  92. package/dist/cjs/road-segmented-buttons.cjs.entry.js +1 -1
  93. package/dist/cjs/road-segmented-buttons.cjs.entry.js.map +1 -1
  94. package/dist/cjs/road-select-filter.cjs.entry.js +1 -1
  95. package/dist/cjs/road-select-filter.cjs.entry.js.map +1 -1
  96. package/dist/cjs/road-select.cjs.entry.js +2 -2
  97. package/dist/cjs/road-select.cjs.entry.js.map +1 -1
  98. package/dist/cjs/road-skeleton.cjs.entry.js +1 -1
  99. package/dist/cjs/road-skeleton.cjs.entry.js.map +1 -1
  100. package/dist/cjs/road-spinner.cjs.entry.js +1 -1
  101. package/dist/cjs/road-spinner.cjs.entry.js.map +1 -1
  102. package/dist/cjs/road-switch.cjs.entry.js +2 -2
  103. package/dist/cjs/road-switch.cjs.entry.js.map +1 -1
  104. package/dist/cjs/road-tab-bar.cjs.entry.js +2 -2
  105. package/dist/cjs/road-tab-bar.cjs.entry.js.map +1 -1
  106. package/dist/cjs/road-tab-button.cjs.entry.js +1 -1
  107. package/dist/cjs/road-tab-button.cjs.entry.js.map +1 -1
  108. package/dist/cjs/road-tab.cjs.entry.js +1 -1
  109. package/dist/cjs/road-tab.cjs.entry.js.map +1 -1
  110. package/dist/cjs/road-table.cjs.entry.js +1 -1
  111. package/dist/cjs/road-table.cjs.entry.js.map +1 -1
  112. package/dist/cjs/road-tabs.cjs.entry.js +1 -1
  113. package/dist/cjs/road-tabs.cjs.entry.js.map +1 -1
  114. package/dist/cjs/road-tag.cjs.entry.js +2 -2
  115. package/dist/cjs/road-tag.cjs.entry.js.map +1 -1
  116. package/dist/cjs/road-text.cjs.entry.js +1 -1
  117. package/dist/cjs/road-text.cjs.entry.js.map +1 -1
  118. package/dist/cjs/road-textarea.cjs.entry.js +1 -1
  119. package/dist/cjs/road-textarea.cjs.entry.js.map +1 -1
  120. package/dist/cjs/road-toast.cjs.entry.js +2 -2
  121. package/dist/cjs/road-toast.cjs.entry.js.map +1 -1
  122. package/dist/cjs/road-toggle.cjs.entry.js +2 -2
  123. package/dist/cjs/road-toggle.cjs.entry.js.map +1 -1
  124. package/dist/cjs/road-toolbar-title-page.cjs.entry.js +1 -1
  125. package/dist/cjs/road-toolbar-title-page.cjs.entry.js.map +1 -1
  126. package/dist/cjs/road-toolbar-title.cjs.entry.js +1 -1
  127. package/dist/cjs/road-toolbar-title.cjs.entry.js.map +1 -1
  128. package/dist/cjs/road-tooltip.cjs.entry.js +1 -1
  129. package/dist/cjs/road-tooltip.cjs.entry.js.map +1 -1
  130. package/dist/cjs/roadtrip.cjs.js +7 -103
  131. package/dist/cjs/roadtrip.cjs.js.map +1 -1
  132. package/dist/cjs/{utils-5203d152.js → utils-0428be89.js} +2 -2
  133. package/dist/cjs/utils-0428be89.js.map +1 -0
  134. package/dist/cjs/{utils-a450bad3.js → utils-e284da2f.js} +2 -2
  135. package/dist/cjs/utils-e284da2f.js.map +1 -0
  136. package/dist/collection/collection-manifest.json +74 -74
  137. package/dist/collection/components/accordion/accordion.js +3 -3
  138. package/dist/collection/components/alert/alert.js +3 -2
  139. package/dist/collection/components/alert/alert.js.map +1 -1
  140. package/dist/collection/components/area-code/area-code.js +19 -38
  141. package/dist/collection/components/area-code/area-code.js.map +1 -1
  142. package/dist/collection/components/autocomplete/autocomplete.js +3 -2
  143. package/dist/collection/components/autocomplete/autocomplete.js.map +1 -1
  144. package/dist/collection/components/avatar/avatar.js +1 -1
  145. package/dist/collection/components/badge/badge.js +3 -2
  146. package/dist/collection/components/badge/badge.js.map +1 -1
  147. package/dist/collection/components/banner/banner.js +4 -3
  148. package/dist/collection/components/banner/banner.js.map +1 -1
  149. package/dist/collection/components/button/button.js +2 -2
  150. package/dist/collection/components/button-floating/button-floating.js +2 -2
  151. package/dist/collection/components/card/card.js +1 -1
  152. package/dist/collection/components/carousel/carousel.js +34 -18
  153. package/dist/collection/components/carousel/carousel.js.map +1 -1
  154. package/dist/collection/components/carousel-item/carousel-item.js +1 -1
  155. package/dist/collection/components/checkbox/checkbox.js +3 -3
  156. package/dist/collection/components/chip/chip.js +3 -3
  157. package/dist/collection/components/col/col.js +1 -1
  158. package/dist/collection/components/collapse/collapse.js +1 -1
  159. package/dist/collection/components/counter/counter.js +1 -1
  160. package/dist/collection/components/dialog/dialog.js +8 -5
  161. package/dist/collection/components/dialog/dialog.js.map +1 -1
  162. package/dist/collection/components/drawer/drawer.js +9 -6
  163. package/dist/collection/components/drawer/drawer.js.map +1 -1
  164. package/dist/collection/components/dropdown/dropdown.js +1 -1
  165. package/dist/collection/components/duration/duration.js +5 -3
  166. package/dist/collection/components/duration/duration.js.map +1 -1
  167. package/dist/collection/components/flap/flap.js +1 -1
  168. package/dist/collection/components/global-navigation/global-navigation.js +2 -2
  169. package/dist/collection/components/grid/grid.js +1 -1
  170. package/dist/collection/components/icon/icon.js +5 -4
  171. package/dist/collection/components/icon/icon.js.map +1 -1
  172. package/dist/collection/components/icon/request.js +1 -1
  173. package/dist/collection/components/icon/svg/vehicle-car-search-color.svg +1 -1
  174. package/dist/collection/components/icon/utils.js +1 -1
  175. package/dist/collection/components/icon/validate.js +1 -1
  176. package/dist/collection/components/illustration/illustration.js +3 -3
  177. package/dist/collection/components/illustration/request.js +1 -1
  178. package/dist/collection/components/illustration/utils.js +1 -1
  179. package/dist/collection/components/illustration/validate.js +1 -1
  180. package/dist/collection/components/img/img.js +1 -1
  181. package/dist/collection/components/input/input.js +9 -5
  182. package/dist/collection/components/input/input.js.map +1 -1
  183. package/dist/collection/components/input-group/input-group.js +1 -1
  184. package/dist/collection/components/item/item.js +2 -2
  185. package/dist/collection/components/label/label.js +1 -1
  186. package/dist/collection/components/list/list.js +1 -1
  187. package/dist/collection/components/modal/modal.js +6 -4
  188. package/dist/collection/components/modal/modal.js.map +1 -1
  189. package/dist/collection/components/navbar/navbar.js +2 -2
  190. package/dist/collection/components/navbar-item/navbar-item.js +1 -1
  191. package/dist/collection/components/phone-number-input/phone-number-input.js +27 -19
  192. package/dist/collection/components/phone-number-input/phone-number-input.js.map +1 -1
  193. package/dist/collection/components/plate-number/plate-number.js +6 -4
  194. package/dist/collection/components/plate-number/plate-number.js.map +1 -1
  195. package/dist/collection/components/profil-dropdown/profil-dropdown.js +1 -1
  196. package/dist/collection/components/progress/progress.js +1 -1
  197. package/dist/collection/components/progress-indicator-horizontal/progress-indicator-horizontal.js +1 -1
  198. package/dist/collection/components/progress-indicator-vertical/progress-indicator-vertical.js +1 -1
  199. package/dist/collection/components/progress-indicator-vertical-item/progress-indicator-vertical-item.js +1 -1
  200. package/dist/collection/components/progress-tracker/progress-tracker.js +1 -1
  201. package/dist/collection/components/progress-tracker-item/progress-tracker-item.js +1 -1
  202. package/dist/collection/components/radio/radio.js +2 -2
  203. package/dist/collection/components/radio-group/radio-group.js +1 -1
  204. package/dist/collection/components/range/range.js +2 -2
  205. package/dist/collection/components/rating/rating.js +2 -2
  206. package/dist/collection/components/row/row.js +1 -1
  207. package/dist/collection/components/segmented-button/segmented-button.js +1 -1
  208. package/dist/collection/components/segmented-button-bar/segmented-button-bar.js +2 -2
  209. package/dist/collection/components/segmented-buttons/segmented-buttons.js +11 -6
  210. package/dist/collection/components/segmented-buttons/segmented-buttons.js.map +1 -1
  211. package/dist/collection/components/select/select.css +7 -3
  212. package/dist/collection/components/select/select.js +3 -2
  213. package/dist/collection/components/select/select.js.map +1 -1
  214. package/dist/collection/components/select-filter/select-filter.js +4 -3
  215. package/dist/collection/components/select-filter/select-filter.js.map +1 -1
  216. package/dist/collection/components/skeleton/skeleton.js +1 -1
  217. package/dist/collection/components/spinner/spinner.js +1 -1
  218. package/dist/collection/components/switch/switch.js +4 -3
  219. package/dist/collection/components/switch/switch.js.map +1 -1
  220. package/dist/collection/components/tab/tab.js +3 -2
  221. package/dist/collection/components/tab/tab.js.map +1 -1
  222. package/dist/collection/components/tab-bar/tab-bar.js +2 -2
  223. package/dist/collection/components/tab-button/tab-button.js +1 -1
  224. package/dist/collection/components/table/table.js +1 -1
  225. package/dist/collection/components/tabs/tabs.js +11 -6
  226. package/dist/collection/components/tabs/tabs.js.map +1 -1
  227. package/dist/collection/components/tag/tag.js +2 -2
  228. package/dist/collection/components/text/text.js +1 -1
  229. package/dist/collection/components/textarea/textarea.js +5 -3
  230. package/dist/collection/components/textarea/textarea.js.map +1 -1
  231. package/dist/collection/components/toast/toast.js +8 -5
  232. package/dist/collection/components/toast/toast.js.map +1 -1
  233. package/dist/collection/components/toggle/toggle.js +4 -3
  234. package/dist/collection/components/toggle/toggle.js.map +1 -1
  235. package/dist/collection/components/toolbar/toolbar.js +1 -1
  236. package/dist/collection/components/toolbar-title/toolbar-title.js +1 -1
  237. package/dist/collection/components/toolbar-title-page/toolbar-title-page.js +1 -1
  238. package/dist/collection/components/tooltip/tooltip.js +5 -3
  239. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  240. package/dist/collection/global/app.js +1 -1
  241. package/dist/esm/app-0d73779c.js +7 -0
  242. package/dist/esm/app-0d73779c.js.map +1 -0
  243. package/dist/esm/{focus-visible-75a2ea2a.js → focus-visible-32bc70bb.js} +1 -1
  244. package/dist/esm/focus-visible-32bc70bb.js.map +1 -0
  245. package/dist/esm/{index-4b484f35.js → index-6f4c3286.js} +409 -190
  246. package/dist/esm/index-6f4c3286.js.map +1 -0
  247. package/dist/esm/{index-8f45025b.js → index-891decf5.js} +1 -1
  248. package/dist/esm/index-891decf5.js.map +1 -0
  249. package/dist/esm/index.js +3 -3
  250. package/dist/esm/loader.js +5 -30
  251. package/dist/esm/loader.js.map +1 -1
  252. package/dist/esm/polyfill-dc7c89b2.js +7 -0
  253. package/dist/esm/polyfill-dc7c89b2.js.map +1 -0
  254. package/dist/esm/road-accordion.entry.js +3 -3
  255. package/dist/esm/road-accordion.entry.js.map +1 -1
  256. package/dist/esm/road-alert.entry.js +1 -1
  257. package/dist/esm/road-alert.entry.js.map +1 -1
  258. package/dist/esm/road-area-code.entry.js +9 -13
  259. package/dist/esm/road-area-code.entry.js.map +1 -1
  260. package/dist/esm/road-autocomplete.entry.js +1 -1
  261. package/dist/esm/road-autocomplete.entry.js.map +1 -1
  262. package/dist/esm/road-avatar.entry.js +1 -1
  263. package/dist/esm/road-avatar.entry.js.map +1 -1
  264. package/dist/esm/road-badge_14.entry.js +5 -5
  265. package/dist/esm/road-badge_14.entry.js.map +1 -1
  266. package/dist/esm/road-banner.entry.js +2 -2
  267. package/dist/esm/road-banner.entry.js.map +1 -1
  268. package/dist/esm/road-button-floating.entry.js +2 -2
  269. package/dist/esm/road-button-floating.entry.js.map +1 -1
  270. package/dist/esm/road-card.entry.js +1 -1
  271. package/dist/esm/road-card.entry.js.map +1 -1
  272. package/dist/esm/road-carousel-item.entry.js +1 -1
  273. package/dist/esm/road-carousel-item.entry.js.map +1 -1
  274. package/dist/esm/road-carousel.entry.js +2 -2
  275. package/dist/esm/road-carousel.entry.js.map +1 -1
  276. package/dist/esm/road-checkbox.entry.js +3 -3
  277. package/dist/esm/road-checkbox.entry.js.map +1 -1
  278. package/dist/esm/road-chip.entry.js +3 -3
  279. package/dist/esm/road-chip.entry.js.map +1 -1
  280. package/dist/esm/road-collapse.entry.js +1 -1
  281. package/dist/esm/road-collapse.entry.js.map +1 -1
  282. package/dist/esm/road-dialog.entry.js +2 -2
  283. package/dist/esm/road-dialog.entry.js.map +1 -1
  284. package/dist/esm/road-dropdown.entry.js +1 -1
  285. package/dist/esm/road-dropdown.entry.js.map +1 -1
  286. package/dist/esm/road-duration.entry.js +1 -1
  287. package/dist/esm/road-duration.entry.js.map +1 -1
  288. package/dist/esm/road-flap.entry.js +1 -1
  289. package/dist/esm/road-flap.entry.js.map +1 -1
  290. package/dist/esm/road-global-navigation.entry.js +2 -2
  291. package/dist/esm/road-global-navigation.entry.js.map +1 -1
  292. package/dist/esm/road-illustration.entry.js +2 -2
  293. package/dist/esm/road-illustration.entry.js.map +1 -1
  294. package/dist/esm/road-img.entry.js +1 -1
  295. package/dist/esm/road-img.entry.js.map +1 -1
  296. package/dist/esm/road-modal.entry.js +2 -2
  297. package/dist/esm/road-modal.entry.js.map +1 -1
  298. package/dist/esm/road-navbar-item.entry.js +1 -1
  299. package/dist/esm/road-navbar-item.entry.js.map +1 -1
  300. package/dist/esm/road-navbar.entry.js +2 -2
  301. package/dist/esm/road-navbar.entry.js.map +1 -1
  302. package/dist/esm/road-phone-number-input.entry.js +22 -16
  303. package/dist/esm/road-phone-number-input.entry.js.map +1 -1
  304. package/dist/esm/road-plate-number.entry.js +2 -2
  305. package/dist/esm/road-plate-number.entry.js.map +1 -1
  306. package/dist/esm/road-profil-dropdown.entry.js +1 -1
  307. package/dist/esm/road-profil-dropdown.entry.js.map +1 -1
  308. package/dist/esm/road-progress-indicator-horizontal.entry.js +1 -1
  309. package/dist/esm/road-progress-indicator-horizontal.entry.js.map +1 -1
  310. package/dist/esm/road-progress-indicator-vertical-item.entry.js +1 -1
  311. package/dist/esm/road-progress-indicator-vertical-item.entry.js.map +1 -1
  312. package/dist/esm/road-progress-indicator-vertical.entry.js +1 -1
  313. package/dist/esm/road-progress-indicator-vertical.entry.js.map +1 -1
  314. package/dist/esm/road-progress-tracker-item.entry.js +1 -1
  315. package/dist/esm/road-progress-tracker-item.entry.js.map +1 -1
  316. package/dist/esm/road-progress-tracker.entry.js +1 -1
  317. package/dist/esm/road-progress-tracker.entry.js.map +1 -1
  318. package/dist/esm/road-progress.entry.js +1 -1
  319. package/dist/esm/road-progress.entry.js.map +1 -1
  320. package/dist/esm/road-radio-group.entry.js +1 -1
  321. package/dist/esm/road-radio-group.entry.js.map +1 -1
  322. package/dist/esm/road-radio.entry.js +2 -2
  323. package/dist/esm/road-radio.entry.js.map +1 -1
  324. package/dist/esm/road-range.entry.js +2 -2
  325. package/dist/esm/road-range.entry.js.map +1 -1
  326. package/dist/esm/road-rating.entry.js +2 -2
  327. package/dist/esm/road-rating.entry.js.map +1 -1
  328. package/dist/esm/road-segmented-button-bar.entry.js +2 -2
  329. package/dist/esm/road-segmented-button-bar.entry.js.map +1 -1
  330. package/dist/esm/road-segmented-button.entry.js +1 -1
  331. package/dist/esm/road-segmented-button.entry.js.map +1 -1
  332. package/dist/esm/road-segmented-buttons.entry.js +1 -1
  333. package/dist/esm/road-segmented-buttons.entry.js.map +1 -1
  334. package/dist/esm/road-select-filter.entry.js +1 -1
  335. package/dist/esm/road-select-filter.entry.js.map +1 -1
  336. package/dist/esm/road-select.entry.js +2 -2
  337. package/dist/esm/road-select.entry.js.map +1 -1
  338. package/dist/esm/road-skeleton.entry.js +1 -1
  339. package/dist/esm/road-skeleton.entry.js.map +1 -1
  340. package/dist/esm/road-spinner.entry.js +1 -1
  341. package/dist/esm/road-spinner.entry.js.map +1 -1
  342. package/dist/esm/road-switch.entry.js +2 -2
  343. package/dist/esm/road-switch.entry.js.map +1 -1
  344. package/dist/esm/road-tab-bar.entry.js +2 -2
  345. package/dist/esm/road-tab-bar.entry.js.map +1 -1
  346. package/dist/esm/road-tab-button.entry.js +1 -1
  347. package/dist/esm/road-tab-button.entry.js.map +1 -1
  348. package/dist/esm/road-tab.entry.js +1 -1
  349. package/dist/esm/road-tab.entry.js.map +1 -1
  350. package/dist/esm/road-table.entry.js +1 -1
  351. package/dist/esm/road-table.entry.js.map +1 -1
  352. package/dist/esm/road-tabs.entry.js +1 -1
  353. package/dist/esm/road-tabs.entry.js.map +1 -1
  354. package/dist/esm/road-tag.entry.js +2 -2
  355. package/dist/esm/road-tag.entry.js.map +1 -1
  356. package/dist/esm/road-text.entry.js +1 -1
  357. package/dist/esm/road-text.entry.js.map +1 -1
  358. package/dist/esm/road-textarea.entry.js +1 -1
  359. package/dist/esm/road-textarea.entry.js.map +1 -1
  360. package/dist/esm/road-toast.entry.js +2 -2
  361. package/dist/esm/road-toast.entry.js.map +1 -1
  362. package/dist/esm/road-toggle.entry.js +2 -2
  363. package/dist/esm/road-toggle.entry.js.map +1 -1
  364. package/dist/esm/road-toolbar-title-page.entry.js +1 -1
  365. package/dist/esm/road-toolbar-title-page.entry.js.map +1 -1
  366. package/dist/esm/road-toolbar-title.entry.js +1 -1
  367. package/dist/esm/road-toolbar-title.entry.js.map +1 -1
  368. package/dist/esm/road-tooltip.entry.js +1 -1
  369. package/dist/esm/road-tooltip.entry.js.map +1 -1
  370. package/dist/esm/roadtrip.js +8 -104
  371. package/dist/esm/roadtrip.js.map +1 -1
  372. package/dist/esm/{utils-ff713b72.js → utils-c701b3c5.js} +2 -2
  373. package/dist/esm/utils-c701b3c5.js.map +1 -0
  374. package/dist/esm/{utils-7f4988b4.js → utils-e14866b1.js} +2 -2
  375. package/dist/esm/utils-e14866b1.js.map +1 -0
  376. package/dist/html.html-data.json +71 -75
  377. package/dist/loader/index.d.ts +1 -1
  378. package/dist/roadtrip/index.esm.js +1 -1
  379. package/dist/roadtrip/p-02e5c9b9.js +2 -0
  380. package/dist/roadtrip/p-02e5c9b9.js.map +1 -0
  381. package/dist/roadtrip/{p-a32c7889.entry.js → p-07acda2d.entry.js} +2 -2
  382. package/dist/roadtrip/p-07acda2d.entry.js.map +1 -0
  383. package/dist/roadtrip/{p-c259efd7.js → p-08ff1520.js} +2 -2
  384. package/dist/roadtrip/p-08ff1520.js.map +1 -0
  385. package/dist/roadtrip/p-0d2e2bd5.entry.js +2 -0
  386. package/dist/roadtrip/p-0d2e2bd5.entry.js.map +1 -0
  387. package/dist/roadtrip/{p-73df1bef.entry.js → p-0d843c2f.entry.js} +2 -2
  388. package/dist/roadtrip/p-0d843c2f.entry.js.map +1 -0
  389. package/dist/roadtrip/{p-48596f8f.entry.js → p-0f707073.entry.js} +2 -2
  390. package/dist/roadtrip/p-0f707073.entry.js.map +1 -0
  391. package/dist/roadtrip/{p-ff52872b.entry.js → p-12deb278.entry.js} +2 -2
  392. package/dist/roadtrip/p-12deb278.entry.js.map +1 -0
  393. package/dist/roadtrip/p-16ae7b09.entry.js +2 -0
  394. package/dist/roadtrip/p-16ae7b09.entry.js.map +1 -0
  395. package/dist/roadtrip/p-1ccae339.js +2 -0
  396. package/dist/roadtrip/p-1ccae339.js.map +1 -0
  397. package/dist/roadtrip/{p-93030cec.entry.js → p-1dabbcf4.entry.js} +2 -2
  398. package/dist/roadtrip/p-1dabbcf4.entry.js.map +1 -0
  399. package/dist/roadtrip/{p-4993da93.entry.js → p-228cd0a9.entry.js} +2 -2
  400. package/dist/roadtrip/p-228cd0a9.entry.js.map +1 -0
  401. package/dist/roadtrip/{p-8f802447.entry.js → p-23b7a51a.entry.js} +2 -2
  402. package/dist/roadtrip/p-23b7a51a.entry.js.map +1 -0
  403. package/dist/roadtrip/{p-0bcf6d63.entry.js → p-259c14bf.entry.js} +2 -2
  404. package/dist/roadtrip/p-259c14bf.entry.js.map +1 -0
  405. package/dist/roadtrip/{p-cd2e8f0a.entry.js → p-29291680.entry.js} +2 -2
  406. package/dist/roadtrip/p-29291680.entry.js.map +1 -0
  407. package/dist/roadtrip/{p-35ffaa87.entry.js → p-2a663f88.entry.js} +2 -2
  408. package/dist/roadtrip/p-2a663f88.entry.js.map +1 -0
  409. package/dist/roadtrip/p-2a6add06.entry.js +2 -0
  410. package/dist/roadtrip/p-2a6add06.entry.js.map +1 -0
  411. package/dist/roadtrip/{p-a484102a.entry.js → p-2b8890d2.entry.js} +2 -2
  412. package/dist/roadtrip/p-2b8890d2.entry.js.map +1 -0
  413. package/dist/roadtrip/p-2c6c964c.entry.js +2 -0
  414. package/dist/roadtrip/p-2c6c964c.entry.js.map +1 -0
  415. package/dist/roadtrip/{p-66a9a6e8.entry.js → p-2d66c347.entry.js} +2 -2
  416. package/dist/roadtrip/p-2d66c347.entry.js.map +1 -0
  417. package/dist/roadtrip/{p-21c20210.entry.js → p-387df35b.entry.js} +2 -2
  418. package/dist/roadtrip/p-387df35b.entry.js.map +1 -0
  419. package/dist/roadtrip/p-3a1da784.entry.js +2 -0
  420. package/dist/roadtrip/p-3a1da784.entry.js.map +1 -0
  421. package/dist/roadtrip/{p-29ff2bcd.entry.js → p-3ae65dd3.entry.js} +2 -2
  422. package/dist/roadtrip/p-3ae65dd3.entry.js.map +1 -0
  423. package/dist/roadtrip/{p-1caeda78.entry.js → p-3ae697d0.entry.js} +2 -2
  424. package/dist/roadtrip/p-3ae697d0.entry.js.map +1 -0
  425. package/dist/roadtrip/{p-ebe3c26a.entry.js → p-3c0f880b.entry.js} +2 -2
  426. package/dist/roadtrip/p-3c0f880b.entry.js.map +1 -0
  427. package/dist/roadtrip/p-3f838866.entry.js +2 -0
  428. package/dist/roadtrip/{p-7589e2bb.entry.js.map → p-3f838866.entry.js.map} +1 -1
  429. package/dist/roadtrip/{p-7c4b331c.entry.js → p-446a0bdd.entry.js} +2 -2
  430. package/dist/roadtrip/p-446a0bdd.entry.js.map +1 -0
  431. package/dist/roadtrip/{p-1baffcc2.entry.js → p-4f719c90.entry.js} +2 -2
  432. package/dist/roadtrip/p-4f719c90.entry.js.map +1 -0
  433. package/dist/roadtrip/{p-b34aba1a.js → p-5b56c57a.js} +2 -2
  434. package/dist/roadtrip/p-5b56c57a.js.map +1 -0
  435. package/dist/roadtrip/{p-5f4779b1.entry.js → p-5ea7d274.entry.js} +2 -2
  436. package/dist/roadtrip/p-5ea7d274.entry.js.map +1 -0
  437. package/dist/roadtrip/{p-43bdbf0a.entry.js → p-5ee02be9.entry.js} +2 -2
  438. package/dist/roadtrip/p-5ee02be9.entry.js.map +1 -0
  439. package/dist/roadtrip/p-6475c1af.js +3 -0
  440. package/dist/roadtrip/p-6475c1af.js.map +1 -0
  441. package/dist/roadtrip/{p-37ab7c7f.js → p-73fe2357.js} +1 -1
  442. package/dist/roadtrip/p-73fe2357.js.map +1 -0
  443. package/dist/roadtrip/{p-e68a3ae5.entry.js → p-785bcbdf.entry.js} +2 -2
  444. package/dist/roadtrip/p-785bcbdf.entry.js.map +1 -0
  445. package/dist/roadtrip/{p-ee0196ea.entry.js → p-7ac13838.entry.js} +2 -2
  446. package/dist/roadtrip/p-7ac13838.entry.js.map +1 -0
  447. package/dist/roadtrip/{p-9432708d.entry.js → p-7d6a3545.entry.js} +2 -2
  448. package/dist/roadtrip/p-7d6a3545.entry.js.map +1 -0
  449. package/dist/roadtrip/{p-b7d3dc1a.entry.js → p-7efd47c7.entry.js} +2 -2
  450. package/dist/roadtrip/p-7efd47c7.entry.js.map +1 -0
  451. package/dist/roadtrip/p-80f116bd.entry.js +2 -0
  452. package/dist/roadtrip/p-80f116bd.entry.js.map +1 -0
  453. package/dist/roadtrip/{p-0d99a5e7.entry.js → p-8359b71f.entry.js} +2 -2
  454. package/dist/roadtrip/p-8359b71f.entry.js.map +1 -0
  455. package/dist/roadtrip/p-86219824.entry.js +2 -0
  456. package/dist/roadtrip/p-86219824.entry.js.map +1 -0
  457. package/dist/roadtrip/{p-5a4f9085.entry.js → p-8f19a8a3.entry.js} +2 -2
  458. package/dist/roadtrip/p-8f19a8a3.entry.js.map +1 -0
  459. package/dist/roadtrip/{p-b4dc061d.entry.js → p-9896b270.entry.js} +2 -2
  460. package/dist/roadtrip/p-9896b270.entry.js.map +1 -0
  461. package/dist/roadtrip/p-9c86d7cd.entry.js +2 -0
  462. package/dist/roadtrip/p-9c86d7cd.entry.js.map +1 -0
  463. package/dist/roadtrip/{p-3604d557.entry.js → p-a38be966.entry.js} +2 -2
  464. package/dist/roadtrip/p-a38be966.entry.js.map +1 -0
  465. package/dist/roadtrip/{p-2d01d350.entry.js → p-a5f7b2f1.entry.js} +2 -2
  466. package/dist/roadtrip/p-a5f7b2f1.entry.js.map +1 -0
  467. package/dist/roadtrip/{p-c8e9807b.entry.js → p-aac728cd.entry.js} +2 -2
  468. package/dist/roadtrip/p-aac728cd.entry.js.map +1 -0
  469. package/dist/roadtrip/{p-6598e293.entry.js → p-b1ba207d.entry.js} +2 -2
  470. package/dist/roadtrip/p-b1ba207d.entry.js.map +1 -0
  471. package/dist/roadtrip/{p-093973f5.entry.js → p-b2f014a6.entry.js} +2 -2
  472. package/dist/roadtrip/p-b2f014a6.entry.js.map +1 -0
  473. package/dist/roadtrip/{p-9419bdaf.entry.js → p-b555fa35.entry.js} +2 -2
  474. package/dist/roadtrip/p-b555fa35.entry.js.map +1 -0
  475. package/dist/roadtrip/{p-8e216f6a.entry.js → p-b8fb46b2.entry.js} +2 -2
  476. package/dist/roadtrip/p-b8fb46b2.entry.js.map +1 -0
  477. package/dist/roadtrip/p-bb6453af.entry.js +2 -0
  478. package/dist/roadtrip/p-bb6453af.entry.js.map +1 -0
  479. package/dist/roadtrip/{p-439e1124.entry.js → p-bcb6f48c.entry.js} +2 -2
  480. package/dist/roadtrip/p-bcb6f48c.entry.js.map +1 -0
  481. package/dist/roadtrip/{p-1974c993.entry.js → p-bf8336f1.entry.js} +2 -2
  482. package/dist/roadtrip/p-bf8336f1.entry.js.map +1 -0
  483. package/dist/roadtrip/{p-9036a1e6.entry.js → p-c29ce7c5.entry.js} +2 -2
  484. package/dist/roadtrip/p-c29ce7c5.entry.js.map +1 -0
  485. package/dist/roadtrip/p-ca775aae.entry.js +2 -0
  486. package/dist/roadtrip/p-ca775aae.entry.js.map +1 -0
  487. package/dist/roadtrip/p-d5d248f0.entry.js +2 -0
  488. package/dist/roadtrip/p-d5d248f0.entry.js.map +1 -0
  489. package/dist/roadtrip/{p-7ec2d494.js → p-d637bb99.js} +2 -2
  490. package/dist/roadtrip/p-d637bb99.js.map +1 -0
  491. package/dist/roadtrip/{p-4fd8c4db.entry.js → p-e2962889.entry.js} +2 -2
  492. package/dist/roadtrip/p-e2962889.entry.js.map +1 -0
  493. package/dist/roadtrip/p-e345ea12.entry.js +2 -0
  494. package/dist/roadtrip/p-e345ea12.entry.js.map +1 -0
  495. package/dist/roadtrip/{p-9dd06f01.entry.js → p-f13ca352.entry.js} +2 -2
  496. package/dist/roadtrip/p-f13ca352.entry.js.map +1 -0
  497. package/dist/roadtrip/{p-b259fee3.entry.js → p-f2bf9a16.entry.js} +2 -2
  498. package/dist/roadtrip/p-f2bf9a16.entry.js.map +1 -0
  499. package/dist/roadtrip/{p-cb254685.entry.js → p-f37fb739.entry.js} +2 -2
  500. package/dist/roadtrip/p-f37fb739.entry.js.map +1 -0
  501. package/dist/roadtrip/{p-650eb7fb.entry.js → p-fbc784aa.entry.js} +2 -2
  502. package/dist/roadtrip/p-fbc784aa.entry.js.map +1 -0
  503. package/dist/roadtrip/{p-91e92e99.entry.js → p-fcaa01f5.entry.js} +2 -2
  504. package/dist/roadtrip/p-fcaa01f5.entry.js.map +1 -0
  505. package/dist/roadtrip/{p-295a97d7.entry.js → p-fcf97829.entry.js} +2 -2
  506. package/dist/roadtrip/p-fcf97829.entry.js.map +1 -0
  507. package/dist/roadtrip/{p-ff473633.entry.js → p-fdf158a0.entry.js} +2 -2
  508. package/dist/roadtrip/p-fdf158a0.entry.js.map +1 -0
  509. package/dist/roadtrip/roadtrip.esm.js +1 -1
  510. package/dist/roadtrip/roadtrip.esm.js.map +1 -1
  511. package/dist/roadtrip/svg/vehicle-car-search-color.svg +1 -1
  512. package/dist/types/components/area-code/area-code.d.ts +4 -7
  513. package/dist/types/components.d.ts +571 -12
  514. package/dist/types/stencil-public-runtime.d.ts +38 -5
  515. package/hydrate/index.d.ts +6 -6
  516. package/hydrate/index.js +277 -216
  517. package/package.json +2 -2
  518. package/dist/cjs/app-d9e5adfa.js.map +0 -1
  519. package/dist/cjs/css-shim-68410b74.js +0 -8
  520. package/dist/cjs/css-shim-68410b74.js.map +0 -1
  521. package/dist/cjs/dom-225fc508.js +0 -77
  522. package/dist/cjs/dom-225fc508.js.map +0 -1
  523. package/dist/cjs/focus-visible-6771892b.js.map +0 -1
  524. package/dist/cjs/index-e4bd5b5f.js.map +0 -1
  525. package/dist/cjs/index-fd07207a.js.map +0 -1
  526. package/dist/cjs/polyfill-9453e116.js.map +0 -1
  527. package/dist/cjs/shadow-css-3c339190.js +0 -391
  528. package/dist/cjs/shadow-css-3c339190.js.map +0 -1
  529. package/dist/cjs/utils-5203d152.js.map +0 -1
  530. package/dist/cjs/utils-a450bad3.js.map +0 -1
  531. package/dist/esm/app-a8a6f02a.js +0 -7
  532. package/dist/esm/app-a8a6f02a.js.map +0 -1
  533. package/dist/esm/css-shim-fa54d62f.js +0 -6
  534. package/dist/esm/css-shim-fa54d62f.js.map +0 -1
  535. package/dist/esm/dom-8de30773.js +0 -75
  536. package/dist/esm/dom-8de30773.js.map +0 -1
  537. package/dist/esm/focus-visible-75a2ea2a.js.map +0 -1
  538. package/dist/esm/index-4b484f35.js.map +0 -1
  539. package/dist/esm/index-8f45025b.js.map +0 -1
  540. package/dist/esm/polyfill-ab80527b.js +0 -7
  541. package/dist/esm/polyfill-ab80527b.js.map +0 -1
  542. package/dist/esm/polyfills/css-shim.js +0 -1
  543. package/dist/esm/shadow-css-af2290df.js +0 -389
  544. package/dist/esm/shadow-css-af2290df.js.map +0 -1
  545. package/dist/esm/utils-7f4988b4.js.map +0 -1
  546. package/dist/esm/utils-ff713b72.js.map +0 -1
  547. package/dist/roadtrip/p-00cfef9b.js +0 -22
  548. package/dist/roadtrip/p-00cfef9b.js.map +0 -1
  549. package/dist/roadtrip/p-093973f5.entry.js.map +0 -1
  550. package/dist/roadtrip/p-0bcf6d63.entry.js.map +0 -1
  551. package/dist/roadtrip/p-0d99a5e7.entry.js.map +0 -1
  552. package/dist/roadtrip/p-125c777f.entry.js +0 -2
  553. package/dist/roadtrip/p-125c777f.entry.js.map +0 -1
  554. package/dist/roadtrip/p-16285738.entry.js +0 -2
  555. package/dist/roadtrip/p-16285738.entry.js.map +0 -1
  556. package/dist/roadtrip/p-170a82e1.entry.js +0 -2
  557. package/dist/roadtrip/p-170a82e1.entry.js.map +0 -1
  558. package/dist/roadtrip/p-1974c993.entry.js.map +0 -1
  559. package/dist/roadtrip/p-198f586b.entry.js +0 -2
  560. package/dist/roadtrip/p-198f586b.entry.js.map +0 -1
  561. package/dist/roadtrip/p-1baffcc2.entry.js.map +0 -1
  562. package/dist/roadtrip/p-1caeda78.entry.js.map +0 -1
  563. package/dist/roadtrip/p-214218dd.entry.js +0 -2
  564. package/dist/roadtrip/p-214218dd.entry.js.map +0 -1
  565. package/dist/roadtrip/p-21c20210.entry.js.map +0 -1
  566. package/dist/roadtrip/p-295a97d7.entry.js.map +0 -1
  567. package/dist/roadtrip/p-298a51a3.js +0 -2
  568. package/dist/roadtrip/p-298a51a3.js.map +0 -1
  569. package/dist/roadtrip/p-29ff2bcd.entry.js.map +0 -1
  570. package/dist/roadtrip/p-2d01d350.entry.js.map +0 -1
  571. package/dist/roadtrip/p-35ffaa87.entry.js.map +0 -1
  572. package/dist/roadtrip/p-3604d557.entry.js.map +0 -1
  573. package/dist/roadtrip/p-37ab7c7f.js.map +0 -1
  574. package/dist/roadtrip/p-38597e21.entry.js +0 -2
  575. package/dist/roadtrip/p-38597e21.entry.js.map +0 -1
  576. package/dist/roadtrip/p-439e1124.entry.js.map +0 -1
  577. package/dist/roadtrip/p-43bdbf0a.entry.js.map +0 -1
  578. package/dist/roadtrip/p-48596f8f.entry.js.map +0 -1
  579. package/dist/roadtrip/p-4993da93.entry.js.map +0 -1
  580. package/dist/roadtrip/p-4fd8c4db.entry.js.map +0 -1
  581. package/dist/roadtrip/p-50daca95.js +0 -13
  582. package/dist/roadtrip/p-50daca95.js.map +0 -1
  583. package/dist/roadtrip/p-564f4f31.entry.js +0 -2
  584. package/dist/roadtrip/p-564f4f31.entry.js.map +0 -1
  585. package/dist/roadtrip/p-5a4f9085.entry.js.map +0 -1
  586. package/dist/roadtrip/p-5f4779b1.entry.js.map +0 -1
  587. package/dist/roadtrip/p-62c563db.entry.js +0 -2
  588. package/dist/roadtrip/p-62c563db.entry.js.map +0 -1
  589. package/dist/roadtrip/p-650eb7fb.entry.js.map +0 -1
  590. package/dist/roadtrip/p-6598e293.entry.js.map +0 -1
  591. package/dist/roadtrip/p-66a9a6e8.entry.js.map +0 -1
  592. package/dist/roadtrip/p-73df1bef.entry.js.map +0 -1
  593. package/dist/roadtrip/p-7589e2bb.entry.js +0 -2
  594. package/dist/roadtrip/p-7c4b331c.entry.js.map +0 -1
  595. package/dist/roadtrip/p-7ec2d494.js.map +0 -1
  596. package/dist/roadtrip/p-8e216f6a.entry.js.map +0 -1
  597. package/dist/roadtrip/p-8f802447.entry.js.map +0 -1
  598. package/dist/roadtrip/p-9036a1e6.entry.js.map +0 -1
  599. package/dist/roadtrip/p-91e92e99.entry.js.map +0 -1
  600. package/dist/roadtrip/p-93030cec.entry.js.map +0 -1
  601. package/dist/roadtrip/p-9419bdaf.entry.js.map +0 -1
  602. package/dist/roadtrip/p-9432708d.entry.js.map +0 -1
  603. package/dist/roadtrip/p-9dd06f01.entry.js.map +0 -1
  604. package/dist/roadtrip/p-a32c7889.entry.js.map +0 -1
  605. package/dist/roadtrip/p-a484102a.entry.js.map +0 -1
  606. package/dist/roadtrip/p-abdbf6ac.js +0 -3
  607. package/dist/roadtrip/p-abdbf6ac.js.map +0 -1
  608. package/dist/roadtrip/p-b259fee3.entry.js.map +0 -1
  609. package/dist/roadtrip/p-b2cc540b.entry.js +0 -2
  610. package/dist/roadtrip/p-b2cc540b.entry.js.map +0 -1
  611. package/dist/roadtrip/p-b34aba1a.js.map +0 -1
  612. package/dist/roadtrip/p-b4dc061d.entry.js.map +0 -1
  613. package/dist/roadtrip/p-b5727aae.entry.js +0 -2
  614. package/dist/roadtrip/p-b5727aae.entry.js.map +0 -1
  615. package/dist/roadtrip/p-b7d3dc1a.entry.js.map +0 -1
  616. package/dist/roadtrip/p-c259efd7.js.map +0 -1
  617. package/dist/roadtrip/p-c56fe023.entry.js +0 -2
  618. package/dist/roadtrip/p-c56fe023.entry.js.map +0 -1
  619. package/dist/roadtrip/p-c8e9807b.entry.js.map +0 -1
  620. package/dist/roadtrip/p-cb254685.entry.js.map +0 -1
  621. package/dist/roadtrip/p-cd2e8f0a.entry.js.map +0 -1
  622. package/dist/roadtrip/p-e68a3ae5.entry.js.map +0 -1
  623. package/dist/roadtrip/p-e8c090a5.js +0 -2
  624. package/dist/roadtrip/p-e8c090a5.js.map +0 -1
  625. package/dist/roadtrip/p-ebe3c26a.entry.js.map +0 -1
  626. package/dist/roadtrip/p-ee0196ea.entry.js.map +0 -1
  627. package/dist/roadtrip/p-f671758f.entry.js +0 -2
  628. package/dist/roadtrip/p-f671758f.entry.js.map +0 -1
  629. package/dist/roadtrip/p-fa98320c.js +0 -2
  630. package/dist/roadtrip/p-fa98320c.js.map +0 -1
  631. package/dist/roadtrip/p-ff473633.entry.js.map +0 -1
  632. package/dist/roadtrip/p-ff52872b.entry.js.map +0 -1
@@ -1,4 +1,5 @@
1
1
  const NAMESPACE = 'roadtrip';
2
+ const BUILD = /* roadtrip */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: true, cmpWillRender: true, cmpWillUpdate: false, connectedCallback: true, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: true, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: false, hostListenerTargetDocument: true, hostListenerTargetParent: false, hostListenerTargetWindow: true, hotModuleReplacement: false, hydrateClientSide: true, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: true, mode: true, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: true, propNumber: true, propString: true, reflect: true, scoped: true, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: true, slotChildNodesFix: false, slotRelocation: true, state: true, style: true, svg: true, taskQueue: true, transformTagName: false, 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 };
2
3
 
3
4
  /**
4
5
  * Virtual DOM patching algorithm based on Snabbdom by
@@ -42,6 +43,13 @@ const HYDRATE_ID = 's-id';
42
43
  const HYDRATED_STYLE_ID = 'sty-id';
43
44
  const HYDRATE_CHILD_ID = 'c-id';
44
45
  const HYDRATED_CSS = '{visibility:hidden}.hydrated{visibility:inherit}';
46
+ /**
47
+ * Constant for styles to be globally applied to `slot-fb` elements for pseudo-slot behavior.
48
+ *
49
+ * Two cascading rules must be used instead of a `:not()` selector due to Stencil browser
50
+ * support as of Stencil v4.
51
+ */
52
+ const SLOT_FB_CSS = 'slot-fb{display:contents}slot-fb[hidden]{display:none}';
45
53
  const XLINK_NS = 'http://www.w3.org/1999/xlink';
46
54
  /**
47
55
  * Default style mode id
@@ -122,13 +130,13 @@ const h = (nodeName, vnodeData, ...children) => {
122
130
  };
123
131
  walk(children);
124
132
  if (vnodeData) {
125
- // normalize class / classname attributes
126
133
  if (vnodeData.key) {
127
134
  key = vnodeData.key;
128
135
  }
129
136
  if (vnodeData.name) {
130
137
  slotName = vnodeData.name;
131
138
  }
139
+ // normalize class / className attributes
132
140
  {
133
141
  const classData = vnodeData.className || vnodeData.class;
134
142
  if (classData) {
@@ -374,7 +382,7 @@ const clientHydrate = (parentVNode, childRenderNodes, slotNodes, shadowRootNodes
374
382
  }
375
383
  }
376
384
  else if (childVNode.$hostId$ === hostId) {
377
- // this comment node is specifcally for this host id
385
+ // this comment node is specifically for this host id
378
386
  if (childNodeType === SLOT_NODE_ID) {
379
387
  // `${SLOT_NODE_ID}.${hostId}.${nodeId}.${depth}.${index}.${slotName}`;
380
388
  childVNode.$tag$ = 'slot';
@@ -545,9 +553,9 @@ const registerStyle = (scopeId, cssText, allowCS) => {
545
553
  }
546
554
  styles.set(scopeId, style);
547
555
  };
548
- const addStyle = (styleContainerNode, cmpMeta, mode, hostElm) => {
556
+ const addStyle = (styleContainerNode, cmpMeta, mode) => {
549
557
  var _a;
550
- let scopeId = getScopeId(cmpMeta, mode);
558
+ const scopeId = getScopeId(cmpMeta, mode);
551
559
  const style = styles.get(scopeId);
552
560
  // if an element is NOT connected then getRootNode() will return the wrong root node
553
561
  // so the fallback is to always use the document for the root node in those cases
@@ -567,25 +575,8 @@ const addStyle = (styleContainerNode, cmpMeta, mode, hostElm) => {
567
575
  styleElm.innerHTML = style;
568
576
  }
569
577
  else {
570
- // TODO(STENCIL-659): Remove code implementing the CSS variable shim
571
- if (plt.$cssShim$) {
572
- // TODO(STENCIL-659): Remove code implementing the CSS variable shim
573
- styleElm = plt.$cssShim$.createHostStyle(hostElm, scopeId, style,
574
- // TODO(STENCIL-662): Remove code related to deprecated shadowDomShim field
575
- !!(cmpMeta.$flags$ & 10 /* CMP_FLAGS.needsScopedEncapsulation */));
576
- const newScopeId = styleElm['s-sc'];
577
- if (newScopeId) {
578
- scopeId = newScopeId;
579
- // we don't want to add this styleID to the appliedStyles Set
580
- // since the cssVarShim might need to apply several different
581
- // stylesheets for the same component
582
- appliedStyles = null;
583
- }
584
- }
585
- else {
586
- styleElm = doc.createElement('style');
587
- styleElm.innerHTML = style;
588
- }
578
+ styleElm = doc.createElement('style');
579
+ styleElm.innerHTML = style;
589
580
  // Apply CSP nonce to the style tag if it exists
590
581
  const nonce = (_a = plt.$nonce$) !== null && _a !== void 0 ? _a : queryNonceMetaTagContent(doc);
591
582
  if (nonce != null) {
@@ -593,6 +584,10 @@ const addStyle = (styleContainerNode, cmpMeta, mode, hostElm) => {
593
584
  }
594
585
  styleContainerNode.insertBefore(styleElm, styleContainerNode.querySelector('link'));
595
586
  }
587
+ // Add styles for `slot-fb` elements if we're using slots outside the Shadow DOM
588
+ if (cmpMeta.$flags$ & 4 /* CMP_FLAGS.hasSlotRelocation */) {
589
+ styleElm.innerHTML += SLOT_FB_CSS;
590
+ }
596
591
  if (appliedStyles) {
597
592
  appliedStyles.add(scopeId);
598
593
  }
@@ -609,8 +604,7 @@ const attachStyles = (hostRef) => {
609
604
  const elm = hostRef.$hostElement$;
610
605
  const flags = cmpMeta.$flags$;
611
606
  const endAttachStyles = createTime('attachStyles', cmpMeta.$tagName$);
612
- const scopeId = addStyle(supportsShadow && elm.shadowRoot ? elm.shadowRoot : elm.getRootNode(), cmpMeta, hostRef.$modeName$, elm);
613
- // TODO(STENCIL-662): Remove code related to deprecated shadowDomShim field
607
+ const scopeId = addStyle(elm.shadowRoot ? elm.shadowRoot : elm.getRootNode(), cmpMeta, hostRef.$modeName$);
614
608
  if (flags & 10 /* CMP_FLAGS.needsScopedEncapsulation */) {
615
609
  // only required when we're NOT using native shadow dom (slot)
616
610
  // or this browser doesn't support native shadow dom
@@ -637,6 +631,21 @@ const convertScopedToShadow = (css) => css.replace(/\/\*!@([^\/]+)\*\/[^\{]+\{/g
637
631
  *
638
632
  * Modified for Stencil's compiler and vdom
639
633
  */
634
+ /**
635
+ * When running a VDom render set properties present on a VDom node onto the
636
+ * corresponding HTML element.
637
+ *
638
+ * Note that this function has special functionality for the `class`,
639
+ * `style`, `key`, and `ref` attributes, as well as event handlers (like
640
+ * `onClick`, etc). All others are just passed through as-is.
641
+ *
642
+ * @param elm the HTMLElement onto which attributes should be set
643
+ * @param memberName the name of the attribute to set
644
+ * @param oldValue the old value for the attribute
645
+ * @param newValue the new value for the attribute
646
+ * @param isSvg whether we're in an svg context or not
647
+ * @param flags bitflags for Vdom variables
648
+ */
640
649
  const setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
641
650
  if (oldValue !== newValue) {
642
651
  let isProp = isMemberInElement(elm, memberName);
@@ -713,11 +722,19 @@ const setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
713
722
  // except for the first character, we keep the event name case
714
723
  memberName = ln[2] + memberName.slice(3);
715
724
  }
716
- if (oldValue) {
717
- plt.rel(elm, memberName, oldValue, false);
718
- }
719
- if (newValue) {
720
- plt.ael(elm, memberName, newValue, false);
725
+ if (oldValue || newValue) {
726
+ // Need to account for "capture" events.
727
+ // If the event name ends with "Capture", we'll update the name to remove
728
+ // the "Capture" suffix and make sure the event listener is setup to handle the capture event.
729
+ const capture = memberName.endsWith(CAPTURE_EVENT_SUFFIX);
730
+ // Make sure we only replace the last instance of "Capture"
731
+ memberName = memberName.replace(CAPTURE_EVENT_REGEX, '');
732
+ if (oldValue) {
733
+ plt.rel(elm, memberName, oldValue, capture);
734
+ }
735
+ if (newValue) {
736
+ plt.ael(elm, memberName, newValue, capture);
737
+ }
721
738
  }
722
739
  }
723
740
  else {
@@ -779,6 +796,8 @@ const setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
779
796
  };
780
797
  const parseClassListRegex = /\s/;
781
798
  const parseClassList = (value) => (!value ? [] : value.split(parseClassListRegex));
799
+ const CAPTURE_EVENT_SUFFIX = 'Capture';
800
+ const CAPTURE_EVENT_REGEX = new RegExp(CAPTURE_EVENT_SUFFIX + '$');
782
801
  const updateElement = (oldVnode, newVnode, isSvgMode, memberName) => {
783
802
  // if the element passed in is a shadow root, which is a document fragment
784
803
  // then we want to be adding attrs/props to the shadow root's "host" element
@@ -812,6 +831,7 @@ const updateElement = (oldVnode, newVnode, isSvgMode, memberName) => {
812
831
  * @returns the newly created node
813
832
  */
814
833
  const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
834
+ var _a;
815
835
  // tslint:disable-next-line: prefer-const
816
836
  const newVNode = newParentVNode.$children$[childIndex];
817
837
  let i = 0;
@@ -890,6 +910,8 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
890
910
  if (newVNode.$flags$ & (2 /* VNODE_FLAGS.isSlotFallback */ | 1 /* VNODE_FLAGS.isSlotReference */)) {
891
911
  // remember the content reference comment
892
912
  elm['s-sr'] = true;
913
+ // Persist the name of the slot that this slot was going to be projected into.
914
+ elm['s-fs'] = (_a = newVNode.$attrs$) === null || _a === void 0 ? void 0 : _a.slot;
893
915
  // remember the content reference comment
894
916
  elm['s-cr'] = contentRef;
895
917
  // remember the slot name, or empty string for default slot
@@ -906,6 +928,7 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
906
928
  return elm;
907
929
  };
908
930
  const putBackInOriginalLocation = (parentElm, recursive) => {
931
+ var _a;
909
932
  plt.$flags$ |= 1 /* PLATFORM_FLAGS.isTmpDisconnected */;
910
933
  const oldSlotChildNodes = parentElm.childNodes;
911
934
  for (let i = oldSlotChildNodes.length - 1; i >= 0; i--) {
@@ -918,9 +941,17 @@ const putBackInOriginalLocation = (parentElm, recursive) => {
918
941
  parentReferenceNode(childNode).insertBefore(childNode, referenceNode(childNode));
919
942
  // remove the old original location comment entirely
920
943
  // later on the patch function will know what to do
921
- // and move this to the correct spot in need be
944
+ // and move this to the correct spot if need be
922
945
  childNode['s-ol'].remove();
923
946
  childNode['s-ol'] = undefined;
947
+ // Reset so we can correctly move the node around again.
948
+ childNode['s-sh'] = undefined;
949
+ // When putting an element node back in its original location,
950
+ // we need to reset the `slot` attribute back to the value it originally had
951
+ // so we can correctly relocate it again in the future
952
+ if (childNode.nodeType === 1 /* NODE_TYPE.ElementNode */) {
953
+ childNode.setAttribute('slot', (_a = childNode['s-sn']) !== null && _a !== void 0 ? _a : '');
954
+ }
924
955
  checkSlotRelocate = true;
925
956
  }
926
957
  if (recursive) {
@@ -1344,42 +1375,53 @@ const patch = (oldVNode, newVNode) => {
1344
1375
  elm.data = text;
1345
1376
  }
1346
1377
  };
1378
+ /**
1379
+ * Adjust the `.hidden` property as-needed on any nodes in a DOM subtree which
1380
+ * are slot fallbacks nodes.
1381
+ *
1382
+ * A slot fallback node should be visible by default. Then, it should be
1383
+ * conditionally hidden if:
1384
+ *
1385
+ * - it has a sibling with a `slot` property set to its slot name or if
1386
+ * - it is a default fallback slot node, in which case we hide if it has any
1387
+ * content
1388
+ *
1389
+ * @param elm the element of interest
1390
+ */
1347
1391
  const updateFallbackSlotVisibility = (elm) => {
1348
- // tslint:disable-next-line: prefer-const
1349
1392
  const childNodes = elm.childNodes;
1350
- let childNode;
1351
- let i;
1352
- let ilen;
1353
- let j;
1354
- let slotNameAttr;
1355
- let nodeType;
1356
- for (i = 0, ilen = childNodes.length; i < ilen; i++) {
1357
- childNode = childNodes[i];
1393
+ for (const childNode of childNodes) {
1358
1394
  if (childNode.nodeType === 1 /* NODE_TYPE.ElementNode */) {
1359
1395
  if (childNode['s-sr']) {
1360
1396
  // this is a slot fallback node
1361
1397
  // get the slot name for this slot reference node
1362
- slotNameAttr = childNode['s-sn'];
1398
+ const slotName = childNode['s-sn'];
1363
1399
  // by default always show a fallback slot node
1364
1400
  // then hide it if there are other slots in the light dom
1365
1401
  childNode.hidden = false;
1366
- for (j = 0; j < ilen; j++) {
1367
- nodeType = childNodes[j].nodeType;
1368
- if (childNodes[j]['s-hn'] !== childNode['s-hn'] || slotNameAttr !== '') {
1369
- // this sibling node is from a different component OR is a named fallback slot node
1370
- if (nodeType === 1 /* NODE_TYPE.ElementNode */ && slotNameAttr === childNodes[j].getAttribute('slot')) {
1371
- childNode.hidden = true;
1372
- break;
1402
+ // we need to check all of its sibling nodes in order to see if
1403
+ // `childNode` should be hidden
1404
+ for (const siblingNode of childNodes) {
1405
+ // Don't check the node against itself
1406
+ if (siblingNode !== childNode) {
1407
+ if (siblingNode['s-hn'] !== childNode['s-hn'] || slotName !== '') {
1408
+ // this sibling node is from a different component OR is a named
1409
+ // fallback slot node
1410
+ if (siblingNode.nodeType === 1 /* NODE_TYPE.ElementNode */ &&
1411
+ (slotName === siblingNode.getAttribute('slot') || slotName === siblingNode['s-sn'])) {
1412
+ childNode.hidden = true;
1413
+ break;
1414
+ }
1373
1415
  }
1374
- }
1375
- else {
1376
- // this is a default fallback slot node
1377
- // any element or text node (with content)
1378
- // should hide the default fallback slot node
1379
- if (nodeType === 1 /* NODE_TYPE.ElementNode */ ||
1380
- (nodeType === 3 /* NODE_TYPE.TextNode */ && childNodes[j].textContent.trim() !== '')) {
1381
- childNode.hidden = true;
1382
- break;
1416
+ else {
1417
+ // this is a default fallback slot node
1418
+ // any element or text node (with content)
1419
+ // should hide the default fallback slot node
1420
+ if (siblingNode.nodeType === 1 /* NODE_TYPE.ElementNode */ ||
1421
+ (siblingNode.nodeType === 3 /* NODE_TYPE.TextNode */ && siblingNode.textContent.trim() !== '')) {
1422
+ childNode.hidden = true;
1423
+ break;
1424
+ }
1383
1425
  }
1384
1426
  }
1385
1427
  }
@@ -1389,45 +1431,67 @@ const updateFallbackSlotVisibility = (elm) => {
1389
1431
  }
1390
1432
  }
1391
1433
  };
1434
+ /**
1435
+ * Component-global information about nodes which are either currently being
1436
+ * relocated or will be shortly.
1437
+ */
1392
1438
  const relocateNodes = [];
1393
- const relocateSlotContent = (elm) => {
1439
+ /**
1440
+ * Mark the contents of a slot for relocation via adding references to them to
1441
+ * the {@link relocateNodes} data structure. The actual work of relocating them
1442
+ * will then be handled in {@link renderVdom}.
1443
+ *
1444
+ * @param elm a render node whose child nodes need to be relocated
1445
+ */
1446
+ const markSlotContentForRelocation = (elm) => {
1394
1447
  // tslint:disable-next-line: prefer-const
1395
- let childNode;
1396
1448
  let node;
1397
1449
  let hostContentNodes;
1398
- let slotNameAttr;
1399
- let relocateNodeData;
1400
1450
  let j;
1401
- let i = 0;
1402
- const childNodes = elm.childNodes;
1403
- const ilen = childNodes.length;
1404
- for (; i < ilen; i++) {
1405
- childNode = childNodes[i];
1451
+ for (const childNode of elm.childNodes) {
1452
+ // we need to find child nodes which are slot references so we can then try
1453
+ // to match them up with nodes that need to be relocated
1406
1454
  if (childNode['s-sr'] && (node = childNode['s-cr']) && node.parentNode) {
1407
- // first got the content reference comment node
1408
- // then we got it's parent, which is where all the host content is in now
1455
+ // first get the content reference comment node ('s-cr'), then we get
1456
+ // its parent, which is where all the host content is now
1409
1457
  hostContentNodes = node.parentNode.childNodes;
1410
- slotNameAttr = childNode['s-sn'];
1458
+ const slotName = childNode['s-sn'];
1459
+ // iterate through all the nodes under the location where the host was
1460
+ // originally rendered
1411
1461
  for (j = hostContentNodes.length - 1; j >= 0; j--) {
1412
1462
  node = hostContentNodes[j];
1413
- if (!node['s-cn'] && !node['s-nr'] && node['s-hn'] !== childNode['s-hn']) {
1414
- // let's do some relocating to its new home
1415
- // but never relocate a content reference node
1416
- // that is suppose to always represent the original content location
1417
- if (isNodeLocatedInSlot(node, slotNameAttr)) {
1463
+ // check that the node is not a content reference node or a node
1464
+ // reference and then check that the host name does not match that of
1465
+ // childNode.
1466
+ // In addition, check that the slot either has not already been relocated, or
1467
+ // that its current location's host is not childNode's host. This is essentially
1468
+ // a check so that we don't try to relocate (and then hide) a node that is already
1469
+ // where it should be.
1470
+ if (!node['s-cn'] &&
1471
+ !node['s-nr'] &&
1472
+ node['s-hn'] !== childNode['s-hn'] &&
1473
+ (!BUILD.experimentalSlotFixes )) {
1474
+ // if `node` is located in the slot that `childNode` refers to (via the
1475
+ // `'s-sn'` property) then we need to relocate it from it's current spot
1476
+ // (under the host element parent) to the right slot location
1477
+ if (isNodeLocatedInSlot(node, slotName)) {
1418
1478
  // it's possible we've already decided to relocate this node
1419
- relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
1479
+ let relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
1420
1480
  // made some changes to slots
1421
1481
  // let's make sure we also double check
1422
1482
  // fallbacks are correctly hidden or shown
1423
1483
  checkSlotFallbackVisibility = true;
1424
- node['s-sn'] = node['s-sn'] || slotNameAttr;
1484
+ // ensure that the slot-name attr is correct
1485
+ node['s-sn'] = node['s-sn'] || slotName;
1425
1486
  if (relocateNodeData) {
1426
- // previously we never found a slot home for this node
1427
- // but turns out we did, so let's remember it now
1487
+ relocateNodeData.$nodeToRelocate$['s-sh'] = childNode['s-hn'];
1488
+ // we marked this node for relocation previously but didn't find
1489
+ // out the slot reference node to which it needs to be relocated
1490
+ // so write it down now!
1428
1491
  relocateNodeData.$slotRefNode$ = childNode;
1429
1492
  }
1430
1493
  else {
1494
+ node['s-sh'] = childNode['s-hn'];
1431
1495
  // add to our list of nodes to relocate
1432
1496
  relocateNodes.push({
1433
1497
  $slotRefNode$: childNode,
@@ -1446,8 +1510,10 @@ const relocateSlotContent = (elm) => {
1446
1510
  }
1447
1511
  }
1448
1512
  else if (!relocateNodes.some((r) => r.$nodeToRelocate$ === node)) {
1449
- // so far this element does not have a slot home, not setting slotRefNode on purpose
1450
- // if we never find a home for this element then we'll need to hide it
1513
+ // the node is not found within the slot (`childNode`) that we're
1514
+ // currently looking at, so we stick it into `relocateNodes` to
1515
+ // handle later. If we never find a home for this element then
1516
+ // we'll need to hide it
1451
1517
  relocateNodes.push({
1452
1518
  $nodeToRelocate$: node,
1453
1519
  });
@@ -1455,30 +1521,41 @@ const relocateSlotContent = (elm) => {
1455
1521
  }
1456
1522
  }
1457
1523
  }
1524
+ // if we're dealing with any type of element (capable of itself being a
1525
+ // slot reference or containing one) then we recur
1458
1526
  if (childNode.nodeType === 1 /* NODE_TYPE.ElementNode */) {
1459
- relocateSlotContent(childNode);
1527
+ markSlotContentForRelocation(childNode);
1460
1528
  }
1461
1529
  }
1462
1530
  };
1463
- const isNodeLocatedInSlot = (nodeToRelocate, slotNameAttr) => {
1531
+ /**
1532
+ * Check whether a node is located in a given named slot.
1533
+ *
1534
+ * @param nodeToRelocate the node of interest
1535
+ * @param slotName the slot name to check
1536
+ * @returns whether the node is located in the slot or not
1537
+ */
1538
+ const isNodeLocatedInSlot = (nodeToRelocate, slotName) => {
1464
1539
  if (nodeToRelocate.nodeType === 1 /* NODE_TYPE.ElementNode */) {
1465
- if (nodeToRelocate.getAttribute('slot') === null && slotNameAttr === '') {
1540
+ if (nodeToRelocate.getAttribute('slot') === null && slotName === '') {
1541
+ // if the node doesn't have a slot attribute, and the slot we're checking
1542
+ // is not a named slot, then we assume the node should be within the slot
1466
1543
  return true;
1467
1544
  }
1468
- if (nodeToRelocate.getAttribute('slot') === slotNameAttr) {
1545
+ if (nodeToRelocate.getAttribute('slot') === slotName) {
1469
1546
  return true;
1470
1547
  }
1471
1548
  return false;
1472
1549
  }
1473
- if (nodeToRelocate['s-sn'] === slotNameAttr) {
1550
+ if (nodeToRelocate['s-sn'] === slotName) {
1474
1551
  return true;
1475
1552
  }
1476
- return slotNameAttr === '';
1553
+ return slotName === '';
1477
1554
  };
1478
1555
  /**
1479
- * 'Nullify' any VDom `ref` callbacks on a VDom node or its children by
1480
- * calling them with `null`. This signals that the DOM element corresponding to
1481
- * the VDom node has been removed from the DOM.
1556
+ * 'Nullify' any VDom `ref` callbacks on a VDom node or its children by calling
1557
+ * them with `null`. This signals that the DOM element corresponding to the VDom
1558
+ * node has been removed from the DOM.
1482
1559
  *
1483
1560
  * @param vNode a virtual DOM node
1484
1561
  */
@@ -1499,17 +1576,45 @@ const nullifyVNodeRefs = (vNode) => {
1499
1576
  * @param hostRef data needed to root and render the virtual DOM tree, such as
1500
1577
  * the DOM node into which it should be rendered.
1501
1578
  * @param renderFnResults the virtual DOM nodes to be rendered
1579
+ * @param isInitialLoad whether or not this is the first call after page load
1502
1580
  */
1503
- const renderVdom = (hostRef, renderFnResults) => {
1581
+ const renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
1582
+ var _a, _b;
1504
1583
  const hostElm = hostRef.$hostElement$;
1505
1584
  const cmpMeta = hostRef.$cmpMeta$;
1506
1585
  const oldVNode = hostRef.$vnode$ || newVNode(null, null);
1586
+ // if `renderFnResults` is a Host node then we can use it directly. If not,
1587
+ // we need to call `h` again to wrap the children of our component in a
1588
+ // 'dummy' Host node (well, an empty vnode) since `renderVdom` assumes
1589
+ // implicitly that the top-level vdom node is 1) an only child and 2)
1590
+ // contains attrs that need to be set on the host element.
1507
1591
  const rootVnode = isHost(renderFnResults) ? renderFnResults : h(null, null, renderFnResults);
1508
1592
  hostTagName = hostElm.tagName;
1509
1593
  if (cmpMeta.$attrsToReflect$) {
1510
1594
  rootVnode.$attrs$ = rootVnode.$attrs$ || {};
1511
1595
  cmpMeta.$attrsToReflect$.map(([propName, attribute]) => (rootVnode.$attrs$[attribute] = hostElm[propName]));
1512
1596
  }
1597
+ // On the first render and *only* on the first render we want to check for
1598
+ // any attributes set on the host element which are also set on the vdom
1599
+ // node. If we find them, we override the value on the VDom node attrs with
1600
+ // the value from the host element, which allows developers building apps
1601
+ // with Stencil components to override e.g. the `role` attribute on a
1602
+ // component even if it's already set on the `Host`.
1603
+ if (isInitialLoad && rootVnode.$attrs$) {
1604
+ for (const key of Object.keys(rootVnode.$attrs$)) {
1605
+ // We have a special implementation in `setAccessor` for `style` and
1606
+ // `class` which reconciles values coming from the VDom with values
1607
+ // already present on the DOM element, so we don't want to override those
1608
+ // attributes on the VDom tree with values from the host element if they
1609
+ // are present.
1610
+ //
1611
+ // Likewise, `ref` and `key` are special internal values for the Stencil
1612
+ // runtime and we don't want to override those either.
1613
+ if (hostElm.hasAttribute(key) && !['key', 'ref', 'style', 'class'].includes(key)) {
1614
+ rootVnode.$attrs$[key] = hostElm[key];
1615
+ }
1616
+ }
1617
+ }
1513
1618
  rootVnode.$tag$ = null;
1514
1619
  rootVnode.$flags$ |= 4 /* VNODE_FLAGS.isHost */;
1515
1620
  hostRef.$vnode$ = rootVnode;
@@ -1519,7 +1624,7 @@ const renderVdom = (hostRef, renderFnResults) => {
1519
1624
  }
1520
1625
  {
1521
1626
  contentRef = hostElm['s-cr'];
1522
- useNativeShadowDom = supportsShadow && (cmpMeta.$flags$ & 1 /* CMP_FLAGS.shadowDomEncapsulation */) !== 0;
1627
+ useNativeShadowDom = (cmpMeta.$flags$ & 1 /* CMP_FLAGS.shadowDomEncapsulation */) !== 0;
1523
1628
  // always reset
1524
1629
  checkSlotFallbackVisibility = false;
1525
1630
  }
@@ -1530,43 +1635,48 @@ const renderVdom = (hostRef, renderFnResults) => {
1530
1635
  // the disconnectCallback from working
1531
1636
  plt.$flags$ |= 1 /* PLATFORM_FLAGS.isTmpDisconnected */;
1532
1637
  if (checkSlotRelocate) {
1533
- relocateSlotContent(rootVnode.$elm$);
1534
- let relocateData;
1535
- let nodeToRelocate;
1536
- let orgLocationNode;
1537
- let parentNodeRef;
1538
- let insertBeforeNode;
1539
- let refNode;
1540
- let i = 0;
1541
- for (; i < relocateNodes.length; i++) {
1542
- relocateData = relocateNodes[i];
1543
- nodeToRelocate = relocateData.$nodeToRelocate$;
1638
+ markSlotContentForRelocation(rootVnode.$elm$);
1639
+ for (const relocateData of relocateNodes) {
1640
+ const nodeToRelocate = relocateData.$nodeToRelocate$;
1544
1641
  if (!nodeToRelocate['s-ol']) {
1545
1642
  // add a reference node marking this node's original location
1546
1643
  // keep a reference to this node for later lookups
1547
- orgLocationNode =
1548
- doc.createTextNode('');
1644
+ const orgLocationNode = doc.createTextNode('');
1549
1645
  orgLocationNode['s-nr'] = nodeToRelocate;
1550
1646
  nodeToRelocate.parentNode.insertBefore((nodeToRelocate['s-ol'] = orgLocationNode), nodeToRelocate);
1551
1647
  }
1552
1648
  }
1553
- for (i = 0; i < relocateNodes.length; i++) {
1554
- relocateData = relocateNodes[i];
1555
- nodeToRelocate = relocateData.$nodeToRelocate$;
1556
- if (relocateData.$slotRefNode$) {
1557
- // by default we're just going to insert it directly
1558
- // after the slot reference node
1559
- parentNodeRef = relocateData.$slotRefNode$.parentNode;
1560
- insertBeforeNode = relocateData.$slotRefNode$.nextSibling;
1561
- orgLocationNode = nodeToRelocate['s-ol'];
1562
- while ((orgLocationNode = orgLocationNode.previousSibling)) {
1563
- refNode = orgLocationNode['s-nr'];
1564
- if (refNode && refNode['s-sn'] === nodeToRelocate['s-sn'] && parentNodeRef === refNode.parentNode) {
1565
- refNode = refNode.nextSibling;
1566
- if (!refNode || !refNode['s-nr']) {
1567
- insertBeforeNode = refNode;
1568
- break;
1649
+ for (const relocateData of relocateNodes) {
1650
+ const nodeToRelocate = relocateData.$nodeToRelocate$;
1651
+ const slotRefNode = relocateData.$slotRefNode$;
1652
+ if (slotRefNode) {
1653
+ const parentNodeRef = slotRefNode.parentNode;
1654
+ // When determining where to insert content, the most simple case would be
1655
+ // to relocate the node immediately following the slot reference node. We do this
1656
+ // by getting a reference to the node immediately following the slot reference node
1657
+ // since we will use `insertBefore` to manipulate the DOM.
1658
+ //
1659
+ // If there is no node immediately following the slot reference node, then we will just
1660
+ // end up appending the node as the last child of the parent.
1661
+ let insertBeforeNode = slotRefNode.nextSibling;
1662
+ // If the node we're currently planning on inserting the new node before is an element,
1663
+ // we need to do some additional checks to make sure we're inserting the node in the correct order.
1664
+ // The use case here would be that we have multiple nodes being relocated to the same slot. So, we want
1665
+ // to make sure they get inserted into their new how in the same order they were declared in their original location.
1666
+ //
1667
+ // TODO(STENCIL-914): Remove `experimentalSlotFixes` check
1668
+ {
1669
+ let orgLocationNode = (_a = nodeToRelocate['s-ol']) === null || _a === void 0 ? void 0 : _a.previousSibling;
1670
+ while (orgLocationNode) {
1671
+ let refNode = (_b = orgLocationNode['s-nr']) !== null && _b !== void 0 ? _b : null;
1672
+ if (refNode && refNode['s-sn'] === nodeToRelocate['s-sn'] && parentNodeRef === refNode.parentNode) {
1673
+ refNode = refNode.nextSibling;
1674
+ if (!refNode || !refNode['s-nr']) {
1675
+ insertBeforeNode = refNode;
1676
+ break;
1677
+ }
1569
1678
  }
1679
+ orgLocationNode = orgLocationNode.previousSibling;
1570
1680
  }
1571
1681
  }
1572
1682
  if ((!insertBeforeNode && parentNodeRef !== nodeToRelocate.parentNode) ||
@@ -1576,10 +1686,13 @@ const renderVdom = (hostRef, renderFnResults) => {
1576
1686
  // has a different next sibling or parent relocated
1577
1687
  if (nodeToRelocate !== insertBeforeNode) {
1578
1688
  if (!nodeToRelocate['s-hn'] && nodeToRelocate['s-ol']) {
1579
- // probably a component in the index.html that doesn't have it's hostname set
1689
+ // probably a component in the index.html that doesn't have its hostname set
1580
1690
  nodeToRelocate['s-hn'] = nodeToRelocate['s-ol'].parentNode.nodeName;
1581
1691
  }
1582
- // add it back to the dom but in its new home
1692
+ // Add it back to the dom but in its new home
1693
+ // If we get to this point and `insertBeforeNode` is `null`, that means
1694
+ // we're just going to append the node as the last child of the parent. Passing
1695
+ // `null` as the second arg here will trigger that behavior.
1583
1696
  parentNodeRef.insertBefore(nodeToRelocate, insertBeforeNode);
1584
1697
  }
1585
1698
  }
@@ -1700,6 +1813,16 @@ const enqueue = (maybePromise, fn) => isPromisey(maybePromise) ? maybePromise.th
1700
1813
  */
1701
1814
  const isPromisey = (maybePromise) => maybePromise instanceof Promise ||
1702
1815
  (maybePromise && maybePromise.then && typeof maybePromise.then === 'function');
1816
+ /**
1817
+ * Update a component given reference to its host elements and so on.
1818
+ *
1819
+ * @param hostRef an object containing references to the element's host node,
1820
+ * VDom nodes, and other metadata
1821
+ * @param instance a reference to the underlying host element where it will be
1822
+ * rendered
1823
+ * @param isInitialLoad whether or not this function is being called as part of
1824
+ * the first render cycle
1825
+ */
1703
1826
  const updateComponent = async (hostRef, instance, isInitialLoad) => {
1704
1827
  var _a;
1705
1828
  const elm = hostRef.$hostElement$;
@@ -1711,12 +1834,7 @@ const updateComponent = async (hostRef, instance, isInitialLoad) => {
1711
1834
  }
1712
1835
  const endRender = createTime('render', hostRef.$cmpMeta$.$tagName$);
1713
1836
  {
1714
- callRender(hostRef, instance);
1715
- }
1716
- // TODO(STENCIL-659): Remove code implementing the CSS variable shim
1717
- if (plt.$cssShim$) {
1718
- // TODO(STENCIL-659): Remove code implementing the CSS variable shim
1719
- plt.$cssShim$.updateHost(elm);
1837
+ callRender(hostRef, instance, elm, isInitialLoad);
1720
1838
  }
1721
1839
  if (rc) {
1722
1840
  // ok, so turns out there are some child host elements
@@ -1740,8 +1858,24 @@ const updateComponent = async (hostRef, instance, isInitialLoad) => {
1740
1858
  }
1741
1859
  }
1742
1860
  };
1743
- const callRender = (hostRef, instance, elm) => {
1861
+ /**
1862
+ * Handle making the call to the VDom renderer with the proper context given
1863
+ * various build variables
1864
+ *
1865
+ * @param hostRef an object containing references to the element's host node,
1866
+ * VDom nodes, and other metadata
1867
+ * @param instance a reference to the underlying host element where it will be
1868
+ * rendered
1869
+ * @param elm the Host element for the component
1870
+ * @param isInitialLoad whether or not this function is being called as part of
1871
+ * @returns an empty promise
1872
+ */
1873
+ const callRender = (hostRef, instance, elm, isInitialLoad) => {
1744
1874
  try {
1875
+ /**
1876
+ * minification optimization: `allRenderFn` is `true` if all components have a `render`
1877
+ * method, so we can call the method immediately. If not, check before calling it.
1878
+ */
1745
1879
  instance = instance.render() ;
1746
1880
  {
1747
1881
  hostRef.$flags$ &= ~16 /* HOST_FLAGS.isQueuedForUpdate */;
@@ -1755,7 +1889,7 @@ const callRender = (hostRef, instance, elm) => {
1755
1889
  // or we need to update the css class/attrs on the host element
1756
1890
  // DOM WRITE!
1757
1891
  {
1758
- renderVdom(hostRef, instance);
1892
+ renderVdom(hostRef, instance, isInitialLoad);
1759
1893
  }
1760
1894
  }
1761
1895
  }
@@ -1818,6 +1952,16 @@ const appDidLoad = (who) => {
1818
1952
  }
1819
1953
  nextTick(() => emitEvent(win, 'appload', { detail: { namespace: NAMESPACE } }));
1820
1954
  };
1955
+ /**
1956
+ * Allows to safely call a method, e.g. `componentDidLoad`, on an instance,
1957
+ * e.g. custom element node. If a build figures out that e.g. no component
1958
+ * has a `componentDidLoad` method, the instance method gets removed from the
1959
+ * output bundle and this function returns `undefined`.
1960
+ * @param instance any object that may or may not contain methods
1961
+ * @param method method name
1962
+ * @param arg single arbitrary argument
1963
+ * @returns result of method call if it exists, otherwise `undefined`
1964
+ */
1821
1965
  const safeCall = (instance, method, arg) => {
1822
1966
  if (instance && instance[method]) {
1823
1967
  try {
@@ -1885,6 +2029,7 @@ const setValue = (ref, propName, newVal, cmpMeta) => {
1885
2029
  * @returns a reference to the same constructor passed in (but now mutated)
1886
2030
  */
1887
2031
  const proxyComponent = (Cstr, cmpMeta, flags) => {
2032
+ var _a;
1888
2033
  if (cmpMeta.$members$) {
1889
2034
  if (Cstr.watchers) {
1890
2035
  cmpMeta.$watchers$ = Cstr.watchers;
@@ -1922,7 +2067,7 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
1922
2067
  });
1923
2068
  if ((flags & 1 /* PROXY_FLAGS.isElementConstructor */)) {
1924
2069
  const attrNameToPropName = new Map();
1925
- prototype.attributeChangedCallback = function (attrName, _oldValue, newValue) {
2070
+ prototype.attributeChangedCallback = function (attrName, oldValue, newValue) {
1926
2071
  plt.jmp(() => {
1927
2072
  const propName = attrNameToPropName.get(attrName);
1928
2073
  // In a web component lifecycle the attributeChangedCallback runs prior to connectedCallback
@@ -1945,12 +2090,12 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
1945
2090
  // customElements.define('my-component', MyComponent);
1946
2091
  // </script>
1947
2092
  // ```
1948
- // In this case if we do not unshadow here and use the value of the shadowing property, attributeChangedCallback
2093
+ // In this case if we do not un-shadow here and use the value of the shadowing property, attributeChangedCallback
1949
2094
  // will be called with `newValue = "some-value"` and will set the shadowed property (this.someAttribute = "another-value")
1950
2095
  // to the value that was set inline i.e. "some-value" from above example. When
1951
- // the connectedCallback attempts to unshadow it will use "some-value" as the initial value rather than "another-value"
2096
+ // the connectedCallback attempts to un-shadow it will use "some-value" as the initial value rather than "another-value"
1952
2097
  //
1953
- // The case where the attribute was NOT set inline but was not set programmatically shall be handled/unshadowed
2098
+ // The case where the attribute was NOT set inline but was not set programmatically shall be handled/un-shadowed
1954
2099
  // by connectedCallback as this attributeChangedCallback will not fire.
1955
2100
  //
1956
2101
  // https://developers.google.com/web/fundamentals/web-components/best-practices#lazy-properties
@@ -1970,26 +2115,65 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
1970
2115
  // `propName` to be converted to a `DOMString`, which may not be what we want for other primitive props.
1971
2116
  return;
1972
2117
  }
2118
+ else if (propName == null) {
2119
+ // At this point we should know this is not a "member", so we can treat it like watching an attribute
2120
+ // on a vanilla web component
2121
+ const hostRef = getHostRef(this);
2122
+ const flags = hostRef === null || hostRef === void 0 ? void 0 : hostRef.$flags$;
2123
+ // We only want to trigger the callback(s) if:
2124
+ // 1. The instance is ready
2125
+ // 2. The watchers are ready
2126
+ // 3. The value has changed
2127
+ if (!(flags & 8 /* HOST_FLAGS.isConstructingInstance */) &&
2128
+ flags & 128 /* HOST_FLAGS.isWatchReady */ &&
2129
+ newValue !== oldValue) {
2130
+ const instance = hostRef.$lazyInstance$ ;
2131
+ const entry = cmpMeta.$watchers$[attrName];
2132
+ entry === null || entry === void 0 ? void 0 : entry.forEach((callbackName) => {
2133
+ if (instance[callbackName] != null) {
2134
+ instance[callbackName].call(instance, newValue, oldValue, attrName);
2135
+ }
2136
+ });
2137
+ }
2138
+ return;
2139
+ }
1973
2140
  this[propName] = newValue === null && typeof this[propName] === 'boolean' ? false : newValue;
1974
2141
  });
1975
2142
  };
1976
- // create an array of attributes to observe
1977
- // and also create a map of html attribute name to js property name
1978
- Cstr.observedAttributes = members
1979
- .filter(([_, m]) => m[0] & 15 /* MEMBER_FLAGS.HasAttribute */) // filter to only keep props that should match attributes
1980
- .map(([propName, m]) => {
1981
- const attrName = m[1] || propName;
1982
- attrNameToPropName.set(attrName, propName);
1983
- if (m[0] & 512 /* MEMBER_FLAGS.ReflectAttr */) {
1984
- cmpMeta.$attrsToReflect$.push([propName, attrName]);
1985
- }
1986
- return attrName;
1987
- });
2143
+ // Create an array of attributes to observe
2144
+ // This list in comprised of all strings used within a `@Watch()` decorator
2145
+ // on a component as well as any Stencil-specific "members" (`@Prop()`s and `@State()`s).
2146
+ // As such, there is no way to guarantee type-safety here that a user hasn't entered
2147
+ // an invalid attribute.
2148
+ Cstr.observedAttributes = Array.from(new Set([
2149
+ ...Object.keys((_a = cmpMeta.$watchers$) !== null && _a !== void 0 ? _a : {}),
2150
+ ...members
2151
+ .filter(([_, m]) => m[0] & 15 /* MEMBER_FLAGS.HasAttribute */)
2152
+ .map(([propName, m]) => {
2153
+ const attrName = m[1] || propName;
2154
+ attrNameToPropName.set(attrName, propName);
2155
+ if (m[0] & 512 /* MEMBER_FLAGS.ReflectAttr */) {
2156
+ cmpMeta.$attrsToReflect$.push([propName, attrName]);
2157
+ }
2158
+ return attrName;
2159
+ }),
2160
+ ]));
1988
2161
  }
1989
2162
  }
1990
2163
  return Cstr;
1991
2164
  };
1992
- const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId, Cstr) => {
2165
+ /**
2166
+ * Initialize a Stencil component given a reference to its host element, its
2167
+ * runtime bookkeeping data structure, runtime metadata about the component,
2168
+ * and (optionally) an HMR version ID.
2169
+ *
2170
+ * @param elm a host element
2171
+ * @param hostRef the element's runtime bookkeeping object
2172
+ * @param cmpMeta runtime metadata for the Stencil component
2173
+ * @param hmrVersionId an (optional) HMR version ID
2174
+ */
2175
+ const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
2176
+ let Cstr;
1993
2177
  // initializeComponent
1994
2178
  if ((hostRef.$flags$ & 32 /* HOST_FLAGS.hasInitializedComponent */) === 0) {
1995
2179
  // Let the runtime know that the component has been initialized
@@ -2050,9 +2234,6 @@ const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId, Cstr) =>
2050
2234
  const scopeId = getScopeId(cmpMeta, hostRef.$modeName$);
2051
2235
  if (!styles.has(scopeId)) {
2052
2236
  const endRegisterStyles = createTime('registerStyles', cmpMeta.$tagName$);
2053
- if (cmpMeta.$flags$ & 8 /* CMP_FLAGS.needsShadowDomShim */) {
2054
- style = await import('./shadow-css-af2290df.js').then((m) => m.scopeCss(style, scopeId, false));
2055
- }
2056
2237
  registerStyle(scopeId, style, !!(cmpMeta.$flags$ & 1 /* CMP_FLAGS.shadowDomEncapsulation */));
2057
2238
  endRegisterStyles();
2058
2239
  }
@@ -2091,7 +2272,7 @@ const connectedCallback = (elm) => {
2091
2272
  {
2092
2273
  hostId = elm.getAttribute(HYDRATE_ID);
2093
2274
  if (hostId) {
2094
- if (supportsShadow && cmpMeta.$flags$ & 1 /* CMP_FLAGS.shadowDomEncapsulation */) {
2275
+ if (cmpMeta.$flags$ & 1 /* CMP_FLAGS.shadowDomEncapsulation */) {
2095
2276
  const scopeId = addStyle(elm.shadowRoot, cmpMeta, elm.getAttribute('s-mode'))
2096
2277
  ;
2097
2278
  elm.classList.remove(scopeId + '-h', scopeId + '-s');
@@ -2104,7 +2285,7 @@ const connectedCallback = (elm) => {
2104
2285
  // if the slot polyfill is required we'll need to put some nodes
2105
2286
  // in here to act as original content anchors as we move nodes around
2106
2287
  // host element has been connected to the DOM
2107
- if ((// TODO(STENCIL-662): Remove code related to deprecated shadowDomShim field
2288
+ if ((// TODO(STENCIL-854): Remove code related to legacy shadowDomShim field
2108
2289
  cmpMeta.$flags$ & (4 /* CMP_FLAGS.hasSlotRelocation */ | 8 /* CMP_FLAGS.needsShadowDomShim */))) {
2109
2290
  setContentReference(elm);
2110
2291
  }
@@ -2148,7 +2329,12 @@ const connectedCallback = (elm) => {
2148
2329
  // since they would have been removed when disconnected
2149
2330
  addHostEventListeners(elm, hostRef, cmpMeta.$listeners$);
2150
2331
  // fire off connectedCallback() on component instance
2151
- fireConnectedCallback(hostRef.$lazyInstance$);
2332
+ if (hostRef === null || hostRef === void 0 ? void 0 : hostRef.$lazyInstance$) {
2333
+ fireConnectedCallback(hostRef.$lazyInstance$);
2334
+ }
2335
+ else if (hostRef === null || hostRef === void 0 ? void 0 : hostRef.$onReadyPromise$) {
2336
+ hostRef.$onReadyPromise$.then(() => fireConnectedCallback(hostRef.$lazyInstance$));
2337
+ }
2152
2338
  }
2153
2339
  endConnected();
2154
2340
  }
@@ -2164,24 +2350,25 @@ const setContentReference = (elm) => {
2164
2350
  contentRefElm['s-cn'] = true;
2165
2351
  elm.insertBefore(contentRefElm, elm.firstChild);
2166
2352
  };
2167
- const disconnectedCallback = (elm) => {
2353
+ const disconnectInstance = (instance) => {
2354
+ {
2355
+ safeCall(instance, 'disconnectedCallback');
2356
+ }
2357
+ };
2358
+ const disconnectedCallback = async (elm) => {
2168
2359
  if ((plt.$flags$ & 1 /* PLATFORM_FLAGS.isTmpDisconnected */) === 0) {
2169
2360
  const hostRef = getHostRef(elm);
2170
- const instance = hostRef.$lazyInstance$ ;
2171
2361
  {
2172
2362
  if (hostRef.$rmListeners$) {
2173
2363
  hostRef.$rmListeners$.map((rmListener) => rmListener());
2174
2364
  hostRef.$rmListeners$ = undefined;
2175
2365
  }
2176
2366
  }
2177
- // clear CSS var-shim tracking
2178
- // TODO(STENCIL-659): Remove code implementing the CSS variable shim
2179
- if (plt.$cssShim$) {
2180
- // TODO(STENCIL-659): Remove code implementing the CSS variable shim
2181
- plt.$cssShim$.removeHost(elm);
2367
+ if (hostRef === null || hostRef === void 0 ? void 0 : hostRef.$lazyInstance$) {
2368
+ disconnectInstance(hostRef.$lazyInstance$);
2182
2369
  }
2183
- {
2184
- safeCall(instance, 'disconnectedCallback');
2370
+ else if (hostRef === null || hostRef === void 0 ? void 0 : hostRef.$onReadyPromise$) {
2371
+ hostRef.$onReadyPromise$.then(() => disconnectInstance(hostRef.$lazyInstance$));
2185
2372
  }
2186
2373
  }
2187
2374
  };
@@ -2193,7 +2380,7 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
2193
2380
  const customElements = win.customElements;
2194
2381
  const head = doc.head;
2195
2382
  const metaCharset = /*@__PURE__*/ head.querySelector('meta[charset]');
2196
- const visibilityStyle = /*@__PURE__*/ doc.createElement('style');
2383
+ const dataStyles = /*@__PURE__*/ doc.createElement('style');
2197
2384
  const deferredConnectedCallbacks = [];
2198
2385
  const styles = /*@__PURE__*/ doc.querySelectorAll(`[${HYDRATED_STYLE_ID}]`);
2199
2386
  let appLoadFallback;
@@ -2211,14 +2398,21 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
2211
2398
  registerStyle(styles[i].getAttribute(HYDRATED_STYLE_ID), convertScopedToShadow(styles[i].innerHTML), true);
2212
2399
  }
2213
2400
  }
2401
+ let hasSlotRelocation = false;
2214
2402
  lazyBundles.map((lazyBundle) => {
2215
2403
  lazyBundle[1].map((compactMeta) => {
2404
+ var _a;
2216
2405
  const cmpMeta = {
2217
2406
  $flags$: compactMeta[0],
2218
2407
  $tagName$: compactMeta[1],
2219
2408
  $members$: compactMeta[2],
2220
2409
  $listeners$: compactMeta[3],
2221
2410
  };
2411
+ // Check if we are using slots outside the shadow DOM in this component.
2412
+ // We'll use this information later to add styles for `slot-fb` elements
2413
+ if (cmpMeta.$flags$ & 4 /* CMP_FLAGS.hasSlotRelocation */) {
2414
+ hasSlotRelocation = true;
2415
+ }
2222
2416
  {
2223
2417
  cmpMeta.$members$ = compactMeta[2];
2224
2418
  }
@@ -2229,11 +2423,7 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
2229
2423
  cmpMeta.$attrsToReflect$ = [];
2230
2424
  }
2231
2425
  {
2232
- cmpMeta.$watchers$ = {};
2233
- }
2234
- if (!supportsShadow && cmpMeta.$flags$ & 1 /* CMP_FLAGS.shadowDomEncapsulation */) {
2235
- // TODO(STENCIL-662): Remove code related to deprecated shadowDomShim field
2236
- cmpMeta.$flags$ |= 8 /* CMP_FLAGS.needsShadowDomShim */;
2426
+ cmpMeta.$watchers$ = (_a = compactMeta[4]) !== null && _a !== void 0 ? _a : {};
2237
2427
  }
2238
2428
  const tagName = cmpMeta.$tagName$;
2239
2429
  const HostElement = class extends HTMLElement {
@@ -2248,14 +2438,11 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
2248
2438
  // and this browser supports shadow dom
2249
2439
  // add the read-only property "shadowRoot" to the host element
2250
2440
  // adding the shadow root build conditionals to minimize runtime
2251
- if (supportsShadow) {
2441
+ {
2252
2442
  {
2253
2443
  self.attachShadow({ mode: 'open' });
2254
2444
  }
2255
2445
  }
2256
- else if (!('shadowRoot' in self)) {
2257
- self.shadowRoot = self;
2258
- }
2259
2446
  }
2260
2447
  }
2261
2448
  connectedCallback() {
@@ -2285,15 +2472,23 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
2285
2472
  }
2286
2473
  });
2287
2474
  });
2475
+ // Add styles for `slot-fb` elements if any of our components are using slots outside the Shadow DOM
2476
+ if (hasSlotRelocation) {
2477
+ dataStyles.innerHTML += SLOT_FB_CSS;
2478
+ }
2479
+ // Add hydration styles
2288
2480
  {
2289
- visibilityStyle.innerHTML = cmpTags + HYDRATED_CSS;
2290
- visibilityStyle.setAttribute('data-styles', '');
2481
+ dataStyles.innerHTML += cmpTags + HYDRATED_CSS;
2482
+ }
2483
+ // If we have styles, add them to the DOM
2484
+ if (dataStyles.innerHTML.length) {
2485
+ dataStyles.setAttribute('data-styles', '');
2486
+ head.insertBefore(dataStyles, metaCharset ? metaCharset.nextSibling : head.firstChild);
2291
2487
  // Apply CSP nonce to the style tag if it exists
2292
2488
  const nonce = (_a = plt.$nonce$) !== null && _a !== void 0 ? _a : queryNonceMetaTagContent(doc);
2293
2489
  if (nonce != null) {
2294
- visibilityStyle.setAttribute('nonce', nonce);
2490
+ dataStyles.setAttribute('nonce', nonce);
2295
2491
  }
2296
- head.insertBefore(visibilityStyle, metaCharset ? metaCharset.nextSibling : head.firstChild);
2297
2492
  }
2298
2493
  // Process deferred connectedCallbacks now all components have been registered
2299
2494
  isBootstrapping = false;
@@ -2351,13 +2546,40 @@ const hostListenerOpts = (flags) => (flags & 2 /* LISTENER_FLAGS.Capture */) !==
2351
2546
  * @returns void
2352
2547
  */
2353
2548
  const setNonce = (nonce) => (plt.$nonce$ = nonce);
2549
+ /**
2550
+ * A WeakMap mapping runtime component references to their corresponding host reference
2551
+ * instances.
2552
+ */
2354
2553
  const hostRefs = /*@__PURE__*/ new WeakMap();
2554
+ /**
2555
+ * Given a {@link d.RuntimeRef} retrieve the corresponding {@link d.HostRef}
2556
+ *
2557
+ * @param ref the runtime ref of interest
2558
+ * @returns the Host reference (if found) or undefined
2559
+ */
2355
2560
  const getHostRef = (ref) => hostRefs.get(ref);
2561
+ /**
2562
+ * Register a lazy instance with the {@link hostRefs} object so it's
2563
+ * corresponding {@link d.HostRef} can be retrieved later.
2564
+ *
2565
+ * @param lazyInstance the lazy instance of interest
2566
+ * @param hostRef that instances `HostRef` object
2567
+ * @returns a reference to the host ref WeakMap
2568
+ */
2356
2569
  const registerInstance = (lazyInstance, hostRef) => hostRefs.set((hostRef.$lazyInstance$ = lazyInstance), hostRef);
2357
- const registerHost = (elm, cmpMeta) => {
2570
+ /**
2571
+ * Register a host element for a Stencil component, setting up various metadata
2572
+ * and callbacks based on {@link BUILD} flags as well as the component's runtime
2573
+ * metadata.
2574
+ *
2575
+ * @param hostElement the host element to register
2576
+ * @param cmpMeta runtime metadata for that component
2577
+ * @returns a reference to the host ref WeakMap
2578
+ */
2579
+ const registerHost = (hostElement, cmpMeta) => {
2358
2580
  const hostRef = {
2359
2581
  $flags$: 0,
2360
- $hostElement$: elm,
2582
+ $hostElement$: hostElement,
2361
2583
  $cmpMeta$: cmpMeta,
2362
2584
  $instanceValues$: new Map(),
2363
2585
  };
@@ -2366,11 +2588,11 @@ const registerHost = (elm, cmpMeta) => {
2366
2588
  }
2367
2589
  {
2368
2590
  hostRef.$onReadyPromise$ = new Promise((r) => (hostRef.$onReadyResolve$ = r));
2369
- elm['s-p'] = [];
2370
- elm['s-rc'] = [];
2591
+ hostElement['s-p'] = [];
2592
+ hostElement['s-rc'] = [];
2371
2593
  }
2372
- addHostEventListeners(elm, hostRef, cmpMeta.$listeners$);
2373
- return hostRefs.set(elm, hostRef);
2594
+ addHostEventListeners(hostElement, hostRef, cmpMeta.$listeners$);
2595
+ return hostRefs.set(hostElement, hostRef);
2374
2596
  };
2375
2597
  const isMemberInElement = (elm, memberName) => memberName in elm;
2376
2598
  const consoleError = (e, el) => (0, console.error)(e, el);
@@ -2640,8 +2862,6 @@ const loadModule = (cmpMeta, hostRef, hmrVersionId) => {
2640
2862
  const styles = /*@__PURE__*/ new Map();
2641
2863
  const modeResolutionChain = [];
2642
2864
  const win = typeof window !== 'undefined' ? window : {};
2643
- // TODO(STENCIL-659): Remove code implementing the CSS variable shim
2644
- const CSS = win.CSS ;
2645
2865
  const doc = win.document || { head: {} };
2646
2866
  const plt = {
2647
2867
  $flags$: 0,
@@ -2653,9 +2873,8 @@ const plt = {
2653
2873
  ce: (eventName, opts) => new CustomEvent(eventName, opts),
2654
2874
  };
2655
2875
  const supportsShadow =
2656
- // TODO(STENCIL-662): Remove code related to deprecated shadowDomShim field
2657
- /*@__PURE__*/ (() => (doc.head.attachShadow + '').indexOf('[native') > -1)()
2658
- ;
2876
+ // TODO(STENCIL-854): Remove code related to legacy shadowDomShim field
2877
+ true;
2659
2878
  const promiseResolve = (v) => Promise.resolve(v);
2660
2879
  const supportsConstructableStylesheets = /*@__PURE__*/ (() => {
2661
2880
  try {
@@ -2706,9 +2925,9 @@ const flush = () => {
2706
2925
  }
2707
2926
  }
2708
2927
  };
2709
- const nextTick = /*@__PURE__*/ (cb) => promiseResolve().then(cb);
2928
+ const nextTick = (cb) => promiseResolve().then(cb);
2710
2929
  const writeTask = /*@__PURE__*/ queueTask(queueDomWrites, true);
2711
2930
 
2712
- export { CSS as C, Host as H, NAMESPACE as N, promiseResolve as a, bootstrapLazy as b, setMode as c, doc as d, createEvent as e, getElement as f, getAssetPath as g, h, plt as p, registerInstance as r, setNonce as s, win as w };
2931
+ export { Host as H, setMode as a, bootstrapLazy as b, createEvent as c, getElement as d, getAssetPath as g, h, promiseResolve as p, registerInstance as r, setNonce as s };
2713
2932
 
2714
- //# sourceMappingURL=index-4b484f35.js.map
2933
+ //# sourceMappingURL=index-6f4c3286.js.map