@watermarkinsights/ripple 4.2.0-1 → 4.2.0

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 (367) hide show
  1. package/dist/cjs/chartFunctions-2c3e010e.js +600 -0
  2. package/dist/cjs/{functions-4208c444.js → functions-91da05e9.js} +362 -362
  3. package/dist/cjs/{global-2806c327.js → global-b85941b0.js} +24 -24
  4. package/dist/cjs/{index-f8ef86de.js → index-fae02cd7.js} +150 -436
  5. package/dist/cjs/interfaces-245d7bff.js +38 -0
  6. package/dist/cjs/intl-fa3bb4ae.js +179 -0
  7. package/dist/cjs/loader.cjs.js +13 -4
  8. package/dist/cjs/priv-chart-popover.cjs.entry.js +85 -85
  9. package/dist/cjs/priv-datepicker.cjs.entry.js +637 -637
  10. package/dist/cjs/priv-navigator-button.cjs.entry.js +18 -18
  11. package/dist/cjs/priv-navigator-item.cjs.entry.js +21 -21
  12. package/dist/cjs/ripple.cjs.js +7 -4
  13. package/dist/cjs/wm-action-menu_2.cjs.entry.js +314 -314
  14. package/dist/cjs/wm-button.cjs.entry.js +174 -174
  15. package/dist/cjs/wm-chart-slice.cjs.entry.js +17 -17
  16. package/dist/cjs/wm-chart.cjs.entry.js +164 -164
  17. package/dist/cjs/wm-datepicker.cjs.entry.js +160 -160
  18. package/dist/cjs/wm-file-list.cjs.entry.js +10 -10
  19. package/dist/cjs/wm-file.cjs.entry.js +178 -178
  20. package/dist/cjs/wm-input.cjs.entry.js +102 -102
  21. package/dist/cjs/wm-line-chart.cjs.entry.js +448 -448
  22. package/dist/cjs/wm-modal-footer.cjs.entry.js +27 -27
  23. package/dist/cjs/wm-modal-header.cjs.entry.js +21 -21
  24. package/dist/cjs/wm-modal.cjs.entry.js +92 -92
  25. package/dist/cjs/wm-navigation_3.cjs.entry.js +179 -179
  26. package/dist/cjs/wm-navigator.cjs.entry.js +251 -251
  27. package/dist/cjs/wm-option_2.cjs.entry.js +710 -710
  28. package/dist/cjs/wm-pagination.cjs.entry.js +169 -169
  29. package/dist/cjs/wm-progress-indicator_3.cjs.entry.js +151 -151
  30. package/dist/cjs/wm-search.cjs.entry.js +192 -192
  31. package/dist/cjs/wm-snackbar.cjs.entry.js +114 -114
  32. package/dist/cjs/wm-tab-item_3.cjs.entry.js +247 -247
  33. package/dist/cjs/wm-tag-input.cjs.entry.js +849 -849
  34. package/dist/cjs/wm-tag-option.cjs.entry.js +33 -33
  35. package/dist/cjs/wm-timepicker.cjs.entry.js +270 -270
  36. package/dist/cjs/wm-toggletip.cjs.entry.js +99 -99
  37. package/dist/cjs/wm-uploader.cjs.entry.js +198 -198
  38. package/dist/cjs/wm-wrapper.cjs.entry.js +12 -12
  39. package/dist/collection/collection-manifest.json +41 -41
  40. package/dist/collection/components/charts/chartFunctions.js +456 -456
  41. package/dist/collection/components/charts/chartFunctions.spec.js +13 -13
  42. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.e2e.js +73 -73
  43. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.js +254 -257
  44. package/dist/collection/components/charts/screenshots.e2e.js +30 -30
  45. package/dist/collection/components/charts/wm-chart/wm-chart-slice.js +121 -121
  46. package/dist/collection/components/charts/wm-chart/wm-chart.e2e.js +160 -160
  47. package/dist/collection/components/charts/wm-chart/wm-chart.js +381 -382
  48. package/dist/collection/components/charts/wm-chart/wm-chart.spec.js +26 -26
  49. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.css +2 -1
  50. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.e2e.js +138 -138
  51. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.js +717 -717
  52. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.spec.js +106 -106
  53. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.js +202 -202
  54. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.e2e.js +54 -54
  55. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.js +136 -136
  56. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.spec.js +31 -31
  57. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-slice.js +119 -119
  58. package/dist/collection/components/wm-action-menu/wm-action-menu.e2e.js +187 -187
  59. package/dist/collection/components/wm-action-menu/wm-action-menu.js +435 -435
  60. package/dist/collection/components/wm-action-menu/wm-action-menu.spec.js +35 -35
  61. package/dist/collection/components/wm-button/wm-button.e2e.js +58 -58
  62. package/dist/collection/components/wm-button/wm-button.js +452 -454
  63. package/dist/collection/components/wm-button/wm-button.spec.js +63 -63
  64. package/dist/collection/components/wm-datepicker/priv-datepicker/priv-datepicker.js +939 -943
  65. package/dist/collection/components/wm-datepicker/priv-datepicker/priv-datepicker.spec.js +71 -71
  66. package/dist/collection/components/wm-datepicker/wm-datepicker.css +2 -1
  67. package/dist/collection/components/wm-datepicker/wm-datepicker.e2e.js +359 -359
  68. package/dist/collection/components/wm-datepicker/wm-datepicker.js +413 -415
  69. package/dist/collection/components/wm-datepicker/wm-datepicker.spec.js +13 -13
  70. package/dist/collection/components/wm-file/wm-file.js +380 -380
  71. package/dist/collection/components/wm-file/wm-file.spec.js +107 -107
  72. package/dist/collection/components/wm-file-list/wm-file-list.js +42 -42
  73. package/dist/collection/components/wm-file-list/wm-file-list.spec.js +47 -47
  74. package/dist/collection/components/wm-input/wm-input.e2e.js +26 -26
  75. package/dist/collection/components/wm-input/wm-input.js +453 -453
  76. package/dist/collection/components/wm-input/wm-input.spec.js +168 -168
  77. package/dist/collection/components/wm-menuitem/wm-menuitem.e2e.js +18 -18
  78. package/dist/collection/components/wm-menuitem/wm-menuitem.js +436 -446
  79. package/dist/collection/components/wm-menuitem/wm-menuitem.spec.js +46 -46
  80. package/dist/collection/components/wm-modal/wm-modal-footer.js +130 -130
  81. package/dist/collection/components/wm-modal/wm-modal-footer.spec.js +8 -8
  82. package/dist/collection/components/wm-modal/wm-modal-header.js +68 -68
  83. package/dist/collection/components/wm-modal/wm-modal-header.spec.js +5 -5
  84. package/dist/collection/components/wm-modal/wm-modal.e2e.js +65 -65
  85. package/dist/collection/components/wm-modal/wm-modal.js +296 -299
  86. package/dist/collection/components/wm-modal/wm-modal.spec.js +22 -22
  87. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.css +1 -0
  88. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.js +112 -112
  89. package/dist/collection/components/wm-navigation/wm-navigation-item.js +125 -125
  90. package/dist/collection/components/wm-navigation/wm-navigation.css +2 -0
  91. package/dist/collection/components/wm-navigation/wm-navigation.e2e.js +86 -86
  92. package/dist/collection/components/wm-navigation/wm-navigation.js +209 -209
  93. package/dist/collection/components/wm-navigation/wm-navigation.spec.js +79 -79
  94. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.e2e.js +30 -30
  95. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.js +103 -103
  96. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.js +118 -119
  97. package/dist/collection/components/wm-navigator/wm-navigator.e2e.js +180 -180
  98. package/dist/collection/components/wm-navigator/wm-navigator.js +454 -454
  99. package/dist/collection/components/wm-navigator/wm-navigator.spec.js +153 -153
  100. package/dist/collection/components/wm-option/wm-option.e2e.js +19 -19
  101. package/dist/collection/components/wm-option/wm-option.js +463 -474
  102. package/dist/collection/components/wm-option/wm-option.spec.js +39 -39
  103. package/dist/collection/components/wm-pagination/wm-pagination.e2e.js +301 -301
  104. package/dist/collection/components/wm-pagination/wm-pagination.js +327 -327
  105. package/dist/collection/components/wm-search/wm-search.e2e.js +69 -69
  106. package/dist/collection/components/wm-search/wm-search.js +414 -415
  107. package/dist/collection/components/wm-search/wm-search.spec.js +64 -64
  108. package/dist/collection/components/wm-select/wm-select.e2e.js +443 -443
  109. package/dist/collection/components/wm-select/wm-select.js +966 -967
  110. package/dist/collection/components/wm-select/wm-select.spec.js +250 -250
  111. package/dist/collection/components/wm-snackbar/wm-snackbar.e2e.js +114 -114
  112. package/dist/collection/components/wm-snackbar/wm-snackbar.js +207 -209
  113. package/dist/collection/components/wm-snackbar/wm-snackbar.spec.js +4 -4
  114. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.js +188 -190
  115. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.js +261 -261
  116. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.js +104 -104
  117. package/dist/collection/components/wm-tabs/wm-tabs.e2e.js +79 -79
  118. package/dist/collection/components/wm-tabs/wm-tabs.spec.js +6 -6
  119. package/dist/collection/components/wm-tag-input/wm-tag-input.css +4 -2
  120. package/dist/collection/components/wm-tag-input/wm-tag-input.e2e.js +168 -168
  121. package/dist/collection/components/wm-tag-input/wm-tag-input.js +1159 -1159
  122. package/dist/collection/components/wm-tag-input/wm-tag-input.spec.js +147 -147
  123. package/dist/collection/components/wm-tag-input/wm-tag-option/wm-tag-option.js +234 -236
  124. package/dist/collection/components/wm-timepicker/wm-timepicker.css +2 -1
  125. package/dist/collection/components/wm-timepicker/wm-timepicker.e2e.js +147 -147
  126. package/dist/collection/components/wm-timepicker/wm-timepicker.js +527 -531
  127. package/dist/collection/components/wm-timepicker/wm-timepicker.spec.js +151 -151
  128. package/dist/collection/components/wm-toggletip/wm-toggletip.e2e.js +61 -61
  129. package/dist/collection/components/wm-toggletip/wm-toggletip.js +208 -209
  130. package/dist/collection/components/wm-toggletip/wm-toggletip.spec.js +16 -16
  131. package/dist/collection/components/wm-uploader/wm-uploader.e2e.js +56 -56
  132. package/dist/collection/components/wm-uploader/wm-uploader.js +422 -423
  133. package/dist/collection/components/wm-uploader/wm-uploader.spec.js +149 -149
  134. package/dist/collection/components/wm-wrapper/wm-wrapper.js +26 -26
  135. package/dist/collection/global/__mocks__/functions.js +1 -1
  136. package/dist/collection/global/functions.js +510 -510
  137. package/dist/collection/global/functions.spec.js +123 -123
  138. package/dist/collection/global/global.js +16 -16
  139. package/dist/collection/global/interfaces.js +39 -39
  140. package/dist/collection/global/intl.js +162 -162
  141. package/dist/collection/global/services/__mocks__/http-service.js +112 -112
  142. package/dist/collection/global/services/http-service.js +41 -41
  143. package/dist/collection/global/themes/default.js +4 -4
  144. package/dist/collection/global/themes/neutral.js +4 -4
  145. package/dist/collection/lang/lang.spec.js +13 -13
  146. package/dist/esm/chartFunctions-36634c04.js +584 -0
  147. package/dist/esm/{functions-d0e70094.js → functions-5afd09f4.js} +362 -362
  148. package/dist/esm/{global-08dce155.js → global-91088105.js} +24 -24
  149. package/dist/esm/{index-f164fbca.js → index-7e11ea42.js} +150 -436
  150. package/dist/esm/interfaces-89cad2fc.js +35 -0
  151. package/dist/esm/intl-e2da750a.js +174 -0
  152. package/dist/esm/loader.js +14 -5
  153. package/dist/esm/polyfills/css-shim.js +1 -0
  154. package/dist/esm/priv-chart-popover.entry.js +85 -85
  155. package/dist/esm/priv-datepicker.entry.js +637 -637
  156. package/dist/esm/priv-navigator-button.entry.js +18 -18
  157. package/dist/esm/priv-navigator-item.entry.js +21 -21
  158. package/dist/esm/ripple.js +8 -5
  159. package/dist/esm/wm-action-menu_2.entry.js +314 -314
  160. package/dist/esm/wm-button.entry.js +174 -174
  161. package/dist/esm/wm-chart-slice.entry.js +17 -17
  162. package/dist/esm/wm-chart.entry.js +164 -164
  163. package/dist/esm/wm-datepicker.entry.js +160 -160
  164. package/dist/esm/wm-file-list.entry.js +10 -10
  165. package/dist/esm/wm-file.entry.js +178 -178
  166. package/dist/esm/wm-input.entry.js +102 -102
  167. package/dist/esm/wm-line-chart.entry.js +448 -448
  168. package/dist/esm/wm-modal-footer.entry.js +27 -27
  169. package/dist/esm/wm-modal-header.entry.js +21 -21
  170. package/dist/esm/wm-modal.entry.js +92 -92
  171. package/dist/esm/wm-navigation_3.entry.js +179 -179
  172. package/dist/esm/wm-navigator.entry.js +251 -251
  173. package/dist/esm/wm-option_2.entry.js +710 -710
  174. package/dist/esm/wm-pagination.entry.js +169 -169
  175. package/dist/esm/wm-progress-indicator_3.entry.js +151 -151
  176. package/dist/esm/wm-search.entry.js +192 -192
  177. package/dist/esm/wm-snackbar.entry.js +114 -114
  178. package/dist/esm/wm-tab-item_3.entry.js +247 -247
  179. package/dist/esm/wm-tag-input.entry.js +849 -849
  180. package/dist/esm/wm-tag-option.entry.js +33 -33
  181. package/dist/esm/wm-timepicker.entry.js +270 -270
  182. package/dist/esm/wm-toggletip.entry.js +99 -99
  183. package/dist/esm/wm-uploader.entry.js +198 -198
  184. package/dist/esm/wm-wrapper.entry.js +12 -12
  185. package/dist/esm-es5/chartFunctions-36634c04.js +1 -0
  186. package/dist/esm-es5/functions-5afd09f4.js +1 -0
  187. package/dist/esm-es5/global-91088105.js +1 -0
  188. package/dist/esm-es5/index-7e11ea42.js +2 -0
  189. package/dist/esm-es5/{intl-05c9e0c9.js → intl-e2da750a.js} +1 -1
  190. package/dist/esm-es5/loader.js +1 -1
  191. package/dist/esm-es5/priv-chart-popover.entry.js +1 -1
  192. package/dist/esm-es5/priv-datepicker.entry.js +1 -1
  193. package/dist/esm-es5/priv-navigator-button.entry.js +1 -1
  194. package/dist/esm-es5/priv-navigator-item.entry.js +1 -1
  195. package/dist/esm-es5/ripple.js +1 -1
  196. package/dist/esm-es5/wm-action-menu_2.entry.js +1 -1
  197. package/dist/esm-es5/wm-button.entry.js +1 -1
  198. package/dist/esm-es5/wm-chart-slice.entry.js +1 -1
  199. package/dist/esm-es5/wm-chart.entry.js +1 -1
  200. package/dist/esm-es5/wm-datepicker.entry.js +1 -1
  201. package/dist/esm-es5/wm-file-list.entry.js +1 -1
  202. package/dist/esm-es5/wm-file.entry.js +1 -1
  203. package/dist/esm-es5/wm-input.entry.js +1 -1
  204. package/dist/esm-es5/wm-line-chart.entry.js +1 -1
  205. package/dist/esm-es5/wm-modal-footer.entry.js +1 -1
  206. package/dist/esm-es5/wm-modal-header.entry.js +1 -1
  207. package/dist/esm-es5/wm-modal.entry.js +1 -1
  208. package/dist/esm-es5/wm-navigation_3.entry.js +1 -1
  209. package/dist/esm-es5/wm-navigator.entry.js +1 -1
  210. package/dist/esm-es5/wm-option_2.entry.js +1 -1
  211. package/dist/esm-es5/wm-pagination.entry.js +1 -1
  212. package/dist/esm-es5/wm-progress-indicator_3.entry.js +1 -1
  213. package/dist/esm-es5/wm-search.entry.js +1 -1
  214. package/dist/esm-es5/wm-snackbar.entry.js +1 -1
  215. package/dist/esm-es5/wm-tab-item_3.entry.js +1 -1
  216. package/dist/esm-es5/wm-tag-input.entry.js +1 -1
  217. package/dist/esm-es5/wm-tag-option.entry.js +1 -1
  218. package/dist/esm-es5/wm-timepicker.entry.js +1 -1
  219. package/dist/esm-es5/wm-toggletip.entry.js +1 -1
  220. package/dist/esm-es5/wm-uploader.entry.js +1 -1
  221. package/dist/esm-es5/wm-wrapper.entry.js +1 -1
  222. package/dist/loader/index.d.ts +1 -1
  223. package/dist/ripple/p-00acacbe.system.entry.js +1 -0
  224. package/dist/ripple/{p-3446852f.system.entry.js → p-0631be01.system.entry.js} +1 -1
  225. package/dist/ripple/{p-ad6dc751.entry.js → p-0aecac86.entry.js} +1 -1
  226. package/dist/ripple/{p-c717d895.entry.js → p-0d9f70ab.entry.js} +1 -1
  227. package/dist/ripple/{p-b253d2fc.entry.js → p-0f1ff645.entry.js} +1 -1
  228. package/dist/ripple/{p-63f75d43.entry.js → p-1205fdc1.entry.js} +1 -1
  229. package/dist/ripple/{p-27f47edc.entry.js → p-1283e85d.entry.js} +1 -1
  230. package/dist/ripple/{p-43e2a49a.entry.js → p-13594c2e.entry.js} +1 -1
  231. package/dist/ripple/{p-5a921e55.entry.js → p-13af8346.entry.js} +1 -1
  232. package/dist/ripple/{p-ceced3d9.system.entry.js → p-15497721.system.entry.js} +1 -1
  233. package/dist/ripple/p-16363e1c.system.entry.js +1 -0
  234. package/dist/ripple/{p-3a070f35.entry.js → p-19773c40.entry.js} +1 -1
  235. package/dist/ripple/{p-b4d862e1.system.entry.js → p-1cde16a7.system.entry.js} +1 -1
  236. package/dist/ripple/{p-f711c914.entry.js → p-20f5c695.entry.js} +1 -1
  237. package/dist/ripple/{p-13ca30d8.js → p-24b08e1f.js} +1 -1
  238. package/dist/ripple/{p-2c834d27.system.entry.js → p-2a95b63f.system.entry.js} +1 -1
  239. package/dist/ripple/{p-c96a5c94.system.entry.js → p-2e773564.system.entry.js} +1 -1
  240. package/dist/ripple/p-30bf24f8.system.js +2 -0
  241. package/dist/ripple/p-3248c0fa.system.entry.js +1 -0
  242. package/dist/ripple/{p-28e4583c.system.entry.js → p-32b1126c.system.entry.js} +1 -1
  243. package/dist/ripple/{p-aadf8c59.entry.js → p-36049d2f.entry.js} +1 -1
  244. package/dist/ripple/p-3aca2871.js +1 -0
  245. package/dist/ripple/{p-633cd89a.system.entry.js → p-3becce62.system.entry.js} +1 -1
  246. package/dist/ripple/{p-58174f4e.entry.js → p-3c80bf67.entry.js} +1 -1
  247. package/dist/ripple/p-40fcae38.system.js +1 -0
  248. package/dist/ripple/p-47c20b05.entry.js +1 -0
  249. package/dist/ripple/p-4825101c.system.js +1 -0
  250. package/dist/ripple/p-56d64283.system.entry.js +1 -0
  251. package/dist/ripple/p-5e85967a.system.js +1 -0
  252. package/dist/ripple/{p-067d7922.system.entry.js → p-622a7791.system.entry.js} +1 -1
  253. package/dist/ripple/{p-aba5a00e.system.entry.js → p-676c1089.system.entry.js} +1 -1
  254. package/dist/ripple/{p-153701f9.entry.js → p-6abb903c.entry.js} +1 -1
  255. package/dist/ripple/{p-372faf33.entry.js → p-7529706d.entry.js} +1 -1
  256. package/dist/ripple/{p-de349bee.entry.js → p-7962f562.entry.js} +1 -1
  257. package/dist/ripple/{p-8d4734ad.entry.js → p-80aef387.entry.js} +1 -1
  258. package/dist/ripple/{p-8cace32f.entry.js → p-84a7e757.entry.js} +1 -1
  259. package/dist/ripple/{p-9fecbc8a.system.js → p-85f744ed.system.js} +1 -1
  260. package/dist/ripple/{p-05d4e49b.js → p-863e737a.js} +1 -1
  261. package/dist/ripple/{p-7e56da2e.system.entry.js → p-8ea68cb3.system.entry.js} +1 -1
  262. package/dist/ripple/{p-1402cfa2.system.js → p-8f3f903f.system.js} +1 -1
  263. package/dist/ripple/{p-c249063c.entry.js → p-8f8c3705.entry.js} +1 -1
  264. package/dist/ripple/{p-67d48c33.system.entry.js → p-90ea7e3a.system.entry.js} +1 -1
  265. package/dist/ripple/{p-a82a8931.entry.js → p-9288659b.entry.js} +1 -1
  266. package/dist/ripple/{p-6cf7a34a.entry.js → p-935513f8.entry.js} +1 -1
  267. package/dist/ripple/{p-b452d1d7.entry.js → p-a0bf5eef.entry.js} +1 -1
  268. package/dist/ripple/{p-06776596.system.entry.js → p-a1e95b05.system.entry.js} +1 -1
  269. package/dist/ripple/{p-25446670.entry.js → p-a52c5a1c.entry.js} +1 -1
  270. package/dist/ripple/{p-2c4f312d.system.entry.js → p-a5b23781.system.entry.js} +1 -1
  271. package/dist/ripple/p-a6be3cca.system.entry.js +1 -0
  272. package/dist/ripple/{p-fa87bce3.entry.js → p-a9c096b5.entry.js} +1 -1
  273. package/dist/ripple/p-aafa111a.system.js +1 -0
  274. package/dist/ripple/{p-1d8b0039.entry.js → p-ad37cdfd.entry.js} +1 -1
  275. package/dist/ripple/{p-350fe5da.entry.js → p-ae674a54.entry.js} +1 -1
  276. package/dist/ripple/{p-e24ddae1.entry.js → p-b3c73bc9.entry.js} +1 -1
  277. package/dist/ripple/{p-e8b58666.system.entry.js → p-b3e08b14.system.entry.js} +1 -1
  278. package/dist/ripple/p-b5bedd63.js +2 -0
  279. package/dist/ripple/{p-a69c37e0.entry.js → p-b71a83e3.entry.js} +1 -1
  280. package/dist/ripple/p-bd537299.system.entry.js +1 -0
  281. package/dist/ripple/{p-42ebfcfa.entry.js → p-c41603e6.entry.js} +1 -1
  282. package/dist/ripple/{p-5a4d9897.system.entry.js → p-c5e8f8a5.system.entry.js} +1 -1
  283. package/dist/ripple/{p-7a8816d9.system.entry.js → p-c76bbedf.system.entry.js} +1 -1
  284. package/dist/ripple/{p-3af72848.js → p-c7b5ac39.js} +1 -1
  285. package/dist/ripple/{p-361cc8fc.system.entry.js → p-cbd8a60b.system.entry.js} +1 -1
  286. package/dist/ripple/{p-3583d113.system.entry.js → p-d04ba5f8.system.entry.js} +1 -1
  287. package/dist/ripple/{p-1fa2a756.system.entry.js → p-d0f1b8c4.system.entry.js} +1 -1
  288. package/dist/ripple/{p-bdd4f919.system.entry.js → p-d496bc44.system.entry.js} +1 -1
  289. package/dist/ripple/{p-7e8daaac.entry.js → p-deb4f5a2.entry.js} +1 -1
  290. package/dist/ripple/{p-5ac980e2.system.entry.js → p-e3f0b57f.system.entry.js} +1 -1
  291. package/dist/ripple/{p-f1a92576.system.entry.js → p-e4919f95.system.entry.js} +1 -1
  292. package/dist/ripple/{p-49118468.entry.js → p-ed942b42.entry.js} +1 -1
  293. package/dist/ripple/{p-0ecbf569.system.entry.js → p-f30839a1.system.entry.js} +1 -1
  294. package/dist/ripple/{p-d3f9d028.system.entry.js → p-ff14e4ec.system.entry.js} +1 -1
  295. package/dist/ripple/ripple.esm.js +1 -1
  296. package/dist/ripple/ripple.js +20 -16
  297. package/dist/types/components/charts/chartFunctions.d.ts +13 -13
  298. package/dist/types/components/charts/priv-chart-popover/priv-chart-popover.d.ts +24 -24
  299. package/dist/types/components/charts/wm-chart/wm-chart-slice.d.ts +8 -8
  300. package/dist/types/components/charts/wm-chart/wm-chart.d.ts +39 -39
  301. package/dist/types/components/charts/wm-line-chart/wm-line-chart.d.ts +73 -73
  302. package/dist/types/components/charts/wm-progress-monitor/wm-progress-indicator.d.ts +26 -26
  303. package/dist/types/components/charts/wm-progress-monitor/wm-progress-monitor.d.ts +17 -17
  304. package/dist/types/components/charts/wm-progress-monitor/wm-progress-slice.d.ts +7 -7
  305. package/dist/types/components/wm-action-menu/wm-action-menu.d.ts +43 -43
  306. package/dist/types/components/wm-button/wm-button.d.ts +40 -40
  307. package/dist/types/components/wm-datepicker/priv-datepicker/priv-datepicker.d.ts +76 -76
  308. package/dist/types/components/wm-datepicker/wm-datepicker.d.ts +31 -31
  309. package/dist/types/components/wm-file/wm-file.d.ts +40 -40
  310. package/dist/types/components/wm-file-list/wm-file-list.d.ts +3 -3
  311. package/dist/types/components/wm-input/wm-input.d.ts +46 -46
  312. package/dist/types/components/wm-menuitem/wm-menuitem.d.ts +31 -31
  313. package/dist/types/components/wm-modal/wm-modal-footer.d.ts +11 -11
  314. package/dist/types/components/wm-modal/wm-modal-header.d.ts +7 -7
  315. package/dist/types/components/wm-modal/wm-modal.d.ts +24 -24
  316. package/dist/types/components/wm-navigation/wm-navigation-hamburger.d.ts +13 -13
  317. package/dist/types/components/wm-navigation/wm-navigation-item.d.ts +10 -10
  318. package/dist/types/components/wm-navigation/wm-navigation.d.ts +23 -23
  319. package/dist/types/components/wm-navigator/priv-navigator-button/priv-navigator-button.d.ts +7 -7
  320. package/dist/types/components/wm-navigator/priv-navigator-item/priv-navigator-item.d.ts +10 -10
  321. package/dist/types/components/wm-navigator/wm-navigator.d.ts +57 -57
  322. package/dist/types/components/wm-option/wm-option.d.ts +36 -36
  323. package/dist/types/components/wm-pagination/wm-pagination.d.ts +27 -27
  324. package/dist/types/components/wm-search/wm-search.d.ts +73 -73
  325. package/dist/types/components/wm-select/wm-select.d.ts +99 -99
  326. package/dist/types/components/wm-snackbar/wm-snackbar.d.ts +24 -24
  327. package/dist/types/components/wm-tabs/wm-tab-item/wm-tab-item.d.ts +30 -30
  328. package/dist/types/components/wm-tabs/wm-tab-list/wm-tab-list.d.ts +41 -41
  329. package/dist/types/components/wm-tabs/wm-tab-panel/wm-tab-panel.d.ts +16 -16
  330. package/dist/types/components/wm-timepicker/wm-timepicker.d.ts +48 -48
  331. package/dist/types/components/wm-toggletip/wm-toggletip.d.ts +20 -20
  332. package/dist/types/components/wm-uploader/wm-uploader.d.ts +47 -47
  333. package/dist/types/components/wm-wrapper/wm-wrapper.d.ts +4 -4
  334. package/dist/types/components.d.ts +0 -382
  335. package/dist/types/global/__mocks__/functions.d.ts +1 -1
  336. package/dist/types/global/functions.d.ts +4 -4
  337. package/dist/types/global/interfaces.d.ts +49 -49
  338. package/dist/types/global/intl.d.ts +31 -31
  339. package/dist/types/global/services/__mocks__/http-service.d.ts +1 -1
  340. package/dist/types/stencil-public-runtime.d.ts +5 -46
  341. package/package.json +1 -1
  342. package/dist/cjs/chartFunctions-cecf8134.js +0 -600
  343. package/dist/cjs/interfaces-ad9e80a6.js +0 -38
  344. package/dist/cjs/intl-3fafc6d1.js +0 -179
  345. package/dist/esm/chartFunctions-23173fce.js +0 -584
  346. package/dist/esm/interfaces-9b75fb61.js +0 -35
  347. package/dist/esm/intl-05c9e0c9.js +0 -174
  348. package/dist/esm-es5/chartFunctions-23173fce.js +0 -1
  349. package/dist/esm-es5/functions-d0e70094.js +0 -1
  350. package/dist/esm-es5/global-08dce155.js +0 -1
  351. package/dist/esm-es5/index-f164fbca.js +0 -2
  352. package/dist/ripple/p-028ef6db.system.entry.js +0 -1
  353. package/dist/ripple/p-09d62ddd.entry.js +0 -1
  354. package/dist/ripple/p-0fe97e85.system.js +0 -2
  355. package/dist/ripple/p-1453ea51.system.entry.js +0 -1
  356. package/dist/ripple/p-17d3440b.system.js +0 -1
  357. package/dist/ripple/p-1cc91907.system.js +0 -1
  358. package/dist/ripple/p-30b17818.system.entry.js +0 -1
  359. package/dist/ripple/p-4de51706.js +0 -2
  360. package/dist/ripple/p-88406560.system.entry.js +0 -1
  361. package/dist/ripple/p-8f76a838.system.entry.js +0 -1
  362. package/dist/ripple/p-a99b05de.system.entry.js +0 -1
  363. package/dist/ripple/p-c18b398c.system.js +0 -1
  364. package/dist/ripple/p-c235754b.js +0 -1
  365. package/dist/ripple/p-d03095e7.system.js +0 -1
  366. /package/dist/esm-es5/{interfaces-9b75fb61.js → interfaces-89cad2fc.js} +0 -0
  367. /package/dist/ripple/{p-196eb2f3.js → p-c0c111fd.js} +0 -0
