@six-group/ui-library 0.0.0-insider.9277796 → 0.0.0-insider.9eaaa42

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 (1015) hide show
  1. package/README.md +9 -0
  2. package/dist/cjs/event-listeners-fdfe838c.js +61 -0
  3. package/dist/cjs/event-listeners-fdfe838c.js.map +1 -0
  4. package/dist/cjs/{execution-control-46f388e0.js → execution-control-b4707294.js} +6 -3
  5. package/dist/cjs/execution-control-b4707294.js.map +1 -0
  6. package/dist/cjs/{focus-visible-0b352c74.js → focus-visible-ae2470dd.js} +3 -3
  7. package/dist/cjs/focus-visible-ae2470dd.js.map +1 -0
  8. package/dist/cjs/form-2df8c5bb.js +20 -0
  9. package/dist/cjs/form-2df8c5bb.js.map +1 -0
  10. package/dist/cjs/form-control-19303ed2.js +36 -0
  11. package/dist/cjs/form-control-19303ed2.js.map +1 -0
  12. package/dist/cjs/{index-2f6daa5b.js → index-7d73cbd6.js} +677 -171
  13. package/dist/cjs/index-7d73cbd6.js.map +1 -0
  14. package/dist/cjs/index.cjs.js +94 -0
  15. package/dist/cjs/index.cjs.js.map +1 -1
  16. package/dist/cjs/loader.cjs.js +3 -12
  17. package/dist/cjs/loader.cjs.js.map +1 -1
  18. package/dist/cjs/{modal-48d42228.js → modal-d5f074c7.js} +4 -3
  19. package/dist/cjs/modal-d5f074c7.js.map +1 -0
  20. package/dist/cjs/{popover-f743f62b.js → popover-2df7e154.js} +39 -31
  21. package/dist/cjs/popover-2df7e154.js.map +1 -0
  22. package/dist/cjs/popup-f1d9910f.js +103 -0
  23. package/dist/cjs/popup-f1d9910f.js.map +1 -0
  24. package/dist/cjs/{scroll-76e6f5d7.js → scroll-2c4200dc.js} +1 -2
  25. package/dist/{esm/scroll-180b53fd.js.map → cjs/scroll-2c4200dc.js.map} +1 -1
  26. package/dist/cjs/set-attributes_2.cjs.entry.js +4 -2
  27. package/dist/cjs/set-attributes_2.cjs.entry.js.map +1 -1
  28. package/dist/cjs/six-alert.cjs.entry.js +18 -23
  29. package/dist/cjs/six-alert.cjs.entry.js.map +1 -1
  30. package/dist/cjs/six-avatar.cjs.entry.js +5 -8
  31. package/dist/cjs/six-avatar.cjs.entry.js.map +1 -1
  32. package/dist/cjs/six-badge.cjs.entry.js +2 -2
  33. package/dist/cjs/six-badge.cjs.entry.js.map +1 -1
  34. package/dist/cjs/six-button.cjs.entry.js +37 -35
  35. package/dist/cjs/six-button.cjs.entry.js.map +1 -1
  36. package/dist/cjs/six-card.cjs.entry.js +1 -1
  37. package/dist/cjs/six-card.cjs.entry.js.map +1 -1
  38. package/dist/cjs/six-checkbox.cjs.entry.js +54 -86
  39. package/dist/cjs/six-checkbox.cjs.entry.js.map +1 -1
  40. package/dist/cjs/six-datepicker.cjs.entry.js +149 -280
  41. package/dist/cjs/six-datepicker.cjs.entry.js.map +1 -1
  42. package/dist/cjs/six-details.cjs.entry.js +49 -48
  43. package/dist/cjs/six-details.cjs.entry.js.map +1 -1
  44. package/dist/cjs/six-dialog.cjs.entry.js +37 -41
  45. package/dist/cjs/six-dialog.cjs.entry.js.map +1 -1
  46. package/dist/cjs/six-drawer.cjs.entry.js +35 -39
  47. package/dist/cjs/six-drawer.cjs.entry.js.map +1 -1
  48. package/dist/cjs/six-dropdown_2.cjs.entry.js +216 -197
  49. package/dist/cjs/six-dropdown_2.cjs.entry.js.map +1 -1
  50. package/dist/cjs/six-error-page.cjs.entry.js +20 -22
  51. package/dist/cjs/six-error-page.cjs.entry.js.map +1 -1
  52. package/dist/cjs/six-error.cjs.entry.js +21 -0
  53. package/dist/cjs/six-error.cjs.entry.js.map +1 -0
  54. package/dist/cjs/six-file-list-item.cjs.entry.js +2 -2
  55. package/dist/cjs/six-file-list-item.cjs.entry.js.map +1 -1
  56. package/dist/cjs/six-file-list.cjs.entry.js +1 -1
  57. package/dist/cjs/six-file-list.cjs.entry.js.map +1 -1
  58. package/dist/cjs/six-file-upload.cjs.entry.js +21 -21
  59. package/dist/cjs/six-file-upload.cjs.entry.js.map +1 -1
  60. package/dist/cjs/six-footer.cjs.entry.js +1 -1
  61. package/dist/cjs/six-footer.cjs.entry.js.map +1 -1
  62. package/dist/cjs/six-group-label.cjs.entry.js +13 -12
  63. package/dist/cjs/six-group-label.cjs.entry.js.map +1 -1
  64. package/dist/cjs/six-header.cjs.entry.js +66 -44
  65. package/dist/cjs/six-header.cjs.entry.js.map +1 -1
  66. package/dist/cjs/six-icon-button.cjs.entry.js +5 -5
  67. package/dist/cjs/six-icon-button.cjs.entry.js.map +1 -1
  68. package/dist/cjs/six-icon.cjs.entry.js +1 -1
  69. package/dist/cjs/six-icon.cjs.entry.js.map +1 -1
  70. package/dist/cjs/six-input.cjs.entry.js +98 -128
  71. package/dist/cjs/six-input.cjs.entry.js.map +1 -1
  72. package/dist/cjs/six-item-picker.cjs.entry.js +62 -81
  73. package/dist/cjs/six-item-picker.cjs.entry.js.map +1 -1
  74. package/dist/cjs/six-language-switcher.cjs.entry.js +2 -2
  75. package/dist/cjs/six-language-switcher.cjs.entry.js.map +1 -1
  76. package/dist/cjs/six-layout-grid.cjs.entry.js +5 -3
  77. package/dist/cjs/six-layout-grid.cjs.entry.js.map +1 -1
  78. package/dist/cjs/six-main-container.cjs.entry.js +1 -1
  79. package/dist/cjs/six-main-container.cjs.entry.js.map +1 -1
  80. package/dist/cjs/six-menu-divider.cjs.entry.js +1 -1
  81. package/dist/cjs/six-menu-divider.cjs.entry.js.map +1 -1
  82. package/dist/cjs/six-menu-item.cjs.entry.js +9 -7
  83. package/dist/cjs/six-menu-item.cjs.entry.js.map +1 -1
  84. package/dist/cjs/six-menu-label.cjs.entry.js +1 -1
  85. package/dist/cjs/six-menu-label.cjs.entry.js.map +1 -1
  86. package/dist/cjs/six-picto.cjs.entry.js +5 -2
  87. package/dist/cjs/six-picto.cjs.entry.js.map +1 -1
  88. package/dist/cjs/six-progress-bar.cjs.entry.js +1 -1
  89. package/dist/cjs/six-progress-bar.cjs.entry.js.map +1 -1
  90. package/dist/cjs/six-progress-ring.cjs.entry.js +4 -4
  91. package/dist/cjs/six-progress-ring.cjs.entry.js.map +1 -1
  92. package/dist/cjs/six-radio.cjs.entry.js +63 -72
  93. package/dist/cjs/six-radio.cjs.entry.js.map +1 -1
  94. package/dist/cjs/six-range.cjs.entry.js +111 -107
  95. package/dist/cjs/six-range.cjs.entry.js.map +1 -1
  96. package/dist/cjs/six-root.cjs.entry.js +2 -2
  97. package/dist/cjs/six-root.cjs.entry.js.map +1 -1
  98. package/dist/cjs/six-search-field.cjs.entry.js +11 -6
  99. package/dist/cjs/six-search-field.cjs.entry.js.map +1 -1
  100. package/dist/cjs/six-select.cjs.entry.js +193 -223
  101. package/dist/cjs/six-select.cjs.entry.js.map +1 -1
  102. package/dist/cjs/six-sidebar-item-group.cjs.entry.js +23 -8
  103. package/dist/cjs/six-sidebar-item-group.cjs.entry.js.map +1 -1
  104. package/dist/cjs/six-sidebar-item.cjs.entry.js +6 -4
  105. package/dist/cjs/six-sidebar-item.cjs.entry.js.map +1 -1
  106. package/dist/cjs/six-sidebar.cjs.entry.js +41 -20
  107. package/dist/cjs/six-sidebar.cjs.entry.js.map +1 -1
  108. package/dist/cjs/six-spinner.cjs.entry.js +1 -1
  109. package/dist/cjs/six-spinner.cjs.entry.js.map +1 -1
  110. package/dist/cjs/six-switch.cjs.entry.js +77 -65
  111. package/dist/cjs/six-switch.cjs.entry.js.map +1 -1
  112. package/dist/cjs/six-tab-group.cjs.entry.js +136 -123
  113. package/dist/cjs/six-tab-group.cjs.entry.js.map +1 -1
  114. package/dist/cjs/six-tab-panel.cjs.entry.js +2 -2
  115. package/dist/cjs/six-tab-panel.cjs.entry.js.map +1 -1
  116. package/dist/cjs/six-tab.cjs.entry.js +24 -6
  117. package/dist/cjs/six-tab.cjs.entry.js.map +1 -1
  118. package/dist/cjs/six-tag.cjs.entry.js +26 -7
  119. package/dist/cjs/six-tag.cjs.entry.js.map +1 -1
  120. package/dist/cjs/six-textarea.cjs.entry.js +86 -109
  121. package/dist/cjs/six-textarea.cjs.entry.js.map +1 -1
  122. package/dist/cjs/six-tile.cjs.entry.js +14 -17
  123. package/dist/cjs/six-tile.cjs.entry.js.map +1 -1
  124. package/dist/cjs/six-timepicker.cjs.entry.js +154 -215
  125. package/dist/cjs/six-timepicker.cjs.entry.js.map +1 -1
  126. package/dist/cjs/six-tooltip.cjs.entry.js +56 -59
  127. package/dist/cjs/six-tooltip.cjs.entry.js.map +1 -1
  128. package/dist/cjs/{slot-ad537f24.js → slot-6e6a400f.js} +11 -10
  129. package/dist/cjs/slot-6e6a400f.js.map +1 -0
  130. package/dist/cjs/{types-64878648.js → types-47199040.js} +1 -1
  131. package/dist/cjs/types-47199040.js.map +1 -0
  132. package/dist/cjs/ui-library.cjs.js +3 -6
  133. package/dist/cjs/ui-library.cjs.js.map +1 -1
  134. package/dist/collection/collection-manifest.json +55 -55
  135. package/dist/collection/components/six-alert/six-alert.js +32 -30
  136. package/dist/collection/components/six-alert/six-alert.js.map +1 -1
  137. package/dist/collection/components/six-alert/test/six-alert.spec.js +25 -0
  138. package/dist/collection/components/six-alert/test/six-alert.spec.js.map +1 -0
  139. package/dist/collection/components/six-avatar/six-avatar.js +5 -8
  140. package/dist/collection/components/six-avatar/six-avatar.js.map +1 -1
  141. package/dist/collection/components/six-avatar/test/six-avatar.spec.js +26 -0
  142. package/dist/collection/components/six-avatar/test/six-avatar.spec.js.map +1 -0
  143. package/dist/collection/components/six-badge/six-badge.js +2 -2
  144. package/dist/collection/components/six-badge/six-badge.js.map +1 -1
  145. package/dist/collection/components/six-badge/test/six-badge.spec.js +20 -0
  146. package/dist/collection/components/six-badge/test/six-badge.spec.js.map +1 -0
  147. package/dist/collection/components/six-button/six-button.css +5 -30
  148. package/dist/collection/components/six-button/six-button.js +56 -47
  149. package/dist/collection/components/six-button/six-button.js.map +1 -1
  150. package/dist/collection/components/six-button/test/six-button.spec.js +69 -0
  151. package/dist/collection/components/six-button/test/six-button.spec.js.map +1 -0
  152. package/dist/collection/components/six-card/six-card.js +1 -1
  153. package/dist/collection/components/six-card/six-card.js.map +1 -1
  154. package/dist/collection/components/six-card/test/six-card.spec.js +18 -0
  155. package/dist/collection/components/six-card/test/six-card.spec.js.map +1 -0
  156. package/dist/collection/components/six-checkbox/six-checkbox.css +4 -1
  157. package/dist/collection/components/six-checkbox/six-checkbox.js +97 -189
  158. package/dist/collection/components/six-checkbox/six-checkbox.js.map +1 -1
  159. package/dist/collection/components/six-checkbox/test/six-checkbox.spec.js +83 -0
  160. package/dist/collection/components/six-checkbox/test/six-checkbox.spec.js.map +1 -0
  161. package/dist/collection/components/six-datepicker/components/day-selection.js +3 -3
  162. package/dist/collection/components/six-datepicker/components/day-selection.js.map +1 -1
  163. package/dist/collection/components/six-datepicker/components/month-selection.js +6 -5
  164. package/dist/collection/components/six-datepicker/components/month-selection.js.map +1 -1
  165. package/dist/collection/components/six-datepicker/components/year-selection.js +11 -8
  166. package/dist/collection/components/six-datepicker/components/year-selection.js.map +1 -1
  167. package/dist/collection/components/six-datepicker/six-datepicker.js +223 -388
  168. package/dist/collection/components/six-datepicker/six-datepicker.js.map +1 -1
  169. package/dist/collection/components/six-datepicker/test/six-datepicker.spec.js +26 -0
  170. package/dist/collection/components/six-datepicker/test/six-datepicker.spec.js.map +1 -0
  171. package/dist/collection/components/six-details/six-details.css +3 -1
  172. package/dist/collection/components/six-details/six-details.js +65 -58
  173. package/dist/collection/components/six-details/six-details.js.map +1 -1
  174. package/dist/collection/components/six-details/test/six-details.spec.js +36 -0
  175. package/dist/collection/components/six-details/test/six-details.spec.js.map +1 -0
  176. package/dist/collection/components/six-dialog/six-dialog.js +55 -51
  177. package/dist/collection/components/six-dialog/six-dialog.js.map +1 -1
  178. package/dist/collection/components/six-dialog/test/six-dialog.spec.js +34 -0
  179. package/dist/collection/components/six-dialog/test/six-dialog.spec.js.map +1 -0
  180. package/dist/collection/components/six-drawer/six-drawer.js +53 -49
  181. package/dist/collection/components/six-drawer/six-drawer.js.map +1 -1
  182. package/dist/collection/components/six-drawer/test/six-drawer.spec.js +34 -0
  183. package/dist/collection/components/six-drawer/test/six-drawer.spec.js.map +1 -0
  184. package/dist/collection/components/six-dropdown/six-dropdown.css +2 -1
  185. package/dist/collection/components/six-dropdown/six-dropdown.js +215 -191
  186. package/dist/collection/components/six-dropdown/six-dropdown.js.map +1 -1
  187. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js +122 -0
  188. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js.map +1 -0
  189. package/dist/collection/components/six-error/six-error.css +5 -0
  190. package/dist/collection/components/six-error/six-error.js +25 -0
  191. package/dist/collection/components/six-error/six-error.js.map +1 -0
  192. package/dist/collection/components/six-error-page/six-error-page.js +26 -28
  193. package/dist/collection/components/six-error-page/six-error-page.js.map +1 -1
  194. package/dist/collection/components/six-error-page/test/six-error-page.spec.js +240 -0
  195. package/dist/collection/components/six-error-page/test/six-error-page.spec.js.map +1 -0
  196. package/dist/collection/components/six-file-list/six-file-list.js +1 -1
  197. package/dist/collection/components/six-file-list/test/six-file-list.spec.js +67 -0
  198. package/dist/collection/components/six-file-list/test/six-file-list.spec.js.map +1 -0
  199. package/dist/collection/components/six-file-list-item/six-file-list-item.js +8 -6
  200. package/dist/collection/components/six-file-list-item/six-file-list-item.js.map +1 -1
  201. package/dist/collection/components/six-file-list-item/test/six-file-list-item.spec.js +169 -0
  202. package/dist/collection/components/six-file-list-item/test/six-file-list-item.spec.js.map +1 -0
  203. package/dist/collection/components/six-file-upload/six-file-upload.js +37 -35
  204. package/dist/collection/components/six-file-upload/six-file-upload.js.map +1 -1
  205. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js +103 -0
  206. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js.map +1 -0
  207. package/dist/collection/components/six-footer/six-footer.js +1 -1
  208. package/dist/collection/components/six-footer/test/six-footer.spec.js +21 -0
  209. package/dist/collection/components/six-footer/test/six-footer.spec.js.map +1 -0
  210. package/dist/collection/components/six-group-label/six-group-label.css +4 -1
  211. package/dist/collection/components/six-group-label/six-group-label.js +15 -13
  212. package/dist/collection/components/six-group-label/six-group-label.js.map +1 -1
  213. package/dist/collection/components/six-group-label/test/six-group-label.spec.js +45 -0
  214. package/dist/collection/components/six-group-label/test/six-group-label.spec.js.map +1 -0
  215. package/dist/collection/components/six-header/six-header.js +82 -52
  216. package/dist/collection/components/six-header/six-header.js.map +1 -1
  217. package/dist/collection/components/six-header/test/six-header.spec.js +133 -0
  218. package/dist/collection/components/six-header/test/six-header.spec.js.map +1 -0
  219. package/dist/collection/components/six-icon/six-icon.js +1 -1
  220. package/dist/collection/components/six-icon/test/six-icon.spec.js +20 -0
  221. package/dist/collection/components/six-icon/test/six-icon.spec.js.map +1 -0
  222. package/dist/collection/components/six-icon-button/six-icon-button.css +4 -4
  223. package/dist/collection/components/six-icon-button/six-icon-button.js +10 -10
  224. package/dist/collection/components/six-icon-button/six-icon-button.js.map +1 -1
  225. package/dist/collection/components/six-icon-button/test/six-icon-button.spec.js +23 -0
  226. package/dist/collection/components/six-icon-button/test/six-icon-button.spec.js.map +1 -0
  227. package/dist/collection/components/six-input/six-input.css +5 -2
  228. package/dist/collection/components/six-input/six-input.js +212 -362
  229. package/dist/collection/components/six-input/six-input.js.map +1 -1
  230. package/dist/collection/components/six-input/test/six-input.spec.js +39 -0
  231. package/dist/collection/components/six-input/test/six-input.spec.js.map +1 -0
  232. package/dist/collection/components/six-item-picker/six-item-picker.js +79 -94
  233. package/dist/collection/components/six-item-picker/six-item-picker.js.map +1 -1
  234. package/dist/collection/components/six-item-picker/test/six-item-picker.spec.js +90 -0
  235. package/dist/collection/components/six-item-picker/test/six-item-picker.spec.js.map +1 -0
  236. package/dist/collection/components/six-language-switcher/six-language-switcher.js +7 -5
  237. package/dist/collection/components/six-language-switcher/six-language-switcher.js.map +1 -1
  238. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js +196 -0
  239. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js.map +1 -0
  240. package/dist/collection/components/six-layout-grid/six-layout-grid.js +10 -8
  241. package/dist/collection/components/six-layout-grid/six-layout-grid.js.map +1 -1
  242. package/dist/collection/components/six-layout-grid/test/six-layout-grid.spec.js +18 -0
  243. package/dist/collection/components/six-layout-grid/test/six-layout-grid.spec.js.map +1 -0
  244. package/dist/collection/components/six-main-container/six-main-container.js +1 -1
  245. package/dist/collection/components/six-main-container/six-main-container.js.map +1 -1
  246. package/dist/collection/components/six-main-container/test/six-main-container.spec.js +22 -0
  247. package/dist/collection/components/six-main-container/test/six-main-container.spec.js.map +1 -0
  248. package/dist/collection/components/six-menu/six-menu.js +41 -31
  249. package/dist/collection/components/six-menu/six-menu.js.map +1 -1
  250. package/dist/collection/components/six-menu/test/six-menu.spec.js +93 -0
  251. package/dist/collection/components/six-menu/test/six-menu.spec.js.map +1 -0
  252. package/dist/collection/components/six-menu-divider/six-menu-divider.js +1 -1
  253. package/dist/collection/components/six-menu-divider/test/six-menu-divider.spec.js +18 -0
  254. package/dist/collection/components/six-menu-divider/test/six-menu-divider.spec.js.map +1 -0
  255. package/dist/collection/components/six-menu-item/six-menu-item.js +17 -11
  256. package/dist/collection/components/six-menu-item/six-menu-item.js.map +1 -1
  257. package/dist/collection/components/six-menu-item/test/six-menu-item.spec.js +33 -0
  258. package/dist/collection/components/six-menu-item/test/six-menu-item.spec.js.map +1 -0
  259. package/dist/collection/components/six-menu-label/six-menu-label.js +1 -1
  260. package/dist/collection/components/six-menu-label/test/six-menu-label.spec.js +20 -0
  261. package/dist/collection/components/six-menu-label/test/six-menu-label.spec.js.map +1 -0
  262. package/dist/collection/components/six-picto/six-picto.js +5 -2
  263. package/dist/collection/components/six-picto/six-picto.js.map +1 -1
  264. package/dist/collection/components/six-picto/test/six-picto.spec.js +33 -0
  265. package/dist/collection/components/six-picto/test/six-picto.spec.js.map +1 -0
  266. package/dist/collection/components/six-progress-bar/six-progress-bar.js +1 -1
  267. package/dist/collection/components/six-progress-bar/test/six-progress-bar.spec.js +24 -0
  268. package/dist/collection/components/six-progress-bar/test/six-progress-bar.spec.js.map +1 -0
  269. package/dist/collection/components/six-progress-ring/six-progress-ring.js +6 -5
  270. package/dist/collection/components/six-progress-ring/six-progress-ring.js.map +1 -1
  271. package/dist/collection/components/six-progress-ring/test/six-progress-ring.spec.js +26 -0
  272. package/dist/collection/components/six-progress-ring/test/six-progress-ring.spec.js.map +1 -0
  273. package/dist/collection/components/six-radio/six-radio.js +82 -148
  274. package/dist/collection/components/six-radio/six-radio.js.map +1 -1
  275. package/dist/collection/components/six-radio/test/six-radio.spec.js +63 -0
  276. package/dist/collection/components/six-radio/test/six-radio.spec.js.map +1 -0
  277. package/dist/collection/components/six-range/six-range.css +4 -1
  278. package/dist/collection/components/six-range/six-range.js +168 -188
  279. package/dist/collection/components/six-range/six-range.js.map +1 -1
  280. package/dist/collection/components/six-range/test/six-range.spec.js +34 -0
  281. package/dist/collection/components/six-range/test/six-range.spec.js.map +1 -0
  282. package/dist/collection/components/six-root/six-root.js +9 -7
  283. package/dist/collection/components/six-root/six-root.js.map +1 -1
  284. package/dist/collection/components/six-root/test/six-root.spec.js +43 -0
  285. package/dist/collection/components/six-root/test/six-root.spec.js.map +1 -0
  286. package/dist/collection/components/six-search-field/six-search-field.js +15 -9
  287. package/dist/collection/components/six-search-field/six-search-field.js.map +1 -1
  288. package/dist/collection/components/six-search-field/test/six-search-field.spec.js +22 -0
  289. package/dist/collection/components/six-search-field/test/six-search-field.spec.js.map +1 -0
  290. package/dist/collection/components/six-select/six-select.css +10 -10
  291. package/dist/collection/components/six-select/six-select.js +254 -347
  292. package/dist/collection/components/six-select/six-select.js.map +1 -1
  293. package/dist/collection/components/six-select/test/six-select.spec.js +86 -0
  294. package/dist/collection/components/six-select/test/six-select.spec.js.map +1 -0
  295. package/dist/collection/components/six-select/test/util.spec.js +81 -0
  296. package/dist/collection/components/six-select/test/util.spec.js.map +1 -0
  297. package/dist/collection/components/six-select/util.js +52 -0
  298. package/dist/collection/components/six-select/util.js.map +1 -0
  299. package/dist/collection/components/six-sidebar/six-sidebar.js +66 -33
  300. package/dist/collection/components/six-sidebar/six-sidebar.js.map +1 -1
  301. package/dist/collection/components/six-sidebar/test/six-sidebar.spec.js +22 -0
  302. package/dist/collection/components/six-sidebar/test/six-sidebar.spec.js.map +1 -0
  303. package/dist/collection/components/six-sidebar-item/six-sidebar-item.css +6 -1
  304. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js +22 -3
  305. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js.map +1 -1
  306. package/dist/collection/components/six-sidebar-item/test/six-sidebar-item.spec.js +50 -0
  307. package/dist/collection/components/six-sidebar-item/test/six-sidebar-item.spec.js.map +1 -0
  308. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.css +11 -0
  309. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js +43 -11
  310. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js.map +1 -1
  311. package/dist/collection/components/six-sidebar-item-group/test/six-sidebar-item-group.spec.js +53 -0
  312. package/dist/collection/components/six-sidebar-item-group/test/six-sidebar-item-group.spec.js.map +1 -0
  313. package/dist/collection/components/six-spinner/six-spinner.js +1 -1
  314. package/dist/collection/components/six-spinner/six-spinner.js.map +1 -1
  315. package/dist/collection/components/six-spinner/test/six-spinner.spec.js +37 -0
  316. package/dist/collection/components/six-spinner/test/six-spinner.spec.js.map +1 -0
  317. package/dist/collection/components/six-stage-indicator/six-stage-indicator.js +4 -3
  318. package/dist/collection/components/six-stage-indicator/six-stage-indicator.js.map +1 -1
  319. package/dist/collection/components/six-stage-indicator/test/six-stage-indicator.spec.js +117 -0
  320. package/dist/collection/components/six-stage-indicator/test/six-stage-indicator.spec.js.map +1 -0
  321. package/dist/collection/components/six-switch/six-switch.css +80 -0
  322. package/dist/collection/components/six-switch/six-switch.js +150 -140
  323. package/dist/collection/components/six-switch/six-switch.js.map +1 -1
  324. package/dist/collection/components/six-switch/test/six-switch.spec.js +73 -0
  325. package/dist/collection/components/six-switch/test/six-switch.spec.js.map +1 -0
  326. package/dist/collection/components/six-tab/six-tab.css +54 -5
  327. package/dist/collection/components/six-tab/six-tab.js +31 -9
  328. package/dist/collection/components/six-tab/six-tab.js.map +1 -1
  329. package/dist/collection/components/six-tab-group/six-tab-group.css +0 -31
  330. package/dist/collection/components/six-tab-group/six-tab-group.js +109 -129
  331. package/dist/collection/components/six-tab-group/six-tab-group.js.map +1 -1
  332. package/dist/collection/components/six-tab-panel/six-tab-panel.js +2 -2
  333. package/dist/collection/components/six-tab-panel/six-tab-panel.js.map +1 -1
  334. package/dist/collection/components/six-tab-panel/test/six-tab-panel.spec.js +20 -0
  335. package/dist/collection/components/six-tab-panel/test/six-tab-panel.spec.js.map +1 -0
  336. package/dist/collection/components/six-tag/six-tag.css +6 -0
  337. package/dist/collection/components/six-tag/six-tag.js +27 -7
  338. package/dist/collection/components/six-tag/six-tag.js.map +1 -1
  339. package/dist/collection/components/six-tag/test/six-tag.spec.js +54 -0
  340. package/dist/collection/components/six-tag/test/six-tag.spec.js.map +1 -0
  341. package/dist/collection/components/six-textarea/six-textarea.css +4 -1
  342. package/dist/collection/components/six-textarea/six-textarea.js +189 -283
  343. package/dist/collection/components/six-textarea/six-textarea.js.map +1 -1
  344. package/dist/collection/components/six-textarea/test/six-textarea.spec.js +119 -0
  345. package/dist/collection/components/six-textarea/test/six-textarea.spec.js.map +1 -0
  346. package/dist/collection/components/six-tile/six-tile.js +26 -25
  347. package/dist/collection/components/six-tile/six-tile.js.map +1 -1
  348. package/dist/collection/components/six-tile/test/six-tile.spec.js +69 -0
  349. package/dist/collection/components/six-tile/test/six-tile.spec.js.map +1 -0
  350. package/dist/collection/components/six-timepicker/six-timepicker.js +180 -263
  351. package/dist/collection/components/six-timepicker/six-timepicker.js.map +1 -1
  352. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js +496 -0
  353. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js.map +1 -0
  354. package/dist/collection/components/six-tooltip/six-tooltip.css +1 -1
  355. package/dist/collection/components/six-tooltip/six-tooltip.js +70 -67
  356. package/dist/collection/components/six-tooltip/six-tooltip.js.map +1 -1
  357. package/dist/collection/components/six-tooltip/test/six-tooltip.spec.js +28 -0
  358. package/dist/collection/components/six-tooltip/test/six-tooltip.spec.js.map +1 -0
  359. package/dist/collection/functional-components/form-control/form-control.js +11 -10
  360. package/dist/collection/functional-components/form-control/form-control.js.map +1 -1
  361. package/dist/collection/index.js +1 -1
  362. package/dist/collection/index.js.map +1 -1
  363. package/dist/collection/testUtil/delay.js.map +1 -1
  364. package/dist/collection/utils/animation.js +34 -0
  365. package/dist/collection/utils/animation.js.map +1 -0
  366. package/dist/collection/utils/date-util.js +25 -16
  367. package/dist/collection/utils/date-util.js.map +1 -1
  368. package/dist/collection/utils/date-util.spec.js +995 -0
  369. package/dist/collection/utils/date-util.spec.js.map +1 -0
  370. package/dist/collection/utils/error-messages.js +91 -0
  371. package/dist/collection/utils/error-messages.js.map +1 -0
  372. package/dist/collection/utils/event-listeners.js +22 -6
  373. package/dist/collection/utils/event-listeners.js.map +1 -1
  374. package/dist/collection/utils/execution-control.js +5 -4
  375. package/dist/collection/utils/execution-control.js.map +1 -1
  376. package/dist/collection/utils/focus-visible.js +2 -2
  377. package/dist/collection/utils/focus-visible.js.map +1 -1
  378. package/dist/collection/utils/form.js +15 -0
  379. package/dist/collection/utils/form.js.map +1 -0
  380. package/dist/collection/utils/modal.js +3 -2
  381. package/dist/collection/utils/modal.js.map +1 -1
  382. package/dist/collection/utils/popover.js +33 -19
  383. package/dist/collection/utils/popover.js.map +1 -1
  384. package/dist/collection/utils/popup.js +95 -0
  385. package/dist/collection/utils/popup.js.map +1 -0
  386. package/dist/collection/utils/scroll.js +1 -1
  387. package/dist/collection/utils/scroll.spec.js +122 -0
  388. package/dist/collection/utils/scroll.spec.js.map +1 -0
  389. package/dist/collection/utils/slot.js +9 -24
  390. package/dist/collection/utils/slot.js.map +1 -1
  391. package/dist/collection/utils/tabbable.js +6 -6
  392. package/dist/collection/utils/tabbable.js.map +1 -1
  393. package/dist/collection/utils/time.util.js +48 -34
  394. package/dist/collection/utils/time.util.js.map +1 -1
  395. package/dist/collection/utils/time.util.spec.js +368 -0
  396. package/dist/collection/utils/time.util.spec.js.map +1 -0
  397. package/dist/collection/utils/type-check.js +0 -1
  398. package/dist/collection/utils/type-check.js.map +1 -1
  399. package/dist/collection/wrappers/set-attributes/set-attributes.js +4 -2
  400. package/dist/collection/wrappers/set-attributes/set-attributes.js.map +1 -1
  401. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js +16 -0
  402. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js.map +1 -0
  403. package/dist/components/event-listeners.js +22 -6
  404. package/dist/components/event-listeners.js.map +1 -1
  405. package/dist/components/execution-control.js +5 -2
  406. package/dist/components/execution-control.js.map +1 -1
  407. package/dist/components/focus-visible.js +2 -2
  408. package/dist/components/focus-visible.js.map +1 -1
  409. package/dist/components/form-control.js +11 -9
  410. package/dist/components/form-control.js.map +1 -1
  411. package/dist/components/form.js +18 -0
  412. package/dist/components/form.js.map +1 -0
  413. package/dist/components/index.d.ts +6 -0
  414. package/dist/components/index.js +95 -4
  415. package/dist/components/index.js.map +1 -1
  416. package/dist/components/modal.js +3 -2
  417. package/dist/components/modal.js.map +1 -1
  418. package/dist/components/popover.js +38 -30
  419. package/dist/components/popover.js.map +1 -1
  420. package/dist/components/scroll.js +1 -1
  421. package/dist/components/scroll.js.map +1 -1
  422. package/dist/components/set-attributes2.js +5 -1
  423. package/dist/components/set-attributes2.js.map +1 -1
  424. package/dist/components/six-alert.js +20 -22
  425. package/dist/components/six-alert.js.map +1 -1
  426. package/dist/components/six-avatar.js +4 -7
  427. package/dist/components/six-avatar.js.map +1 -1
  428. package/dist/components/six-badge.js +1 -1
  429. package/dist/components/six-badge.js.map +1 -1
  430. package/dist/components/six-button.js +35 -33
  431. package/dist/components/six-button.js.map +1 -1
  432. package/dist/components/six-card.js.map +1 -1
  433. package/dist/components/six-checkbox.js +66 -91
  434. package/dist/components/six-checkbox.js.map +1 -1
  435. package/dist/components/six-datepicker.js +160 -284
  436. package/dist/components/six-datepicker.js.map +1 -1
  437. package/dist/components/six-details2.js +49 -46
  438. package/dist/components/six-details2.js.map +1 -1
  439. package/dist/components/six-dialog.js +35 -37
  440. package/dist/components/six-dialog.js.map +1 -1
  441. package/dist/components/six-drawer.js +33 -35
  442. package/dist/components/six-drawer.js.map +1 -1
  443. package/dist/components/six-dropdown2.js +200 -175
  444. package/dist/components/six-dropdown2.js.map +1 -1
  445. package/dist/components/six-error-page.js +19 -21
  446. package/dist/components/six-error-page.js.map +1 -1
  447. package/dist/components/{six-form.d.ts → six-error.d.ts} +4 -4
  448. package/dist/components/six-error.js +8 -0
  449. package/dist/components/six-error.js.map +1 -0
  450. package/dist/components/six-error2.js +32 -0
  451. package/dist/components/six-error2.js.map +1 -0
  452. package/dist/components/six-file-list-item.js +1 -1
  453. package/dist/components/six-file-list-item.js.map +1 -1
  454. package/dist/components/six-file-list.js.map +1 -1
  455. package/dist/components/six-file-upload.js +20 -20
  456. package/dist/components/six-file-upload.js.map +1 -1
  457. package/dist/components/six-footer.js.map +1 -1
  458. package/dist/components/six-group-label.js +21 -11
  459. package/dist/components/six-group-label.js.map +1 -1
  460. package/dist/components/six-header.js +74 -44
  461. package/dist/components/six-header.js.map +1 -1
  462. package/dist/components/six-icon-button2.js +3 -3
  463. package/dist/components/six-icon-button2.js.map +1 -1
  464. package/dist/components/six-icon2.js.map +1 -1
  465. package/dist/components/six-input2.js +113 -139
  466. package/dist/components/six-input2.js.map +1 -1
  467. package/dist/components/six-item-picker2.js +62 -77
  468. package/dist/components/six-item-picker2.js.map +1 -1
  469. package/dist/components/six-language-switcher.js +3 -1
  470. package/dist/components/six-language-switcher.js.map +1 -1
  471. package/dist/components/six-layout-grid.js +7 -3
  472. package/dist/components/six-layout-grid.js.map +1 -1
  473. package/dist/components/six-main-container.js.map +1 -1
  474. package/dist/components/six-menu-divider.js.map +1 -1
  475. package/dist/components/six-menu-item2.js +7 -5
  476. package/dist/components/six-menu-item2.js.map +1 -1
  477. package/dist/components/six-menu-label.js.map +1 -1
  478. package/dist/components/six-menu2.js +25 -18
  479. package/dist/components/six-menu2.js.map +1 -1
  480. package/dist/components/six-picto2.js +4 -1
  481. package/dist/components/six-picto2.js.map +1 -1
  482. package/dist/components/six-progress-bar.js.map +1 -1
  483. package/dist/components/six-progress-ring.js +5 -3
  484. package/dist/components/six-progress-ring.js.map +1 -1
  485. package/dist/components/six-radio.js +68 -78
  486. package/dist/components/six-radio.js.map +1 -1
  487. package/dist/components/six-range.js +128 -113
  488. package/dist/components/six-range.js.map +1 -1
  489. package/dist/components/six-root.js +3 -1
  490. package/dist/components/six-root.js.map +1 -1
  491. package/dist/components/six-search-field.js +17 -4
  492. package/dist/components/six-search-field.js.map +1 -1
  493. package/dist/components/six-select.js +228 -243
  494. package/dist/components/six-select.js.map +1 -1
  495. package/dist/components/six-sidebar-item-group.js +22 -6
  496. package/dist/components/six-sidebar-item-group.js.map +1 -1
  497. package/dist/components/six-sidebar-item.js +7 -4
  498. package/dist/components/six-sidebar-item.js.map +1 -1
  499. package/dist/components/six-sidebar.js +41 -18
  500. package/dist/components/six-sidebar.js.map +1 -1
  501. package/dist/components/six-spinner2.js.map +1 -1
  502. package/dist/components/six-stage-indicator2.js.map +1 -1
  503. package/dist/components/six-switch.js +93 -71
  504. package/dist/components/six-switch.js.map +1 -1
  505. package/dist/components/six-tab-group.js +137 -122
  506. package/dist/components/six-tab-group.js.map +1 -1
  507. package/dist/components/six-tab-panel.js +1 -1
  508. package/dist/components/six-tab-panel.js.map +1 -1
  509. package/dist/components/six-tab.js +23 -5
  510. package/dist/components/six-tab.js.map +1 -1
  511. package/dist/components/six-tag2.js +35 -10
  512. package/dist/components/six-tag2.js.map +1 -1
  513. package/dist/components/six-textarea.js +102 -117
  514. package/dist/components/six-textarea.js.map +1 -1
  515. package/dist/components/six-tile.js +14 -17
  516. package/dist/components/six-tile.js.map +1 -1
  517. package/dist/components/six-timepicker.js +1 -1
  518. package/dist/components/six-timepicker2.js +253 -260
  519. package/dist/components/six-timepicker2.js.map +1 -1
  520. package/dist/components/six-tooltip2.js +56 -57
  521. package/dist/components/six-tooltip2.js.map +1 -1
  522. package/dist/components/slot.js +10 -9
  523. package/dist/components/slot.js.map +1 -1
  524. package/dist/components.d.ts +361 -88
  525. package/dist/components.json +4617 -954
  526. package/dist/esm/event-listeners-f6e5b0ab.js +59 -0
  527. package/dist/esm/event-listeners-f6e5b0ab.js.map +1 -0
  528. package/dist/esm/{execution-control-1a60d709.js → execution-control-e0892a05.js} +6 -3
  529. package/dist/esm/execution-control-e0892a05.js.map +1 -0
  530. package/dist/esm/{focus-visible-97933ea9.js → focus-visible-fc6ac671.js} +3 -3
  531. package/dist/esm/focus-visible-fc6ac671.js.map +1 -0
  532. package/dist/esm/form-81252534.js +18 -0
  533. package/dist/esm/form-81252534.js.map +1 -0
  534. package/dist/esm/form-control-079f7fb6.js +34 -0
  535. package/dist/esm/form-control-079f7fb6.js.map +1 -0
  536. package/dist/esm/{index-5c0f6628.js → index-4ee8b33e.js} +677 -171
  537. package/dist/esm/index-4ee8b33e.js.map +1 -0
  538. package/dist/esm/index.js +91 -0
  539. package/dist/esm/index.js.map +1 -1
  540. package/dist/esm/loader.js +4 -13
  541. package/dist/esm/loader.js.map +1 -1
  542. package/dist/esm/{modal-5ebdc320.js → modal-7d32e141.js} +4 -3
  543. package/dist/esm/modal-7d32e141.js.map +1 -0
  544. package/dist/esm/{popover-bd2c2fca.js → popover-136d1f73.js} +39 -31
  545. package/dist/esm/popover-136d1f73.js.map +1 -0
  546. package/dist/esm/popup-7f89a001.js +98 -0
  547. package/dist/esm/popup-7f89a001.js.map +1 -0
  548. package/dist/esm/{scroll-180b53fd.js → scroll-774762d6.js} +2 -2
  549. package/dist/esm/scroll-774762d6.js.map +1 -0
  550. package/dist/esm/set-attributes_2.entry.js +4 -2
  551. package/dist/esm/set-attributes_2.entry.js.map +1 -1
  552. package/dist/esm/six-alert.entry.js +18 -23
  553. package/dist/esm/six-alert.entry.js.map +1 -1
  554. package/dist/esm/six-avatar.entry.js +5 -8
  555. package/dist/esm/six-avatar.entry.js.map +1 -1
  556. package/dist/esm/six-badge.entry.js +2 -2
  557. package/dist/esm/six-badge.entry.js.map +1 -1
  558. package/dist/esm/six-button.entry.js +37 -35
  559. package/dist/esm/six-button.entry.js.map +1 -1
  560. package/dist/esm/six-card.entry.js +1 -1
  561. package/dist/esm/six-card.entry.js.map +1 -1
  562. package/dist/esm/six-checkbox.entry.js +54 -86
  563. package/dist/esm/six-checkbox.entry.js.map +1 -1
  564. package/dist/esm/six-datepicker.entry.js +147 -278
  565. package/dist/esm/six-datepicker.entry.js.map +1 -1
  566. package/dist/esm/six-details.entry.js +49 -48
  567. package/dist/esm/six-details.entry.js.map +1 -1
  568. package/dist/esm/six-dialog.entry.js +37 -41
  569. package/dist/esm/six-dialog.entry.js.map +1 -1
  570. package/dist/esm/six-drawer.entry.js +35 -39
  571. package/dist/esm/six-drawer.entry.js.map +1 -1
  572. package/dist/esm/six-dropdown_2.entry.js +216 -197
  573. package/dist/esm/six-dropdown_2.entry.js.map +1 -1
  574. package/dist/esm/six-error-page.entry.js +20 -22
  575. package/dist/esm/six-error-page.entry.js.map +1 -1
  576. package/dist/esm/six-error.entry.js +17 -0
  577. package/dist/esm/six-error.entry.js.map +1 -0
  578. package/dist/esm/six-file-list-item.entry.js +2 -2
  579. package/dist/esm/six-file-list-item.entry.js.map +1 -1
  580. package/dist/esm/six-file-list.entry.js +1 -1
  581. package/dist/esm/six-file-list.entry.js.map +1 -1
  582. package/dist/esm/six-file-upload.entry.js +21 -21
  583. package/dist/esm/six-file-upload.entry.js.map +1 -1
  584. package/dist/esm/six-footer.entry.js +1 -1
  585. package/dist/esm/six-footer.entry.js.map +1 -1
  586. package/dist/esm/six-group-label.entry.js +13 -12
  587. package/dist/esm/six-group-label.entry.js.map +1 -1
  588. package/dist/esm/six-header.entry.js +66 -44
  589. package/dist/esm/six-header.entry.js.map +1 -1
  590. package/dist/esm/six-icon-button.entry.js +5 -5
  591. package/dist/esm/six-icon-button.entry.js.map +1 -1
  592. package/dist/esm/six-icon.entry.js +1 -1
  593. package/dist/esm/six-icon.entry.js.map +1 -1
  594. package/dist/esm/six-input.entry.js +98 -128
  595. package/dist/esm/six-input.entry.js.map +1 -1
  596. package/dist/esm/six-item-picker.entry.js +62 -81
  597. package/dist/esm/six-item-picker.entry.js.map +1 -1
  598. package/dist/esm/six-language-switcher.entry.js +2 -2
  599. package/dist/esm/six-language-switcher.entry.js.map +1 -1
  600. package/dist/esm/six-layout-grid.entry.js +5 -3
  601. package/dist/esm/six-layout-grid.entry.js.map +1 -1
  602. package/dist/esm/six-main-container.entry.js +1 -1
  603. package/dist/esm/six-main-container.entry.js.map +1 -1
  604. package/dist/esm/six-menu-divider.entry.js +1 -1
  605. package/dist/esm/six-menu-divider.entry.js.map +1 -1
  606. package/dist/esm/six-menu-item.entry.js +9 -7
  607. package/dist/esm/six-menu-item.entry.js.map +1 -1
  608. package/dist/esm/six-menu-label.entry.js +1 -1
  609. package/dist/esm/six-menu-label.entry.js.map +1 -1
  610. package/dist/esm/six-picto.entry.js +5 -2
  611. package/dist/esm/six-picto.entry.js.map +1 -1
  612. package/dist/esm/six-progress-bar.entry.js +1 -1
  613. package/dist/esm/six-progress-bar.entry.js.map +1 -1
  614. package/dist/esm/six-progress-ring.entry.js +4 -4
  615. package/dist/esm/six-progress-ring.entry.js.map +1 -1
  616. package/dist/esm/six-radio.entry.js +63 -72
  617. package/dist/esm/six-radio.entry.js.map +1 -1
  618. package/dist/esm/six-range.entry.js +111 -107
  619. package/dist/esm/six-range.entry.js.map +1 -1
  620. package/dist/esm/six-root.entry.js +2 -2
  621. package/dist/esm/six-root.entry.js.map +1 -1
  622. package/dist/esm/six-search-field.entry.js +11 -6
  623. package/dist/esm/six-search-field.entry.js.map +1 -1
  624. package/dist/esm/six-select.entry.js +193 -223
  625. package/dist/esm/six-select.entry.js.map +1 -1
  626. package/dist/esm/six-sidebar-item-group.entry.js +23 -8
  627. package/dist/esm/six-sidebar-item-group.entry.js.map +1 -1
  628. package/dist/esm/six-sidebar-item.entry.js +6 -4
  629. package/dist/esm/six-sidebar-item.entry.js.map +1 -1
  630. package/dist/esm/six-sidebar.entry.js +41 -20
  631. package/dist/esm/six-sidebar.entry.js.map +1 -1
  632. package/dist/esm/six-spinner.entry.js +1 -1
  633. package/dist/esm/six-spinner.entry.js.map +1 -1
  634. package/dist/esm/six-switch.entry.js +77 -65
  635. package/dist/esm/six-switch.entry.js.map +1 -1
  636. package/dist/esm/six-tab-group.entry.js +136 -123
  637. package/dist/esm/six-tab-group.entry.js.map +1 -1
  638. package/dist/esm/six-tab-panel.entry.js +2 -2
  639. package/dist/esm/six-tab-panel.entry.js.map +1 -1
  640. package/dist/esm/six-tab.entry.js +24 -6
  641. package/dist/esm/six-tab.entry.js.map +1 -1
  642. package/dist/esm/six-tag.entry.js +26 -7
  643. package/dist/esm/six-tag.entry.js.map +1 -1
  644. package/dist/esm/six-textarea.entry.js +86 -109
  645. package/dist/esm/six-textarea.entry.js.map +1 -1
  646. package/dist/esm/six-tile.entry.js +14 -17
  647. package/dist/esm/six-tile.entry.js.map +1 -1
  648. package/dist/esm/six-timepicker.entry.js +154 -215
  649. package/dist/esm/six-timepicker.entry.js.map +1 -1
  650. package/dist/esm/six-tooltip.entry.js +56 -59
  651. package/dist/esm/six-tooltip.entry.js.map +1 -1
  652. package/dist/esm/{slot-6f3984c7.js → slot-ad36df3a.js} +11 -10
  653. package/dist/esm/slot-ad36df3a.js.map +1 -0
  654. package/dist/esm/{types-4b10b413.js → types-59b455aa.js} +1 -1
  655. package/dist/esm/types-59b455aa.js.map +1 -0
  656. package/dist/esm/ui-library.js +4 -7
  657. package/dist/esm/ui-library.js.map +1 -1
  658. package/dist/types/components/six-alert/six-alert.d.ts +5 -7
  659. package/dist/types/components/six-avatar/six-avatar.d.ts +1 -2
  660. package/dist/types/components/six-badge/six-badge.d.ts +0 -1
  661. package/dist/types/components/six-button/six-button.d.ts +8 -9
  662. package/dist/types/components/six-checkbox/six-checkbox.d.ts +27 -36
  663. package/dist/types/components/six-datepicker/components/day-selection.d.ts +9 -5
  664. package/dist/types/components/six-datepicker/components/month-selection.d.ts +8 -5
  665. package/dist/types/components/six-datepicker/components/year-selection.d.ts +7 -5
  666. package/dist/types/components/six-datepicker/six-datepicker.d.ts +43 -52
  667. package/dist/types/components/six-details/six-details.d.ts +12 -12
  668. package/dist/types/components/six-dialog/six-dialog.d.ts +12 -13
  669. package/dist/types/components/six-drawer/six-drawer.d.ts +12 -13
  670. package/dist/types/components/six-dropdown/six-dropdown.d.ts +28 -32
  671. package/dist/types/components/six-error/six-error.d.ts +9 -0
  672. package/dist/types/components/six-error-page/six-error-page.d.ts +1 -1
  673. package/dist/types/components/six-file-list-item/six-file-list-item.d.ts +3 -3
  674. package/dist/types/components/six-file-upload/six-file-upload.d.ts +11 -11
  675. package/dist/types/components/six-group-label/six-group-label.d.ts +5 -5
  676. package/dist/types/components/six-header/six-header.d.ts +16 -27
  677. package/dist/types/components/six-icon-button/six-icon-button.d.ts +4 -4
  678. package/dist/types/components/six-input/six-input.d.ts +38 -68
  679. package/dist/types/components/six-item-picker/six-item-picker.d.ts +13 -16
  680. package/dist/types/components/six-layout-grid/six-layout-grid.d.ts +1 -1
  681. package/dist/types/components/six-menu/six-menu.d.ts +10 -11
  682. package/dist/types/components/six-menu-item/six-menu-item.d.ts +6 -6
  683. package/dist/types/components/six-progress-ring/six-progress-ring.d.ts +2 -2
  684. package/dist/types/components/six-radio/six-radio.d.ts +14 -25
  685. package/dist/types/components/six-range/six-range.d.ts +30 -38
  686. package/dist/types/components/six-root/six-root.d.ts +3 -3
  687. package/dist/types/components/six-search-field/six-search-field.d.ts +4 -5
  688. package/dist/types/components/six-select/six-select.d.ts +44 -58
  689. package/dist/types/components/six-select/util.d.ts +7 -0
  690. package/dist/types/components/six-sidebar/six-sidebar.d.ts +5 -5
  691. package/dist/types/components/six-sidebar-item/six-sidebar-item.d.ts +5 -0
  692. package/dist/types/components/six-sidebar-item-group/six-sidebar-item-group.d.ts +13 -6
  693. package/dist/types/components/six-spinner/six-spinner.d.ts +2 -2
  694. package/dist/types/components/six-switch/six-switch.d.ts +25 -21
  695. package/dist/types/components/six-tab/six-tab.d.ts +3 -3
  696. package/dist/types/components/six-tab-group/six-tab-group.d.ts +18 -22
  697. package/dist/types/components/six-tab-panel/six-tab-panel.d.ts +1 -1
  698. package/dist/types/components/six-tag/six-tag.d.ts +8 -2
  699. package/dist/types/components/six-textarea/six-textarea.d.ts +30 -55
  700. package/dist/types/components/six-tile/six-tile.d.ts +2 -3
  701. package/dist/types/components/six-timepicker/six-timepicker.d.ts +30 -44
  702. package/dist/types/components/six-tooltip/six-tooltip.d.ts +19 -21
  703. package/dist/types/components.d.ts +686 -440
  704. package/dist/types/functional-components/form-control/form-control.d.ts +9 -6
  705. package/dist/types/index.d.ts +1 -0
  706. package/dist/types/stencil-public-runtime.d.ts +41 -5
  707. package/dist/types/testUtil/delay.d.ts +1 -1
  708. package/dist/types/types.d.ts +2 -0
  709. package/dist/types/utils/animation.d.ts +12 -0
  710. package/dist/types/utils/date-util.d.ts +18 -10
  711. package/dist/types/utils/error-messages.d.ts +42 -0
  712. package/dist/types/utils/event-listeners.d.ts +4 -3
  713. package/dist/types/utils/execution-control.d.ts +1 -3
  714. package/dist/types/utils/form.d.ts +1 -0
  715. package/dist/types/utils/modal.d.ts +2 -2
  716. package/dist/types/utils/popover.d.ts +5 -5
  717. package/dist/types/utils/popup.d.ts +9 -0
  718. package/dist/types/utils/slot.d.ts +2 -7
  719. package/dist/types/utils/tabbable.d.ts +1 -1
  720. package/dist/types/utils/time.util.d.ts +18 -9
  721. package/dist/types/utils/type-check.d.ts +3 -4
  722. package/dist/types/wrappers/set-attributes/set-attributes.d.ts +1 -1
  723. package/dist/ui-library/index.esm.js +1 -1
  724. package/dist/ui-library/index.esm.js.map +1 -1
  725. package/dist/ui-library/p-0416ec85.entry.js +2 -0
  726. package/dist/ui-library/p-0416ec85.entry.js.map +1 -0
  727. package/dist/ui-library/{p-eb8f05a9.js → p-052aa8d3.js} +2 -2
  728. package/dist/ui-library/p-052aa8d3.js.map +1 -0
  729. package/dist/ui-library/p-0d8154b1.entry.js +2 -0
  730. package/dist/ui-library/p-0d8154b1.entry.js.map +1 -0
  731. package/dist/ui-library/{p-25a3bf57.js → p-0f510624.js} +1 -1
  732. package/dist/ui-library/p-0f510624.js.map +1 -0
  733. package/dist/ui-library/p-0fdb185d.js +2 -0
  734. package/dist/ui-library/p-0fdb185d.js.map +1 -0
  735. package/dist/ui-library/p-120a1b66.entry.js +2 -0
  736. package/dist/ui-library/p-120a1b66.entry.js.map +1 -0
  737. package/dist/ui-library/p-15559d38.js +2 -0
  738. package/dist/ui-library/p-15559d38.js.map +1 -0
  739. package/dist/ui-library/{p-c349d1d4.entry.js → p-16eb37cd.entry.js} +2 -2
  740. package/dist/ui-library/p-16eb37cd.entry.js.map +1 -0
  741. package/dist/ui-library/{p-9328e5bc.entry.js → p-1f7dac36.entry.js} +2 -2
  742. package/dist/ui-library/p-1f7dac36.entry.js.map +1 -0
  743. package/dist/ui-library/{p-6d75f216.entry.js → p-20cb60c9.entry.js} +2 -2
  744. package/dist/ui-library/p-20cb60c9.entry.js.map +1 -0
  745. package/dist/ui-library/{p-097cced4.entry.js → p-21606e14.entry.js} +2 -2
  746. package/dist/ui-library/p-21606e14.entry.js.map +1 -0
  747. package/dist/ui-library/p-2280038f.entry.js +2 -0
  748. package/dist/ui-library/p-2280038f.entry.js.map +1 -0
  749. package/dist/ui-library/p-24e80289.entry.js +2 -0
  750. package/dist/ui-library/p-24e80289.entry.js.map +1 -0
  751. package/dist/ui-library/p-27987d45.entry.js +2 -0
  752. package/dist/ui-library/p-27987d45.entry.js.map +1 -0
  753. package/dist/ui-library/{p-a1d4f6cf.entry.js → p-2945a132.entry.js} +2 -2
  754. package/dist/ui-library/p-2945a132.entry.js.map +1 -0
  755. package/dist/ui-library/{p-baa03951.entry.js → p-2e99f389.entry.js} +2 -2
  756. package/dist/ui-library/p-2e99f389.entry.js.map +1 -0
  757. package/dist/ui-library/p-3d7678a8.entry.js +2 -0
  758. package/dist/ui-library/p-3d7678a8.entry.js.map +1 -0
  759. package/dist/ui-library/p-4196a75a.entry.js +2 -0
  760. package/dist/ui-library/p-4196a75a.entry.js.map +1 -0
  761. package/dist/ui-library/p-48b7c199.entry.js +2 -0
  762. package/dist/ui-library/p-48b7c199.entry.js.map +1 -0
  763. package/dist/ui-library/p-51630491.entry.js +2 -0
  764. package/dist/ui-library/p-51630491.entry.js.map +1 -0
  765. package/dist/ui-library/p-5218986b.entry.js +2 -0
  766. package/dist/ui-library/p-5218986b.entry.js.map +1 -0
  767. package/dist/ui-library/p-5654e4c7.js +2 -0
  768. package/dist/ui-library/p-5654e4c7.js.map +1 -0
  769. package/dist/ui-library/p-5904d3c3.entry.js +2 -0
  770. package/dist/ui-library/p-5904d3c3.entry.js.map +1 -0
  771. package/dist/ui-library/p-59210f0b.js +2 -0
  772. package/dist/ui-library/p-59210f0b.js.map +1 -0
  773. package/dist/ui-library/p-66a48dc4.entry.js +2 -0
  774. package/dist/ui-library/p-66a48dc4.entry.js.map +1 -0
  775. package/dist/ui-library/p-66d1d93d.entry.js +2 -0
  776. package/dist/ui-library/p-66d1d93d.entry.js.map +1 -0
  777. package/dist/ui-library/p-698bb2c8.js +2 -0
  778. package/dist/ui-library/p-698bb2c8.js.map +1 -0
  779. package/dist/ui-library/p-6aced322.entry.js +2 -0
  780. package/dist/ui-library/p-6aced322.entry.js.map +1 -0
  781. package/dist/ui-library/p-6e87aeea.entry.js +2 -0
  782. package/dist/ui-library/p-6e87aeea.entry.js.map +1 -0
  783. package/dist/ui-library/p-74179b03.entry.js +2 -0
  784. package/dist/ui-library/p-74179b03.entry.js.map +1 -0
  785. package/dist/ui-library/{p-97323ad7.entry.js → p-77424c6b.entry.js} +2 -2
  786. package/dist/ui-library/p-77424c6b.entry.js.map +1 -0
  787. package/dist/ui-library/{p-19364560.entry.js → p-7d00de3a.entry.js} +2 -2
  788. package/dist/ui-library/p-7d00de3a.entry.js.map +1 -0
  789. package/dist/ui-library/p-7d95def3.js +2 -0
  790. package/dist/ui-library/p-7d95def3.js.map +1 -0
  791. package/dist/ui-library/p-7e9257f3.entry.js +2 -0
  792. package/dist/ui-library/p-7e9257f3.entry.js.map +1 -0
  793. package/dist/ui-library/p-8226e363.entry.js +2 -0
  794. package/dist/ui-library/p-8226e363.entry.js.map +1 -0
  795. package/dist/ui-library/p-8296e24c.entry.js +2 -0
  796. package/dist/ui-library/p-8296e24c.entry.js.map +1 -0
  797. package/dist/ui-library/p-8c0971e0.js +2 -0
  798. package/dist/ui-library/p-8c0971e0.js.map +1 -0
  799. package/dist/ui-library/{p-63703ba3.entry.js → p-93a9b693.entry.js} +2 -2
  800. package/dist/ui-library/p-93a9b693.entry.js.map +1 -0
  801. package/dist/ui-library/{p-19b50b5a.entry.js → p-94bd8347.entry.js} +2 -2
  802. package/dist/ui-library/p-94bd8347.entry.js.map +1 -0
  803. package/dist/ui-library/{p-4f8394d7.js → p-9ace84c7.js} +2 -2
  804. package/dist/ui-library/p-9ace84c7.js.map +1 -0
  805. package/dist/ui-library/p-9bec3e14.entry.js +2 -0
  806. package/dist/ui-library/p-9bec3e14.entry.js.map +1 -0
  807. package/dist/ui-library/p-a15928c4.entry.js +2 -0
  808. package/dist/ui-library/p-a15928c4.entry.js.map +1 -0
  809. package/dist/ui-library/p-a4348ad4.entry.js +2 -0
  810. package/dist/ui-library/p-a4348ad4.entry.js.map +1 -0
  811. package/dist/ui-library/{p-dd3c76f1.entry.js → p-acd3ecfd.entry.js} +2 -2
  812. package/dist/ui-library/p-acd3ecfd.entry.js.map +1 -0
  813. package/dist/ui-library/p-ae383f66.entry.js +2 -0
  814. package/dist/ui-library/p-ae383f66.entry.js.map +1 -0
  815. package/dist/ui-library/p-af0e163e.entry.js +2 -0
  816. package/dist/ui-library/p-af0e163e.entry.js.map +1 -0
  817. package/dist/ui-library/p-b3a14438.entry.js +2 -0
  818. package/dist/ui-library/p-b3a14438.entry.js.map +1 -0
  819. package/dist/ui-library/{p-820c23f0.entry.js → p-b42fd9c3.entry.js} +2 -2
  820. package/dist/ui-library/p-b42fd9c3.entry.js.map +1 -0
  821. package/dist/ui-library/p-b5fdfa6a.js +3 -0
  822. package/dist/ui-library/p-b5fdfa6a.js.map +1 -0
  823. package/dist/ui-library/p-b7597736.entry.js +2 -0
  824. package/dist/ui-library/p-b7597736.entry.js.map +1 -0
  825. package/dist/ui-library/p-b906a605.entry.js +2 -0
  826. package/dist/ui-library/p-b906a605.entry.js.map +1 -0
  827. package/dist/ui-library/{p-73597d13.entry.js → p-b97764a1.entry.js} +2 -2
  828. package/dist/ui-library/p-b97764a1.entry.js.map +1 -0
  829. package/dist/ui-library/p-bbefcec9.entry.js +2 -0
  830. package/dist/ui-library/p-bbefcec9.entry.js.map +1 -0
  831. package/dist/ui-library/{p-c0cb6436.entry.js → p-c75694df.entry.js} +2 -2
  832. package/dist/ui-library/p-c75694df.entry.js.map +1 -0
  833. package/dist/ui-library/p-cb32f8d2.entry.js +2 -0
  834. package/dist/ui-library/p-cb32f8d2.entry.js.map +1 -0
  835. package/dist/ui-library/{p-af793d04.entry.js → p-cd3281fb.entry.js} +2 -2
  836. package/dist/ui-library/p-cd3281fb.entry.js.map +1 -0
  837. package/dist/ui-library/p-cec8c149.entry.js +2 -0
  838. package/dist/ui-library/p-cec8c149.entry.js.map +1 -0
  839. package/dist/ui-library/p-d1ba2ad5.entry.js +2 -0
  840. package/dist/ui-library/p-d1ba2ad5.entry.js.map +1 -0
  841. package/dist/ui-library/{p-21859bca.entry.js → p-d2196113.entry.js} +2 -2
  842. package/dist/ui-library/p-d2196113.entry.js.map +1 -0
  843. package/dist/ui-library/p-de7a9448.entry.js +2 -0
  844. package/dist/ui-library/p-de7a9448.entry.js.map +1 -0
  845. package/dist/ui-library/p-df1c4a1f.entry.js +2 -0
  846. package/dist/ui-library/p-df1c4a1f.entry.js.map +1 -0
  847. package/dist/ui-library/p-e740215a.entry.js +2 -0
  848. package/dist/ui-library/p-e740215a.entry.js.map +1 -0
  849. package/dist/ui-library/p-f3fdc121.js +2 -0
  850. package/dist/ui-library/p-f3fdc121.js.map +1 -0
  851. package/dist/ui-library/ui-library.css +2 -2
  852. package/dist/ui-library/ui-library.esm.js +1 -1
  853. package/dist/ui-library/ui-library.esm.js.map +1 -1
  854. package/loader/index.d.ts +1 -1
  855. package/package.json +27 -25
  856. package/dist/cjs/event-listeners-74715e62.js +0 -45
  857. package/dist/cjs/event-listeners-74715e62.js.map +0 -1
  858. package/dist/cjs/execution-control-46f388e0.js.map +0 -1
  859. package/dist/cjs/focus-visible-0b352c74.js.map +0 -1
  860. package/dist/cjs/form-control-2c17c573.js +0 -34
  861. package/dist/cjs/form-control-2c17c573.js.map +0 -1
  862. package/dist/cjs/index-2f6daa5b.js.map +0 -1
  863. package/dist/cjs/modal-48d42228.js.map +0 -1
  864. package/dist/cjs/popover-f743f62b.js.map +0 -1
  865. package/dist/cjs/scroll-76e6f5d7.js.map +0 -1
  866. package/dist/cjs/six-form.cjs.entry.js +0 -231
  867. package/dist/cjs/six-form.cjs.entry.js.map +0 -1
  868. package/dist/cjs/six-timepicker.types-c19ebff3.js +0 -56
  869. package/dist/cjs/six-timepicker.types-c19ebff3.js.map +0 -1
  870. package/dist/cjs/slot-ad537f24.js.map +0 -1
  871. package/dist/cjs/types-64878648.js.map +0 -1
  872. package/dist/collection/components/six-form/six-form.css +0 -11
  873. package/dist/collection/components/six-form/six-form.js +0 -419
  874. package/dist/collection/components/six-form/six-form.js.map +0 -1
  875. package/dist/collection/components/six-timepicker/six-time-format.js +0 -15
  876. package/dist/collection/components/six-timepicker/six-time-format.js.map +0 -1
  877. package/dist/collection/components/six-timepicker/six-timepicker.types.js +0 -41
  878. package/dist/collection/components/six-timepicker/six-timepicker.types.js.map +0 -1
  879. package/dist/collection/utils/as-array.js +0 -2
  880. package/dist/collection/utils/as-array.js.map +0 -1
  881. package/dist/collection/utils/matchers.js +0 -3
  882. package/dist/collection/utils/matchers.js.map +0 -1
  883. package/dist/collection/utils/testing.js +0 -39
  884. package/dist/collection/utils/testing.js.map +0 -1
  885. package/dist/components/six-form.js +0 -252
  886. package/dist/components/six-form.js.map +0 -1
  887. package/dist/esm/event-listeners-570a24ea.js +0 -43
  888. package/dist/esm/event-listeners-570a24ea.js.map +0 -1
  889. package/dist/esm/execution-control-1a60d709.js.map +0 -1
  890. package/dist/esm/focus-visible-97933ea9.js.map +0 -1
  891. package/dist/esm/form-control-3b440ea1.js +0 -32
  892. package/dist/esm/form-control-3b440ea1.js.map +0 -1
  893. package/dist/esm/index-5c0f6628.js.map +0 -1
  894. package/dist/esm/modal-5ebdc320.js.map +0 -1
  895. package/dist/esm/polyfills/css-shim.js +0 -1
  896. package/dist/esm/popover-bd2c2fca.js.map +0 -1
  897. package/dist/esm/six-form.entry.js +0 -227
  898. package/dist/esm/six-form.entry.js.map +0 -1
  899. package/dist/esm/six-timepicker.types-e161a447.js +0 -50
  900. package/dist/esm/six-timepicker.types-e161a447.js.map +0 -1
  901. package/dist/esm/slot-6f3984c7.js.map +0 -1
  902. package/dist/esm/types-4b10b413.js.map +0 -1
  903. package/dist/types/components/six-form/six-form.d.ts +0 -69
  904. package/dist/types/components/six-timepicker/six-time-format.d.ts +0 -13
  905. package/dist/types/components/six-timepicker/six-timepicker.types.d.ts +0 -36
  906. package/dist/types/utils/as-array.d.ts +0 -1
  907. package/dist/types/utils/matchers.d.ts +0 -2
  908. package/dist/types/utils/popper.d.ts +0 -33
  909. package/dist/types/utils/testing.d.ts +0 -2
  910. package/dist/ui-library/p-054e12cc.entry.js +0 -2
  911. package/dist/ui-library/p-054e12cc.entry.js.map +0 -1
  912. package/dist/ui-library/p-0786fa7c.js +0 -2
  913. package/dist/ui-library/p-0786fa7c.js.map +0 -1
  914. package/dist/ui-library/p-097cced4.entry.js.map +0 -1
  915. package/dist/ui-library/p-0d79b0c6.entry.js +0 -2
  916. package/dist/ui-library/p-0d79b0c6.entry.js.map +0 -1
  917. package/dist/ui-library/p-14f20bbb.entry.js +0 -2
  918. package/dist/ui-library/p-14f20bbb.entry.js.map +0 -1
  919. package/dist/ui-library/p-18e5f772.entry.js +0 -2
  920. package/dist/ui-library/p-18e5f772.entry.js.map +0 -1
  921. package/dist/ui-library/p-18ea0c56.js +0 -2
  922. package/dist/ui-library/p-18ea0c56.js.map +0 -1
  923. package/dist/ui-library/p-19364560.entry.js.map +0 -1
  924. package/dist/ui-library/p-19b50b5a.entry.js.map +0 -1
  925. package/dist/ui-library/p-21859bca.entry.js.map +0 -1
  926. package/dist/ui-library/p-25a3bf57.js.map +0 -1
  927. package/dist/ui-library/p-2e48c8d2.entry.js +0 -2
  928. package/dist/ui-library/p-2e48c8d2.entry.js.map +0 -1
  929. package/dist/ui-library/p-308261c4.entry.js +0 -2
  930. package/dist/ui-library/p-308261c4.entry.js.map +0 -1
  931. package/dist/ui-library/p-33f7e22b.entry.js +0 -2
  932. package/dist/ui-library/p-33f7e22b.entry.js.map +0 -1
  933. package/dist/ui-library/p-4ae91795.entry.js +0 -2
  934. package/dist/ui-library/p-4ae91795.entry.js.map +0 -1
  935. package/dist/ui-library/p-4f8394d7.js.map +0 -1
  936. package/dist/ui-library/p-53a13db5.entry.js +0 -2
  937. package/dist/ui-library/p-53a13db5.entry.js.map +0 -1
  938. package/dist/ui-library/p-559c87f0.entry.js +0 -2
  939. package/dist/ui-library/p-559c87f0.entry.js.map +0 -1
  940. package/dist/ui-library/p-611e1978.entry.js +0 -2
  941. package/dist/ui-library/p-611e1978.entry.js.map +0 -1
  942. package/dist/ui-library/p-63703ba3.entry.js.map +0 -1
  943. package/dist/ui-library/p-6403fd87.entry.js +0 -2
  944. package/dist/ui-library/p-6403fd87.entry.js.map +0 -1
  945. package/dist/ui-library/p-6433c0da.entry.js +0 -2
  946. package/dist/ui-library/p-6433c0da.entry.js.map +0 -1
  947. package/dist/ui-library/p-6d75f216.entry.js.map +0 -1
  948. package/dist/ui-library/p-73597d13.entry.js.map +0 -1
  949. package/dist/ui-library/p-79eee01b.js +0 -2
  950. package/dist/ui-library/p-79eee01b.js.map +0 -1
  951. package/dist/ui-library/p-7e0cc4ae.entry.js +0 -2
  952. package/dist/ui-library/p-7e0cc4ae.entry.js.map +0 -1
  953. package/dist/ui-library/p-820c23f0.entry.js.map +0 -1
  954. package/dist/ui-library/p-835c3ff7.entry.js +0 -2
  955. package/dist/ui-library/p-835c3ff7.entry.js.map +0 -1
  956. package/dist/ui-library/p-8a970a40.entry.js +0 -2
  957. package/dist/ui-library/p-8a970a40.entry.js.map +0 -1
  958. package/dist/ui-library/p-90824648.entry.js +0 -2
  959. package/dist/ui-library/p-90824648.entry.js.map +0 -1
  960. package/dist/ui-library/p-90dc6af4.entry.js +0 -2
  961. package/dist/ui-library/p-90dc6af4.entry.js.map +0 -1
  962. package/dist/ui-library/p-9328e5bc.entry.js.map +0 -1
  963. package/dist/ui-library/p-97323ad7.entry.js.map +0 -1
  964. package/dist/ui-library/p-9a860acc.js +0 -2
  965. package/dist/ui-library/p-9a860acc.js.map +0 -1
  966. package/dist/ui-library/p-9d1d222f.entry.js +0 -2
  967. package/dist/ui-library/p-9d1d222f.entry.js.map +0 -1
  968. package/dist/ui-library/p-a1d4f6cf.entry.js.map +0 -1
  969. package/dist/ui-library/p-ac4f4d45.js +0 -3
  970. package/dist/ui-library/p-ac4f4d45.js.map +0 -1
  971. package/dist/ui-library/p-af793d04.entry.js.map +0 -1
  972. package/dist/ui-library/p-b0e5658f.entry.js +0 -2
  973. package/dist/ui-library/p-b0e5658f.entry.js.map +0 -1
  974. package/dist/ui-library/p-b1e66136.js +0 -2
  975. package/dist/ui-library/p-b1e66136.js.map +0 -1
  976. package/dist/ui-library/p-b4dfb7cf.js +0 -2
  977. package/dist/ui-library/p-b4dfb7cf.js.map +0 -1
  978. package/dist/ui-library/p-b997e43c.entry.js +0 -2
  979. package/dist/ui-library/p-b997e43c.entry.js.map +0 -1
  980. package/dist/ui-library/p-baa03951.entry.js.map +0 -1
  981. package/dist/ui-library/p-c0cb6436.entry.js.map +0 -1
  982. package/dist/ui-library/p-c30f9e0b.entry.js +0 -2
  983. package/dist/ui-library/p-c30f9e0b.entry.js.map +0 -1
  984. package/dist/ui-library/p-c349d1d4.entry.js.map +0 -1
  985. package/dist/ui-library/p-c53a63f9.entry.js +0 -2
  986. package/dist/ui-library/p-c53a63f9.entry.js.map +0 -1
  987. package/dist/ui-library/p-c640c2d8.entry.js +0 -2
  988. package/dist/ui-library/p-c640c2d8.entry.js.map +0 -1
  989. package/dist/ui-library/p-c94d0b07.entry.js +0 -2
  990. package/dist/ui-library/p-c94d0b07.entry.js.map +0 -1
  991. package/dist/ui-library/p-d12c6092.js +0 -2
  992. package/dist/ui-library/p-d12c6092.js.map +0 -1
  993. package/dist/ui-library/p-d5633a29.entry.js +0 -2
  994. package/dist/ui-library/p-d5633a29.entry.js.map +0 -1
  995. package/dist/ui-library/p-dd3c76f1.entry.js.map +0 -1
  996. package/dist/ui-library/p-df655bc9.entry.js +0 -2
  997. package/dist/ui-library/p-df655bc9.entry.js.map +0 -1
  998. package/dist/ui-library/p-e19a6c95.entry.js +0 -2
  999. package/dist/ui-library/p-e19a6c95.entry.js.map +0 -1
  1000. package/dist/ui-library/p-eb8f05a9.js.map +0 -1
  1001. package/dist/ui-library/p-edc96efc.entry.js +0 -2
  1002. package/dist/ui-library/p-edc96efc.entry.js.map +0 -1
  1003. package/dist/ui-library/p-f18ba86f.entry.js +0 -2
  1004. package/dist/ui-library/p-f18ba86f.entry.js.map +0 -1
  1005. package/dist/ui-library/p-f4938771.entry.js +0 -2
  1006. package/dist/ui-library/p-f4938771.entry.js.map +0 -1
  1007. package/dist/ui-library/p-f70e2403.entry.js +0 -2
  1008. package/dist/ui-library/p-f70e2403.entry.js.map +0 -1
  1009. package/dist/ui-library/p-f9d345e0.entry.js +0 -2
  1010. package/dist/ui-library/p-f9d345e0.entry.js.map +0 -1
  1011. package/dist/ui-library/p-fed07a1f.entry.js +0 -2
  1012. package/dist/ui-library/p-fed07a1f.entry.js.map +0 -1
  1013. package/dist/ui-library/p-ff0257bf.entry.js +0 -2
  1014. package/dist/ui-library/p-ff0257bf.entry.js.map +0 -1
  1015. package/readme.md +0 -156
