@geotrekce/geotrek-rando-widget 0.0.21 → 0.2.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 (543) hide show
  1. package/dist/cjs/{css-shim-4e479c1a.js → css-shim-541cb78a.js} +2 -2
  2. package/dist/cjs/css-shim-541cb78a.js.br +0 -0
  3. package/dist/cjs/css-shim-541cb78a.js.gz +0 -0
  4. package/dist/cjs/{css-shim-4e479c1a.js.map → css-shim-541cb78a.js.map} +1 -1
  5. package/dist/cjs/{dom-52c0133a.js → dom-7f26de17.js} +2 -2
  6. package/dist/cjs/dom-7f26de17.js.br +0 -0
  7. package/dist/cjs/dom-7f26de17.js.gz +0 -0
  8. package/dist/cjs/{dom-52c0133a.js.map → dom-7f26de17.js.map} +1 -1
  9. package/dist/cjs/geotrek-rando-widget.cjs.js +4 -4
  10. package/dist/cjs/geotrek-rando-widget.cjs.js.br +0 -0
  11. package/dist/cjs/geotrek-rando-widget.cjs.js.gz +0 -0
  12. package/dist/cjs/geotrek-rando-widget.cjs.js.map +1 -1
  13. package/dist/cjs/grw-app.cjs.entry.js +61 -17
  14. package/dist/cjs/grw-app.cjs.entry.js.br +0 -0
  15. package/dist/cjs/grw-app.cjs.entry.js.gz +0 -0
  16. package/dist/cjs/grw-app.cjs.entry.js.map +1 -1
  17. package/dist/cjs/{grw-filter_6.cjs.entry.js → grw-filter_7.cjs.entry.js} +5554 -257
  18. package/dist/cjs/grw-filter_7.cjs.entry.js.br +0 -0
  19. package/dist/cjs/grw-filter_7.cjs.entry.js.gz +0 -0
  20. package/dist/cjs/grw-filter_7.cjs.entry.js.map +1 -0
  21. package/dist/cjs/grw-information-desk-detail_3.cjs.entry.js +51 -9
  22. package/dist/cjs/grw-information-desk-detail_3.cjs.entry.js.br +0 -0
  23. package/dist/cjs/grw-information-desk-detail_3.cjs.entry.js.gz +0 -0
  24. package/dist/cjs/grw-information-desk-detail_3.cjs.entry.js.map +1 -1
  25. package/dist/cjs/grw-trek-card.cjs.entry.js +17 -10
  26. package/dist/cjs/grw-trek-card.cjs.entry.js.br +0 -0
  27. package/dist/cjs/grw-trek-card.cjs.entry.js.gz +0 -0
  28. package/dist/cjs/grw-trek-card.cjs.entry.js.map +1 -1
  29. package/dist/cjs/i18n-67fd458f.js +108 -0
  30. package/dist/cjs/i18n-67fd458f.js.br +0 -0
  31. package/dist/cjs/i18n-67fd458f.js.gz +0 -0
  32. package/dist/cjs/i18n-67fd458f.js.map +1 -0
  33. package/dist/cjs/{index-5c1a15c7.js → index-965985fa.js} +486 -30
  34. package/dist/cjs/index-965985fa.js.br +0 -0
  35. package/dist/cjs/index-965985fa.js.gz +0 -0
  36. package/dist/cjs/index-965985fa.js.map +1 -0
  37. package/dist/cjs/loader.cjs.js +4 -4
  38. package/dist/cjs/loader.cjs.js.br +0 -0
  39. package/dist/cjs/loader.cjs.js.gz +0 -0
  40. package/dist/cjs/loader.cjs.js.map +1 -1
  41. package/dist/cjs/pagination-149c2052.js +4655 -0
  42. package/dist/cjs/pagination-149c2052.js.br +0 -0
  43. package/dist/cjs/pagination-149c2052.js.gz +0 -0
  44. package/dist/cjs/pagination-149c2052.js.map +1 -0
  45. package/dist/cjs/{shadow-css-388a8a25.js → shadow-css-2e025b8c.js} +2 -2
  46. package/dist/cjs/shadow-css-2e025b8c.js.br +0 -0
  47. package/dist/cjs/shadow-css-2e025b8c.js.gz +0 -0
  48. package/dist/cjs/{shadow-css-388a8a25.js.map → shadow-css-2e025b8c.js.map} +1 -1
  49. package/dist/cjs/{store-a027262c.js → store-002456b2.js} +11 -9
  50. package/dist/cjs/store-002456b2.js.br +0 -0
  51. package/dist/cjs/store-002456b2.js.gz +0 -0
  52. package/dist/cjs/store-002456b2.js.map +1 -0
  53. package/dist/collection/assets/default-image.svg +1 -0
  54. package/dist/collection/assets/default-image.svg.br +1 -0
  55. package/dist/collection/assets/default-image.svg.gz +0 -0
  56. package/dist/collection/assets/layers.svg +1 -0
  57. package/dist/collection/assets/layers.svg.br +0 -0
  58. package/dist/collection/assets/layers.svg.gz +0 -0
  59. package/dist/collection/collection-manifest.json +3 -2
  60. package/dist/collection/components/grw-app/grw-app.css +121 -73
  61. package/dist/collection/components/grw-app/grw-app.css.br +0 -0
  62. package/dist/collection/components/grw-app/grw-app.css.gz +0 -0
  63. package/dist/collection/components/grw-app/grw-app.js +332 -49
  64. package/dist/collection/components/grw-app/grw-app.js.br +0 -0
  65. package/dist/collection/components/grw-app/grw-app.js.gz +0 -0
  66. package/dist/collection/components/grw-app/grw-app.js.map +1 -1
  67. package/dist/collection/components/grw-filter/grw-filter.css +39 -10
  68. package/dist/collection/components/grw-filter/grw-filter.css.br +0 -0
  69. package/dist/collection/components/grw-filter/grw-filter.css.gz +0 -0
  70. package/dist/collection/components/grw-filter/grw-filter.js +1 -1
  71. package/dist/collection/components/grw-filter/grw-filter.js.br +0 -0
  72. package/dist/collection/components/grw-filter/grw-filter.js.gz +0 -0
  73. package/dist/collection/components/grw-filter/grw-filter.js.map +1 -1
  74. package/dist/collection/components/grw-information-desk-detail/grw-information-desk-detail.css +74 -8
  75. package/dist/collection/components/grw-information-desk-detail/grw-information-desk-detail.css.br +0 -0
  76. package/dist/collection/components/grw-information-desk-detail/grw-information-desk-detail.css.gz +0 -0
  77. package/dist/collection/components/grw-information-desk-detail/grw-information-desk-detail.js +32 -4
  78. package/dist/collection/components/grw-information-desk-detail/grw-information-desk-detail.js.br +0 -0
  79. package/dist/collection/components/grw-information-desk-detail/grw-information-desk-detail.js.gz +0 -0
  80. package/dist/collection/components/grw-information-desk-detail/grw-information-desk-detail.js.map +1 -1
  81. package/dist/collection/components/grw-map/grw-map.css +1214 -672
  82. package/dist/collection/components/grw-map/grw-map.css.br +0 -0
  83. package/dist/collection/components/grw-map/grw-map.css.gz +0 -0
  84. package/dist/collection/components/grw-map/grw-map.js +269 -59
  85. package/dist/collection/components/grw-map/grw-map.js.br +0 -0
  86. package/dist/collection/components/grw-map/grw-map.js.gz +0 -0
  87. package/dist/collection/components/grw-map/grw-map.js.map +1 -1
  88. package/dist/collection/components/grw-poi-detail/grw-poi-detail.css +564 -11
  89. package/dist/collection/components/grw-poi-detail/grw-poi-detail.css.br +0 -0
  90. package/dist/collection/components/grw-poi-detail/grw-poi-detail.css.gz +0 -0
  91. package/dist/collection/components/grw-poi-detail/grw-poi-detail.js +45 -2
  92. package/dist/collection/components/grw-poi-detail/grw-poi-detail.js.br +0 -0
  93. package/dist/collection/components/grw-poi-detail/grw-poi-detail.js.gz +0 -0
  94. package/dist/collection/components/grw-poi-detail/grw-poi-detail.js.map +1 -1
  95. package/dist/collection/components/grw-select-language/grw-select-language.css +8 -0
  96. package/dist/collection/components/grw-select-language/grw-select-language.css.br +0 -0
  97. package/dist/collection/components/grw-select-language/grw-select-language.css.gz +0 -0
  98. package/dist/collection/components/grw-select-language/grw-select-language.js +26 -0
  99. package/dist/collection/components/grw-select-language/grw-select-language.js.br +0 -0
  100. package/dist/collection/components/grw-select-language/grw-select-language.js.gz +0 -0
  101. package/dist/collection/components/grw-select-language/grw-select-language.js.map +1 -0
  102. package/dist/collection/components/grw-sensitive-area-detail/grw-sensitive-area-detail.css +10 -6
  103. package/dist/collection/components/grw-sensitive-area-detail/grw-sensitive-area-detail.css.br +0 -0
  104. package/dist/collection/components/grw-sensitive-area-detail/grw-sensitive-area-detail.css.gz +0 -0
  105. package/dist/collection/components/grw-trek-card/grw-trek-card.css +40 -16
  106. package/dist/collection/components/grw-trek-card/grw-trek-card.css.br +0 -0
  107. package/dist/collection/components/grw-trek-card/grw-trek-card.css.gz +0 -0
  108. package/dist/collection/components/grw-trek-card/grw-trek-card.js +75 -14
  109. package/dist/collection/components/grw-trek-card/grw-trek-card.js.br +0 -0
  110. package/dist/collection/components/grw-trek-card/grw-trek-card.js.gz +0 -0
  111. package/dist/collection/components/grw-trek-card/grw-trek-card.js.map +1 -1
  112. package/dist/collection/components/grw-trek-detail/grw-trek-detail.css +808 -53
  113. package/dist/collection/components/grw-trek-detail/grw-trek-detail.css.br +0 -0
  114. package/dist/collection/components/grw-trek-detail/grw-trek-detail.css.gz +0 -0
  115. package/dist/collection/components/grw-trek-detail/grw-trek-detail.js +419 -25
  116. package/dist/collection/components/grw-trek-detail/grw-trek-detail.js.br +0 -0
  117. package/dist/collection/components/grw-trek-detail/grw-trek-detail.js.gz +0 -0
  118. package/dist/collection/components/grw-trek-detail/grw-trek-detail.js.map +1 -1
  119. package/dist/collection/components/grw-treks-list/grw-treks-list.css +8 -2
  120. package/dist/collection/components/grw-treks-list/grw-treks-list.css.br +0 -0
  121. package/dist/collection/components/grw-treks-list/grw-treks-list.css.gz +0 -0
  122. package/dist/collection/components/grw-treks-list/grw-treks-list.js +66 -9
  123. package/dist/collection/components/grw-treks-list/grw-treks-list.js.br +0 -0
  124. package/dist/collection/components/grw-treks-list/grw-treks-list.js.gz +0 -0
  125. package/dist/collection/components/grw-treks-list/grw-treks-list.js.map +1 -1
  126. package/dist/collection/i18n/i18n.js +103 -0
  127. package/dist/collection/i18n/i18n.js.br +0 -0
  128. package/dist/collection/i18n/i18n.js.gz +0 -0
  129. package/dist/collection/i18n/i18n.js.map +1 -0
  130. package/dist/collection/store/grw-trek-provider.js +29 -20
  131. package/dist/collection/store/grw-trek-provider.js.br +0 -0
  132. package/dist/collection/store/grw-trek-provider.js.gz +0 -0
  133. package/dist/collection/store/grw-trek-provider.js.map +1 -1
  134. package/dist/collection/store/grw-treks-provider.js +24 -16
  135. package/dist/collection/store/grw-treks-provider.js.br +0 -0
  136. package/dist/collection/store/grw-treks-provider.js.gz +0 -0
  137. package/dist/collection/store/grw-treks-provider.js.map +1 -1
  138. package/dist/collection/store/store.js +9 -7
  139. package/dist/collection/store/store.js.br +0 -0
  140. package/dist/collection/store/store.js.gz +0 -0
  141. package/dist/collection/store/store.js.map +1 -1
  142. package/dist/collection/stories/App.js +30 -6
  143. package/dist/collection/stories/App.js.br +0 -0
  144. package/dist/collection/stories/App.js.gz +0 -0
  145. package/dist/collection/stories/App.stories.js +16 -4
  146. package/dist/collection/stories/App.stories.js.br +0 -0
  147. package/dist/collection/stories/App.stories.js.gz +0 -0
  148. package/dist/collection/stories/TrekCard.js +6 -3
  149. package/dist/collection/stories/TrekCard.js.br +0 -0
  150. package/dist/collection/stories/TrekCard.js.gz +0 -0
  151. package/dist/collection/stories/TrekCard.stories.js +6 -3
  152. package/dist/collection/stories/TrekCard.stories.js.br +0 -0
  153. package/dist/collection/stories/TrekCard.stories.js.gz +0 -0
  154. package/dist/collection/stories/TrekDetail.js +19 -4
  155. package/dist/collection/stories/TrekDetail.js.br +0 -0
  156. package/dist/collection/stories/TrekDetail.js.gz +0 -0
  157. package/dist/collection/stories/TrekDetail.stories.js +8 -4
  158. package/dist/collection/stories/TrekDetail.stories.js.br +0 -0
  159. package/dist/collection/stories/TrekDetail.stories.js.gz +0 -0
  160. package/dist/collection/stories/TrekMap.js +23 -1
  161. package/dist/collection/stories/TrekMap.js.br +0 -0
  162. package/dist/collection/stories/TrekMap.js.gz +0 -0
  163. package/dist/collection/stories/TrekMap.stories.js +6 -1
  164. package/dist/collection/stories/TrekMap.stories.js.br +0 -0
  165. package/dist/collection/stories/TrekMap.stories.js.gz +0 -0
  166. package/dist/collection/stories/TreksList.js +22 -3
  167. package/dist/collection/stories/TreksList.js.br +0 -0
  168. package/dist/collection/stories/TreksList.js.gz +0 -0
  169. package/dist/collection/stories/TreksList.stories.js +6 -3
  170. package/dist/collection/stories/TreksList.stories.js.br +0 -0
  171. package/dist/collection/stories/TreksList.stories.js.gz +0 -0
  172. package/dist/collection/stories/TreksMap.js +6 -3
  173. package/dist/collection/stories/TreksMap.js.br +0 -0
  174. package/dist/collection/stories/TreksMap.js.gz +0 -0
  175. package/dist/collection/stories/TreksMap.stories.js +6 -3
  176. package/dist/collection/stories/TreksMap.stories.js.br +0 -0
  177. package/dist/collection/stories/TreksMap.stories.js.gz +0 -0
  178. package/dist/collection/types/types.js.map +1 -1
  179. package/dist/esm/{css-shim-cfbf2cf5.js → css-shim-8cc70a22.js} +2 -2
  180. package/dist/esm/css-shim-8cc70a22.js.br +0 -0
  181. package/dist/esm/css-shim-8cc70a22.js.gz +0 -0
  182. package/dist/esm/{css-shim-cfbf2cf5.js.map → css-shim-8cc70a22.js.map} +1 -1
  183. package/dist/esm/{dom-c0f8af80.js → dom-60e3e2ad.js} +2 -2
  184. package/dist/esm/dom-60e3e2ad.js.br +0 -0
  185. package/dist/esm/dom-60e3e2ad.js.gz +0 -0
  186. package/dist/esm/{dom-c0f8af80.js.map → dom-60e3e2ad.js.map} +1 -1
  187. package/dist/esm/geotrek-rando-widget.js +5 -5
  188. package/dist/esm/geotrek-rando-widget.js.br +0 -0
  189. package/dist/esm/geotrek-rando-widget.js.gz +0 -0
  190. package/dist/esm/geotrek-rando-widget.js.map +1 -1
  191. package/dist/esm/grw-app.entry.js +61 -17
  192. package/dist/esm/grw-app.entry.js.br +0 -0
  193. package/dist/esm/grw-app.entry.js.gz +0 -0
  194. package/dist/esm/grw-app.entry.js.map +1 -1
  195. package/dist/esm/{grw-filter_6.entry.js → grw-filter_7.entry.js} +5539 -263
  196. package/dist/esm/grw-filter_7.entry.js.br +0 -0
  197. package/dist/esm/grw-filter_7.entry.js.gz +0 -0
  198. package/dist/esm/grw-filter_7.entry.js.map +1 -0
  199. package/dist/esm/grw-information-desk-detail_3.entry.js +51 -9
  200. package/dist/esm/grw-information-desk-detail_3.entry.js.br +0 -0
  201. package/dist/esm/grw-information-desk-detail_3.entry.js.gz +0 -0
  202. package/dist/esm/grw-information-desk-detail_3.entry.js.map +1 -1
  203. package/dist/esm/grw-trek-card.entry.js +17 -10
  204. package/dist/esm/grw-trek-card.entry.js.br +0 -0
  205. package/dist/esm/grw-trek-card.entry.js.gz +0 -0
  206. package/dist/esm/grw-trek-card.entry.js.map +1 -1
  207. package/dist/esm/i18n-b25e6b48.js +106 -0
  208. package/dist/esm/i18n-b25e6b48.js.br +0 -0
  209. package/dist/esm/i18n-b25e6b48.js.gz +0 -0
  210. package/dist/esm/i18n-b25e6b48.js.map +1 -0
  211. package/dist/esm/{index-e862524f.js → index-57c9193c.js} +487 -31
  212. package/dist/esm/index-57c9193c.js.br +0 -0
  213. package/dist/esm/index-57c9193c.js.gz +0 -0
  214. package/dist/esm/index-57c9193c.js.map +1 -0
  215. package/dist/esm/loader.js +5 -5
  216. package/dist/esm/loader.js.br +0 -0
  217. package/dist/esm/loader.js.gz +0 -0
  218. package/dist/esm/loader.js.map +1 -1
  219. package/dist/esm/pagination-24051620.js +4646 -0
  220. package/dist/esm/pagination-24051620.js.br +0 -0
  221. package/dist/esm/pagination-24051620.js.gz +0 -0
  222. package/dist/esm/pagination-24051620.js.map +1 -0
  223. package/dist/esm/{shadow-css-12b9a099.js → shadow-css-19be24ee.js} +2 -2
  224. package/dist/esm/shadow-css-19be24ee.js.br +0 -0
  225. package/dist/esm/shadow-css-19be24ee.js.gz +0 -0
  226. package/dist/esm/{shadow-css-12b9a099.js.map → shadow-css-19be24ee.js.map} +1 -1
  227. package/dist/esm/{store-5565fa38.js → store-b2d579d9.js} +11 -9
  228. package/dist/esm/store-b2d579d9.js.br +0 -0
  229. package/dist/esm/store-b2d579d9.js.gz +0 -0
  230. package/dist/esm/store-b2d579d9.js.map +1 -0
  231. package/dist/esm-es5/{css-shim-cfbf2cf5.js → css-shim-8cc70a22.js} +1 -1
  232. package/dist/esm-es5/css-shim-8cc70a22.js.br +0 -0
  233. package/dist/esm-es5/css-shim-8cc70a22.js.gz +0 -0
  234. package/dist/esm-es5/{css-shim-cfbf2cf5.js.map → css-shim-8cc70a22.js.map} +1 -1
  235. package/dist/esm-es5/{dom-c0f8af80.js → dom-60e3e2ad.js} +1 -1
  236. package/dist/esm-es5/dom-60e3e2ad.js.br +0 -0
  237. package/dist/esm-es5/dom-60e3e2ad.js.gz +0 -0
  238. package/dist/esm-es5/{dom-c0f8af80.js.map → dom-60e3e2ad.js.map} +1 -1
  239. package/dist/esm-es5/geotrek-rando-widget.js +1 -1
  240. package/dist/esm-es5/geotrek-rando-widget.js.br +0 -0
  241. package/dist/esm-es5/geotrek-rando-widget.js.gz +0 -0
  242. package/dist/esm-es5/geotrek-rando-widget.js.map +1 -1
  243. package/dist/esm-es5/grw-app.entry.js +1 -1
  244. package/dist/esm-es5/grw-app.entry.js.br +0 -0
  245. package/dist/esm-es5/grw-app.entry.js.gz +0 -0
  246. package/dist/esm-es5/grw-app.entry.js.map +1 -1
  247. package/dist/esm-es5/grw-filter_7.entry.js +14 -0
  248. package/dist/esm-es5/grw-filter_7.entry.js.br +0 -0
  249. package/dist/esm-es5/grw-filter_7.entry.js.gz +0 -0
  250. package/dist/esm-es5/grw-filter_7.entry.js.map +1 -0
  251. package/dist/esm-es5/grw-information-desk-detail_3.entry.js +1 -1
  252. package/dist/esm-es5/grw-information-desk-detail_3.entry.js.br +0 -0
  253. package/dist/esm-es5/grw-information-desk-detail_3.entry.js.gz +0 -0
  254. package/dist/esm-es5/grw-information-desk-detail_3.entry.js.map +1 -1
  255. package/dist/esm-es5/grw-trek-card.entry.js +1 -1
  256. package/dist/esm-es5/grw-trek-card.entry.js.br +0 -0
  257. package/dist/esm-es5/grw-trek-card.entry.js.gz +0 -0
  258. package/dist/esm-es5/grw-trek-card.entry.js.map +1 -1
  259. package/dist/esm-es5/i18n-b25e6b48.js +2 -0
  260. package/dist/esm-es5/i18n-b25e6b48.js.br +0 -0
  261. package/dist/esm-es5/i18n-b25e6b48.js.gz +0 -0
  262. package/dist/esm-es5/i18n-b25e6b48.js.map +1 -0
  263. package/dist/esm-es5/index-57c9193c.js +3 -0
  264. package/dist/esm-es5/index-57c9193c.js.br +0 -0
  265. package/dist/esm-es5/index-57c9193c.js.gz +0 -0
  266. package/dist/esm-es5/index-57c9193c.js.map +1 -0
  267. package/dist/esm-es5/loader.js +1 -1
  268. package/dist/esm-es5/loader.js.br +0 -0
  269. package/dist/esm-es5/loader.js.gz +0 -0
  270. package/dist/esm-es5/loader.js.map +1 -1
  271. package/dist/esm-es5/pagination-24051620.js +2 -0
  272. package/dist/esm-es5/pagination-24051620.js.br +0 -0
  273. package/dist/esm-es5/pagination-24051620.js.gz +0 -0
  274. package/dist/esm-es5/pagination-24051620.js.map +1 -0
  275. package/dist/esm-es5/{shadow-css-12b9a099.js → shadow-css-19be24ee.js} +1 -1
  276. package/dist/esm-es5/shadow-css-19be24ee.js.br +0 -0
  277. package/dist/esm-es5/shadow-css-19be24ee.js.gz +0 -0
  278. package/dist/esm-es5/{shadow-css-12b9a099.js.map → shadow-css-19be24ee.js.map} +1 -1
  279. package/dist/esm-es5/{store-5565fa38.js → store-b2d579d9.js} +2 -2
  280. package/dist/esm-es5/store-b2d579d9.js.br +0 -0
  281. package/dist/esm-es5/store-b2d579d9.js.gz +0 -0
  282. package/dist/esm-es5/store-b2d579d9.js.map +1 -0
  283. package/dist/geotrek-rando-widget/assets/default-image.svg +1 -0
  284. package/dist/geotrek-rando-widget/assets/default-image.svg.br +1 -0
  285. package/dist/geotrek-rando-widget/assets/default-image.svg.gz +0 -0
  286. package/dist/geotrek-rando-widget/assets/layers.svg +1 -0
  287. package/dist/geotrek-rando-widget/assets/layers.svg.br +0 -0
  288. package/dist/geotrek-rando-widget/assets/layers.svg.gz +0 -0
  289. package/dist/geotrek-rando-widget/geotrek-rando-widget.css +1 -1
  290. package/dist/geotrek-rando-widget/geotrek-rando-widget.css.br +0 -0
  291. package/dist/geotrek-rando-widget/geotrek-rando-widget.css.gz +0 -0
  292. package/dist/geotrek-rando-widget/geotrek-rando-widget.esm.js +1 -1
  293. package/dist/geotrek-rando-widget/geotrek-rando-widget.esm.js.br +0 -0
  294. package/dist/geotrek-rando-widget/geotrek-rando-widget.esm.js.gz +0 -0
  295. package/dist/geotrek-rando-widget/geotrek-rando-widget.esm.js.map +1 -1
  296. package/dist/geotrek-rando-widget/geotrek-rando-widget.js +1 -1
  297. package/dist/geotrek-rando-widget/geotrek-rando-widget.js.br +0 -0
  298. package/dist/geotrek-rando-widget/geotrek-rando-widget.js.gz +0 -0
  299. package/dist/geotrek-rando-widget/p-0773c38f.js +2 -0
  300. package/dist/geotrek-rando-widget/p-0773c38f.js.br +0 -0
  301. package/dist/geotrek-rando-widget/p-0773c38f.js.gz +0 -0
  302. package/dist/geotrek-rando-widget/p-0773c38f.js.map +1 -0
  303. package/dist/geotrek-rando-widget/{p-3eb96982.js → p-0f28420f.js} +1 -1
  304. package/dist/geotrek-rando-widget/p-0f28420f.js.br +0 -0
  305. package/dist/geotrek-rando-widget/p-0f28420f.js.gz +0 -0
  306. package/dist/geotrek-rando-widget/{p-3eb96982.js.map → p-0f28420f.js.map} +1 -1
  307. package/dist/geotrek-rando-widget/p-12132148.entry.js +2 -0
  308. package/dist/geotrek-rando-widget/p-12132148.entry.js.br +0 -0
  309. package/dist/geotrek-rando-widget/p-12132148.entry.js.gz +0 -0
  310. package/dist/geotrek-rando-widget/p-12132148.entry.js.map +1 -0
  311. package/dist/geotrek-rando-widget/{p-1eb5bb96.js → p-15fed795.js} +1 -1
  312. package/dist/geotrek-rando-widget/p-15fed795.js.br +0 -0
  313. package/dist/geotrek-rando-widget/p-15fed795.js.gz +0 -0
  314. package/dist/geotrek-rando-widget/{p-1eb5bb96.js.map → p-15fed795.js.map} +1 -1
  315. package/dist/geotrek-rando-widget/p-1945d1c1.entry.js +14 -0
  316. package/dist/geotrek-rando-widget/p-1945d1c1.entry.js.br +0 -0
  317. package/dist/geotrek-rando-widget/p-1945d1c1.entry.js.gz +0 -0
  318. package/dist/geotrek-rando-widget/p-1945d1c1.entry.js.map +1 -0
  319. package/dist/geotrek-rando-widget/p-2092e60d.entry.js +2 -0
  320. package/dist/geotrek-rando-widget/p-2092e60d.entry.js.br +0 -0
  321. package/dist/geotrek-rando-widget/p-2092e60d.entry.js.gz +0 -0
  322. package/dist/geotrek-rando-widget/p-2092e60d.entry.js.map +1 -0
  323. package/dist/geotrek-rando-widget/{p-e6f85aed.system.js → p-2a99981a.system.js} +1 -1
  324. package/dist/geotrek-rando-widget/p-2a99981a.system.js.br +0 -0
  325. package/dist/geotrek-rando-widget/p-2a99981a.system.js.gz +0 -0
  326. package/dist/geotrek-rando-widget/{p-e6f85aed.system.js.map → p-2a99981a.system.js.map} +1 -1
  327. package/dist/geotrek-rando-widget/p-360241fa.system.entry.js +2 -0
  328. package/dist/geotrek-rando-widget/p-360241fa.system.entry.js.br +0 -0
  329. package/dist/geotrek-rando-widget/p-360241fa.system.entry.js.gz +0 -0
  330. package/dist/geotrek-rando-widget/p-360241fa.system.entry.js.map +1 -0
  331. package/dist/geotrek-rando-widget/p-4f746b28.js +3 -0
  332. package/dist/geotrek-rando-widget/p-4f746b28.js.br +0 -0
  333. package/dist/geotrek-rando-widget/p-4f746b28.js.gz +0 -0
  334. package/dist/geotrek-rando-widget/p-4f746b28.js.map +1 -0
  335. package/dist/geotrek-rando-widget/p-58cf0dd0.js +2 -0
  336. package/dist/geotrek-rando-widget/p-58cf0dd0.js.br +0 -0
  337. package/dist/geotrek-rando-widget/p-58cf0dd0.js.gz +0 -0
  338. package/dist/geotrek-rando-widget/p-58cf0dd0.js.map +1 -0
  339. package/dist/geotrek-rando-widget/p-59c35d04.entry.js +2 -0
  340. package/dist/geotrek-rando-widget/p-59c35d04.entry.js.br +0 -0
  341. package/dist/geotrek-rando-widget/p-59c35d04.entry.js.gz +0 -0
  342. package/dist/geotrek-rando-widget/p-59c35d04.entry.js.map +1 -0
  343. package/dist/geotrek-rando-widget/{p-66d490d8.system.js → p-634eaa8f.system.js} +1 -1
  344. package/dist/geotrek-rando-widget/p-634eaa8f.system.js.br +0 -0
  345. package/dist/geotrek-rando-widget/p-634eaa8f.system.js.gz +0 -0
  346. package/dist/geotrek-rando-widget/{p-66d490d8.system.js.map → p-634eaa8f.system.js.map} +1 -1
  347. package/dist/geotrek-rando-widget/{p-a9a35a44.system.js → p-63e651bf.system.js} +1 -1
  348. package/dist/geotrek-rando-widget/p-63e651bf.system.js.br +0 -0
  349. package/dist/geotrek-rando-widget/p-63e651bf.system.js.gz +0 -0
  350. package/dist/geotrek-rando-widget/{p-a9a35a44.system.js.map → p-63e651bf.system.js.map} +1 -1
  351. package/dist/geotrek-rando-widget/p-758bdb7e.system.js +2 -0
  352. package/dist/geotrek-rando-widget/p-758bdb7e.system.js.br +0 -0
  353. package/dist/geotrek-rando-widget/p-758bdb7e.system.js.gz +0 -0
  354. package/dist/geotrek-rando-widget/p-758bdb7e.system.js.map +1 -0
  355. package/dist/geotrek-rando-widget/p-8872ebd8.system.js +2 -0
  356. package/dist/geotrek-rando-widget/p-8872ebd8.system.js.br +0 -0
  357. package/dist/geotrek-rando-widget/p-8872ebd8.system.js.gz +0 -0
  358. package/dist/geotrek-rando-widget/p-8872ebd8.system.js.map +1 -0
  359. package/dist/geotrek-rando-widget/p-8e38db57.system.js +2 -0
  360. package/dist/geotrek-rando-widget/p-8e38db57.system.js.br +0 -0
  361. package/dist/geotrek-rando-widget/p-8e38db57.system.js.gz +0 -0
  362. package/dist/geotrek-rando-widget/p-8e38db57.system.js.map +1 -0
  363. package/dist/geotrek-rando-widget/p-a06aacd4.js +2 -0
  364. package/dist/geotrek-rando-widget/p-a06aacd4.js.br +0 -0
  365. package/dist/geotrek-rando-widget/p-a06aacd4.js.gz +0 -0
  366. package/dist/geotrek-rando-widget/p-a06aacd4.js.map +1 -0
  367. package/dist/geotrek-rando-widget/{p-88c3a6bd.js → p-b5fc5b41.js} +1 -1
  368. package/dist/geotrek-rando-widget/p-b5fc5b41.js.br +0 -0
  369. package/dist/geotrek-rando-widget/p-b5fc5b41.js.gz +0 -0
  370. package/dist/geotrek-rando-widget/{p-88c3a6bd.js.map → p-b5fc5b41.js.map} +1 -1
  371. package/dist/geotrek-rando-widget/p-d5094323.system.js +3 -0
  372. package/dist/geotrek-rando-widget/p-d5094323.system.js.br +0 -0
  373. package/dist/geotrek-rando-widget/p-d5094323.system.js.gz +0 -0
  374. package/dist/geotrek-rando-widget/p-d5094323.system.js.map +1 -0
  375. package/dist/geotrek-rando-widget/p-da631d19.system.entry.js +14 -0
  376. package/dist/geotrek-rando-widget/p-da631d19.system.entry.js.br +0 -0
  377. package/dist/geotrek-rando-widget/p-da631d19.system.entry.js.gz +0 -0
  378. package/dist/geotrek-rando-widget/p-da631d19.system.entry.js.map +1 -0
  379. package/dist/geotrek-rando-widget/p-dc91249a.system.js +2 -0
  380. package/dist/geotrek-rando-widget/p-dc91249a.system.js.br +0 -0
  381. package/dist/geotrek-rando-widget/p-dc91249a.system.js.gz +0 -0
  382. package/dist/geotrek-rando-widget/p-dc91249a.system.js.map +1 -0
  383. package/dist/geotrek-rando-widget/p-e2660a2c.system.entry.js +2 -0
  384. package/dist/geotrek-rando-widget/p-e2660a2c.system.entry.js.br +0 -0
  385. package/dist/geotrek-rando-widget/p-e2660a2c.system.entry.js.gz +0 -0
  386. package/dist/geotrek-rando-widget/p-e2660a2c.system.entry.js.map +1 -0
  387. package/dist/geotrek-rando-widget/p-ebbb300d.system.entry.js +2 -0
  388. package/dist/geotrek-rando-widget/p-ebbb300d.system.entry.js.br +0 -0
  389. package/dist/geotrek-rando-widget/p-ebbb300d.system.entry.js.gz +0 -0
  390. package/dist/geotrek-rando-widget/p-ebbb300d.system.entry.js.map +1 -0
  391. package/dist/types/components/grw-app/grw-app.d.ts +20 -6
  392. package/dist/types/components/grw-information-desk-detail/grw-information-desk-detail.d.ts +8 -0
  393. package/dist/types/components/grw-map/grw-map.d.ts +28 -6
  394. package/dist/types/components/grw-poi-detail/grw-poi-detail.d.ts +11 -0
  395. package/dist/types/components/grw-select-language/grw-select-language.d.ts +4 -0
  396. package/dist/types/components/grw-trek-card/grw-trek-card.d.ts +5 -2
  397. package/dist/types/components/grw-trek-detail/grw-trek-detail.d.ts +74 -4
  398. package/dist/types/components/grw-treks-list/grw-treks-list.d.ts +6 -3
  399. package/dist/types/components.d.ts +115 -30
  400. package/dist/types/i18n/i18n.d.ts +56 -0
  401. package/dist/types/stencil-public-runtime.d.ts +3 -0
  402. package/dist/types/store/grw-trek-provider.d.ts +3 -1
  403. package/dist/types/store/grw-treks-provider.d.ts +3 -1
  404. package/dist/types/store/store.d.ts +4 -0
  405. package/dist/types/types/types.d.ts +17 -3
  406. package/loader/index.d.ts +1 -1
  407. package/package.json +17 -14
  408. package/readme.md +4 -2
  409. package/dist/cjs/css-shim-4e479c1a.js.br +0 -0
  410. package/dist/cjs/css-shim-4e479c1a.js.gz +0 -0
  411. package/dist/cjs/dom-52c0133a.js.br +0 -0
  412. package/dist/cjs/dom-52c0133a.js.gz +0 -0
  413. package/dist/cjs/grw-filter_6.cjs.entry.js.br +0 -0
  414. package/dist/cjs/grw-filter_6.cjs.entry.js.gz +0 -0
  415. package/dist/cjs/grw-filter_6.cjs.entry.js.map +0 -1
  416. package/dist/cjs/index-5c1a15c7.js.br +0 -0
  417. package/dist/cjs/index-5c1a15c7.js.gz +0 -0
  418. package/dist/cjs/index-5c1a15c7.js.map +0 -1
  419. package/dist/cjs/shadow-css-388a8a25.js.br +0 -0
  420. package/dist/cjs/shadow-css-388a8a25.js.gz +0 -0
  421. package/dist/cjs/store-a027262c.js.br +0 -0
  422. package/dist/cjs/store-a027262c.js.gz +0 -0
  423. package/dist/cjs/store-a027262c.js.map +0 -1
  424. package/dist/collection/assets/arrow-back.svg +0 -1
  425. package/dist/collection/assets/arrow-back.svg.br +0 -0
  426. package/dist/collection/assets/arrow-back.svg.gz +0 -0
  427. package/dist/collection/assets/ascent.svg +0 -1
  428. package/dist/collection/assets/ascent.svg.br +0 -0
  429. package/dist/collection/assets/ascent.svg.gz +0 -0
  430. package/dist/collection/assets/duration.svg +0 -1
  431. package/dist/collection/assets/duration.svg.br +0 -0
  432. package/dist/collection/assets/duration.svg.gz +0 -0
  433. package/dist/collection/assets/length.svg +0 -1
  434. package/dist/collection/assets/length.svg.br +0 -4
  435. package/dist/collection/assets/length.svg.gz +0 -0
  436. package/dist/esm/css-shim-cfbf2cf5.js.br +0 -0
  437. package/dist/esm/css-shim-cfbf2cf5.js.gz +0 -0
  438. package/dist/esm/dom-c0f8af80.js.br +0 -0
  439. package/dist/esm/dom-c0f8af80.js.gz +0 -0
  440. package/dist/esm/grw-filter_6.entry.js.br +0 -0
  441. package/dist/esm/grw-filter_6.entry.js.gz +0 -0
  442. package/dist/esm/grw-filter_6.entry.js.map +0 -1
  443. package/dist/esm/index-e862524f.js.br +0 -0
  444. package/dist/esm/index-e862524f.js.gz +0 -0
  445. package/dist/esm/index-e862524f.js.map +0 -1
  446. package/dist/esm/shadow-css-12b9a099.js.br +0 -0
  447. package/dist/esm/shadow-css-12b9a099.js.gz +0 -0
  448. package/dist/esm/store-5565fa38.js.br +0 -0
  449. package/dist/esm/store-5565fa38.js.gz +0 -0
  450. package/dist/esm/store-5565fa38.js.map +0 -1
  451. package/dist/esm-es5/css-shim-cfbf2cf5.js.br +0 -0
  452. package/dist/esm-es5/css-shim-cfbf2cf5.js.gz +0 -0
  453. package/dist/esm-es5/dom-c0f8af80.js.br +0 -0
  454. package/dist/esm-es5/dom-c0f8af80.js.gz +0 -0
  455. package/dist/esm-es5/grw-filter_6.entry.js +0 -7
  456. package/dist/esm-es5/grw-filter_6.entry.js.br +0 -0
  457. package/dist/esm-es5/grw-filter_6.entry.js.gz +0 -0
  458. package/dist/esm-es5/grw-filter_6.entry.js.map +0 -1
  459. package/dist/esm-es5/index-e862524f.js +0 -3
  460. package/dist/esm-es5/index-e862524f.js.br +0 -0
  461. package/dist/esm-es5/index-e862524f.js.gz +0 -0
  462. package/dist/esm-es5/index-e862524f.js.map +0 -1
  463. package/dist/esm-es5/shadow-css-12b9a099.js.br +0 -0
  464. package/dist/esm-es5/shadow-css-12b9a099.js.gz +0 -0
  465. package/dist/esm-es5/store-5565fa38.js.br +0 -0
  466. package/dist/esm-es5/store-5565fa38.js.gz +0 -0
  467. package/dist/esm-es5/store-5565fa38.js.map +0 -1
  468. package/dist/geotrek-rando-widget/assets/arrow-back.svg +0 -1
  469. package/dist/geotrek-rando-widget/assets/arrow-back.svg.br +0 -0
  470. package/dist/geotrek-rando-widget/assets/arrow-back.svg.gz +0 -0
  471. package/dist/geotrek-rando-widget/assets/ascent.svg +0 -1
  472. package/dist/geotrek-rando-widget/assets/ascent.svg.br +0 -0
  473. package/dist/geotrek-rando-widget/assets/ascent.svg.gz +0 -0
  474. package/dist/geotrek-rando-widget/assets/duration.svg +0 -1
  475. package/dist/geotrek-rando-widget/assets/duration.svg.br +0 -0
  476. package/dist/geotrek-rando-widget/assets/duration.svg.gz +0 -0
  477. package/dist/geotrek-rando-widget/assets/length.svg +0 -1
  478. package/dist/geotrek-rando-widget/assets/length.svg.br +0 -4
  479. package/dist/geotrek-rando-widget/assets/length.svg.gz +0 -0
  480. package/dist/geotrek-rando-widget/p-199359a3.system.js +0 -2
  481. package/dist/geotrek-rando-widget/p-199359a3.system.js.br +0 -0
  482. package/dist/geotrek-rando-widget/p-199359a3.system.js.gz +0 -0
  483. package/dist/geotrek-rando-widget/p-199359a3.system.js.map +0 -1
  484. package/dist/geotrek-rando-widget/p-19d69e2f.system.js +0 -3
  485. package/dist/geotrek-rando-widget/p-19d69e2f.system.js.br +0 -0
  486. package/dist/geotrek-rando-widget/p-19d69e2f.system.js.gz +0 -0
  487. package/dist/geotrek-rando-widget/p-19d69e2f.system.js.map +0 -1
  488. package/dist/geotrek-rando-widget/p-1eb5bb96.js.br +0 -0
  489. package/dist/geotrek-rando-widget/p-1eb5bb96.js.gz +0 -0
  490. package/dist/geotrek-rando-widget/p-24c3dfb6.entry.js +0 -7
  491. package/dist/geotrek-rando-widget/p-24c3dfb6.entry.js.br +0 -0
  492. package/dist/geotrek-rando-widget/p-24c3dfb6.entry.js.gz +0 -0
  493. package/dist/geotrek-rando-widget/p-24c3dfb6.entry.js.map +0 -1
  494. package/dist/geotrek-rando-widget/p-3eb96982.js.br +0 -0
  495. package/dist/geotrek-rando-widget/p-3eb96982.js.gz +0 -0
  496. package/dist/geotrek-rando-widget/p-504d151b.entry.js +0 -2
  497. package/dist/geotrek-rando-widget/p-504d151b.entry.js.br +0 -0
  498. package/dist/geotrek-rando-widget/p-504d151b.entry.js.gz +0 -0
  499. package/dist/geotrek-rando-widget/p-504d151b.entry.js.map +0 -1
  500. package/dist/geotrek-rando-widget/p-52c83c69.entry.js +0 -2
  501. package/dist/geotrek-rando-widget/p-52c83c69.entry.js.br +0 -0
  502. package/dist/geotrek-rando-widget/p-52c83c69.entry.js.gz +0 -0
  503. package/dist/geotrek-rando-widget/p-52c83c69.entry.js.map +0 -1
  504. package/dist/geotrek-rando-widget/p-66d490d8.system.js.br +0 -0
  505. package/dist/geotrek-rando-widget/p-66d490d8.system.js.gz +0 -0
  506. package/dist/geotrek-rando-widget/p-7262406c.js +0 -2
  507. package/dist/geotrek-rando-widget/p-7262406c.js.br +0 -0
  508. package/dist/geotrek-rando-widget/p-7262406c.js.gz +0 -0
  509. package/dist/geotrek-rando-widget/p-7262406c.js.map +0 -1
  510. package/dist/geotrek-rando-widget/p-88c3a6bd.js.br +0 -0
  511. package/dist/geotrek-rando-widget/p-88c3a6bd.js.gz +0 -0
  512. package/dist/geotrek-rando-widget/p-921dc146.system.entry.js +0 -2
  513. package/dist/geotrek-rando-widget/p-921dc146.system.entry.js.br +0 -0
  514. package/dist/geotrek-rando-widget/p-921dc146.system.entry.js.gz +0 -0
  515. package/dist/geotrek-rando-widget/p-921dc146.system.entry.js.map +0 -1
  516. package/dist/geotrek-rando-widget/p-99c86553.system.entry.js +0 -2
  517. package/dist/geotrek-rando-widget/p-99c86553.system.entry.js.br +0 -0
  518. package/dist/geotrek-rando-widget/p-99c86553.system.entry.js.gz +0 -0
  519. package/dist/geotrek-rando-widget/p-99c86553.system.entry.js.map +0 -1
  520. package/dist/geotrek-rando-widget/p-a96ced47.system.entry.js +0 -2
  521. package/dist/geotrek-rando-widget/p-a96ced47.system.entry.js.br +0 -0
  522. package/dist/geotrek-rando-widget/p-a96ced47.system.entry.js.gz +0 -0
  523. package/dist/geotrek-rando-widget/p-a96ced47.system.entry.js.map +0 -1
  524. package/dist/geotrek-rando-widget/p-a9a35a44.system.js.br +0 -0
  525. package/dist/geotrek-rando-widget/p-a9a35a44.system.js.gz +0 -0
  526. package/dist/geotrek-rando-widget/p-b00cf3cc.system.js +0 -2
  527. package/dist/geotrek-rando-widget/p-b00cf3cc.system.js.br +0 -0
  528. package/dist/geotrek-rando-widget/p-b00cf3cc.system.js.gz +0 -0
  529. package/dist/geotrek-rando-widget/p-b00cf3cc.system.js.map +0 -1
  530. package/dist/geotrek-rando-widget/p-c0687c5e.entry.js +0 -2
  531. package/dist/geotrek-rando-widget/p-c0687c5e.entry.js.br +0 -0
  532. package/dist/geotrek-rando-widget/p-c0687c5e.entry.js.gz +0 -0
  533. package/dist/geotrek-rando-widget/p-c0687c5e.entry.js.map +0 -1
  534. package/dist/geotrek-rando-widget/p-d8bdcfaf.js +0 -3
  535. package/dist/geotrek-rando-widget/p-d8bdcfaf.js.br +0 -0
  536. package/dist/geotrek-rando-widget/p-d8bdcfaf.js.gz +0 -0
  537. package/dist/geotrek-rando-widget/p-d8bdcfaf.js.map +0 -1
  538. package/dist/geotrek-rando-widget/p-e6f85aed.system.js.br +0 -0
  539. package/dist/geotrek-rando-widget/p-e6f85aed.system.js.gz +0 -0
  540. package/dist/geotrek-rando-widget/p-ee15d9b3.system.entry.js +0 -7
  541. package/dist/geotrek-rando-widget/p-ee15d9b3.system.entry.js.br +0 -0
  542. package/dist/geotrek-rando-widget/p-ee15d9b3.system.entry.js.gz +0 -0
  543. package/dist/geotrek-rando-widget/p-ee15d9b3.system.entry.js.map +0 -1