@@ -21,7 +21,6 @@ function _interopNamespace(e) {
21
21
  }
22
22
 
23
23
  const NAMESPACE = 'ripple';
24
- const BUILD = /* ripple */ { allRenderFn: false, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: true, cmpDidUnload: false, cmpDidUpdate: true, cmpShouldUpdate: false, cmpWillLoad: true, cmpWillRender: false, cmpWillUpdate: true, connectedCallback: false, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: false, 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: false, 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: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: true, propNumber: true, propString: true, reflect: true, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: true, 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: false, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: true, watchCallback: true };
25
24
 
26
25
  /**
27
26
  * Virtual DOM patching algorithm based on Snabbdom by
@@ -54,13 +53,6 @@ const uniqueTime = (key, measureText) => {
54
53
  }
55
54
  };
56
55
  const HYDRATED_CSS = '{visibility:hidden}.hydrated{visibility:inherit}';
57
- /**
58
- * Constant for styles to be globally applied to `slot-fb` elements for pseudo-slot behavior.
59
- *
60
- * Two cascading rules must be used instead of a `:not()` selector due to Stencil browser
61
- * support as of Stencil v4.
62
- */
63
- const SLOT_FB_CSS = 'slot-fb{display:contents}slot-fb[hidden]{display:none}';
64
56
  const XLINK_NS = 'http://www.w3.org/1999/xlink';