@@ -1,4 +1,5 @@
1
1
  const NAMESPACE = 'ui-library';
2
+ const BUILD = /* ui-library */ { allRenderFn: true, 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: false, connectedCallback: true, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: true, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: false, hostListenerTargetDocument: false, 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: true, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: true, slotChildNodesFix: false, slotRelocation: true, state: true, style: true, svg: true, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: true, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: false, watchCallback: true };
2
3
 
3
4
  /**
4
5
  * Virtual DOM patching algorithm based on Snabbdom by
@@ -110,13 +111,13 @@ const h = (nodeName, vnodeData, ...children) => {
110
111
  };
111
112
  walk(children);
112
113
  if (vnodeData) {
113
- // normalize class / classname attributes
114
114
  if (vnodeData.key) {
115
115
  key = vnodeData.key;
116
116
  }
117
117
  if (vnodeData.name) {
118
118
  slotName = vnodeData.name;
119
119
  }
120
+ // normalize class / className attributes
120
121
  {
121
122
  const classData = vnodeData.className || vnodeData.class;
122
123
  if (classData) {
@@ -324,9 +325,9 @@ const registerStyle = (scopeId, cssText, allowCS) => {
324
325
  }
325
326
  styles.set(scopeId, style);
326
327
  };
327
- const addStyle = (styleContainerNode, cmpMeta, mode, hostElm) => {
328
+ const addStyle = (styleContainerNode, cmpMeta, mode) => {
328
329
  var _a;
329
- let scopeId = getScopeId(cmpMeta);
330
+ const scopeId = getScopeId(cmpMeta);
330
331
  const style = styles.get(scopeId);
331
332
  // if an element is NOT connected then getRootNode() will return the wrong root node
332
333
  // so the fallback is to always use the document for the root node in those cases
@@ -341,11 +342,8 @@ const addStyle = (styleContainerNode, cmpMeta, mode, hostElm) => {
341
342
  }
342
343
  if (!appliedStyles.has(scopeId)) {
343
344
  {
344
- // TODO(STENCIL-659): Remove code implementing the CSS variable shim
345
- {
346
- styleElm = doc.createElement('style');
347
- styleElm.innerHTML = style;
348
- }
345
+ styleElm = doc.createElement('style');
346
+ styleElm.innerHTML = style;
349
347
  // Apply CSP nonce to the style tag if it exists
350
348
  const nonce = (_a = plt.$nonce$) !== null && _a !== void 0 ? _a : queryNonceMetaTagContent(doc);
351
349
  if (nonce != null) {
@@ -370,7 +368,6 @@ const attachStyles = (hostRef) => {
370
368
  const flags = cmpMeta.$flags$;
371
369
  const endAttachStyles = createTime('attachStyles', cmpMeta.$tagName$);
372
370
  const scopeId = addStyle(elm.shadowRoot ? elm.shadowRoot : elm.getRootNode(), cmpMeta);
373
- // TODO(STENCIL-662): Remove code related to deprecated shadowDomShim field
374
371
  if (flags & 10 /* CMP_FLAGS.needsScopedEncapsulation */) {
375
372
  // only required when we're NOT using native shadow dom (slot)
376
373
  // or this browser doesn't support native shadow dom
@@ -396,6 +393,21 @@ const getScopeId = (cmp, mode) => 'sc-' + (cmp.$tagName$);
396
393
  *
397
394
  * Modified for Stencil's compiler and vdom
398
395
  */
396
+ /**
397
+ * When running a VDom render set properties present on a VDom node onto the
398
+ * corresponding HTML element.
399
+ *
400
+ * Note that this function has special functionality for the `class`,
401
+ * `style`, `key`, and `ref` attributes, as well as event handlers (like
402
+ * `onClick`, etc). All others are just passed through as-is.
403
+ *
404
+ * @param elm the HTMLElement onto which attributes should be set
405
+ * @param memberName the name of the attribute to set
406
+ * @param oldValue the old value for the attribute
407
+ * @param newValue the new value for the attribute
408
+ * @param isSvg whether we're in an svg context or not
409
+ * @param flags bitflags for Vdom variables
410
+ */
399
411
  const setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
400
412
  if (oldValue !== newValue) {
401
413
  let isProp = isMemberInElement(elm, memberName);
@@ -472,11 +484,19 @@ const setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
472
484
  // except for the first character, we keep the event name case
473
485
  memberName = ln[2] + memberName.slice(3);
474
486
  }
475
- if (oldValue) {
476
- plt.rel(elm, memberName, oldValue, false);
477
- }
478
- if (newValue) {
479
- plt.ael(elm, memberName, newValue, false);
487
+ if (oldValue || newValue) {
488
+ // Need to account for "capture" events.
489
+ // If the event name ends with "Capture", we'll update the name to remove
490
+ // the "Capture" suffix and make sure the event listener is setup to handle the capture event.
491
+ const capture = memberName.endsWith(CAPTURE_EVENT_SUFFIX);
492
+ // Make sure we only replace the last instance of "Capture"
493
+ memberName = memberName.replace(CAPTURE_EVENT_REGEX, '');
494
+ if (oldValue) {
495
+ plt.rel(elm, memberName, oldValue, capture);
496
+ }
497
+ if (newValue) {
498
+ plt.ael(elm, memberName, newValue, capture);
499
+ }
480
500
  }
481
501
  }
482
502
  else {
@@ -518,6 +538,8 @@ const setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
518
538
  };
519
539
  const parseClassListRegex = /\s/;
520
540
  const parseClassList = (value) => (!value ? [] : value.split(parseClassListRegex));
541
+ const CAPTURE_EVENT_SUFFIX = 'Capture';
542
+ const CAPTURE_EVENT_REGEX = new RegExp(CAPTURE_EVENT_SUFFIX + '$');
521
543
  const updateElement = (oldVnode, newVnode, isSvgMode, memberName) => {
522
544
  // if the element passed in is a shadow root, which is a document fragment
523
545
  // then we want to be adding attrs/props to the shadow root's "host" element
@@ -551,6 +573,7 @@ const updateElement = (oldVnode, newVnode, isSvgMode, memberName) => {
551
573
  * @returns the newly created node
552
574
  */
553
575
  const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
576
+ var _a;
554
577
  // tslint:disable-next-line: prefer-const
555
578
  const newVNode = newParentVNode.$children$[childIndex];
556
579
  let i = 0;
@@ -629,6 +652,8 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
629
652
  if (newVNode.$flags$ & (2 /* VNODE_FLAGS.isSlotFallback */ | 1 /* VNODE_FLAGS.isSlotReference */)) {
630
653
  // remember the content reference comment
631
654
  elm['s-sr'] = true;
655
+ // Persist the name of the slot that this slot was going to be projected into.
656
+ elm['s-fs'] = (_a = newVNode.$attrs$) === null || _a === void 0 ? void 0 : _a.slot;
632
657
  // remember the content reference comment
633
658
  elm['s-cr'] = contentRef;
634
659
  // remember the slot name, or empty string for default slot
@@ -645,6 +670,7 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
645
670
  return elm;
646
671
  };
647
672
  const putBackInOriginalLocation = (parentElm, recursive) => {
673
+ var _a;
648
674
  plt.$flags$ |= 1 /* PLATFORM_FLAGS.isTmpDisconnected */;
649
675
  const oldSlotChildNodes = parentElm.childNodes;
650
676
  for (let i = oldSlotChildNodes.length - 1; i >= 0; i--) {
@@ -657,9 +683,17 @@ const putBackInOriginalLocation = (parentElm, recursive) => {
657
683
  parentReferenceNode(childNode).insertBefore(childNode, referenceNode(childNode));
658
684
  // remove the old original location comment entirely
659
685
  // later on the patch function will know what to do
660
- // and move this to the correct spot in need be
686
+ // and move this to the correct spot if need be
661
687
  childNode['s-ol'].remove();
662
688
  childNode['s-ol'] = undefined;
689
+ // Reset so we can correctly move the node around again.
690
+ childNode['s-sh'] = undefined;
691
+ // When putting an element node back in its original location,
692
+ // we need to reset the `slot` attribute back to the value it originally had
693
+ // so we can correctly relocate it again in the future
694
+ if (childNode.nodeType === 1 /* NODE_TYPE.ElementNode */) {
695
+ childNode.setAttribute('slot', (_a = childNode['s-sn']) !== null && _a !== void 0 ? _a : '');
696
+ }
663
697
  checkSlotRelocate = true;
664
698
  }
665
699
  if (recursive) {
@@ -709,30 +743,31 @@ const addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) =>
709
743
  * @param vnodes a list of virtual DOM nodes to remove
710
744
  * @param startIdx the index at which to start removing nodes (inclusive)
711
745
  * @param endIdx the index at which to stop removing nodes (inclusive)
712
- * @param vnode a VNode
713
- * @param elm an element
714
746
  */
715
- const removeVnodes = (vnodes, startIdx, endIdx, vnode, elm) => {
716
- for (; startIdx <= endIdx; ++startIdx) {
717
- if ((vnode = vnodes[startIdx])) {
718
- elm = vnode.$elm$;
719
- callNodeRefs(vnode);
720
- {
721
- // we're removing this element
722
- // so it's possible we need to show slot fallback content now
723
- checkSlotFallbackVisibility = true;
724
- if (elm['s-ol']) {
725
- // remove the original location comment
726
- elm['s-ol'].remove();
727
- }
728
- else {
729
- // it's possible that child nodes of the node
730
- // that's being removed are slot nodes
731
- putBackInOriginalLocation(elm, true);
747
+ const removeVnodes = (vnodes, startIdx, endIdx) => {
748
+ for (let index = startIdx; index <= endIdx; ++index) {
749
+ const vnode = vnodes[index];
750
+ if (vnode) {
751
+ const elm = vnode.$elm$;
752
+ nullifyVNodeRefs(vnode);
753
+ if (elm) {
754
+ {
755
+ // we're removing this element
756
+ // so it's possible we need to show slot fallback content now
757
+ checkSlotFallbackVisibility = true;
758
+ if (elm['s-ol']) {
759
+ // remove the original location comment
760
+ elm['s-ol'].remove();
761
+ }
762
+ else {
763
+ // it's possible that child nodes of the node
764
+ // that's being removed are slot nodes
765
+ putBackInOriginalLocation(elm, true);
766
+ }
732
767
  }
768
+ // remove the vnode's element from the dom
769
+ elm.remove();
733
770
  }
734
- // remove the vnode's element from the dom
735
- elm.remove();
736
771
  }
737
772
  }
738
773
  };
@@ -1082,42 +1117,53 @@ const patch = (oldVNode, newVNode) => {
1082
1117
  elm.data = text;
1083
1118
  }
1084
1119
  };
1120
+ /**
1121
+ * Adjust the `.hidden` property as-needed on any nodes in a DOM subtree which
1122
+ * are slot fallbacks nodes.
1123
+ *
1124
+ * A slot fallback node should be visible by default. Then, it should be
1125
+ * conditionally hidden if:
1126
+ *
1127
+ * - it has a sibling with a `slot` property set to its slot name or if
1128
+ * - it is a default fallback slot node, in which case we hide if it has any
1129
+ * content
1130
+ *
1131
+ * @param elm the element of interest
1132
+ */
1085
1133
  const updateFallbackSlotVisibility = (elm) => {
1086
- // tslint:disable-next-line: prefer-const
1087
1134
  const childNodes = elm.childNodes;
1088
- let childNode;
1089
- let i;
1090
- let ilen;
1091
- let j;
1092
- let slotNameAttr;
1093
- let nodeType;
1094
- for (i = 0, ilen = childNodes.length; i < ilen; i++) {
1095
- childNode = childNodes[i];
1135
+ for (const childNode of childNodes) {
1096
1136
  if (childNode.nodeType === 1 /* NODE_TYPE.ElementNode */) {
1097
1137
  if (childNode['s-sr']) {
1098
1138
  // this is a slot fallback node
1099
1139
  // get the slot name for this slot reference node
1100
- slotNameAttr = childNode['s-sn'];
1140
+ const slotName = childNode['s-sn'];
1101
1141
  // by default always show a fallback slot node
1102
1142
  // then hide it if there are other slots in the light dom
1103
1143
  childNode.hidden = false;
1104
- for (j = 0; j < ilen; j++) {
1105
- nodeType = childNodes[j].nodeType;
1106
- if (childNodes[j]['s-hn'] !== childNode['s-hn'] || slotNameAttr !== '') {
1107
- // this sibling node is from a different component OR is a named fallback slot node
1108
- if (nodeType === 1 /* NODE_TYPE.ElementNode */ && slotNameAttr === childNodes[j].getAttribute('slot')) {
1109
- childNode.hidden = true;
1110
- break;
1144
+ // we need to check all of its sibling nodes in order to see if
1145
+ // `childNode` should be hidden
1146
+ for (const siblingNode of childNodes) {
1147
+ // Don't check the node against itself
1148
+ if (siblingNode !== childNode) {
1149
+ if (siblingNode['s-hn'] !== childNode['s-hn'] || slotName !== '') {
1150
+ // this sibling node is from a different component OR is a named
1151
+ // fallback slot node
1152
+ if (siblingNode.nodeType === 1 /* NODE_TYPE.ElementNode */ &&
1153
+ (slotName === siblingNode.getAttribute('slot') || slotName === siblingNode['s-sn'])) {
1154
+ childNode.hidden = true;
1155
+ break;
1156
+ }
1111
1157
  }
1112
- }
1113
- else {
1114
- // this is a default fallback slot node
1115
- // any element or text node (with content)
1116
- // should hide the default fallback slot node
1117
- if (nodeType === 1 /* NODE_TYPE.ElementNode */ ||
1118
- (nodeType === 3 /* NODE_TYPE.TextNode */ && childNodes[j].textContent.trim() !== '')) {
1119
- childNode.hidden = true;
1120
- break;
1158
+ else {
1159
+ // this is a default fallback slot node
1160
+ // any element or text node (with content)
1161
+ // should hide the default fallback slot node
1162
+ if (siblingNode.nodeType === 1 /* NODE_TYPE.ElementNode */ ||
1163
+ (siblingNode.nodeType === 3 /* NODE_TYPE.TextNode */ && siblingNode.textContent.trim() !== '')) {
1164
+ childNode.hidden = true;
1165
+ break;
1166
+ }
1121
1167
  }
1122
1168
  }
1123
1169
  }
@@ -1127,45 +1173,67 @@ const updateFallbackSlotVisibility = (elm) => {
1127
1173
  }
1128
1174
  }
1129
1175
  };
1176
+ /**
1177
+ * Component-global information about nodes which are either currently being
1178
+ * relocated or will be shortly.
1179
+ */
1130
1180
  const relocateNodes = [];
1131
- const relocateSlotContent = (elm) => {
1181
+ /**
1182
+ * Mark the contents of a slot for relocation via adding references to them to
1183
+ * the {@link relocateNodes} data structure. The actual work of relocating them
1184
+ * will then be handled in {@link renderVdom}.
1185
+ *
1186
+ * @param elm a render node whose child nodes need to be relocated
1187
+ */
1188
+ const markSlotContentForRelocation = (elm) => {
1132
1189
  // tslint:disable-next-line: prefer-const
1133
- let childNode;
1134
1190
  let node;
1135
1191
  let hostContentNodes;
1136
- let slotNameAttr;
1137
- let relocateNodeData;
1138
1192
  let j;
1139
- let i = 0;
1140
- const childNodes = elm.childNodes;
1141
- const ilen = childNodes.length;
1142
- for (; i < ilen; i++) {
1143
- childNode = childNodes[i];
1193
+ for (const childNode of elm.childNodes) {
1194
+ // we need to find child nodes which are slot references so we can then try
1195
+ // to match them up with nodes that need to be relocated
1144
1196
  if (childNode['s-sr'] && (node = childNode['s-cr']) && node.parentNode) {
1145
- // first got the content reference comment node
1146
- // then we got it's parent, which is where all the host content is in now
1197
+ // first get the content reference comment node ('s-cr'), then we get
1198
+ // its parent, which is where all the host content is now
1147
1199
  hostContentNodes = node.parentNode.childNodes;
1148
- slotNameAttr = childNode['s-sn'];
1200
+ const slotName = childNode['s-sn'];
1201
+ // iterate through all the nodes under the location where the host was
1202
+ // originally rendered
1149
1203
  for (j = hostContentNodes.length - 1; j >= 0; j--) {
1150
1204
  node = hostContentNodes[j];
1151
- if (!node['s-cn'] && !node['s-nr'] && node['s-hn'] !== childNode['s-hn']) {
1152
- // let's do some relocating to its new home
1153
- // but never relocate a content reference node
1154
- // that is suppose to always represent the original content location
1155
- if (isNodeLocatedInSlot(node, slotNameAttr)) {
1205
+ // check that the node is not a content reference node or a node
1206
+ // reference and then check that the host name does not match that of
1207
+ // childNode.
1208
+ // In addition, check that the slot either has not already been relocated, or
1209
+ // that its current location's host is not childNode's host. This is essentially
1210
+ // a check so that we don't try to relocate (and then hide) a node that is already
1211
+ // where it should be.
1212
+ if (!node['s-cn'] &&
1213
+ !node['s-nr'] &&
1214
+ node['s-hn'] !== childNode['s-hn'] &&
1215
+ (!BUILD.experimentalSlotFixes )) {
1216
+ // if `node` is located in the slot that `childNode` refers to (via the
1217
+ // `'s-sn'` property) then we need to relocate it from it's current spot
1218
+ // (under the host element parent) to the right slot location
1219
+ if (isNodeLocatedInSlot(node, slotName)) {
1156
1220
  // it's possible we've already decided to relocate this node
1157
- relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
1221
+ let relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
1158
1222
  // made some changes to slots
1159
1223
  // let's make sure we also double check
1160
1224
  // fallbacks are correctly hidden or shown
1161
1225
  checkSlotFallbackVisibility = true;
1162
- node['s-sn'] = node['s-sn'] || slotNameAttr;
1226
+ // ensure that the slot-name attr is correct
1227
+ node['s-sn'] = node['s-sn'] || slotName;
1163
1228
  if (relocateNodeData) {
1164
- // previously we never found a slot home for this node
1165
- // but turns out we did, so let's remember it now
1229
+ relocateNodeData.$nodeToRelocate$['s-sh'] = childNode['s-hn'];
1230
+ // we marked this node for relocation previously but didn't find
1231
+ // out the slot reference node to which it needs to be relocated
1232
+ // so write it down now!
1166
1233
  relocateNodeData.$slotRefNode$ = childNode;
1167
1234
  }
1168
1235
  else {
1236
+ node['s-sh'] = childNode['s-hn'];
1169
1237
  // add to our list of nodes to relocate
1170
1238
  relocateNodes.push({
1171
1239
  $slotRefNode$: childNode,
@@ -1184,8 +1252,10 @@ const relocateSlotContent = (elm) => {
1184
1252
  }
1185
1253
  }
1186
1254
  else if (!relocateNodes.some((r) => r.$nodeToRelocate$ === node)) {
1187
- // so far this element does not have a slot home, not setting slotRefNode on purpose
1188
- // if we never find a home for this element then we'll need to hide it
1255
+ // the node is not found within the slot (`childNode`) that we're
1256
+ // currently looking at, so we stick it into `relocateNodes` to
1257
+ // handle later. If we never find a home for this element then
1258
+ // we'll need to hide it
1189
1259
  relocateNodes.push({
1190
1260
  $nodeToRelocate$: node,
1191
1261
  });
@@ -1193,30 +1263,48 @@ const relocateSlotContent = (elm) => {
1193
1263
  }
1194
1264
  }
1195
1265
  }
1266
+ // if we're dealing with any type of element (capable of itself being a
1267
+ // slot reference or containing one) then we recur
1196
1268
  if (childNode.nodeType === 1 /* NODE_TYPE.ElementNode */) {
1197
- relocateSlotContent(childNode);
1269
+ markSlotContentForRelocation(childNode);
1198
1270
  }
1199
1271
  }
1200
1272
  };
1201
- const isNodeLocatedInSlot = (nodeToRelocate, slotNameAttr) => {
1273
+ /**
1274
+ * Check whether a node is located in a given named slot.
1275
+ *
1276
+ * @param nodeToRelocate the node of interest
1277
+ * @param slotName the slot name to check
1278
+ * @returns whether the node is located in the slot or not
1279
+ */
1280
+ const isNodeLocatedInSlot = (nodeToRelocate, slotName) => {
1202
1281
  if (nodeToRelocate.nodeType === 1 /* NODE_TYPE.ElementNode */) {
1203
- if (nodeToRelocate.getAttribute('slot') === null && slotNameAttr === '') {
1282
+ if (nodeToRelocate.getAttribute('slot') === null && slotName === '') {
1283
+ // if the node doesn't have a slot attribute, and the slot we're checking
1284
+ // is not a named slot, then we assume the node should be within the slot
1204
1285
  return true;
1205
1286
  }
1206
- if (nodeToRelocate.getAttribute('slot') === slotNameAttr) {
1287
+ if (nodeToRelocate.getAttribute('slot') === slotName) {
1207
1288
  return true;
1208
1289
  }
1209
1290
  return false;
1210
1291
  }
1211
- if (nodeToRelocate['s-sn'] === slotNameAttr) {
1292
+ if (nodeToRelocate['s-sn'] === slotName) {
1212
1293
  return true;
1213
1294
  }
1214
- return slotNameAttr === '';
1295
+ return slotName === '';
1215
1296
  };
1216
- const callNodeRefs = (vNode) => {
1297
+ /**
1298
+ * 'Nullify' any VDom `ref` callbacks on a VDom node or its children by calling
1299
+ * them with `null`. This signals that the DOM element corresponding to the VDom
1300
+ * node has been removed from the DOM.
1301
+ *
1302
+ * @param vNode a virtual DOM node
1303
+ */
1304
+ const nullifyVNodeRefs = (vNode) => {
1217
1305
  {
1218
1306
  vNode.$attrs$ && vNode.$attrs$.ref && vNode.$attrs$.ref(null);
1219
- vNode.$children$ && vNode.$children$.map(callNodeRefs);
1307
+ vNode.$children$ && vNode.$children$.map(nullifyVNodeRefs);
1220
1308
  }
1221
1309
  };
1222
1310
  /**
@@ -1230,17 +1318,45 @@ const callNodeRefs = (vNode) => {
1230
1318
  * @param hostRef data needed to root and render the virtual DOM tree, such as
1231
1319
  * the DOM node into which it should be rendered.
1232
1320
  * @param renderFnResults the virtual DOM nodes to be rendered
1321
+ * @param isInitialLoad whether or not this is the first call after page load
1233
1322
  */
1234
- const renderVdom = (hostRef, renderFnResults) => {
1323
+ const renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
1324
+ var _a, _b;
1235
1325
  const hostElm = hostRef.$hostElement$;
1236
1326
  const cmpMeta = hostRef.$cmpMeta$;
1237
1327
  const oldVNode = hostRef.$vnode$ || newVNode(null, null);
1328
+ // if `renderFnResults` is a Host node then we can use it directly. If not,
1329
+ // we need to call `h` again to wrap the children of our component in a
1330
+ // 'dummy' Host node (well, an empty vnode) since `renderVdom` assumes
1331
+ // implicitly that the top-level vdom node is 1) an only child and 2)
1332
+ // contains attrs that need to be set on the host element.
1238
1333
  const rootVnode = isHost(renderFnResults) ? renderFnResults : h(null, null, renderFnResults);
1239
1334
  hostTagName = hostElm.tagName;
1240
1335
  if (cmpMeta.$attrsToReflect$) {
1241
1336
  rootVnode.$attrs$ = rootVnode.$attrs$ || {};
1242
1337
  cmpMeta.$attrsToReflect$.map(([propName, attribute]) => (rootVnode.$attrs$[attribute] = hostElm[propName]));
1243
1338
  }
1339
+ // On the first render and *only* on the first render we want to check for
1340
+ // any attributes set on the host element which are also set on the vdom
1341
+ // node. If we find them, we override the value on the VDom node attrs with
1342
+ // the value from the host element, which allows developers building apps
1343
+ // with Stencil components to override e.g. the `role` attribute on a
1344
+ // component even if it's already set on the `Host`.
1345
+ if (isInitialLoad && rootVnode.$attrs$) {
1346
+ for (const key of Object.keys(rootVnode.$attrs$)) {
1347
+ // We have a special implementation in `setAccessor` for `style` and
1348
+ // `class` which reconciles values coming from the VDom with values
1349
+ // already present on the DOM element, so we don't want to override those
1350
+ // attributes on the VDom tree with values from the host element if they
1351
+ // are present.
1352
+ //
1353
+ // Likewise, `ref` and `key` are special internal values for the Stencil
1354
+ // runtime and we don't want to override those either.
1355
+ if (hostElm.hasAttribute(key) && !['key', 'ref', 'style', 'class'].includes(key)) {
1356
+ rootVnode.$attrs$[key] = hostElm[key];
1357
+ }
1358
+ }
1359
+ }
1244
1360
  rootVnode.$tag$ = null;
1245
1361
  rootVnode.$flags$ |= 4 /* VNODE_FLAGS.isHost */;
1246
1362
  hostRef.$vnode$ = rootVnode;
@@ -1261,43 +1377,48 @@ const renderVdom = (hostRef, renderFnResults) => {
1261
1377
  // the disconnectCallback from working
1262
1378
  plt.$flags$ |= 1 /* PLATFORM_FLAGS.isTmpDisconnected */;
1263
1379
  if (checkSlotRelocate) {
1264
- relocateSlotContent(rootVnode.$elm$);
1265
- let relocateData;
1266
- let nodeToRelocate;
1267
- let orgLocationNode;
1268
- let parentNodeRef;
1269
- let insertBeforeNode;
1270
- let refNode;
1271
- let i = 0;
1272
- for (; i < relocateNodes.length; i++) {
1273
- relocateData = relocateNodes[i];
1274
- nodeToRelocate = relocateData.$nodeToRelocate$;
1380
+ markSlotContentForRelocation(rootVnode.$elm$);
1381
+ for (const relocateData of relocateNodes) {
1382
+ const nodeToRelocate = relocateData.$nodeToRelocate$;
1275
1383
  if (!nodeToRelocate['s-ol']) {
1276
1384
  // add a reference node marking this node's original location
1277
1385
  // keep a reference to this node for later lookups
1278
- orgLocationNode =
1279
- doc.createTextNode('');
1386
+ const orgLocationNode = doc.createTextNode('');
1280
1387
  orgLocationNode['s-nr'] = nodeToRelocate;
1281
1388
  nodeToRelocate.parentNode.insertBefore((nodeToRelocate['s-ol'] = orgLocationNode), nodeToRelocate);
1282
1389
  }
1283
1390
  }
1284
- for (i = 0; i < relocateNodes.length; i++) {
1285
- relocateData = relocateNodes[i];
1286
- nodeToRelocate = relocateData.$nodeToRelocate$;
1287
- if (relocateData.$slotRefNode$) {
1288
- // by default we're just going to insert it directly
1289
- // after the slot reference node
1290
- parentNodeRef = relocateData.$slotRefNode$.parentNode;
1291
- insertBeforeNode = relocateData.$slotRefNode$.nextSibling;
1292
- orgLocationNode = nodeToRelocate['s-ol'];
1293
- while ((orgLocationNode = orgLocationNode.previousSibling)) {
1294
- refNode = orgLocationNode['s-nr'];
1295
- if (refNode && refNode['s-sn'] === nodeToRelocate['s-sn'] && parentNodeRef === refNode.parentNode) {
1296
- refNode = refNode.nextSibling;
1297
- if (!refNode || !refNode['s-nr']) {
1298
- insertBeforeNode = refNode;
1299
- break;
1391
+ for (const relocateData of relocateNodes) {
1392
+ const nodeToRelocate = relocateData.$nodeToRelocate$;
1393
+ const slotRefNode = relocateData.$slotRefNode$;
1394
+ if (slotRefNode) {
1395
+ const parentNodeRef = slotRefNode.parentNode;
1396
+ // When determining where to insert content, the most simple case would be
1397
+ // to relocate the node immediately following the slot reference node. We do this
1398
+ // by getting a reference to the node immediately following the slot reference node
1399
+ // since we will use `insertBefore` to manipulate the DOM.
1400
+ //
1401
+ // If there is no node immediately following the slot reference node, then we will just
1402
+ // end up appending the node as the last child of the parent.
1403
+ let insertBeforeNode = slotRefNode.nextSibling;
1404
+ // If the node we're currently planning on inserting the new node before is an element,
1405
+ // we need to do some additional checks to make sure we're inserting the node in the correct order.
1406
+ // The use case here would be that we have multiple nodes being relocated to the same slot. So, we want
1407
+ // to make sure they get inserted into their new how in the same order they were declared in their original location.
1408
+ //
1409
+ // TODO(STENCIL-914): Remove `experimentalSlotFixes` check
1410
+ {
1411
+ let orgLocationNode = (_a = nodeToRelocate['s-ol']) === null || _a === void 0 ? void 0 : _a.previousSibling;
1412
+ while (orgLocationNode) {
1413
+ let refNode = (_b = orgLocationNode['s-nr']) !== null && _b !== void 0 ? _b : null;
1414
+ if (refNode && refNode['s-sn'] === nodeToRelocate['s-sn'] && parentNodeRef === refNode.parentNode) {
1415
+ refNode = refNode.nextSibling;
1416
+ if (!refNode || !refNode['s-nr']) {
1417
+ insertBeforeNode = refNode;
1418
+ break;
1419
+ }
1300
1420
  }
1421
+ orgLocationNode = orgLocationNode.previousSibling;
1301
1422
  }
1302
1423
  }
1303
1424
  if ((!insertBeforeNode && parentNodeRef !== nodeToRelocate.parentNode) ||
@@ -1307,10 +1428,13 @@ const renderVdom = (hostRef, renderFnResults) => {
1307
1428
  // has a different next sibling or parent relocated
1308
1429
  if (nodeToRelocate !== insertBeforeNode) {
1309
1430
  if (!nodeToRelocate['s-hn'] && nodeToRelocate['s-ol']) {
1310
- // probably a component in the index.html that doesn't have it's hostname set
1431
+ // probably a component in the index.html that doesn't have its hostname set
1311
1432
  nodeToRelocate['s-hn'] = nodeToRelocate['s-ol'].parentNode.nodeName;
1312
1433
  }
1313
- // add it back to the dom but in its new home
1434
+ // Add it back to the dom but in its new home
1435
+ // If we get to this point and `insertBeforeNode` is `null`, that means
1436
+ // we're just going to append the node as the last child of the parent. Passing
1437
+ // `null` as the second arg here will trigger that behavior.
1314
1438
  parentNodeRef.insertBefore(nodeToRelocate, insertBeforeNode);
1315
1439
  }
1316
1440
  }
@@ -1353,27 +1477,93 @@ const scheduleUpdate = (hostRef, isInitialLoad) => {
1353
1477
  const dispatch = () => dispatchHooks(hostRef, isInitialLoad);
1354
1478
  return writeTask(dispatch) ;
1355
1479
  };
1480
+ /**
1481
+ * Dispatch initial-render and update lifecycle hooks, enqueuing calls to
1482
+ * component lifecycle methods like `componentWillLoad` as well as
1483
+ * {@link updateComponent}, which will kick off the virtual DOM re-render.
1484
+ *
1485
+ * @param hostRef a reference to a host DOM node
1486
+ * @param isInitialLoad whether we're on the initial load or not
1487
+ * @returns an empty Promise which is used to enqueue a series of operations for
1488
+ * the component
1489
+ */
1356
1490
  const dispatchHooks = (hostRef, isInitialLoad) => {
1357
1491
  const endSchedule = createTime('scheduleUpdate', hostRef.$cmpMeta$.$tagName$);
1358
1492
  const instance = hostRef.$lazyInstance$ ;
1359
- let promise;
1493
+ // We're going to use this variable together with `enqueue` to implement a
1494
+ // little promise-based queue. We start out with it `undefined`. When we add
1495
+ // the first function to the queue we'll set this variable to be that
1496
+ // function's return value. When we attempt to add subsequent values to the
1497
+ // queue we'll check that value and, if it was a `Promise`, we'll then chain
1498
+ // the new function off of that `Promise` using `.then()`. This will give our
1499
+ // queue two nice properties:
1500
+ //
1501
+ // 1. If all functions added to the queue are synchronous they'll be called
1502
+ // synchronously right away.
1503
+ // 2. If all functions added to the queue are asynchronous they'll all be
1504
+ // called in order after `dispatchHooks` exits.
1505
+ let maybePromise;
1360
1506
  if (isInitialLoad) {
1361
1507
  {
1362
1508
  hostRef.$flags$ |= 256 /* HOST_FLAGS.isListenReady */;
1363
1509
  if (hostRef.$queuedListeners$) {
1364
1510
  hostRef.$queuedListeners$.map(([methodName, event]) => safeCall(instance, methodName, event));
1365
- hostRef.$queuedListeners$ = null;
1511
+ hostRef.$queuedListeners$ = undefined;
1366
1512
  }
1367
1513
  }
1368
1514
  {
1369
- promise = safeCall(instance, 'componentWillLoad');
1515
+ // If `componentWillLoad` returns a `Promise` then we want to wait on
1516
+ // whatever's going on in that `Promise` before we launch into
1517
+ // rendering the component, doing other lifecycle stuff, etc. So
1518
+ // in that case we assign the returned promise to the variable we
1519
+ // declared above to hold a possible 'queueing' Promise
1520
+ maybePromise = safeCall(instance, 'componentWillLoad');
1370
1521
  }
1371
1522
  }
1372
1523
  endSchedule();
1373
- return then(promise, () => updateComponent(hostRef, instance, isInitialLoad));
1524
+ return enqueue(maybePromise, () => updateComponent(hostRef, instance, isInitialLoad));
1374
1525
  };
1526
+ /**
1527
+ * This function uses a Promise to implement a simple first-in, first-out queue
1528
+ * of functions to be called.
1529
+ *
1530
+ * The queue is ordered on the basis of the first argument. If it's
1531
+ * `undefined`, then nothing is on the queue yet, so the provided function can
1532
+ * be called synchronously (although note that this function may return a
1533
+ * `Promise`). The idea is that then the return value of that enqueueing
1534
+ * operation is kept around, so that if it was a `Promise` then subsequent
1535
+ * functions can be enqueued by calling this function again with that `Promise`
1536
+ * as the first argument.
1537
+ *
1538
+ * @param maybePromise either a `Promise` which should resolve before the next function is called or an 'empty' sentinel
1539
+ * @param fn a function to enqueue
1540
+ * @returns either a `Promise` or the return value of the provided function
1541
+ */
1542
+ const enqueue = (maybePromise, fn) => isPromisey(maybePromise) ? maybePromise.then(fn) : fn();
1543
+ /**
1544
+ * Check that a value is a `Promise`. To check, we first see if the value is an
1545
+ * instance of the `Promise` global. In a few circumstances, in particular if
1546
+ * the global has been overwritten, this is could be misleading, so we also do
1547
+ * a little 'duck typing' check to see if the `.then` property of the value is
1548
+ * defined and a function.
1549
+ *
1550
+ * @param maybePromise it might be a promise!
1551
+ * @returns whether it is or not
1552
+ */
1553
+ const isPromisey = (maybePromise) => maybePromise instanceof Promise ||
1554
+ (maybePromise && maybePromise.then && typeof maybePromise.then === 'function');
1555
+ /**
1556
+ * Update a component given reference to its host elements and so on.
1557
+ *
1558
+ * @param hostRef an object containing references to the element's host node,
1559
+ * VDom nodes, and other metadata
1560
+ * @param instance a reference to the underlying host element where it will be
1561
+ * rendered
1562
+ * @param isInitialLoad whether or not this function is being called as part of
1563
+ * the first render cycle
1564
+ */
1375
1565
  const updateComponent = async (hostRef, instance, isInitialLoad) => {
1376
- // updateComponent
1566
+ var _a;
1377
1567
  const elm = hostRef.$hostElement$;
1378
1568
  const endUpdate = createTime('update', hostRef.$cmpMeta$.$tagName$);
1379
1569
  const rc = elm['s-rc'];
@@ -1383,7 +1573,7 @@ const updateComponent = async (hostRef, instance, isInitialLoad) => {
1383
1573
  }
1384
1574
  const endRender = createTime('render', hostRef.$cmpMeta$.$tagName$);
1385
1575
  {
1386
- callRender(hostRef, instance);
1576
+ callRender(hostRef, instance, elm, isInitialLoad);
1387
1577
  }
1388
1578
  if (rc) {
1389
1579
  // ok, so turns out there are some child host elements
@@ -1395,7 +1585,7 @@ const updateComponent = async (hostRef, instance, isInitialLoad) => {
1395
1585
  endRender();
1396
1586
  endUpdate();
1397
1587
  {
1398
- const childrenPromises = elm['s-p'];
1588
+ const childrenPromises = (_a = elm['s-p']) !== null && _a !== void 0 ? _a : [];
1399
1589
  const postUpdate = () => postUpdateComponent(hostRef);
1400
1590
  if (childrenPromises.length === 0) {
1401
1591
  postUpdate();
@@ -1407,8 +1597,24 @@ const updateComponent = async (hostRef, instance, isInitialLoad) => {
1407
1597
  }
1408
1598
  }
1409
1599
  };
1410
- const callRender = (hostRef, instance, elm) => {
1600
+ /**
1601
+ * Handle making the call to the VDom renderer with the proper context given
1602
+ * various build variables
1603
+ *
1604
+ * @param hostRef an object containing references to the element's host node,
1605
+ * VDom nodes, and other metadata
1606
+ * @param instance a reference to the underlying host element where it will be
1607
+ * rendered
1608
+ * @param elm the Host element for the component
1609
+ * @param isInitialLoad whether or not this function is being called as part of
1610
+ * @returns an empty promise
1611
+ */
1612
+ const callRender = (hostRef, instance, elm, isInitialLoad) => {
1411
1613
  try {
1614
+ /**
1615
+ * minification optimization: `allRenderFn` is `true` if all components have a `render`
1616
+ * method, so we can call the method immediately. If not, check before calling it.
1617
+ */
1412
1618
  instance = instance.render() ;
1413
1619
  {
1414
1620
  hostRef.$flags$ &= ~16 /* HOST_FLAGS.isQueuedForUpdate */;
@@ -1422,7 +1628,7 @@ const callRender = (hostRef, instance, elm) => {
1422
1628
  // or we need to update the css class/attrs on the host element
1423
1629
  // DOM WRITE!
1424
1630
  {
1425
- renderVdom(hostRef, instance);
1631
+ renderVdom(hostRef, instance, isInitialLoad);
1426
1632
  }
1427
1633
  }
1428
1634
  }
@@ -1491,6 +1697,16 @@ const appDidLoad = (who) => {
1491
1697
  }
1492
1698
  nextTick(() => emitEvent(win, 'appload', { detail: { namespace: NAMESPACE } }));
1493
1699
  };
1700
+ /**
1701
+ * Allows to safely call a method, e.g. `componentDidLoad`, on an instance,
1702
+ * e.g. custom element node. If a build figures out that e.g. no component
1703
+ * has a `componentDidLoad` method, the instance method gets removed from the
1704
+ * output bundle and this function returns `undefined`.
1705
+ * @param instance any object that may or may not contain methods
1706
+ * @param method method name
1707
+ * @param arg single arbitrary argument
1708
+ * @returns result of method call if it exists, otherwise `undefined`
1709
+ */
1494
1710
  const safeCall = (instance, method, arg) => {
1495
1711
  if (instance && instance[method]) {
1496
1712
  try {
@@ -1502,9 +1718,6 @@ const safeCall = (instance, method, arg) => {
1502
1718
  }
1503
1719
  return undefined;
1504
1720
  };
1505
- const then = (promise, thenFn) => {
1506
- return promise && promise.then ? promise.then(thenFn) : thenFn();
1507
- };
1508
1721
  const addHydratedFlag = (elm) => elm.classList.add('hydrated')
1509
1722
  ;
1510
1723
  const getValue = (ref, propName) => getHostRef(ref).$instanceValues$.get(propName);
@@ -1561,6 +1774,7 @@ const setValue = (ref, propName, newVal, cmpMeta) => {
1561
1774
  * @returns a reference to the same constructor passed in (but now mutated)
1562
1775
  */
1563
1776
  const proxyComponent = (Cstr, cmpMeta, flags) => {
1777
+ var _a;
1564
1778
  if (cmpMeta.$members$) {
1565
1779
  if (Cstr.watchers) {
1566
1780
  cmpMeta.$watchers$ = Cstr.watchers;
@@ -1598,7 +1812,7 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
1598
1812
  });
1599
1813
  if ((flags & 1 /* PROXY_FLAGS.isElementConstructor */)) {
1600
1814
  const attrNameToPropName = new Map();
1601
- prototype.attributeChangedCallback = function (attrName, _oldValue, newValue) {
1815
+ prototype.attributeChangedCallback = function (attrName, oldValue, newValue) {
1602
1816
  plt.jmp(() => {
1603
1817
  const propName = attrNameToPropName.get(attrName);
1604
1818
  // In a web component lifecycle the attributeChangedCallback runs prior to connectedCallback
@@ -1621,12 +1835,12 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
1621
1835
  // customElements.define('my-component', MyComponent);
1622
1836
  // </script>
1623
1837
  // ```
1624
- // In this case if we do not unshadow here and use the value of the shadowing property, attributeChangedCallback
1838
+ // In this case if we do not un-shadow here and use the value of the shadowing property, attributeChangedCallback
1625
1839
  // will be called with `newValue = "some-value"` and will set the shadowed property (this.someAttribute = "another-value")
1626
1840
  // to the value that was set inline i.e. "some-value" from above example. When
1627
- // the connectedCallback attempts to unshadow it will use "some-value" as the initial value rather than "another-value"
1841
+ // the connectedCallback attempts to un-shadow it will use "some-value" as the initial value rather than "another-value"
1628
1842
  //
1629
- // The case where the attribute was NOT set inline but was not set programmatically shall be handled/unshadowed
1843
+ // The case where the attribute was NOT set inline but was not set programmatically shall be handled/un-shadowed
1630
1844
  // by connectedCallback as this attributeChangedCallback will not fire.
1631
1845
  //
1632
1846
  // https://developers.google.com/web/fundamentals/web-components/best-practices#lazy-properties
@@ -1646,31 +1860,70 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
1646
1860
  // `propName` to be converted to a `DOMString`, which may not be what we want for other primitive props.
1647
1861
  return;
1648
1862
  }
1863
+ else if (propName == null) {
1864
+ // At this point we should know this is not a "member", so we can treat it like watching an attribute
1865
+ // on a vanilla web component
1866
+ const hostRef = getHostRef(this);
1867
+ const flags = hostRef === null || hostRef === void 0 ? void 0 : hostRef.$flags$;
1868
+ // We only want to trigger the callback(s) if:
1869
+ // 1. The instance is ready
1870
+ // 2. The watchers are ready
1871
+ // 3. The value has changed
1872
+ if (!(flags & 8 /* HOST_FLAGS.isConstructingInstance */) &&
1873
+ flags & 128 /* HOST_FLAGS.isWatchReady */ &&
1874
+ newValue !== oldValue) {
1875
+ const instance = hostRef.$lazyInstance$ ;
1876
+ const entry = cmpMeta.$watchers$[attrName];
1877
+ entry === null || entry === void 0 ? void 0 : entry.forEach((callbackName) => {
1878
+ if (instance[callbackName] != null) {
1879
+ instance[callbackName].call(instance, newValue, oldValue, attrName);
1880
+ }
1881
+ });
1882
+ }
1883
+ return;
1884
+ }
1649
1885
  this[propName] = newValue === null && typeof this[propName] === 'boolean' ? false : newValue;
1650
1886
  });
1651
1887
  };
1652
- // create an array of attributes to observe
1653
- // and also create a map of html attribute name to js property name
1654
- Cstr.observedAttributes = members
1655
- .filter(([_, m]) => m[0] & 15 /* MEMBER_FLAGS.HasAttribute */) // filter to only keep props that should match attributes
1656
- .map(([propName, m]) => {
1657
- const attrName = m[1] || propName;
1658
- attrNameToPropName.set(attrName, propName);
1659
- if (m[0] & 512 /* MEMBER_FLAGS.ReflectAttr */) {
1660
- cmpMeta.$attrsToReflect$.push([propName, attrName]);
1661
- }
1662
- return attrName;
1663
- });
1888
+ // Create an array of attributes to observe
1889
+ // This list in comprised of all strings used within a `@Watch()` decorator
1890
+ // on a component as well as any Stencil-specific "members" (`@Prop()`s and `@State()`s).
1891
+ // As such, there is no way to guarantee type-safety here that a user hasn't entered
1892
+ // an invalid attribute.
1893
+ Cstr.observedAttributes = Array.from(new Set([
1894
+ ...Object.keys((_a = cmpMeta.$watchers$) !== null && _a !== void 0 ? _a : {}),
1895
+ ...members
1896
+ .filter(([_, m]) => m[0] & 15 /* MEMBER_FLAGS.HasAttribute */)
1897
+ .map(([propName, m]) => {
1898
+ const attrName = m[1] || propName;
1899
+ attrNameToPropName.set(attrName, propName);
1900
+ if (m[0] & 512 /* MEMBER_FLAGS.ReflectAttr */) {
1901
+ cmpMeta.$attrsToReflect$.push([propName, attrName]);
1902
+ }
1903
+ return attrName;
1904
+ }),
1905
+ ]));
1664
1906
  }
1665
1907
  }
1666
1908
  return Cstr;
1667
1909
  };
1668
- const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId, Cstr) => {
1910
+ /**
1911
+ * Initialize a Stencil component given a reference to its host element, its
1912
+ * runtime bookkeeping data structure, runtime metadata about the component,
1913
+ * and (optionally) an HMR version ID.
1914
+ *
1915
+ * @param elm a host element
1916
+ * @param hostRef the element's runtime bookkeeping object
1917
+ * @param cmpMeta runtime metadata for the Stencil component
1918
+ * @param hmrVersionId an (optional) HMR version ID
1919
+ */
1920
+ const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
1921
+ let Cstr;
1669
1922
  // initializeComponent
1670
1923
  if ((hostRef.$flags$ & 32 /* HOST_FLAGS.hasInitializedComponent */) === 0) {
1924
+ // Let the runtime know that the component has been initialized
1925
+ hostRef.$flags$ |= 32 /* HOST_FLAGS.hasInitializedComponent */;
1671
1926
  {
1672
- // we haven't initialized this element yet
1673
- hostRef.$flags$ |= 32 /* HOST_FLAGS.hasInitializedComponent */;
1674
1927
  // lazy loaded components
1675
1928
  // request the component's implementation to be
1676
1929
  // wired up with the host element
@@ -1762,7 +2015,7 @@ const connectedCallback = (elm) => {
1762
2015
  // if the slot polyfill is required we'll need to put some nodes
1763
2016
  // in here to act as original content anchors as we move nodes around
1764
2017
  // host element has been connected to the DOM
1765
- if ((// TODO(STENCIL-662): Remove code related to deprecated shadowDomShim field
2018
+ if ((// TODO(STENCIL-854): Remove code related to legacy shadowDomShim field
1766
2019
  cmpMeta.$flags$ & (4 /* CMP_FLAGS.hasSlotRelocation */ | 8 /* CMP_FLAGS.needsShadowDomShim */))) {
1767
2020
  setContentReference(elm);
1768
2021
  }
@@ -1803,7 +2056,12 @@ const connectedCallback = (elm) => {
1803
2056
  // since they would have been removed when disconnected
1804
2057
  addHostEventListeners(elm, hostRef, cmpMeta.$listeners$);
1805
2058
  // fire off connectedCallback() on component instance
1806
- fireConnectedCallback(hostRef.$lazyInstance$);
2059
+ if (hostRef === null || hostRef === void 0 ? void 0 : hostRef.$lazyInstance$) {
2060
+ fireConnectedCallback(hostRef.$lazyInstance$);
2061
+ }
2062
+ else if (hostRef === null || hostRef === void 0 ? void 0 : hostRef.$onReadyPromise$) {
2063
+ hostRef.$onReadyPromise$.then(() => fireConnectedCallback(hostRef.$lazyInstance$));
2064
+ }
1807
2065
  }
1808
2066
  endConnected();
1809
2067
  }
@@ -1819,18 +2077,25 @@ const setContentReference = (elm) => {
1819
2077
  contentRefElm['s-cn'] = true;
1820
2078
  elm.insertBefore(contentRefElm, elm.firstChild);
1821
2079
  };
1822
- const disconnectedCallback = (elm) => {
2080
+ const disconnectInstance = (instance) => {
2081
+ {
2082
+ safeCall(instance, 'disconnectedCallback');
2083
+ }
2084
+ };
2085
+ const disconnectedCallback = async (elm) => {
1823
2086
  if ((plt.$flags$ & 1 /* PLATFORM_FLAGS.isTmpDisconnected */) === 0) {
1824
2087
  const hostRef = getHostRef(elm);
1825
- const instance = hostRef.$lazyInstance$ ;
1826
2088
  {
1827
2089
  if (hostRef.$rmListeners$) {
1828
2090
  hostRef.$rmListeners$.map((rmListener) => rmListener());
1829
2091
  hostRef.$rmListeners$ = undefined;
1830
2092
  }
1831
2093
  }
1832
- {
1833
- safeCall(instance, 'disconnectedCallback');
2094
+ if (hostRef === null || hostRef === void 0 ? void 0 : hostRef.$lazyInstance$) {
2095
+ disconnectInstance(hostRef.$lazyInstance$);
2096
+ }
2097
+ else if (hostRef === null || hostRef === void 0 ? void 0 : hostRef.$onReadyPromise$) {
2098
+ hostRef.$onReadyPromise$.then(() => disconnectInstance(hostRef.$lazyInstance$));
1834
2099
  }
1835
2100
  }
1836
2101
  };
@@ -1850,6 +2115,7 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
1850
2115
  plt.$resourcesUrl$ = new URL(options.resourcesUrl || './', doc.baseURI).href;
1851
2116
  lazyBundles.map((lazyBundle) => {
1852
2117
  lazyBundle[1].map((compactMeta) => {
2118
+ var _a;
1853
2119
  const cmpMeta = {
1854
2120
  $flags$: compactMeta[0],
1855
2121
  $tagName$: compactMeta[1],
@@ -1866,7 +2132,7 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
1866
2132
  cmpMeta.$attrsToReflect$ = [];
1867
2133
  }
1868
2134
  {
1869
- cmpMeta.$watchers$ = {};
2135
+ cmpMeta.$watchers$ = (_a = compactMeta[4]) !== null && _a !== void 0 ? _a : {};
1870
2136
  }
1871
2137
  const tagName = cmpMeta.$tagName$;
1872
2138
  const HostElement = class extends HTMLElement {
@@ -1979,13 +2245,40 @@ const hostListenerOpts = (flags) => (flags & 2 /* LISTENER_FLAGS.Capture */) !==
1979
2245
  * @returns void
1980
2246
  */
1981
2247
  const setNonce = (nonce) => (plt.$nonce$ = nonce);
2248
+ /**
2249
+ * A WeakMap mapping runtime component references to their corresponding host reference
2250
+ * instances.
2251
+ */
1982
2252
  const hostRefs = /*@__PURE__*/ new WeakMap();
2253
+ /**
2254
+ * Given a {@link d.RuntimeRef} retrieve the corresponding {@link d.HostRef}
2255
+ *
2256
+ * @param ref the runtime ref of interest
2257
+ * @returns the Host reference (if found) or undefined
2258
+ */
1983
2259
  const getHostRef = (ref) => hostRefs.get(ref);
2260
+ /**
2261
+ * Register a lazy instance with the {@link hostRefs} object so it's
2262
+ * corresponding {@link d.HostRef} can be retrieved later.
2263
+ *
2264
+ * @param lazyInstance the lazy instance of interest
2265
+ * @param hostRef that instances `HostRef` object
2266
+ * @returns a reference to the host ref WeakMap
2267
+ */
1984
2268
  const registerInstance = (lazyInstance, hostRef) => hostRefs.set((hostRef.$lazyInstance$ = lazyInstance), hostRef);
1985
- const registerHost = (elm, cmpMeta) => {
2269
+ /**
2270
+ * Register a host element for a Stencil component, setting up various metadata
2271
+ * and callbacks based on {@link BUILD} flags as well as the component's runtime
2272
+ * metadata.
2273
+ *
2274
+ * @param hostElement the host element to register
2275
+ * @param cmpMeta runtime metadata for that component
2276
+ * @returns a reference to the host ref WeakMap
2277
+ */
2278
+ const registerHost = (hostElement, cmpMeta) => {
1986
2279
  const hostRef = {
1987
2280
  $flags$: 0,
1988
- $hostElement$: elm,
2281
+ $hostElement$: hostElement,
1989
2282
  $cmpMeta$: cmpMeta,
1990
2283
  $instanceValues$: new Map(),
1991
2284
  };
@@ -1994,11 +2287,11 @@ const registerHost = (elm, cmpMeta) => {
1994
2287
  }
1995
2288
  {
1996
2289
  hostRef.$onReadyPromise$ = new Promise((r) => (hostRef.$onReadyResolve$ = r));
1997
- elm['s-p'] = [];
1998
- elm['s-rc'] = [];
2290
+ hostElement['s-p'] = [];
2291
+ hostElement['s-rc'] = [];
1999
2292
  }
2000
- addHostEventListeners(elm, hostRef, cmpMeta.$listeners$);
2001
- return hostRefs.set(elm, hostRef);
2293
+ addHostEventListeners(hostElement, hostRef, cmpMeta.$listeners$);
2294
+ return hostRefs.set(hostElement, hostRef);
2002
2295
  };
2003
2296
  const isMemberInElement = (elm, memberName) => memberName in elm;
2004
2297
  const consoleError = (e, el) => (0, console.error)(e, el);
@@ -2011,7 +2304,220 @@ const loadModule = (cmpMeta, hostRef, hmrVersionId) => {
2011
2304
  if (module) {
2012
2305
  return module[exportName];
2013
2306
  }
2014
- /*!__STENCIL_STATIC_IMPORT_SWITCH__*/
2307
+
2308
+ if (!hmrVersionId || !BUILD.hotModuleReplacement) {
2309
+ const processMod = importedModule => {
2310
+ cmpModules.set(bundleId, importedModule);
2311
+ return importedModule[exportName];
2312
+ }
2313
+ switch(bundleId) {
2314
+
2315
+ case 'six-alert':
2316
+ return import(
2317
+ /* webpackMode: "lazy" */
2318
+ './six-alert.entry.js').then(processMod, consoleError);
2319
+ case 'six-avatar':
2320
+ return import(
2321
+ /* webpackMode: "lazy" */
2322
+ './six-avatar.entry.js').then(processMod, consoleError);
2323
+ case 'six-badge':
2324
+ return import(
2325
+ /* webpackMode: "lazy" */
2326
+ './six-badge.entry.js').then(processMod, consoleError);
2327
+ case 'six-button':
2328
+ return import(
2329
+ /* webpackMode: "lazy" */
2330
+ './six-button.entry.js').then(processMod, consoleError);
2331
+ case 'six-card':
2332
+ return import(
2333
+ /* webpackMode: "lazy" */
2334
+ './six-card.entry.js').then(processMod, consoleError);
2335
+ case 'six-checkbox':
2336
+ return import(
2337
+ /* webpackMode: "lazy" */
2338
+ './six-checkbox.entry.js').then(processMod, consoleError);
2339
+ case 'six-datepicker':
2340
+ return import(
2341
+ /* webpackMode: "lazy" */
2342
+ './six-datepicker.entry.js').then(processMod, consoleError);
2343
+ case 'six-dialog':
2344
+ return import(
2345
+ /* webpackMode: "lazy" */
2346
+ './six-dialog.entry.js').then(processMod, consoleError);
2347
+ case 'six-drawer':
2348
+ return import(
2349
+ /* webpackMode: "lazy" */
2350
+ './six-drawer.entry.js').then(processMod, consoleError);
2351
+ case 'six-error-page':
2352
+ return import(
2353
+ /* webpackMode: "lazy" */
2354
+ './six-error-page.entry.js').then(processMod, consoleError);
2355
+ case 'six-file-list':
2356
+ return import(
2357
+ /* webpackMode: "lazy" */
2358
+ './six-file-list.entry.js').then(processMod, consoleError);
2359
+ case 'six-file-list-item':
2360
+ return import(
2361
+ /* webpackMode: "lazy" */
2362
+ './six-file-list-item.entry.js').then(processMod, consoleError);
2363
+ case 'six-file-upload':
2364
+ return import(
2365
+ /* webpackMode: "lazy" */
2366
+ './six-file-upload.entry.js').then(processMod, consoleError);
2367
+ case 'six-footer':
2368
+ return import(
2369
+ /* webpackMode: "lazy" */
2370
+ './six-footer.entry.js').then(processMod, consoleError);
2371
+ case 'six-group-label':
2372
+ return import(
2373
+ /* webpackMode: "lazy" */
2374
+ './six-group-label.entry.js').then(processMod, consoleError);
2375
+ case 'six-header':
2376
+ return import(
2377
+ /* webpackMode: "lazy" */
2378
+ './six-header.entry.js').then(processMod, consoleError);
2379
+ case 'six-language-switcher':
2380
+ return import(
2381
+ /* webpackMode: "lazy" */
2382
+ './six-language-switcher.entry.js').then(processMod, consoleError);
2383
+ case 'six-layout-grid':
2384
+ return import(
2385
+ /* webpackMode: "lazy" */
2386
+ './six-layout-grid.entry.js').then(processMod, consoleError);
2387
+ case 'six-main-container':
2388
+ return import(
2389
+ /* webpackMode: "lazy" */
2390
+ './six-main-container.entry.js').then(processMod, consoleError);
2391
+ case 'six-menu-divider':
2392
+ return import(
2393
+ /* webpackMode: "lazy" */
2394
+ './six-menu-divider.entry.js').then(processMod, consoleError);
2395
+ case 'six-menu-label':
2396
+ return import(
2397
+ /* webpackMode: "lazy" */
2398
+ './six-menu-label.entry.js').then(processMod, consoleError);
2399
+ case 'six-progress-bar':
2400
+ return import(
2401
+ /* webpackMode: "lazy" */
2402
+ './six-progress-bar.entry.js').then(processMod, consoleError);
2403
+ case 'six-progress-ring':
2404
+ return import(
2405
+ /* webpackMode: "lazy" */
2406
+ './six-progress-ring.entry.js').then(processMod, consoleError);
2407
+ case 'six-radio':
2408
+ return import(
2409
+ /* webpackMode: "lazy" */
2410
+ './six-radio.entry.js').then(processMod, consoleError);
2411
+ case 'six-range':
2412
+ return import(
2413
+ /* webpackMode: "lazy" */
2414
+ './six-range.entry.js').then(processMod, consoleError);
2415
+ case 'six-root':
2416
+ return import(
2417
+ /* webpackMode: "lazy" */
2418
+ './six-root.entry.js').then(processMod, consoleError);
2419
+ case 'six-search-field':
2420
+ return import(
2421
+ /* webpackMode: "lazy" */
2422
+ './six-search-field.entry.js').then(processMod, consoleError);
2423
+ case 'six-select':
2424
+ return import(
2425
+ /* webpackMode: "lazy" */
2426
+ './six-select.entry.js').then(processMod, consoleError);
2427
+ case 'six-sidebar':
2428
+ return import(
2429
+ /* webpackMode: "lazy" */
2430
+ './six-sidebar.entry.js').then(processMod, consoleError);
2431
+ case 'six-sidebar-item':
2432
+ return import(
2433
+ /* webpackMode: "lazy" */
2434
+ './six-sidebar-item.entry.js').then(processMod, consoleError);
2435
+ case 'six-sidebar-item-group':
2436
+ return import(
2437
+ /* webpackMode: "lazy" */
2438
+ './six-sidebar-item-group.entry.js').then(processMod, consoleError);
2439
+ case 'six-switch':
2440
+ return import(
2441
+ /* webpackMode: "lazy" */
2442
+ './six-switch.entry.js').then(processMod, consoleError);
2443
+ case 'six-tab':
2444
+ return import(
2445
+ /* webpackMode: "lazy" */
2446
+ './six-tab.entry.js').then(processMod, consoleError);
2447
+ case 'six-tab-group':
2448
+ return import(
2449
+ /* webpackMode: "lazy" */
2450
+ './six-tab-group.entry.js').then(processMod, consoleError);
2451
+ case 'six-tab-panel':
2452
+ return import(
2453
+ /* webpackMode: "lazy" */
2454
+ './six-tab-panel.entry.js').then(processMod, consoleError);
2455
+ case 'six-textarea':
2456
+ return import(
2457
+ /* webpackMode: "lazy" */
2458
+ './six-textarea.entry.js').then(processMod, consoleError);
2459
+ case 'six-tile':
2460
+ return import(
2461
+ /* webpackMode: "lazy" */
2462
+ './six-tile.entry.js').then(processMod, consoleError);
2463
+ case 'set-attributes_2':
2464
+ return import(
2465
+ /* webpackMode: "lazy" */
2466
+ './set-attributes_2.entry.js').then(processMod, consoleError);
2467
+ case 'six-details':
2468
+ return import(
2469
+ /* webpackMode: "lazy" */
2470
+ './six-details.entry.js').then(processMod, consoleError);
2471
+ case 'six-picto':
2472
+ return import(
2473
+ /* webpackMode: "lazy" */
2474
+ './six-picto.entry.js').then(processMod, consoleError);
2475
+ case 'six-spinner':
2476
+ return import(
2477
+ /* webpackMode: "lazy" */
2478
+ './six-spinner.entry.js').then(processMod, consoleError);
2479
+ case 'six-tag':
2480
+ return import(
2481
+ /* webpackMode: "lazy" */
2482
+ './six-tag.entry.js').then(processMod, consoleError);
2483
+ case 'six-timepicker':
2484
+ return import(
2485
+ /* webpackMode: "lazy" */
2486
+ './six-timepicker.entry.js').then(processMod, consoleError);
2487
+ case 'six-dropdown_2':
2488
+ return import(
2489
+ /* webpackMode: "lazy" */
2490
+ './six-dropdown_2.entry.js').then(processMod, consoleError);
2491
+ case 'six-item-picker':
2492
+ return import(
2493
+ /* webpackMode: "lazy" */
2494
+ './six-item-picker.entry.js').then(processMod, consoleError);
2495
+ case 'six-tooltip':
2496
+ return import(
2497
+ /* webpackMode: "lazy" */
2498
+ './six-tooltip.entry.js').then(processMod, consoleError);
2499
+ case 'six-menu-item':
2500
+ return import(
2501
+ /* webpackMode: "lazy" */
2502
+ './six-menu-item.entry.js').then(processMod, consoleError);
2503
+ case 'six-input':
2504
+ return import(
2505
+ /* webpackMode: "lazy" */
2506
+ './six-input.entry.js').then(processMod, consoleError);
2507
+ case 'six-icon-button':
2508
+ return import(
2509
+ /* webpackMode: "lazy" */
2510
+ './six-icon-button.entry.js').then(processMod, consoleError);
2511
+ case 'six-error':
2512
+ return import(
2513
+ /* webpackMode: "lazy" */
2514
+ './six-error.entry.js').then(processMod, consoleError);
2515
+ case 'six-icon':
2516
+ return import(
2517
+ /* webpackMode: "lazy" */
2518
+ './six-icon.entry.js').then(processMod, consoleError);
2519
+ }
2520
+ }
2015
2521
  return import(
2016
2522
  /* @vite-ignore */
2017
2523
  /* webpackInclude: /\.entry\.js$/ */
@@ -2091,4 +2597,4 @@ const writeTask = /*@__PURE__*/ queueTask(queueDomWrites, true);
2091
2597
 
2092
2598
  export { Host as H, bootstrapLazy as b, createEvent as c, getElement as g, h, promiseResolve as p, registerInstance as r, setNonce as s };
2093
2599
 
2094
- //# sourceMappingURL=index-5c0f6628.js.map
2600
+ //# sourceMappingURL=index-4ee8b33e.js.map