@@ -9,7 +9,11 @@ const NAMESPACE = 'geotrek-rando-widget';
9
9
  * Modified for Stencil's renderer and slot projection
10
10
  */
11
11
  let scopeId;
12
+ let contentRef;
12
13
  let hostTagName;
14
+ let useNativeShadowDom = false;
15
+ let checkSlotFallbackVisibility = false;
16
+ let checkSlotRelocate = false;
13
17
  let isSvgMode = false;
14
18
  let renderingRef = null;
15
19
  let queuePending = false;
@@ -78,6 +82,7 @@ function queryNonceMetaTagContent(doc) {
78
82
  const h = (nodeName, vnodeData, ...children) => {
79
83
  let child = null;
80
84
  let key = null;
85
+ let slotName = null;
81
86
  let simple = false;
82
87
  let lastSimple = false;
83
88
  const vNodeChildren = [];
@@ -109,6 +114,9 @@ const h = (nodeName, vnodeData, ...children) => {
109
114
  if (vnodeData.key) {
110
115
  key = vnodeData.key;
111
116
  }
117
+ if (vnodeData.name) {
118
+ slotName = vnodeData.name;
119
+ }
112
120
  {
113
121
  const classData = vnodeData.className || vnodeData.class;
114
122
  if (classData) {
@@ -129,6 +137,9 @@ const h = (nodeName, vnodeData, ...children) => {
129
137
  {
130
138
  vnode.$key$ = key;
131
139
  }
140
+ {
141
+ vnode.$name$ = slotName;
142
+ }
132
143
  return vnode;
133
144
  };
134
145
  /**
@@ -153,6 +164,9 @@ const newVNode = (tag, text) => {
153
164
  {
154
165
  vnode.$key$ = null;
155
166
  }
167
+ {
168
+ vnode.$name$ = null;
169
+ }
156
170
  return vnode;
157
171
  };
158
172
  const Host = {};
@@ -374,6 +388,12 @@ const setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
374
388
  }
375
389
  else if (memberName === 'key')
376
390
  ;
391
+ else if (memberName === 'ref') {
392
+ // minifier will clean this up
393
+ if (newValue) {
394
+ newValue(elm);
395
+ }
396
+ }
377
397
  else if ((!isProp ) &&
378
398
  memberName[0] === 'o' &&
379
399
  memberName[1] === 'n') {
@@ -490,13 +510,36 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
490
510
  let i = 0;
491
511
  let elm;
492
512
  let childNode;
513
+ let oldVNode;
514
+ if (!useNativeShadowDom) {
515
+ // remember for later we need to check to relocate nodes
516
+ checkSlotRelocate = true;
517
+ if (newVNode.$tag$ === 'slot') {
518
+ if (scopeId) {
519
+ // scoped css needs to add its scoped id to the parent element
520
+ parentElm.classList.add(scopeId + '-s');
521
+ }
522
+ newVNode.$flags$ |= newVNode.$children$
523
+ ? // slot element has fallback content
524
+ 2 /* VNODE_FLAGS.isSlotFallback */
525
+ : // slot element does not have fallback content
526
+ 1 /* VNODE_FLAGS.isSlotReference */;
527
+ }
528
+ }
493
529
  if (newVNode.$text$ !== null) {
494
530
  // create text node
495
531
  elm = newVNode.$elm$ = doc.createTextNode(newVNode.$text$);
496
532
  }
533
+ else if (newVNode.$flags$ & 1 /* VNODE_FLAGS.isSlotReference */) {
534
+ // create a slot reference node
535
+ elm = newVNode.$elm$ =
536
+ doc.createTextNode('');
537
+ }
497
538
  else {
498
539
  // create element
499
- elm = newVNode.$elm$ = (doc.createElement(newVNode.$tag$));
540
+ elm = newVNode.$elm$ = (doc.createElement(newVNode.$flags$ & 2 /* VNODE_FLAGS.isSlotFallback */
541
+ ? 'slot-fb'
542
+ : newVNode.$tag$));
500
543
  // add css classes, attrs, props, listeners, etc.
501
544
  {
502
545
  updateElement(null, newVNode, isSvgMode);
@@ -509,7 +552,7 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
509
552
  if (newVNode.$children$) {
510
553
  for (i = 0; i < newVNode.$children$.length; ++i) {
511
554
  // create the node
512
- childNode = createElm(oldParentVNode, newVNode, i);
555
+ childNode = createElm(oldParentVNode, newVNode, i, elm);
513
556
  // return node could have been null
514
557
  if (childNode) {
515
558
  // append our new node
@@ -518,8 +561,50 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
518
561
  }
519
562
  }
520
563
  }
564
+ {
565
+ elm['s-hn'] = hostTagName;
566
+ if (newVNode.$flags$ & (2 /* VNODE_FLAGS.isSlotFallback */ | 1 /* VNODE_FLAGS.isSlotReference */)) {
567
+ // remember the content reference comment
568
+ elm['s-sr'] = true;
569
+ // remember the content reference comment
570
+ elm['s-cr'] = contentRef;
571
+ // remember the slot name, or empty string for default slot
572
+ elm['s-sn'] = newVNode.$name$ || '';
573
+ // check if we've got an old vnode for this slot
574
+ oldVNode = oldParentVNode && oldParentVNode.$children$ && oldParentVNode.$children$[childIndex];
575
+ if (oldVNode && oldVNode.$tag$ === newVNode.$tag$ && oldParentVNode.$elm$) {
576
+ // we've got an old slot vnode and the wrapper is being replaced
577
+ // so let's move the old slot content back to it's original location
578
+ putBackInOriginalLocation(oldParentVNode.$elm$, false);
579
+ }
580
+ }
581
+ }
521
582
  return elm;
522
583
  };
584
+ const putBackInOriginalLocation = (parentElm, recursive) => {
585
+ plt.$flags$ |= 1 /* PLATFORM_FLAGS.isTmpDisconnected */;
586
+ const oldSlotChildNodes = parentElm.childNodes;
587
+ for (let i = oldSlotChildNodes.length - 1; i >= 0; i--) {
588
+ const childNode = oldSlotChildNodes[i];
589
+ if (childNode['s-hn'] !== hostTagName && childNode['s-ol']) {
590
+ // // this child node in the old element is from another component
591
+ // // remove this node from the old slot's parent
592
+ // childNode.remove();
593
+ // and relocate it back to it's original location
594
+ parentReferenceNode(childNode).insertBefore(childNode, referenceNode(childNode));
595
+ // remove the old original location comment entirely
596
+ // later on the patch function will know what to do
597
+ // and move this to the correct spot in need be
598
+ childNode['s-ol'].remove();
599
+ childNode['s-ol'] = undefined;
600
+ checkSlotRelocate = true;
601
+ }
602
+ if (recursive) {
603
+ putBackInOriginalLocation(childNode, recursive);
604
+ }
605
+ }
606
+ plt.$flags$ &= ~1 /* PLATFORM_FLAGS.isTmpDisconnected */;
607
+ };
523
608
  /**
524
609
  * Create DOM nodes corresponding to a list of {@link d.Vnode} objects and
525
610
  * add them to the DOM in the appropriate place.
@@ -536,17 +621,17 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
536
621
  * creating DOM nodes (inclusive)
537
622
  */
538
623
  const addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {
539
- let containerElm = (parentElm);
624
+ let containerElm = ((parentElm['s-cr'] && parentElm['s-cr'].parentNode) || parentElm);
540
625
  let childNode;
541
626
  if (containerElm.shadowRoot && containerElm.tagName === hostTagName) {
542
627
  containerElm = containerElm.shadowRoot;
543
628
  }
544
629
  for (; startIdx <= endIdx; ++startIdx) {
545
630
  if (vnodes[startIdx]) {
546
- childNode = createElm(null, parentVNode, startIdx);
631
+ childNode = createElm(null, parentVNode, startIdx, parentElm);
547
632
  if (childNode) {
548
633
  vnodes[startIdx].$elm$ = childNode;
549
- containerElm.insertBefore(childNode, before);
634
+ containerElm.insertBefore(childNode, referenceNode(before) );
550
635
  }
551
636
  }
552
637
  }
@@ -561,15 +646,31 @@ const addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) =>
561
646
  * @param vnodes a list of virtual DOM nodes to remove
562
647
  * @param startIdx the index at which to start removing nodes (inclusive)
563
648
  * @param endIdx the index at which to stop removing nodes (inclusive)
564
- * @param vnode a VNode
565
- * @param elm an element
566
649
  */
567
- const removeVnodes = (vnodes, startIdx, endIdx, vnode, elm) => {
568
- for (; startIdx <= endIdx; ++startIdx) {
569
- if ((vnode = vnodes[startIdx])) {
570
- elm = vnode.$elm$;
571
- // remove the vnode's element from the dom
572
- elm.remove();
650
+ const removeVnodes = (vnodes, startIdx, endIdx) => {
651
+ for (let index = startIdx; index <= endIdx; ++index) {
652
+ const vnode = vnodes[index];
653
+ if (vnode) {
654
+ const elm = vnode.$elm$;
655
+ nullifyVNodeRefs(vnode);
656
+ if (elm) {
657
+ {
658
+ // we're removing this element
659
+ // so it's possible we need to show slot fallback content now
660
+ checkSlotFallbackVisibility = true;
661
+ if (elm['s-ol']) {
662
+ // remove the original location comment
663
+ elm['s-ol'].remove();
664
+ }
665
+ else {
666
+ // it's possible that child nodes of the node
667
+ // that's being removed are slot nodes
668
+ putBackInOriginalLocation(elm, true);
669
+ }
670
+ }
671
+ // remove the vnode's element from the dom
672
+ elm.remove();
673
+ }
573
674
  }
574
675
  }
575
676
  };
@@ -686,6 +787,23 @@ const updateChildren = (parentElm, oldCh, newVNode, newCh) => {
686
787
  newEndVnode = newCh[--newEndIdx];
687
788
  }
688
789
  else if (isSameVnode(oldStartVnode, newEndVnode)) {
790
+ // case: "Vnode moved right"
791
+ //
792
+ // We've found that the last node in our window on the new children is
793
+ // the same VNode as the _first_ node in our window on the old children
794
+ // we're dealing with now. Visually, this is the layout of these two
795
+ // nodes:
796
+ //
797
+ // newCh: [..., newStartVnode , ... , newEndVnode , ...]
798
+ // ^^^^^^^^^^^
799
+ // oldCh: [..., oldStartVnode , ... , oldEndVnode , ...]
800
+ // ^^^^^^^^^^^^^
801
+ //
802
+ // In this situation we need to patch `newEndVnode` onto `oldStartVnode`
803
+ // and move the DOM element for `oldStartVnode`.
804
+ if ((oldStartVnode.$tag$ === 'slot' || newEndVnode.$tag$ === 'slot')) {
805
+ putBackInOriginalLocation(oldStartVnode.$elm$.parentNode, false);
806
+ }
689
807
  patch(oldStartVnode, newEndVnode);
690
808
  // We need to move the element for `oldStartVnode` into a position which
691
809
  // will be appropriate for `newEndVnode`. For this we can use
@@ -709,6 +827,24 @@ const updateChildren = (parentElm, oldCh, newVNode, newCh) => {
709
827
  newEndVnode = newCh[--newEndIdx];
710
828
  }
711
829
  else if (isSameVnode(oldEndVnode, newStartVnode)) {
830
+ // case: "Vnode moved left"
831
+ //
832
+ // We've found that the first node in our window on the new children is
833
+ // the same VNode as the _last_ node in our window on the old children.
834
+ // Visually, this is the layout of these two nodes:
835
+ //
836
+ // newCh: [..., newStartVnode , ... , newEndVnode , ...]
837
+ // ^^^^^^^^^^^^^
838
+ // oldCh: [..., oldStartVnode , ... , oldEndVnode , ...]
839
+ // ^^^^^^^^^^^
840
+ //
841
+ // In this situation we need to patch `newStartVnode` onto `oldEndVnode`
842
+ // (which will handle updating any changed attributes, reconciling their
843
+ // children etc) but we also need to move the DOM node to which
844
+ // `oldEndVnode` corresponds.
845
+ if ((oldStartVnode.$tag$ === 'slot' || newEndVnode.$tag$ === 'slot')) {
846
+ putBackInOriginalLocation(oldEndVnode.$elm$.parentNode, false);
847
+ }
712
848
  patch(oldEndVnode, newStartVnode);
713
849
  // We've already checked above if `oldStartVnode` and `newStartVnode` are
714
850
  // the same node, so since we're here we know that they are not. Thus we
@@ -743,7 +879,7 @@ const updateChildren = (parentElm, oldCh, newVNode, newCh) => {
743
879
  elmToMove = oldCh[idxInOld];
744
880
  if (elmToMove.$tag$ !== newStartVnode.$tag$) {
745
881
  // the tag doesn't match so we'll need a new DOM element
746
- node = createElm(oldCh && oldCh[newStartIdx], newVNode, idxInOld);
882
+ node = createElm(oldCh && oldCh[newStartIdx], newVNode, idxInOld, parentElm);
747
883
  }
748
884
  else {
749
885
  patch(elmToMove, newStartVnode);
@@ -759,13 +895,13 @@ const updateChildren = (parentElm, oldCh, newVNode, newCh) => {
759
895
  // the key of the first new child OR the build is not using `key`
760
896
  // attributes at all. In either case we need to create a new element
761
897
  // for the new node.
762
- node = createElm(oldCh && oldCh[newStartIdx], newVNode, newStartIdx);
898
+ node = createElm(oldCh && oldCh[newStartIdx], newVNode, newStartIdx, parentElm);
763
899
  newStartVnode = newCh[++newStartIdx];
764
900
  }
765
901
  if (node) {
766
902
  // if we created a new node then handle inserting it to the DOM
767
903
  {
768
- oldStartVnode.$elm$.parentNode.insertBefore(node, oldStartVnode.$elm$);
904
+ parentReferenceNode(oldStartVnode.$elm$).insertBefore(node, referenceNode(oldStartVnode.$elm$));
769
905
  }
770
906
  }
771
907
  }
@@ -803,6 +939,9 @@ const isSameVnode = (leftVNode, rightVNode) => {
803
939
  // compare if two vnode to see if they're "technically" the same
804
940
  // need to have the same element tag, and same key to be the same
805
941
  if (leftVNode.$tag$ === rightVNode.$tag$) {
942
+ if (leftVNode.$tag$ === 'slot') {
943
+ return leftVNode.$name$ === rightVNode.$name$;
944
+ }
806
945
  // this will be set if components in the build have `key` attrs set on them
807
946
  {
808
947
  return leftVNode.$key$ === rightVNode.$key$;
@@ -810,6 +949,14 @@ const isSameVnode = (leftVNode, rightVNode) => {
810
949
  }
811
950
  return false;
812
951
  };
952
+ const referenceNode = (node) => {
953
+ // this node was relocated to a new location in the dom
954
+ // because of some other component's slot
955
+ // but we still have an html comment in place of where
956
+ // it's original location was according to it's original vdom
957
+ return (node && node['s-ol']) || node;
958
+ };
959
+ const parentReferenceNode = (node) => (node['s-ol'] ? node['s-ol'] : node).parentNode;
813
960
  /**
814
961
  * Handle reconciling an outdated VNode with a new one which corresponds to
815
962
  * it. This function handles flushing updates to the DOM and reconciling the
@@ -822,10 +969,14 @@ const patch = (oldVNode, newVNode) => {
822
969
  const elm = (newVNode.$elm$ = oldVNode.$elm$);
823
970
  const oldChildren = oldVNode.$children$;
824
971
  const newChildren = newVNode.$children$;
972
+ const tag = newVNode.$tag$;
825
973
  const text = newVNode.$text$;
974
+ let defaultHolder;
826
975
  if (text === null) {
827
976
  {
828
- {
977
+ if (tag === 'slot')
978
+ ;
979
+ else {
829
980
  // either this is the first render of an element OR it's an update
830
981
  // AND we already know it's possible it could have changed
831
982
  // this updates the element's css classes, attrs, props, listeners, etc.
@@ -851,12 +1002,160 @@ const patch = (oldVNode, newVNode) => {
851
1002
  removeVnodes(oldChildren, 0, oldChildren.length - 1);
852
1003
  }
853
1004
  }
1005
+ else if ((defaultHolder = elm['s-cr'])) {
1006
+ // this element has slotted content
1007
+ defaultHolder.parentNode.textContent = text;
1008
+ }
854
1009
  else if (oldVNode.$text$ !== text) {
855
1010
  // update the text content for the text only vnode
856
1011
  // and also only if the text is different than before
857
1012
  elm.data = text;
858
1013
  }
859
1014
  };
1015
+ const updateFallbackSlotVisibility = (elm) => {
1016
+ // tslint:disable-next-line: prefer-const
1017
+ const childNodes = elm.childNodes;
1018
+ let childNode;
1019
+ let i;
1020
+ let ilen;
1021
+ let j;
1022
+ let slotNameAttr;
1023
+ let nodeType;
1024
+ for (i = 0, ilen = childNodes.length; i < ilen; i++) {
1025
+ childNode = childNodes[i];
1026
+ if (childNode.nodeType === 1 /* NODE_TYPE.ElementNode */) {
1027
+ if (childNode['s-sr']) {
1028
+ // this is a slot fallback node
1029
+ // get the slot name for this slot reference node
1030
+ slotNameAttr = childNode['s-sn'];
1031
+ // by default always show a fallback slot node
1032
+ // then hide it if there are other slots in the light dom
1033
+ childNode.hidden = false;
1034
+ for (j = 0; j < ilen; j++) {
1035
+ nodeType = childNodes[j].nodeType;
1036
+ if (childNodes[j]['s-hn'] !== childNode['s-hn'] || slotNameAttr !== '') {
1037
+ // this sibling node is from a different component OR is a named fallback slot node
1038
+ if (nodeType === 1 /* NODE_TYPE.ElementNode */ && slotNameAttr === childNodes[j].getAttribute('slot')) {
1039
+ childNode.hidden = true;
1040
+ break;
1041
+ }
1042
+ }
1043
+ else {
1044
+ // this is a default fallback slot node
1045
+ // any element or text node (with content)
1046
+ // should hide the default fallback slot node
1047
+ if (nodeType === 1 /* NODE_TYPE.ElementNode */ ||
1048
+ (nodeType === 3 /* NODE_TYPE.TextNode */ && childNodes[j].textContent.trim() !== '')) {
1049
+ childNode.hidden = true;
1050
+ break;
1051
+ }
1052
+ }
1053
+ }
1054
+ }
1055
+ // keep drilling down
1056
+ updateFallbackSlotVisibility(childNode);
1057
+ }
1058
+ }
1059
+ };
1060
+ const relocateNodes = [];
1061
+ const relocateSlotContent = (elm) => {
1062
+ // tslint:disable-next-line: prefer-const
1063
+ let childNode;
1064
+ let node;
1065
+ let hostContentNodes;
1066
+ let slotNameAttr;
1067
+ let relocateNodeData;
1068
+ let j;
1069
+ let i = 0;
1070
+ const childNodes = elm.childNodes;
1071
+ const ilen = childNodes.length;
1072
+ for (; i < ilen; i++) {
1073
+ childNode = childNodes[i];
1074
+ if (childNode['s-sr'] && (node = childNode['s-cr']) && node.parentNode) {
1075
+ // first got the content reference comment node
1076
+ // then we got it's parent, which is where all the host content is in now
1077
+ hostContentNodes = node.parentNode.childNodes;
1078
+ slotNameAttr = childNode['s-sn'];
1079
+ for (j = hostContentNodes.length - 1; j >= 0; j--) {
1080
+ node = hostContentNodes[j];
1081
+ if (!node['s-cn'] && !node['s-nr'] && node['s-hn'] !== childNode['s-hn']) {
1082
+ // let's do some relocating to its new home
1083
+ // but never relocate a content reference node
1084
+ // that is suppose to always represent the original content location
1085
+ if (isNodeLocatedInSlot(node, slotNameAttr)) {
1086
+ // it's possible we've already decided to relocate this node
1087
+ relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
1088
+ // made some changes to slots
1089
+ // let's make sure we also double check
1090
+ // fallbacks are correctly hidden or shown
1091
+ checkSlotFallbackVisibility = true;
1092
+ node['s-sn'] = node['s-sn'] || slotNameAttr;
1093
+ if (relocateNodeData) {
1094
+ // previously we never found a slot home for this node
1095
+ // but turns out we did, so let's remember it now
1096
+ relocateNodeData.$slotRefNode$ = childNode;
1097
+ }
1098
+ else {
1099
+ // add to our list of nodes to relocate
1100
+ relocateNodes.push({
1101
+ $slotRefNode$: childNode,
1102
+ $nodeToRelocate$: node,
1103
+ });
1104
+ }
1105
+ if (node['s-sr']) {
1106
+ relocateNodes.map((relocateNode) => {
1107
+ if (isNodeLocatedInSlot(relocateNode.$nodeToRelocate$, node['s-sn'])) {
1108
+ relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
1109
+ if (relocateNodeData && !relocateNode.$slotRefNode$) {
1110
+ relocateNode.$slotRefNode$ = relocateNodeData.$slotRefNode$;
1111
+ }
1112
+ }
1113
+ });
1114
+ }
1115
+ }
1116
+ else if (!relocateNodes.some((r) => r.$nodeToRelocate$ === node)) {
1117
+ // so far this element does not have a slot home, not setting slotRefNode on purpose
1118
+ // if we never find a home for this element then we'll need to hide it
1119
+ relocateNodes.push({
1120
+ $nodeToRelocate$: node,
1121
+ });
1122
+ }
1123
+ }
1124
+ }
1125
+ }
1126
+ if (childNode.nodeType === 1 /* NODE_TYPE.ElementNode */) {
1127
+ relocateSlotContent(childNode);
1128
+ }
1129
+ }
1130
+ };
1131
+ const isNodeLocatedInSlot = (nodeToRelocate, slotNameAttr) => {
1132
+ if (nodeToRelocate.nodeType === 1 /* NODE_TYPE.ElementNode */) {
1133
+ if (nodeToRelocate.getAttribute('slot') === null && slotNameAttr === '') {
1134
+ return true;
1135
+ }
1136
+ if (nodeToRelocate.getAttribute('slot') === slotNameAttr) {
1137
+ return true;
1138
+ }
1139
+ return false;
1140
+ }
1141
+ if (nodeToRelocate['s-sn'] === slotNameAttr) {
1142
+ return true;
1143
+ }
1144
+ return slotNameAttr === '';
1145
+ };
1146
+ /**
1147
+ * 'Nullify' any VDom `ref` callbacks on a VDom node or its children by
1148
+ * calling them with `null`. This signals that the DOM element corresponding to
1149
+ * the VDom node has been removed from the DOM.
1150
+ *
1151
+ * @param vNode a virtual DOM node
1152
+ */
1153
+ const nullifyVNodeRefs = (vNode) => {
1154
+ {
1155
+ vNode.$attrs$ && vNode.$attrs$.ref && vNode.$attrs$.ref(null);
1156
+ vNode.$children$ && vNode.$children$.map(nullifyVNodeRefs);
1157
+ }
1158
+ };
860
1159
  /**
861
1160
  * The main entry point for Stencil's virtual DOM-based rendering engine
862
1161
  *
@@ -871,6 +1170,7 @@ const patch = (oldVNode, newVNode) => {
871
1170
  */
872
1171
  const renderVdom = (hostRef, renderFnResults) => {
873
1172
  const hostElm = hostRef.$hostElement$;
1173
+ const cmpMeta = hostRef.$cmpMeta$;
874
1174
  const oldVNode = hostRef.$vnode$ || newVNode(null, null);
875
1175
  const rootVnode = isHost(renderFnResults) ? renderFnResults : h(null, null, renderFnResults);
876
1176
  hostTagName = hostElm.tagName;
@@ -881,8 +1181,90 @@ const renderVdom = (hostRef, renderFnResults) => {
881
1181
  {
882
1182
  scopeId = hostElm['s-sc'];
883
1183
  }
1184
+ {
1185
+ contentRef = hostElm['s-cr'];
1186
+ useNativeShadowDom = supportsShadow && (cmpMeta.$flags$ & 1 /* CMP_FLAGS.shadowDomEncapsulation */) !== 0;
1187
+ // always reset
1188
+ checkSlotFallbackVisibility = false;
1189
+ }
884
1190
  // synchronous patch
885
1191
  patch(oldVNode, rootVnode);
1192
+ {
1193
+ // while we're moving nodes around existing nodes, temporarily disable
1194
+ // the disconnectCallback from working
1195
+ plt.$flags$ |= 1 /* PLATFORM_FLAGS.isTmpDisconnected */;
1196
+ if (checkSlotRelocate) {
1197
+ relocateSlotContent(rootVnode.$elm$);
1198
+ let relocateData;
1199
+ let nodeToRelocate;
1200
+ let orgLocationNode;
1201
+ let parentNodeRef;
1202
+ let insertBeforeNode;
1203
+ let refNode;
1204
+ let i = 0;
1205
+ for (; i < relocateNodes.length; i++) {
1206
+ relocateData = relocateNodes[i];
1207
+ nodeToRelocate = relocateData.$nodeToRelocate$;
1208
+ if (!nodeToRelocate['s-ol']) {
1209
+ // add a reference node marking this node's original location
1210
+ // keep a reference to this node for later lookups
1211
+ orgLocationNode =
1212
+ doc.createTextNode('');
1213
+ orgLocationNode['s-nr'] = nodeToRelocate;
1214
+ nodeToRelocate.parentNode.insertBefore((nodeToRelocate['s-ol'] = orgLocationNode), nodeToRelocate);
1215
+ }
1216
+ }
1217
+ for (i = 0; i < relocateNodes.length; i++) {
1218
+ relocateData = relocateNodes[i];
1219
+ nodeToRelocate = relocateData.$nodeToRelocate$;
1220
+ if (relocateData.$slotRefNode$) {
1221
+ // by default we're just going to insert it directly
1222
+ // after the slot reference node
1223
+ parentNodeRef = relocateData.$slotRefNode$.parentNode;
1224
+ insertBeforeNode = relocateData.$slotRefNode$.nextSibling;
1225
+ orgLocationNode = nodeToRelocate['s-ol'];
1226
+ while ((orgLocationNode = orgLocationNode.previousSibling)) {
1227
+ refNode = orgLocationNode['s-nr'];
1228
+ if (refNode && refNode['s-sn'] === nodeToRelocate['s-sn'] && parentNodeRef === refNode.parentNode) {
1229
+ refNode = refNode.nextSibling;
1230
+ if (!refNode || !refNode['s-nr']) {
1231
+ insertBeforeNode = refNode;
1232
+ break;
1233
+ }
1234
+ }
1235
+ }
1236
+ if ((!insertBeforeNode && parentNodeRef !== nodeToRelocate.parentNode) ||
1237
+ nodeToRelocate.nextSibling !== insertBeforeNode) {
1238
+ // we've checked that it's worth while to relocate
1239
+ // since that the node to relocate
1240
+ // has a different next sibling or parent relocated
1241
+ if (nodeToRelocate !== insertBeforeNode) {
1242
+ if (!nodeToRelocate['s-hn'] && nodeToRelocate['s-ol']) {
1243
+ // probably a component in the index.html that doesn't have it's hostname set
1244
+ nodeToRelocate['s-hn'] = nodeToRelocate['s-ol'].parentNode.nodeName;
1245
+ }
1246
+ // add it back to the dom but in its new home
1247
+ parentNodeRef.insertBefore(nodeToRelocate, insertBeforeNode);
1248
+ }
1249
+ }
1250
+ }
1251
+ else {
1252
+ // this node doesn't have a slot home to go to, so let's hide it
1253
+ if (nodeToRelocate.nodeType === 1 /* NODE_TYPE.ElementNode */) {
1254
+ nodeToRelocate.hidden = true;
1255
+ }
1256
+ }
1257
+ }
1258
+ }
1259
+ if (checkSlotFallbackVisibility) {
1260
+ updateFallbackSlotVisibility(rootVnode.$elm$);
1261
+ }
1262
+ // done moving nodes around
1263
+ // allow the disconnect callback to work again
1264
+ plt.$flags$ &= ~1 /* PLATFORM_FLAGS.isTmpDisconnected */;
1265
+ // always reset
1266
+ relocateNodes.length = 0;
1267
+ }
886
1268
  };
887
1269
  const attachToAncestor = (hostRef, ancestorComponent) => {
888
1270
  if (ancestorComponent && !hostRef.$onRenderResolve$ && ancestorComponent['s-p']) {
@@ -904,27 +1286,83 @@ const scheduleUpdate = (hostRef, isInitialLoad) => {
904
1286
  const dispatch = () => dispatchHooks(hostRef, isInitialLoad);
905
1287
  return writeTask(dispatch) ;
906
1288
  };
1289
+ /**
1290
+ * Dispatch initial-render and update lifecycle hooks, enqueuing calls to
1291
+ * component lifecycle methods like `componentWillLoad` as well as
1292
+ * {@link updateComponent}, which will kick off the virtual DOM re-render.
1293
+ *
1294
+ * @param hostRef a reference to a host DOM node
1295
+ * @param isInitialLoad whether we're on the initial load or not
1296
+ * @returns an empty Promise which is used to enqueue a series of operations for
1297
+ * the component
1298
+ */
907
1299
  const dispatchHooks = (hostRef, isInitialLoad) => {
908
1300
  const endSchedule = createTime('scheduleUpdate', hostRef.$cmpMeta$.$tagName$);
909
1301
  const instance = hostRef.$lazyInstance$ ;
910
- let promise;
1302
+ // We're going to use this variable together with `enqueue` to implement a
1303
+ // little promise-based queue. We start out with it `undefined`. When we add
1304
+ // the first function to the queue we'll set this variable to be that
1305
+ // function's return value. When we attempt to add subsequent values to the
1306
+ // queue we'll check that value and, if it was a `Promise`, we'll then chain
1307
+ // the new function off of that `Promise` using `.then()`. This will give our
1308
+ // queue two nice properties:
1309
+ //
1310
+ // 1. If all functions added to the queue are synchronous they'll be called
1311
+ // synchronously right away.
1312
+ // 2. If all functions added to the queue are asynchronous they'll all be
1313
+ // called in order after `dispatchHooks` exits.
1314
+ let maybePromise;
911
1315
  if (isInitialLoad) {
912
1316
  {
913
1317
  hostRef.$flags$ |= 256 /* HOST_FLAGS.isListenReady */;
914
1318
  if (hostRef.$queuedListeners$) {
915
1319
  hostRef.$queuedListeners$.map(([methodName, event]) => safeCall(instance, methodName, event));
916
- hostRef.$queuedListeners$ = null;
1320
+ hostRef.$queuedListeners$ = undefined;
917
1321
  }
918
1322
  }
919
1323
  {
920
- promise = safeCall(instance, 'componentWillLoad');
1324
+ // If `componentWillLoad` returns a `Promise` then we want to wait on
1325
+ // whatever's going on in that `Promise` before we launch into
1326
+ // rendering the component, doing other lifecycle stuff, etc. So
1327
+ // in that case we assign the returned promise to the variable we
1328
+ // declared above to hold a possible 'queueing' Promise
1329
+ maybePromise = safeCall(instance, 'componentWillLoad');
921
1330
  }
922
1331
  }
923
1332
  endSchedule();
924
- return then(promise, () => updateComponent(hostRef, instance, isInitialLoad));
1333
+ return enqueue(maybePromise, () => updateComponent(hostRef, instance, isInitialLoad));
925
1334
  };
1335
+ /**
1336
+ * This function uses a Promise to implement a simple first-in, first-out queue
1337
+ * of functions to be called.
1338
+ *
1339
+ * The queue is ordered on the basis of the first argument. If it's
1340
+ * `undefined`, then nothing is on the queue yet, so the provided function can
1341
+ * be called synchronously (although note that this function may return a
1342
+ * `Promise`). The idea is that then the return value of that enqueueing
1343
+ * operation is kept around, so that if it was a `Promise` then subsequent
1344
+ * functions can be enqueued by calling this function again with that `Promise`
1345
+ * as the first argument.
1346
+ *
1347
+ * @param maybePromise either a `Promise` which should resolve before the next function is called or an 'empty' sentinel
1348
+ * @param fn a function to enqueue
1349
+ * @returns either a `Promise` or the return value of the provided function
1350
+ */
1351
+ const enqueue = (maybePromise, fn) => isPromisey(maybePromise) ? maybePromise.then(fn) : fn();
1352
+ /**
1353
+ * Check that a value is a `Promise`. To check, we first see if the value is an
1354
+ * instance of the `Promise` global. In a few circumstances, in particular if
1355
+ * the global has been overwritten, this is could be misleading, so we also do
1356
+ * a little 'duck typing' check to see if the `.then` property of the value is
1357
+ * defined and a function.
1358
+ *
1359
+ * @param maybePromise it might be a promise!
1360
+ * @returns whether it is or not
1361
+ */
1362
+ const isPromisey = (maybePromise) => maybePromise instanceof Promise ||
1363
+ (maybePromise && maybePromise.then && typeof maybePromise.then === 'function');
926
1364
  const updateComponent = async (hostRef, instance, isInitialLoad) => {
927
- // updateComponent
1365
+ var _a;
928
1366
  const elm = hostRef.$hostElement$;
929
1367
  const endUpdate = createTime('update', hostRef.$cmpMeta$.$tagName$);
930
1368
  const rc = elm['s-rc'];
@@ -951,7 +1389,7 @@ const updateComponent = async (hostRef, instance, isInitialLoad) => {
951
1389
  endRender();
952
1390
  endUpdate();
953
1391
  {
954
- const childrenPromises = elm['s-p'];
1392
+ const childrenPromises = (_a = elm['s-p']) !== null && _a !== void 0 ? _a : [];
955
1393
  const postUpdate = () => postUpdateComponent(hostRef);
956
1394
  if (childrenPromises.length === 0) {
957
1395
  postUpdate();
@@ -1064,9 +1502,6 @@ const safeCall = (instance, method, arg) => {
1064
1502
  }
1065
1503
  return undefined;
1066
1504
  };
1067
- const then = (promise, thenFn) => {
1068
- return promise && promise.then ? promise.then(thenFn) : thenFn();
1069
- };
1070
1505
  const addHydratedFlag = (elm) => elm.classList.add('hydrated')
1071
1506
  ;
1072
1507
  const getValue = (ref, propName) => getHostRef(ref).$instanceValues$.get(propName);
@@ -1217,9 +1652,9 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
1217
1652
  const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId, Cstr) => {
1218
1653
  // initializeComponent
1219
1654
  if ((hostRef.$flags$ & 32 /* HOST_FLAGS.hasInitializedComponent */) === 0) {
1655
+ // Let the runtime know that the component has been initialized
1656
+ hostRef.$flags$ |= 32 /* HOST_FLAGS.hasInitializedComponent */;
1220
1657
  {
1221
- // we haven't initialized this element yet
1222
- hostRef.$flags$ |= 32 /* HOST_FLAGS.hasInitializedComponent */;
1223
1658
  // lazy loaded components
1224
1659
  // request the component's implementation to be
1225
1660
  // wired up with the host element
@@ -1273,7 +1708,7 @@ const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId, Cstr) =>
1273
1708
  if (!styles.has(scopeId)) {
1274
1709
  const endRegisterStyles = createTime('registerStyles', cmpMeta.$tagName$);
1275
1710
  if (cmpMeta.$flags$ & 8 /* CMP_FLAGS.needsShadowDomShim */) {
1276
- style = await import('./shadow-css-12b9a099.js').then((m) => m.scopeCss(style, scopeId, false));
1711
+ style = await import('./shadow-css-19be24ee.js').then((m) => m.scopeCss(style, scopeId, false));
1277
1712
  }
1278
1713
  registerStyle(scopeId, style, !!(cmpMeta.$flags$ & 1 /* CMP_FLAGS.shadowDomEncapsulation */));
1279
1714
  endRegisterStyles();
@@ -1309,6 +1744,16 @@ const connectedCallback = (elm) => {
1309
1744
  if (!(hostRef.$flags$ & 1 /* HOST_FLAGS.hasConnected */)) {
1310
1745
  // first time this component has connected
1311
1746
  hostRef.$flags$ |= 1 /* HOST_FLAGS.hasConnected */;
1747
+ {
1748
+ // initUpdate
1749
+ // if the slot polyfill is required we'll need to put some nodes
1750
+ // in here to act as original content anchors as we move nodes around
1751
+ // host element has been connected to the DOM
1752
+ if ((// TODO(STENCIL-662): Remove code related to deprecated shadowDomShim field
1753
+ cmpMeta.$flags$ & (4 /* CMP_FLAGS.hasSlotRelocation */ | 8 /* CMP_FLAGS.needsShadowDomShim */))) {
1754
+ setContentReference(elm);
1755
+ }
1756
+ }
1312
1757
  {
1313
1758
  // find the first ancestor component (if there is one) and register
1314
1759
  // this component as one of the actively loading child components for its ancestor
@@ -1350,6 +1795,17 @@ const connectedCallback = (elm) => {
1350
1795
  endConnected();
1351
1796
  }
1352
1797
  };
1798
+ const setContentReference = (elm) => {
1799
+ // only required when we're NOT using native shadow dom (slot)
1800
+ // or this browser doesn't support native shadow dom
1801
+ // and this host element was NOT created with SSR
1802
+ // let's pick out the inner content for slot projection
1803
+ // create a node to represent where the original
1804
+ // content was first placed, which is useful later on
1805
+ const contentRefElm = (elm['s-cr'] = doc.createComment(''));
1806
+ contentRefElm['s-cn'] = true;
1807
+ elm.insertBefore(contentRefElm, elm.firstChild);
1808
+ };
1353
1809
  const disconnectedCallback = (elm) => {
1354
1810
  if ((plt.$flags$ & 1 /* PLATFORM_FLAGS.isTmpDisconnected */) === 0) {
1355
1811
  const hostRef = getHostRef(elm);
@@ -1674,6 +2130,6 @@ const flush = () => {
1674
2130
  const nextTick = /*@__PURE__*/ (cb) => promiseResolve().then(cb);
1675
2131
  const writeTask = /*@__PURE__*/ queueTask(queueDomWrites, true);
1676
2132
 
1677
- export { CSS as C, Host as H, NAMESPACE as N, promiseResolve as a, bootstrapLazy as b, getElement as c, doc as d, getRenderingRef as e, forceUpdate as f, getAssetPath as g, h, createEvent as i, plt as p, registerInstance as r, setNonce as s, win as w };
2133
+ export { CSS as C, Host as H, NAMESPACE as N, promiseResolve as a, bootstrapLazy as b, getRenderingRef as c, doc as d, createEvent as e, forceUpdate as f, getElement as g, h, getAssetPath as i, plt as p, registerInstance as r, setNonce as s, win as w };
1678
2134
 
1679
- //# sourceMappingURL=index-e862524f.js.map
2135
+ //# sourceMappingURL=index-57c9193c.js.map