65
57
  /**
66
58
  * Default style mode id
@@ -141,13 +133,13 @@ const h = (nodeName, vnodeData, ...children) => {
141
133
  };
142
134
  walk(children);
143
135
  if (vnodeData) {
136
+ // normalize class / classname attributes
144
137
  if (vnodeData.key) {
145
138
  key = vnodeData.key;
146
139
  }
147
140
  if (vnodeData.name) {
148
141
  slotName = vnodeData.name;
149
142
  }
150
- // normalize class / className attributes
151
143
  {
152
144
  const classData = vnodeData.className || vnodeData.class;
153
145
  if (classData) {
@@ -298,9 +290,9 @@ const registerStyle = (scopeId, cssText, allowCS) => {
298
290
  }
299
291
  styles.set(scopeId, style);
300
292
  };
301
- const addStyle = (styleContainerNode, cmpMeta, mode) => {
293
+ const addStyle = (styleContainerNode, cmpMeta, mode, hostElm) => {
302
294
  var _a;
303
- const scopeId = getScopeId(cmpMeta);
295
+ let scopeId = getScopeId(cmpMeta);
304
296
  const style = styles.get(scopeId);
305
297
  // if an element is NOT connected then getRootNode() will return the wrong root node
306
298
  // so the fallback is to always use the document for the root node in those cases
@@ -315,8 +307,11 @@ const addStyle = (styleContainerNode, cmpMeta, mode) => {
315
307
  }
316
308
  if (!appliedStyles.has(scopeId)) {
317
309
  {
318
- styleElm = doc.createElement('style');
319
- styleElm.innerHTML = style;
310
+ // TODO(STENCIL-659): Remove code implementing the CSS variable shim
311
+ {
312
+ styleElm = doc.createElement('style');
313
+ styleElm.innerHTML = style;
314
+ }
320
315
  // Apply CSP nonce to the style tag if it exists
321
316
  const nonce = (_a = plt.$nonce$) !== null && _a !== void 0 ? _a : queryNonceMetaTagContent(doc);
322
317
  if (nonce != null) {
@@ -324,10 +319,6 @@ const addStyle = (styleContainerNode, cmpMeta, mode) => {
324
319
  }
325
320
  styleContainerNode.insertBefore(styleElm, styleContainerNode.querySelector('link'));
326
321
  }
327
- // Add styles for `slot-fb` elements if we're using slots outside the Shadow DOM
328
- if (cmpMeta.$flags$ & 4 /* CMP_FLAGS.hasSlotRelocation */) {
329
- styleElm.innerHTML += SLOT_FB_CSS;
330
- }
331
322
  if (appliedStyles) {
332
323
  appliedStyles.add(scopeId);
333
324
  }
@@ -345,6 +336,7 @@ const attachStyles = (hostRef) => {
345
336
  const flags = cmpMeta.$flags$;
346
337
  const endAttachStyles = createTime('attachStyles', cmpMeta.$tagName$);
347
338
  const scopeId = addStyle(elm.shadowRoot ? elm.shadowRoot : elm.getRootNode(), cmpMeta);
339
+ // TODO(STENCIL-662): Remove code related to deprecated shadowDomShim field
348
340
  if (flags & 10 /* CMP_FLAGS.needsScopedEncapsulation */) {
349
341
  // only required when we're NOT using native shadow dom (slot)
350
342
  // or this browser doesn't support native shadow dom
@@ -367,21 +359,6 @@ const getScopeId = (cmp, mode) => 'sc-' + (cmp.$tagName$);
367
359
  *
368
360
  * Modified for Stencil's compiler and vdom
369
361
  */
370
- /**
371
- * When running a VDom render set properties present on a VDom node onto the
372
- * corresponding HTML element.
373
- *
374
- * Note that this function has special functionality for the `class`,
375
- * `style`, `key`, and `ref` attributes, as well as event handlers (like
376
- * `onClick`, etc). All others are just passed through as-is.
377
- *
378
- * @param elm the HTMLElement onto which attributes should be set
379
- * @param memberName the name of the attribute to set
380
- * @param oldValue the old value for the attribute
381
- * @param newValue the new value for the attribute
382
- * @param isSvg whether we're in an svg context or not
383
- * @param flags bitflags for Vdom variables
384
- */
385
362
  const setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
386
363
  if (oldValue !== newValue) {
387
364
  let isProp = isMemberInElement(elm, memberName);
@@ -458,19 +435,11 @@ const setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
458
435
  // except for the first character, we keep the event name case
459
436
  memberName = ln[2] + memberName.slice(3);
460
437
  }
461
- if (oldValue || newValue) {
462
- // Need to account for "capture" events.
463
- // If the event name ends with "Capture", we'll update the name to remove
464
- // the "Capture" suffix and make sure the event listener is setup to handle the capture event.
465
- const capture = memberName.endsWith(CAPTURE_EVENT_SUFFIX);
466
- // Make sure we only replace the last instance of "Capture"
467
- memberName = memberName.replace(CAPTURE_EVENT_REGEX, '');
468
- if (oldValue) {
469
- plt.rel(elm, memberName, oldValue, capture);
470
- }
471
- if (newValue) {
472
- plt.ael(elm, memberName, newValue, capture);
473
- }
438
+ if (oldValue) {
439
+ plt.rel(elm, memberName, oldValue, false);
440
+ }
441
+ if (newValue) {
442
+ plt.ael(elm, memberName, newValue, false);
474
443
  }
475
444
  }
476
445
  else {
@@ -492,11 +461,7 @@ const setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
492
461
  elm[memberName] = newValue;
493
462
  }
494
463
  }
495
- catch (e) {
496
- /**
497
- * in case someone tries to set a read-only property, e.g. "namespaceURI", we just ignore it
498
- */
499
- }
464
+ catch (e) { }
500
465
  }
501
466
  /**
502
467
  * Need to manually update attribute if:
@@ -535,14 +500,7 @@ const setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
535
500
  }
536
501
  };
537
502
  const parseClassListRegex = /\s/;
538
- /**
539
- * Parsed a string of classnames into an array
540
- * @param value className string, e.g. "foo bar baz"
541
- * @returns list of classes, e.g. ["foo", "bar", "baz"]
542
- */
543
503
  const parseClassList = (value) => (!value ? [] : value.split(parseClassListRegex));
544
- const CAPTURE_EVENT_SUFFIX = 'Capture';
545
- const CAPTURE_EVENT_REGEX = new RegExp(CAPTURE_EVENT_SUFFIX + '$');
546
504
  const updateElement = (oldVnode, newVnode, isSvgMode, memberName) => {
547
505
  // if the element passed in is a shadow root, which is a document fragment
548
506
  // then we want to be adding attrs/props to the shadow root's "host" element
@@ -576,7 +534,6 @@ const updateElement = (oldVnode, newVnode, isSvgMode, memberName) => {
576
534
  * @returns the newly created node
577
535
  */
578
536
  const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
579
- var _a;
580
537
  // tslint:disable-next-line: prefer-const
581
538
  const newVNode = newParentVNode.$children$[childIndex];
582
539
  let i = 0;
@@ -650,15 +607,11 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
650
607
  }
651
608
  }
652
609
  }
653
- // This needs to always happen so we can hide nodes that are projected
654
- // to another component but don't end up in a slot
655
- elm['s-hn'] = hostTagName;
656
610
  {
611
+ elm['s-hn'] = hostTagName;
657
612
  if (newVNode.$flags$ & (2 /* VNODE_FLAGS.isSlotFallback */ | 1 /* VNODE_FLAGS.isSlotReference */)) {
658
613
  // remember the content reference comment
659
614
  elm['s-sr'] = true;
660
- // Persist the name of the slot that this slot was going to be projected into.
661
- elm['s-fs'] = (_a = newVNode.$attrs$) === null || _a === void 0 ? void 0 : _a.slot;
662
615
  // remember the content reference comment
663
616
  elm['s-cr'] = contentRef;
664
617
  // remember the slot name, or empty string for default slot
@@ -666,38 +619,30 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
666
619
  // check if we've got an old vnode for this slot
667
620
  oldVNode = oldParentVNode && oldParentVNode.$children$ && oldParentVNode.$children$[childIndex];
668
621
  if (oldVNode && oldVNode.$tag$ === newVNode.$tag$ && oldParentVNode.$elm$) {
669
- {
670
- // we've got an old slot vnode and the wrapper is being replaced
671
- // so let's move the old slot content back to its original location
672
- putBackInOriginalLocation(oldParentVNode.$elm$, false);
673
- }
622
+ // we've got an old slot vnode and the wrapper is being replaced
623
+ // so let's move the old slot content back to it's original location
624
+ putBackInOriginalLocation(oldParentVNode.$elm$, false);
674
625
  }
675
626
  }
676
627
  }
677
628
  return elm;
678
629
  };
679
630
  const putBackInOriginalLocation = (parentElm, recursive) => {
680
- var _a;
681
631
  plt.$flags$ |= 1 /* PLATFORM_FLAGS.isTmpDisconnected */;
682
632
  const oldSlotChildNodes = parentElm.childNodes;
683
633
  for (let i = oldSlotChildNodes.length - 1; i >= 0; i--) {
684
634
  const childNode = oldSlotChildNodes[i];
685
635
  if (childNode['s-hn'] !== hostTagName && childNode['s-ol']) {
636
+ // // this child node in the old element is from another component
637
+ // // remove this node from the old slot's parent
638
+ // childNode.remove();
686
639
  // and relocate it back to it's original location
687
640
  parentReferenceNode(childNode).insertBefore(childNode, referenceNode(childNode));
688
641
  // remove the old original location comment entirely
689
642
  // later on the patch function will know what to do
690
- // and move this to the correct spot if need be
643
+ // and move this to the correct spot in need be
691
644
  childNode['s-ol'].remove();
692
645
  childNode['s-ol'] = undefined;
693
- // Reset so we can correctly move the node around again.
694
- childNode['s-sh'] = undefined;
695
- // When putting an element node back in its original location,
696
- // we need to reset the `slot` attribute back to the value it originally had
697
- // so we can correctly relocate it again in the future
698
- if (childNode.nodeType === 1 /* NODE_TYPE.ElementNode */) {
699
- childNode.setAttribute('slot', (_a = childNode['s-sn']) !== null && _a !== void 0 ? _a : '');
700
- }
701
646
  checkSlotRelocate = true;
702
647
  }
703
648
  if (recursive) {
@@ -1121,53 +1066,42 @@ const patch = (oldVNode, newVNode) => {
1121
1066
  elm.data = text;
1122
1067
  }
1123
1068
  };
1124
- /**
1125
- * Adjust the `.hidden` property as-needed on any nodes in a DOM subtree which
1126
- * are slot fallbacks nodes.
1127
- *
1128
- * A slot fallback node should be visible by default. Then, it should be
1129
- * conditionally hidden if:
1130
- *
1131
- * - it has a sibling with a `slot` property set to its slot name or if
1132
- * - it is a default fallback slot node, in which case we hide if it has any
1133
- * content
1134
- *
1135
- * @param elm the element of interest
1136
- */
1137
1069
  const updateFallbackSlotVisibility = (elm) => {
1070
+ // tslint:disable-next-line: prefer-const
1138
1071
  const childNodes = elm.childNodes;
1139
- for (const childNode of childNodes) {
1072
+ let childNode;
1073
+ let i;
1074
+ let ilen;
1075
+ let j;
1076
+ let slotNameAttr;
1077
+ let nodeType;
1078
+ for (i = 0, ilen = childNodes.length; i < ilen; i++) {
1079
+ childNode = childNodes[i];
1140
1080
  if (childNode.nodeType === 1 /* NODE_TYPE.ElementNode */) {
1141
1081
  if (childNode['s-sr']) {
1142
1082
  // this is a slot fallback node
1143
1083
  // get the slot name for this slot reference node
1144
- const slotName = childNode['s-sn'];
1084
+ slotNameAttr = childNode['s-sn'];
1145
1085
  // by default always show a fallback slot node
1146
1086
  // then hide it if there are other slots in the light dom
1147
1087
  childNode.hidden = false;
1148
- // we need to check all of its sibling nodes in order to see if
1149
- // `childNode` should be hidden
1150
- for (const siblingNode of childNodes) {
1151
- // Don't check the node against itself
1152
- if (siblingNode !== childNode) {
1153
- if (siblingNode['s-hn'] !== childNode['s-hn'] || slotName !== '') {
1154
- // this sibling node is from a different component OR is a named
1155
- // fallback slot node
1156
- if (siblingNode.nodeType === 1 /* NODE_TYPE.ElementNode */ &&
1157
- (slotName === siblingNode.getAttribute('slot') || slotName === siblingNode['s-sn'])) {
1158
- childNode.hidden = true;
1159
- break;
1160
- }
1088
+ for (j = 0; j < ilen; j++) {
1089
+ nodeType = childNodes[j].nodeType;
1090
+ if (childNodes[j]['s-hn'] !== childNode['s-hn'] || slotNameAttr !== '') {
1091
+ // this sibling node is from a different component OR is a named fallback slot node
1092
+ if (nodeType === 1 /* NODE_TYPE.ElementNode */ && slotNameAttr === childNodes[j].getAttribute('slot')) {
1093
+ childNode.hidden = true;
1094
+ break;
1161
1095
  }
1162
- else {
1163
- // this is a default fallback slot node
1164
- // any element or text node (with content)
1165
- // should hide the default fallback slot node
1166
- if (siblingNode.nodeType === 1 /* NODE_TYPE.ElementNode */ ||
1167
- (siblingNode.nodeType === 3 /* NODE_TYPE.TextNode */ && siblingNode.textContent.trim() !== '')) {
1168
- childNode.hidden = true;
1169
- break;
1170
- }
1096
+ }
1097
+ else {
1098
+ // this is a default fallback slot node
1099
+ // any element or text node (with content)
1100
+ // should hide the default fallback slot node
1101
+ if (nodeType === 1 /* NODE_TYPE.ElementNode */ ||
1102
+ (nodeType === 3 /* NODE_TYPE.TextNode */ && childNodes[j].textContent.trim() !== '')) {
1103
+ childNode.hidden = true;
1104
+ break;
1171
1105
  }
1172
1106
  }
1173
1107
  }
@@ -1177,67 +1111,45 @@ const updateFallbackSlotVisibility = (elm) => {
1177
1111
  }
1178
1112
  }
1179
1113
  };
1180
- /**
1181
- * Component-global information about nodes which are either currently being
1182
- * relocated or will be shortly.
1183
- */
1184
1114
  const relocateNodes = [];
1185
- /**
1186
- * Mark the contents of a slot for relocation via adding references to them to
1187
- * the {@link relocateNodes} data structure. The actual work of relocating them
1188
- * will then be handled in {@link renderVdom}.
1189
- *
1190
- * @param elm a render node whose child nodes need to be relocated
1191
- */
1192
- const markSlotContentForRelocation = (elm) => {
1115
+ const relocateSlotContent = (elm) => {
1193
1116
  // tslint:disable-next-line: prefer-const
1117
+ let childNode;
1194
1118
  let node;
1195
1119
  let hostContentNodes;
1120
+ let slotNameAttr;
1121
+ let relocateNodeData;
1196
1122
  let j;
1197
- for (const childNode of elm.childNodes) {
1198
- // we need to find child nodes which are slot references so we can then try
1199
- // to match them up with nodes that need to be relocated
1123
+ let i = 0;
1124
+ const childNodes = elm.childNodes;
1125
+ const ilen = childNodes.length;
1126
+ for (; i < ilen; i++) {
1127
+ childNode = childNodes[i];
1200
1128
  if (childNode['s-sr'] && (node = childNode['s-cr']) && node.parentNode) {
1201
- // first get the content reference comment node ('s-cr'), then we get
1202
- // its parent, which is where all the host content is now
1129
+ // first got the content reference comment node
1130
+ // then we got it's parent, which is where all the host content is in now
1203
1131
  hostContentNodes = node.parentNode.childNodes;
1204
- const slotName = childNode['s-sn'];
1205
- // iterate through all the nodes under the location where the host was
1206
- // originally rendered
1132
+ slotNameAttr = childNode['s-sn'];
1207
1133
  for (j = hostContentNodes.length - 1; j >= 0; j--) {
1208
1134
  node = hostContentNodes[j];
1209
- // check that the node is not a content reference node or a node
1210
- // reference and then check that the host name does not match that of
1211
- // childNode.
1212
- // In addition, check that the slot either has not already been relocated, or
1213
- // that its current location's host is not childNode's host. This is essentially
1214
- // a check so that we don't try to relocate (and then hide) a node that is already
1215
- // where it should be.
1216
- if (!node['s-cn'] &&
1217
- !node['s-nr'] &&
1218
- node['s-hn'] !== childNode['s-hn'] &&
1219
- (!BUILD.experimentalSlotFixes )) {
1220
- // if `node` is located in the slot that `childNode` refers to (via the
1221
- // `'s-sn'` property) then we need to relocate it from it's current spot
1222
- // (under the host element parent) to the right slot location
1223
- if (isNodeLocatedInSlot(node, slotName)) {
1135
+ if (!node['s-cn'] && !node['s-nr'] && node['s-hn'] !== childNode['s-hn']) {
1136
+ // let's do some relocating to its new home
1137
+ // but never relocate a content reference node
1138
+ // that is suppose to always represent the original content location
1139
+ if (isNodeLocatedInSlot(node, slotNameAttr)) {
1224
1140
  // it's possible we've already decided to relocate this node
1225
- let relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
1141
+ relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
1226
1142
  // made some changes to slots
1227
1143
  // let's make sure we also double check
1228
1144
  // fallbacks are correctly hidden or shown
1229
1145
  checkSlotFallbackVisibility = true;
1230
- // ensure that the slot-name attr is correct
1231
- node['s-sn'] = node['s-sn'] || slotName;
1146
+ node['s-sn'] = node['s-sn'] || slotNameAttr;
1232
1147
  if (relocateNodeData) {
1233
- relocateNodeData.$nodeToRelocate$['s-sh'] = childNode['s-hn'];
1234
- // we marked this node for relocation previously but didn't find
1235
- // out the slot reference node to which it needs to be relocated
1236
- // so write it down now!
1148
+ // previously we never found a slot home for this node
1149
+ // but turns out we did, so let's remember it now
1237
1150
  relocateNodeData.$slotRefNode$ = childNode;
1238
1151
  }
1239
1152
  else {
1240
- node['s-sh'] = childNode['s-hn'];
1241
1153
  // add to our list of nodes to relocate
1242
1154
  relocateNodes.push({
1243
1155
  $slotRefNode$: childNode,
@@ -1256,10 +1168,8 @@ const markSlotContentForRelocation = (elm) => {
1256
1168
  }
1257
1169
  }
1258
1170
  else if (!relocateNodes.some((r) => r.$nodeToRelocate$ === node)) {
1259
- // the node is not found within the slot (`childNode`) that we're
1260
- // currently looking at, so we stick it into `relocateNodes` to
1261
- // handle later. If we never find a home for this element then
1262
- // we'll need to hide it
1171
+ // so far this element does not have a slot home, not setting slotRefNode on purpose
1172
+ // if we never find a home for this element then we'll need to hide it
1263
1173
  relocateNodes.push({
1264
1174
  $nodeToRelocate$: node,
1265
1175
  });
@@ -1267,41 +1177,30 @@ const markSlotContentForRelocation = (elm) => {
1267
1177
  }
1268
1178
  }
1269
1179
  }
1270
- // if we're dealing with any type of element (capable of itself being a
1271
- // slot reference or containing one) then we recur
1272
1180
  if (childNode.nodeType === 1 /* NODE_TYPE.ElementNode */) {
1273
- markSlotContentForRelocation(childNode);
1181
+ relocateSlotContent(childNode);
1274
1182
  }
1275
1183
  }
1276
1184
  };
1277
- /**
1278
- * Check whether a node is located in a given named slot.
1279
- *
1280
- * @param nodeToRelocate the node of interest
1281
- * @param slotName the slot name to check
1282
- * @returns whether the node is located in the slot or not
1283
- */
1284
- const isNodeLocatedInSlot = (nodeToRelocate, slotName) => {
1185
+ const isNodeLocatedInSlot = (nodeToRelocate, slotNameAttr) => {
1285
1186
  if (nodeToRelocate.nodeType === 1 /* NODE_TYPE.ElementNode */) {
1286
- if (nodeToRelocate.getAttribute('slot') === null && slotName === '') {
1287
- // if the node doesn't have a slot attribute, and the slot we're checking
1288
- // is not a named slot, then we assume the node should be within the slot
1187
+ if (nodeToRelocate.getAttribute('slot') === null && slotNameAttr === '') {
1289
1188
  return true;
1290
1189
  }
1291
- if (nodeToRelocate.getAttribute('slot') === slotName) {
1190
+ if (nodeToRelocate.getAttribute('slot') === slotNameAttr) {
1292
1191
  return true;
1293
1192
  }
1294
1193
  return false;
1295
1194
  }
1296
- if (nodeToRelocate['s-sn'] === slotName) {
1195
+ if (nodeToRelocate['s-sn'] === slotNameAttr) {
1297
1196
  return true;
1298
1197
  }
1299
- return slotName === '';
1198
+ return slotNameAttr === '';
1300
1199
  };
1301
1200
  /**
1302
- * 'Nullify' any VDom `ref` callbacks on a VDom node or its children by calling
1303
- * them with `null`. This signals that the DOM element corresponding to the VDom
1304
- * node has been removed from the DOM.
1201
+ * 'Nullify' any VDom `ref` callbacks on a VDom node or its children by
1202
+ * calling them with `null`. This signals that the DOM element corresponding to
1203
+ * the VDom node has been removed from the DOM.
1305
1204
  *
1306
1205
  * @param vNode a virtual DOM node
1307
1206
  */
@@ -1322,45 +1221,17 @@ const nullifyVNodeRefs = (vNode) => {
1322
1221
  * @param hostRef data needed to root and render the virtual DOM tree, such as
1323
1222
  * the DOM node into which it should be rendered.
1324
1223
  * @param renderFnResults the virtual DOM nodes to be rendered
1325
- * @param isInitialLoad whether or not this is the first call after page load
1326
1224
  */
1327
- const renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
1328
- var _a, _b, _c, _d;
1225
+ const renderVdom = (hostRef, renderFnResults) => {
1329
1226
  const hostElm = hostRef.$hostElement$;
1330
1227
  const cmpMeta = hostRef.$cmpMeta$;
1331
1228
  const oldVNode = hostRef.$vnode$ || newVNode(null, null);
1332
- // if `renderFnResults` is a Host node then we can use it directly. If not,
1333
- // we need to call `h` again to wrap the children of our component in a
1334
- // 'dummy' Host node (well, an empty vnode) since `renderVdom` assumes
1335
- // implicitly that the top-level vdom node is 1) an only child and 2)
1336
- // contains attrs that need to be set on the host element.
1337
1229
  const rootVnode = isHost(renderFnResults) ? renderFnResults : h(null, null, renderFnResults);
1338
1230
  hostTagName = hostElm.tagName;
1339
1231
  if (cmpMeta.$attrsToReflect$) {
1340
1232
  rootVnode.$attrs$ = rootVnode.$attrs$ || {};
1341
1233
  cmpMeta.$attrsToReflect$.map(([propName, attribute]) => (rootVnode.$attrs$[attribute] = hostElm[propName]));
1342
1234
  }
1343
- // On the first render and *only* on the first render we want to check for
1344
- // any attributes set on the host element which are also set on the vdom
1345
- // node. If we find them, we override the value on the VDom node attrs with
1346
- // the value from the host element, which allows developers building apps
1347
- // with Stencil components to override e.g. the `role` attribute on a
1348
- // component even if it's already set on the `Host`.
1349
- if (isInitialLoad && rootVnode.$attrs$) {
1350
- for (const key of Object.keys(rootVnode.$attrs$)) {
1351
- // We have a special implementation in `setAccessor` for `style` and
1352
- // `class` which reconciles values coming from the VDom with values
1353
- // already present on the DOM element, so we don't want to override those
1354
- // attributes on the VDom tree with values from the host element if they
1355
- // are present.
1356
- //
1357
- // Likewise, `ref` and `key` are special internal values for the Stencil
1358
- // runtime and we don't want to override those either.
1359
- if (hostElm.hasAttribute(key) && !['key', 'ref', 'style', 'class'].includes(key)) {
1360
- rootVnode.$attrs$[key] = hostElm[key];
1361
- }
1362
- }
1363
- }
1364
1235
  rootVnode.$tag$ = null;
1365
1236
  rootVnode.$flags$ |= 4 /* VNODE_FLAGS.isHost */;
1366
1237
  hostRef.$vnode$ = rootVnode;
@@ -1381,48 +1252,43 @@ const renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
1381
1252
  // the disconnectCallback from working
1382
1253
  plt.$flags$ |= 1 /* PLATFORM_FLAGS.isTmpDisconnected */;
1383
1254
  if (checkSlotRelocate) {
1384
- markSlotContentForRelocation(rootVnode.$elm$);
1385
- for (const relocateData of relocateNodes) {
1386
- const nodeToRelocate = relocateData.$nodeToRelocate$;
1255
+ relocateSlotContent(rootVnode.$elm$);
1256
+ let relocateData;
1257
+ let nodeToRelocate;
1258
+ let orgLocationNode;
1259
+ let parentNodeRef;
1260
+ let insertBeforeNode;
1261
+ let refNode;
1262
+ let i = 0;
1263
+ for (; i < relocateNodes.length; i++) {
1264
+ relocateData = relocateNodes[i];
1265
+ nodeToRelocate = relocateData.$nodeToRelocate$;
1387
1266
  if (!nodeToRelocate['s-ol']) {
1388
1267
  // add a reference node marking this node's original location
1389
1268
  // keep a reference to this node for later lookups
1390
- const orgLocationNode = doc.createTextNode('');
1269
+ orgLocationNode =
1270
+ doc.createTextNode('');
1391
1271
  orgLocationNode['s-nr'] = nodeToRelocate;
1392
1272
  nodeToRelocate.parentNode.insertBefore((nodeToRelocate['s-ol'] = orgLocationNode), nodeToRelocate);
1393
1273
  }
1394
1274
  }
1395
- for (const relocateData of relocateNodes) {
1396
- const nodeToRelocate = relocateData.$nodeToRelocate$;
1397
- const slotRefNode = relocateData.$slotRefNode$;
1398
- if (slotRefNode) {
1399
- const parentNodeRef = slotRefNode.parentNode;
1400
- // When determining where to insert content, the most simple case would be
1401
- // to relocate the node immediately following the slot reference node. We do this
1402
- // by getting a reference to the node immediately following the slot reference node
1403
- // since we will use `insertBefore` to manipulate the DOM.
1404
- //
1405
- // If there is no node immediately following the slot reference node, then we will just
1406
- // end up appending the node as the last child of the parent.
1407
- let insertBeforeNode = slotRefNode.nextSibling;
1408
- // If the node we're currently planning on inserting the new node before is an element,
1409
- // we need to do some additional checks to make sure we're inserting the node in the correct order.
1410
- // The use case here would be that we have multiple nodes being relocated to the same slot. So, we want
1411
- // to make sure they get inserted into their new how in the same order they were declared in their original location.
1412
- //
1413
- // TODO(STENCIL-914): Remove `experimentalSlotFixes` check
1414
- {
1415
- let orgLocationNode = (_a = nodeToRelocate['s-ol']) === null || _a === void 0 ? void 0 : _a.previousSibling;
1416
- while (orgLocationNode) {
1417
- let refNode = (_b = orgLocationNode['s-nr']) !== null && _b !== void 0 ? _b : null;
1418
- if (refNode && refNode['s-sn'] === nodeToRelocate['s-sn'] && parentNodeRef === refNode.parentNode) {
1419
- refNode = refNode.nextSibling;
1420
- if (!refNode || !refNode['s-nr']) {
1421
- insertBeforeNode = refNode;
1422
- break;
1423
- }
1275
+ for (i = 0; i < relocateNodes.length; i++) {
1276
+ relocateData = relocateNodes[i];
1277
+ nodeToRelocate = relocateData.$nodeToRelocate$;
1278
+ if (relocateData.$slotRefNode$) {
1279
+ // by default we're just going to insert it directly
1280
+ // after the slot reference node
1281
+ parentNodeRef = relocateData.$slotRefNode$.parentNode;
1282
+ insertBeforeNode = relocateData.$slotRefNode$.nextSibling;
1283
+ orgLocationNode = nodeToRelocate['s-ol'];
1284
+ while ((orgLocationNode = orgLocationNode.previousSibling)) {
1285
+ refNode = orgLocationNode['s-nr'];
1286
+ if (refNode && refNode['s-sn'] === nodeToRelocate['s-sn'] && parentNodeRef === refNode.parentNode) {
1287
+ refNode = refNode.nextSibling;
1288
+ if (!refNode || !refNode['s-nr']) {
1289
+ insertBeforeNode = refNode;
1290
+ break;
1424
1291
  }
1425
- orgLocationNode = orgLocationNode.previousSibling;
1426
1292
  }
1427
1293
  }
1428
1294
  if ((!insertBeforeNode && parentNodeRef !== nodeToRelocate.parentNode) ||
@@ -1432,32 +1298,17 @@ const renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
1432
1298
  // has a different next sibling or parent relocated
1433
1299
  if (nodeToRelocate !== insertBeforeNode) {
1434
1300
  if (!nodeToRelocate['s-hn'] && nodeToRelocate['s-ol']) {
1435
- // probably a component in the index.html that doesn't have its hostname set
1301
+ // probably a component in the index.html that doesn't have it's hostname set
1436
1302
  nodeToRelocate['s-hn'] = nodeToRelocate['s-ol'].parentNode.nodeName;
1437
1303
  }
1438
- // Add it back to the dom but in its new home
1439
- // If we get to this point and `insertBeforeNode` is `null`, that means
1440
- // we're just going to append the node as the last child of the parent. Passing
1441
- // `null` as the second arg here will trigger that behavior.
1304
+ // add it back to the dom but in its new home
1442
1305
  parentNodeRef.insertBefore(nodeToRelocate, insertBeforeNode);
1443
- // Reset the `hidden` value back to what it was defined as originally
1444
- // This solves a problem where a `slot` is dynamically rendered and `hidden` may have
1445
- // been set on content originally, but now it has a slot to go to so it should have
1446
- // the value it was defined as having in the DOM, not what we overrode it to.
1447
- if (nodeToRelocate.nodeType === 1 /* NODE_TYPE.ElementNode */) {
1448
- nodeToRelocate.hidden = (_c = nodeToRelocate['s-ih']) !== null && _c !== void 0 ? _c : false;
1449
- }
1450
1306
  }
1451
1307
  }
1452
1308
  }
1453
1309
  else {
1454
1310
  // this node doesn't have a slot home to go to, so let's hide it
1455
1311
  if (nodeToRelocate.nodeType === 1 /* NODE_TYPE.ElementNode */) {
1456
- // Store the initial value of `hidden` so we can reset it later when
1457
- // moving nodes around.
1458
- if (isInitialLoad) {
1459
- nodeToRelocate['s-ih'] = (_d = nodeToRelocate.hidden) !== null && _d !== void 0 ? _d : false;
1460
- }
1461
1312
  nodeToRelocate.hidden = true;
1462
1313
  }
1463
1314
  }
@@ -1578,16 +1429,6 @@ const enqueue = (maybePromise, fn) => isPromisey(maybePromise) ? maybePromise.th
1578
1429
  */
1579
1430
  const isPromisey = (maybePromise) => maybePromise instanceof Promise ||
1580
1431
  (maybePromise && maybePromise.then && typeof maybePromise.then === 'function');
1581
- /**
1582
- * Update a component given reference to its host elements and so on.
1583
- *
1584
- * @param hostRef an object containing references to the element's host node,
1585
- * VDom nodes, and other metadata
1586
- * @param instance a reference to the underlying host element where it will be
1587
- * rendered
1588
- * @param isInitialLoad whether or not this function is being called as part of
1589
- * the first render cycle
1590
- */
1591
1432
  const updateComponent = async (hostRef, instance, isInitialLoad) => {
1592
1433
  var _a;
1593
1434
  const elm = hostRef.$hostElement$;
@@ -1599,7 +1440,7 @@ const updateComponent = async (hostRef, instance, isInitialLoad) => {
1599
1440
  }
1600
1441
  const endRender = createTime('render', hostRef.$cmpMeta$.$tagName$);
1601
1442
  {
1602
- callRender(hostRef, instance, elm, isInitialLoad);
1443
+ callRender(hostRef, instance);
1603
1444
  }
1604
1445
  if (rc) {
1605
1446
  // ok, so turns out there are some child host elements
@@ -1623,24 +1464,8 @@ const updateComponent = async (hostRef, instance, isInitialLoad) => {
1623
1464
  }
1624
1465
  }
1625
1466
  };
1626
- /**
1627
- * Handle making the call to the VDom renderer with the proper context given
1628
- * various build variables
1629
- *
1630
- * @param hostRef an object containing references to the element's host node,
1631
- * VDom nodes, and other metadata
1632
- * @param instance a reference to the underlying host element where it will be
1633
- * rendered
1634
- * @param elm the Host element for the component
1635
- * @param isInitialLoad whether or not this function is being called as part of
1636
- * @returns an empty promise
1637
- */
1638
- const callRender = (hostRef, instance, elm, isInitialLoad) => {
1467
+ const callRender = (hostRef, instance, elm) => {
1639
1468
  try {
1640
- /**
1641
- * minification optimization: `allRenderFn` is `true` if all components have a `render`
1642
- * method, so we can call the method immediately. If not, check before calling it.
1643
- */
1644
1469
  instance = instance.render && instance.render();
1645
1470
  {
1646
1471
  hostRef.$flags$ &= ~16 /* HOST_FLAGS.isQueuedForUpdate */;
@@ -1654,7 +1479,7 @@ const callRender = (hostRef, instance, elm, isInitialLoad) => {
1654
1479
  // or we need to update the css class/attrs on the host element
1655
1480
  // DOM WRITE!
1656
1481
  {
1657
- renderVdom(hostRef, instance, isInitialLoad);
1482
+ renderVdom(hostRef, instance);
1658
1483
  }
1659
1484
  }
1660
1485
  }
@@ -1735,16 +1560,6 @@ const appDidLoad = (who) => {
1735
1560
  }
1736
1561
  nextTick(() => emitEvent(win, 'appload', { detail: { namespace: NAMESPACE } }));
1737
1562
  };
1738
- /**
1739
- * Allows to safely call a method, e.g. `componentDidLoad`, on an instance,
1740
- * e.g. custom element node. If a build figures out that e.g. no component
1741
- * has a `componentDidLoad` method, the instance method gets removed from the
1742
- * output bundle and this function returns `undefined`.
1743
- * @param instance any object that may or may not contain methods
1744
- * @param method method name
1745
- * @param arg single arbitrary argument
1746
- * @returns result of method call if it exists, otherwise `undefined`
1747
- */
1748
1563
  const safeCall = (instance, method, arg) => {
1749
1564
  if (instance && instance[method]) {
1750
1565
  try {
@@ -1812,14 +1627,13 @@ const setValue = (ref, propName, newVal, cmpMeta) => {
1812
1627
  * @returns a reference to the same constructor passed in (but now mutated)
1813
1628
  */
1814
1629
  const proxyComponent = (Cstr, cmpMeta, flags) => {
1815
- var _a;
1816
- const prototype = Cstr.prototype;
1817
1630
  if (cmpMeta.$members$) {
1818
1631
  if (Cstr.watchers) {
1819
1632
  cmpMeta.$watchers$ = Cstr.watchers;
1820
1633
  }
1821
1634
  // It's better to have a const than two Object.entries()
1822
1635
  const members = Object.entries(cmpMeta.$members$);
1636
+ const prototype = Cstr.prototype;
1823
1637
  members.map(([memberName, [memberFlags]]) => {
1824
1638
  if ((memberFlags & 31 /* MEMBER_FLAGS.Prop */ ||
1825
1639
  ((flags & 2 /* PROXY_FLAGS.proxyState */) && memberFlags & 32 /* MEMBER_FLAGS.State */))) {
@@ -1842,18 +1656,16 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
1842
1656
  // proxyComponent - method
1843
1657
  Object.defineProperty(prototype, memberName, {
1844
1658
  value(...args) {
1845
- var _a;
1846
1659
  const ref = getHostRef(this);
1847
- return (_a = ref === null || ref === void 0 ? void 0 : ref.$onInstancePromise$) === null || _a === void 0 ? void 0 : _a.then(() => { var _a; return (_a = ref.$lazyInstance$) === null || _a === void 0 ? void 0 : _a[memberName](...args); });
1660
+ return ref.$onInstancePromise$.then(() => ref.$lazyInstance$[memberName](...args));
1848
1661
  },
1849
1662
  });
1850
1663
  }
1851
1664
  });
1852
1665
  if ((flags & 1 /* PROXY_FLAGS.isElementConstructor */)) {
1853
1666
  const attrNameToPropName = new Map();
1854
- prototype.attributeChangedCallback = function (attrName, oldValue, newValue) {
1667
+ prototype.attributeChangedCallback = function (attrName, _oldValue, newValue) {
1855
1668
  plt.jmp(() => {
1856
- var _a;
1857
1669
  const propName = attrNameToPropName.get(attrName);
1858
1670
  // In a web component lifecycle the attributeChangedCallback runs prior to connectedCallback
1859
1671
  // in the case where an attribute was set inline.
@@ -1875,12 +1687,12 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
1875
1687
  // customElements.define('my-component', MyComponent);
1876
1688
  // </script>
1877
1689
  // ```
1878
- // In this case if we do not un-shadow here and use the value of the shadowing property, attributeChangedCallback
1690
+ // In this case if we do not unshadow here and use the value of the shadowing property, attributeChangedCallback
1879
1691
  // will be called with `newValue = "some-value"` and will set the shadowed property (this.someAttribute = "another-value")
1880
1692
  // to the value that was set inline i.e. "some-value" from above example. When
1881
- // the connectedCallback attempts to un-shadow it will use "some-value" as the initial value rather than "another-value"
1693
+ // the connectedCallback attempts to unshadow it will use "some-value" as the initial value rather than "another-value"
1882
1694
  //
1883
- // The case where the attribute was NOT set inline but was not set programmatically shall be handled/un-shadowed
1695
+ // The case where the attribute was NOT set inline but was not set programmatically shall be handled/unshadowed
1884
1696
  // by connectedCallback as this attributeChangedCallback will not fire.
1885
1697
  //
1886
1698
  // https://developers.google.com/web/fundamentals/web-components/best-practices#lazy-properties
@@ -1900,67 +1712,26 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
1900
1712
  // `propName` to be converted to a `DOMString`, which may not be what we want for other primitive props.
1901
1713
  return;
1902
1714
  }
1903
- else if (propName == null) {
1904
- // At this point we should know this is not a "member", so we can treat it like watching an attribute
1905
- // on a vanilla web component
1906
- const hostRef = getHostRef(this);
1907
- const flags = hostRef === null || hostRef === void 0 ? void 0 : hostRef.$flags$;
1908
- // We only want to trigger the callback(s) if:
1909
- // 1. The instance is ready
1910
- // 2. The watchers are ready
1911
- // 3. The value has changed
1912
- if (flags &&
1913
- !(flags & 8 /* HOST_FLAGS.isConstructingInstance */) &&
1914
- flags & 128 /* HOST_FLAGS.isWatchReady */ &&
1915
- newValue !== oldValue) {
1916
- const instance = hostRef.$lazyInstance$ ;
1917
- const entry = (_a = cmpMeta.$watchers$) === null || _a === void 0 ? void 0 : _a[attrName];
1918
- entry === null || entry === void 0 ? void 0 : entry.forEach((callbackName) => {
1919
- if (instance[callbackName] != null) {
1920
- instance[callbackName].call(instance, newValue, oldValue, attrName);
1921
- }
1922
- });
1923
- }
1924
- return;
1925
- }
1926
1715
  this[propName] = newValue === null && typeof this[propName] === 'boolean' ? false : newValue;
1927
1716
  });
1928
1717
  };
1929
- // Create an array of attributes to observe
1930
- // This list in comprised of all strings used within a `@Watch()` decorator
1931
- // on a component as well as any Stencil-specific "members" (`@Prop()`s and `@State()`s).
1932
- // As such, there is no way to guarantee type-safety here that a user hasn't entered
1933
- // an invalid attribute.
1934
- Cstr.observedAttributes = Array.from(new Set([
1935
- ...Object.keys((_a = cmpMeta.$watchers$) !== null && _a !== void 0 ? _a : {}),
1936
- ...members
1937
- .filter(([_, m]) => m[0] & 15 /* MEMBER_FLAGS.HasAttribute */)
1938
- .map(([propName, m]) => {
1939
- var _a;
1940
- const attrName = m[1] || propName;
1941
- attrNameToPropName.set(attrName, propName);
1942
- if (m[0] & 512 /* MEMBER_FLAGS.ReflectAttr */) {
1943
- (_a = cmpMeta.$attrsToReflect$) === null || _a === void 0 ? void 0 : _a.push([propName, attrName]);
1944
- }
1945
- return attrName;
1946
- }),
1947
- ]));
1718
+ // create an array of attributes to observe
1719
+ // and also create a map of html attribute name to js property name
1720
+ Cstr.observedAttributes = members
1721
+ .filter(([_, m]) => m[0] & 15 /* MEMBER_FLAGS.HasAttribute */) // filter to only keep props that should match attributes
1722
+ .map(([propName, m]) => {
1723
+ const attrName = m[1] || propName;
1724
+ attrNameToPropName.set(attrName, propName);
1725
+ if (m[0] & 512 /* MEMBER_FLAGS.ReflectAttr */) {
1726
+ cmpMeta.$attrsToReflect$.push([propName, attrName]);
1727
+ }
1728
+ return attrName;
1729
+ });
1948
1730
  }
1949
1731
  }
1950
1732
  return Cstr;
1951
1733
  };
1952
- /**
1953
- * Initialize a Stencil component given a reference to its host element, its
1954
- * runtime bookkeeping data structure, runtime metadata about the component,
1955
- * and (optionally) an HMR version ID.
1956
- *
1957
- * @param elm a host element
1958
- * @param hostRef the element's runtime bookkeeping object
1959
- * @param cmpMeta runtime metadata for the Stencil component
1960
- * @param hmrVersionId an (optional) HMR version ID
1961
- */
1962
- const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
1963
- let Cstr;
1734
+ const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId, Cstr) => {
1964
1735
  // initializeComponent
1965
1736
  if ((hostRef.$flags$ & 32 /* HOST_FLAGS.hasInitializedComponent */) === 0) {
1966
1737
  // Let the runtime know that the component has been initialized
@@ -2038,8 +1809,6 @@ const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
2038
1809
  schedule();
2039
1810
  }
2040
1811
  };
2041
- const fireConnectedCallback = (instance) => {
2042
- };
2043
1812
  const connectedCallback = (elm) => {
2044
1813
  if ((plt.$flags$ & 1 /* PLATFORM_FLAGS.isTmpDisconnected */) === 0) {
2045
1814
  const hostRef = getHostRef(elm);
@@ -2053,7 +1822,7 @@ const connectedCallback = (elm) => {
2053
1822
  // if the slot polyfill is required we'll need to put some nodes
2054
1823
  // in here to act as original content anchors as we move nodes around
2055
1824
  // host element has been connected to the DOM
2056
- if ((// TODO(STENCIL-854): Remove code related to legacy shadowDomShim field
1825
+ if ((// TODO(STENCIL-662): Remove code related to deprecated shadowDomShim field
2057
1826
  cmpMeta.$flags$ & (4 /* CMP_FLAGS.hasSlotRelocation */ | 8 /* CMP_FLAGS.needsShadowDomShim */))) {
2058
1827
  setContentReference(elm);
2059
1828
  }
@@ -2093,11 +1862,6 @@ const connectedCallback = (elm) => {
2093
1862
  // reattach any event listeners to the host
2094
1863
  // since they would have been removed when disconnected
2095
1864
  addHostEventListeners(elm, hostRef, cmpMeta.$listeners$);
2096
- // fire off connectedCallback() on component instance
2097
- if (hostRef === null || hostRef === void 0 ? void 0 : hostRef.$lazyInstance$) ;
2098
- else if (hostRef === null || hostRef === void 0 ? void 0 : hostRef.$onReadyPromise$) {
2099
- hostRef.$onReadyPromise$.then(() => fireConnectedCallback());
2100
- }
2101
1865
  }
2102
1866
  endConnected();
2103
1867
  }
@@ -2113,9 +1877,7 @@ const setContentReference = (elm) => {
2113
1877
  contentRefElm['s-cn'] = true;
2114
1878
  elm.insertBefore(contentRefElm, elm.firstChild);
2115
1879
  };
2116
- const disconnectInstance = (instance) => {
2117
- };
2118
- const disconnectedCallback = async (elm) => {
1880
+ const disconnectedCallback = (elm) => {
2119
1881
  if ((plt.$flags$ & 1 /* PLATFORM_FLAGS.isTmpDisconnected */) === 0) {
2120
1882
  const hostRef = getHostRef(elm);
2121
1883
  {
@@ -2124,10 +1886,6 @@ const disconnectedCallback = async (elm) => {
2124
1886
  hostRef.$rmListeners$ = undefined;
2125
1887
  }
2126
1888
  }
2127
- if (hostRef === null || hostRef === void 0 ? void 0 : hostRef.$lazyInstance$) ;
2128
- else if (hostRef === null || hostRef === void 0 ? void 0 : hostRef.$onReadyPromise$) {
2129
- hostRef.$onReadyPromise$.then(() => disconnectInstance());
2130
- }
2131
1889
  }
2132
1890
  };
2133
1891
  const bootstrapLazy = (lazyBundles, options = {}) => {
@@ -2138,27 +1896,20 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
2138
1896
  const customElements = win.customElements;
2139
1897
  const head = doc.head;
2140
1898
  const metaCharset = /*@__PURE__*/ head.querySelector('meta[charset]');
2141
- const dataStyles = /*@__PURE__*/ doc.createElement('style');
1899
+ const visibilityStyle = /*@__PURE__*/ doc.createElement('style');
2142
1900
  const deferredConnectedCallbacks = [];
2143
1901
  let appLoadFallback;
2144
1902
  let isBootstrapping = true;
2145
1903
  Object.assign(plt, options);
2146
1904
  plt.$resourcesUrl$ = new URL(options.resourcesUrl || './', doc.baseURI).href;
2147
- let hasSlotRelocation = false;
2148
1905
  lazyBundles.map((lazyBundle) => {
2149
1906
  lazyBundle[1].map((compactMeta) => {
2150
- var _a;
2151
1907
  const cmpMeta = {
2152
1908
  $flags$: compactMeta[0],
2153
1909
  $tagName$: compactMeta[1],
2154
1910
  $members$: compactMeta[2],
2155
1911
  $listeners$: compactMeta[3],
2156
1912
  };
2157
- // Check if we are using slots outside the shadow DOM in this component.
2158
- // We'll use this information later to add styles for `slot-fb` elements
2159
- if (cmpMeta.$flags$ & 4 /* CMP_FLAGS.hasSlotRelocation */) {
2160
- hasSlotRelocation = true;
2161
- }
2162
1913
  {
2163
1914
  cmpMeta.$members$ = compactMeta[2];
2164
1915
  }
@@ -2169,7 +1920,7 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
2169
1920
  cmpMeta.$attrsToReflect$ = [];
2170
1921
  }
2171
1922
  {
2172
- cmpMeta.$watchers$ = (_a = compactMeta[4]) !== null && _a !== void 0 ? _a : {};
1923
+ cmpMeta.$watchers$ = {};
2173
1924
  }
2174
1925
  const tagName = cmpMeta.$tagName$;
2175
1926
  const HostElement = class extends HTMLElement {
@@ -2221,25 +1972,15 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
2221
1972
  }
2222
1973
  });
2223
1974
  });
2224
- // Add styles for `slot-fb` elements if any of our components are using slots outside the Shadow DOM
2225
- if (hasSlotRelocation) {
2226
- dataStyles.innerHTML += SLOT_FB_CSS;
2227
- }
2228
- // Add hydration styles
2229
1975
  {
2230
- dataStyles.innerHTML += cmpTags + HYDRATED_CSS;
2231
- }
2232
- // If we have styles, add them to the DOM
2233
- if (dataStyles.innerHTML.length) {
2234
- dataStyles.setAttribute('data-styles', '');
1976
+ visibilityStyle.innerHTML = cmpTags + HYDRATED_CSS;
1977
+ visibilityStyle.setAttribute('data-styles', '');
2235
1978
  // Apply CSP nonce to the style tag if it exists
2236
1979
  const nonce = (_a = plt.$nonce$) !== null && _a !== void 0 ? _a : queryNonceMetaTagContent(doc);
2237
1980
  if (nonce != null) {
2238
- dataStyles.setAttribute('nonce', nonce);
1981
+ visibilityStyle.setAttribute('nonce', nonce);
2239
1982
  }
2240
- // Insert the styles into the document head
2241
- // NOTE: this _needs_ to happen last so we can ensure the nonce (and other attributes) are applied
2242
- head.insertBefore(dataStyles, metaCharset ? metaCharset.nextSibling : head.firstChild);
1983
+ head.insertBefore(visibilityStyle, metaCharset ? metaCharset.nextSibling : head.firstChild);
2243
1984
  }
2244
1985
  // Process deferred connectedCallbacks now all components have been registered
2245
1986
  isBootstrapping = false;
@@ -2297,40 +2038,13 @@ const hostListenerOpts = (flags) => (flags & 2 /* LISTENER_FLAGS.Capture */) !==
2297
2038
  * @returns void
2298
2039
  */
2299
2040
  const setNonce = (nonce) => (plt.$nonce$ = nonce);
2300
- /**
2301
- * A WeakMap mapping runtime component references to their corresponding host reference
2302
- * instances.
2303
- */
2304
2041
  const hostRefs = /*@__PURE__*/ new WeakMap();
2305
- /**
2306
- * Given a {@link d.RuntimeRef} retrieve the corresponding {@link d.HostRef}
2307
- *
2308
- * @param ref the runtime ref of interest
2309
- * @returns the Host reference (if found) or undefined
2310
- */
2311
2042
  const getHostRef = (ref) => hostRefs.get(ref);
2312
- /**
2313
- * Register a lazy instance with the {@link hostRefs} object so it's
2314
- * corresponding {@link d.HostRef} can be retrieved later.
2315
- *
2316
- * @param lazyInstance the lazy instance of interest
2317
- * @param hostRef that instances `HostRef` object
2318
- * @returns a reference to the host ref WeakMap
2319
- */
2320
2043
  const registerInstance = (lazyInstance, hostRef) => hostRefs.set((hostRef.$lazyInstance$ = lazyInstance), hostRef);
2321
- /**
2322
- * Register a host element for a Stencil component, setting up various metadata
2323
- * and callbacks based on {@link BUILD} flags as well as the component's runtime
2324
- * metadata.
2325
- *
2326
- * @param hostElement the host element to register
2327
- * @param cmpMeta runtime metadata for that component
2328
- * @returns a reference to the host ref WeakMap
2329
- */
2330
- const registerHost = (hostElement, cmpMeta) => {
2044
+ const registerHost = (elm, cmpMeta) => {
2331
2045
  const hostRef = {
2332
2046
  $flags$: 0,
2333
- $hostElement$: hostElement,
2047
+ $hostElement$: elm,
2334
2048
  $cmpMeta$: cmpMeta,
2335
2049
  $instanceValues$: new Map(),
2336
2050
  };
@@ -2339,11 +2053,11 @@ const registerHost = (hostElement, cmpMeta) => {
2339
2053
  }
2340
2054
  {
2341
2055
  hostRef.$onReadyPromise$ = new Promise((r) => (hostRef.$onReadyResolve$ = r));
2342
- hostElement['s-p'] = [];
2343
- hostElement['s-rc'] = [];
2056
+ elm['s-p'] = [];
2057
+ elm['s-rc'] = [];
2344
2058
  }
2345
- addHostEventListeners(hostElement, hostRef, cmpMeta.$listeners$);
2346
- return hostRefs.set(hostElement, hostRef);
2059
+ addHostEventListeners(elm, hostRef, cmpMeta.$listeners$);
2060
+ return hostRefs.set(elm, hostRef);
2347
2061
  };
2348
2062
  const isMemberInElement = (elm, memberName) => memberName in elm;
2349
2063
  const consoleError = (e, el) => (0, console.error)(e, el);
@@ -2431,7 +2145,7 @@ const flush = () => {
2431
2145
  }
2432
2146
  }
2433
2147
  };
2434
- const nextTick = (cb) => promiseResolve().then(cb);
2148
+ const nextTick = /*@__PURE__*/ (cb) => promiseResolve().then(cb);
2435
2149
  const writeTask = /*@__PURE__*/ queueTask(queueDomWrites, true);
2436
2150
 
2437
2151
  exports.Host = Host;