@six-group/ui-library 0.0.0-insider.7c990f3 → 0.0.0-insider.7dadbda

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 (841) hide show
  1. package/dist/cjs/app-globals-3a1e7e63.js +7 -0
  2. package/dist/cjs/app-globals-3a1e7e63.js.map +1 -0
  3. package/dist/cjs/error-messages-6e8049a4.js +119 -0
  4. package/dist/cjs/error-messages-6e8049a4.js.map +1 -0
  5. package/dist/cjs/{form-control-f9bc25dd.js → form-control-73ff961d.js} +2 -2
  6. package/dist/cjs/{form-control-f9bc25dd.js.map → form-control-73ff961d.js.map} +1 -1
  7. package/dist/cjs/{index-3baddcdc.js → index-b288f7d9.js} +114 -509
  8. package/dist/cjs/index-b288f7d9.js.map +1 -0
  9. package/dist/cjs/index.cjs.js +54 -101
  10. package/dist/cjs/index.cjs.js.map +1 -1
  11. package/dist/cjs/loader.cjs.js +5 -3
  12. package/dist/cjs/loader.cjs.js.map +1 -1
  13. package/dist/cjs/{modal-3ce015be.js → modal-bd7fc5bc.js} +1 -18
  14. package/dist/cjs/modal-bd7fc5bc.js.map +1 -0
  15. package/dist/cjs/{popup-40a9adbb.js → popup-e854acda.js} +2 -2
  16. package/dist/cjs/popup-e854acda.js.map +1 -0
  17. package/dist/cjs/six-alert.cjs.entry.js +42 -9
  18. package/dist/cjs/six-alert.cjs.entry.js.map +1 -1
  19. package/dist/cjs/six-avatar.cjs.entry.js +5 -4
  20. package/dist/cjs/six-avatar.cjs.entry.js.map +1 -1
  21. package/dist/cjs/six-badge.cjs.entry.js +6 -5
  22. package/dist/cjs/six-badge.cjs.entry.js.map +1 -1
  23. package/dist/cjs/six-button.cjs.entry.js +7 -6
  24. package/dist/cjs/six-button.cjs.entry.js.map +1 -1
  25. package/dist/cjs/six-card.cjs.entry.js +5 -4
  26. package/dist/cjs/six-card.cjs.entry.js.map +1 -1
  27. package/dist/cjs/six-checkbox_2.cjs.entry.js +192 -0
  28. package/dist/cjs/six-checkbox_2.cjs.entry.js.map +1 -0
  29. package/dist/cjs/six-datepicker.cjs.entry.js +33 -6
  30. package/dist/cjs/six-datepicker.cjs.entry.js.map +1 -1
  31. package/dist/cjs/six-details.cjs.entry.js +7 -6
  32. package/dist/cjs/six-details.cjs.entry.js.map +1 -1
  33. package/dist/cjs/six-dialog.cjs.entry.js +16 -32
  34. package/dist/cjs/six-dialog.cjs.entry.js.map +1 -1
  35. package/dist/cjs/six-drawer.cjs.entry.js +15 -32
  36. package/dist/cjs/six-drawer.cjs.entry.js.map +1 -1
  37. package/dist/cjs/six-dropdown_2.cjs.entry.js +204 -130
  38. package/dist/cjs/six-dropdown_2.cjs.entry.js.map +1 -1
  39. package/dist/cjs/six-error-page.cjs.entry.js +4 -3
  40. package/dist/cjs/six-error-page.cjs.entry.js.map +1 -1
  41. package/dist/cjs/six-error.cjs.entry.js +4 -3
  42. package/dist/cjs/six-error.cjs.entry.js.map +1 -1
  43. package/dist/cjs/six-file-list-item.cjs.entry.js +6 -5
  44. package/dist/cjs/six-file-list-item.cjs.entry.js.map +1 -1
  45. package/dist/cjs/six-file-list.cjs.entry.js +4 -3
  46. package/dist/cjs/six-file-list.cjs.entry.js.map +1 -1
  47. package/dist/cjs/six-file-upload.cjs.entry.js +11 -9
  48. package/dist/cjs/six-file-upload.cjs.entry.js.map +1 -1
  49. package/dist/cjs/six-footer.cjs.entry.js +5 -4
  50. package/dist/cjs/six-footer.cjs.entry.js.map +1 -1
  51. package/dist/cjs/six-group-label.cjs.entry.js +7 -6
  52. package/dist/cjs/six-group-label.cjs.entry.js.map +1 -1
  53. package/dist/cjs/six-header.cjs.entry.js +16 -13
  54. package/dist/cjs/six-header.cjs.entry.js.map +1 -1
  55. package/dist/cjs/six-icon-button.cjs.entry.js +7 -6
  56. package/dist/cjs/six-icon-button.cjs.entry.js.map +1 -1
  57. package/dist/cjs/six-icon.cjs.entry.js +6 -5
  58. package/dist/cjs/six-icon.cjs.entry.js.map +1 -1
  59. package/dist/cjs/six-input.cjs.entry.js +11 -8
  60. package/dist/cjs/six-input.cjs.entry.js.map +1 -1
  61. package/dist/cjs/six-item-picker.cjs.entry.js +7 -6
  62. package/dist/cjs/six-item-picker.cjs.entry.js.map +1 -1
  63. package/dist/cjs/six-language-switcher.cjs.entry.js +11 -6
  64. package/dist/cjs/six-language-switcher.cjs.entry.js.map +1 -1
  65. package/dist/cjs/six-layout-grid.cjs.entry.js +4 -3
  66. package/dist/cjs/six-layout-grid.cjs.entry.js.map +1 -1
  67. package/dist/cjs/six-main-container.cjs.entry.js +4 -3
  68. package/dist/cjs/six-main-container.cjs.entry.js.map +1 -1
  69. package/dist/cjs/six-menu-divider.cjs.entry.js +5 -4
  70. package/dist/cjs/six-menu-divider.cjs.entry.js.map +1 -1
  71. package/dist/cjs/six-menu-label.cjs.entry.js +5 -4
  72. package/dist/cjs/six-menu-label.cjs.entry.js.map +1 -1
  73. package/dist/cjs/six-picto.cjs.entry.js +4 -3
  74. package/dist/cjs/six-picto.cjs.entry.js.map +1 -1
  75. package/dist/cjs/six-progress-bar.cjs.entry.js +6 -5
  76. package/dist/cjs/six-progress-bar.cjs.entry.js.map +1 -1
  77. package/dist/cjs/six-progress-ring.cjs.entry.js +5 -4
  78. package/dist/cjs/six-progress-ring.cjs.entry.js.map +1 -1
  79. package/dist/cjs/six-radio.cjs.entry.js +6 -5
  80. package/dist/cjs/six-radio.cjs.entry.js.map +1 -1
  81. package/dist/cjs/six-range.cjs.entry.js +18 -7
  82. package/dist/cjs/six-range.cjs.entry.js.map +1 -1
  83. package/dist/cjs/six-root.cjs.entry.js +4 -22
  84. package/dist/cjs/six-root.cjs.entry.js.map +1 -1
  85. package/dist/cjs/six-search-field.cjs.entry.js +5 -4
  86. package/dist/cjs/six-search-field.cjs.entry.js.map +1 -1
  87. package/dist/cjs/six-select.cjs.entry.js +302 -170
  88. package/dist/cjs/six-select.cjs.entry.js.map +1 -1
  89. package/dist/cjs/six-sidebar-item-group.cjs.entry.js +5 -4
  90. package/dist/cjs/six-sidebar-item-group.cjs.entry.js.map +1 -1
  91. package/dist/cjs/six-sidebar-item.cjs.entry.js +5 -4
  92. package/dist/cjs/six-sidebar-item.cjs.entry.js.map +1 -1
  93. package/dist/cjs/six-sidebar.cjs.entry.js +6 -5
  94. package/dist/cjs/six-sidebar.cjs.entry.js.map +1 -1
  95. package/dist/cjs/six-spinner.cjs.entry.js +5 -4
  96. package/dist/cjs/six-spinner.cjs.entry.js.map +1 -1
  97. package/dist/cjs/six-stage-indicator.cjs.entry.js +23 -0
  98. package/dist/cjs/six-stage-indicator.cjs.entry.js.map +1 -0
  99. package/dist/cjs/six-switch.cjs.entry.js +8 -7
  100. package/dist/cjs/six-switch.cjs.entry.js.map +1 -1
  101. package/dist/cjs/six-tab-group.cjs.entry.js +35 -9
  102. package/dist/cjs/six-tab-group.cjs.entry.js.map +1 -1
  103. package/dist/cjs/six-tab-panel.cjs.entry.js +5 -4
  104. package/dist/cjs/six-tab-panel.cjs.entry.js.map +1 -1
  105. package/dist/cjs/six-tab.cjs.entry.js +6 -5
  106. package/dist/cjs/six-tab.cjs.entry.js.map +1 -1
  107. package/dist/cjs/six-tag.cjs.entry.js +7 -6
  108. package/dist/cjs/six-tag.cjs.entry.js.map +1 -1
  109. package/dist/cjs/six-textarea.cjs.entry.js +8 -7
  110. package/dist/cjs/six-textarea.cjs.entry.js.map +1 -1
  111. package/dist/cjs/six-tile.cjs.entry.js +8 -7
  112. package/dist/cjs/six-tile.cjs.entry.js.map +1 -1
  113. package/dist/cjs/six-timepicker.cjs.entry.js +8 -7
  114. package/dist/cjs/six-timepicker.cjs.entry.js.map +1 -1
  115. package/dist/cjs/six-tooltip.cjs.entry.js +6 -5
  116. package/dist/cjs/six-tooltip.cjs.entry.js.map +1 -1
  117. package/dist/cjs/{slot-9821749e.js → slot-1b1232a1.js} +1 -3
  118. package/dist/cjs/slot-1b1232a1.js.map +1 -0
  119. package/dist/cjs/{types-0a6d66f6.js → types-d3da200b.js} +3 -1
  120. package/dist/cjs/types-d3da200b.js.map +1 -0
  121. package/dist/cjs/ui-library.cjs.js +6 -4
  122. package/dist/cjs/ui-library.cjs.js.map +1 -1
  123. package/dist/collection/collection-manifest.json +5 -6
  124. package/dist/collection/components/six-alert/six-alert.css +5 -1
  125. package/dist/collection/components/six-alert/six-alert.js +57 -12
  126. package/dist/collection/components/six-alert/six-alert.js.map +1 -1
  127. package/dist/collection/components/six-avatar/six-avatar.css +2 -2
  128. package/dist/collection/components/six-avatar/six-avatar.js +1 -1
  129. package/dist/collection/components/six-avatar/six-avatar.js.map +1 -1
  130. package/dist/collection/components/six-badge/six-badge.css +1 -1
  131. package/dist/collection/components/six-badge/six-badge.js +2 -2
  132. package/dist/collection/components/six-badge/six-badge.js.map +1 -1
  133. package/dist/collection/components/six-button/six-button.css +2 -1
  134. package/dist/collection/components/six-button/six-button.js +5 -4
  135. package/dist/collection/components/six-button/six-button.js.map +1 -1
  136. package/dist/collection/components/six-button/test/six-button.spec.js.map +1 -1
  137. package/dist/collection/components/six-card/six-card.css +4 -5
  138. package/dist/collection/components/six-card/six-card.js +1 -1
  139. package/dist/collection/components/six-card/six-card.js.map +1 -1
  140. package/dist/collection/components/six-checkbox/six-checkbox.css +3 -1
  141. package/dist/collection/components/six-checkbox/six-checkbox.js +5 -4
  142. package/dist/collection/components/six-checkbox/six-checkbox.js.map +1 -1
  143. package/dist/collection/components/six-datepicker/six-date-formats.js +1 -0
  144. package/dist/collection/components/six-datepicker/six-date-formats.js.map +1 -1
  145. package/dist/collection/components/six-datepicker/six-datepicker.css +1 -1
  146. package/dist/collection/components/six-datepicker/six-datepicker.js +9 -7
  147. package/dist/collection/components/six-datepicker/six-datepicker.js.map +1 -1
  148. package/dist/collection/components/six-details/six-details.css +1 -5
  149. package/dist/collection/components/six-details/six-details.js +3 -3
  150. package/dist/collection/components/six-details/six-details.js.map +1 -1
  151. package/dist/collection/components/six-dialog/six-dialog.css +2 -2
  152. package/dist/collection/components/six-dialog/six-dialog.js +10 -28
  153. package/dist/collection/components/six-dialog/six-dialog.js.map +1 -1
  154. package/dist/collection/components/six-drawer/six-drawer.css +2 -2
  155. package/dist/collection/components/six-drawer/six-drawer.js +9 -28
  156. package/dist/collection/components/six-drawer/six-drawer.js.map +1 -1
  157. package/dist/collection/components/six-dropdown/six-dropdown.css +22 -7
  158. package/dist/collection/components/six-dropdown/six-dropdown.js +216 -124
  159. package/dist/collection/components/six-dropdown/six-dropdown.js.map +1 -1
  160. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js +54 -29
  161. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js.map +1 -1
  162. package/dist/collection/components/six-error/six-error.js +1 -1
  163. package/dist/collection/components/six-error/six-error.js.map +1 -1
  164. package/dist/collection/components/six-error-page/six-error-page.js +1 -1
  165. package/dist/collection/components/six-error-page/six-error-page.js.map +1 -1
  166. package/dist/collection/components/six-file-list/six-file-list.js +1 -1
  167. package/dist/collection/components/six-file-list/six-file-list.js.map +1 -1
  168. package/dist/collection/components/six-file-list-item/six-file-list-item.css +1 -1
  169. package/dist/collection/components/six-file-list-item/six-file-list-item.js +2 -2
  170. package/dist/collection/components/six-file-list-item/six-file-list-item.js.map +1 -1
  171. package/dist/collection/components/six-file-upload/six-file-upload.css +9 -4
  172. package/dist/collection/components/six-file-upload/six-file-upload.js +25 -6
  173. package/dist/collection/components/six-file-upload/six-file-upload.js.map +1 -1
  174. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js +76 -21
  175. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js.map +1 -1
  176. package/dist/collection/components/six-footer/six-footer.css +2 -2
  177. package/dist/collection/components/six-footer/six-footer.js +1 -1
  178. package/dist/collection/components/six-footer/six-footer.js.map +1 -1
  179. package/dist/collection/components/six-group-label/six-group-label.css +1 -1
  180. package/dist/collection/components/six-group-label/six-group-label.js +1 -1
  181. package/dist/collection/components/six-group-label/six-group-label.js.map +1 -1
  182. package/dist/collection/components/six-header/six-header.css +6 -2
  183. package/dist/collection/components/six-header/six-header.js +32 -11
  184. package/dist/collection/components/six-header/six-header.js.map +1 -1
  185. package/dist/collection/components/six-header/test/six-header.spec.js +38 -2
  186. package/dist/collection/components/six-header/test/six-header.spec.js.map +1 -1
  187. package/dist/collection/components/six-icon/six-icon.css +3 -7
  188. package/dist/collection/components/six-icon/six-icon.js +2 -2
  189. package/dist/collection/components/six-icon/six-icon.js.map +1 -1
  190. package/dist/collection/components/six-icon-button/six-icon-button.css +1 -1
  191. package/dist/collection/components/six-icon-button/six-icon-button.js +3 -3
  192. package/dist/collection/components/six-icon-button/six-icon-button.js.map +1 -1
  193. package/dist/collection/components/six-input/six-input.css +10 -1
  194. package/dist/collection/components/six-input/six-input.js +47 -19
  195. package/dist/collection/components/six-input/six-input.js.map +1 -1
  196. package/dist/collection/components/six-item-picker/six-item-picker.js +3 -3
  197. package/dist/collection/components/six-item-picker/six-item-picker.js.map +1 -1
  198. package/dist/collection/components/six-item-picker/types.js +2 -0
  199. package/dist/collection/components/six-item-picker/types.js.map +1 -1
  200. package/dist/collection/components/six-language-switcher/six-language-switcher.css +7 -2
  201. package/dist/collection/components/six-language-switcher/six-language-switcher.js +7 -3
  202. package/dist/collection/components/six-language-switcher/six-language-switcher.js.map +1 -1
  203. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js +20 -20
  204. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js.map +1 -1
  205. package/dist/collection/components/six-layout-grid/six-layout-grid.js +1 -1
  206. package/dist/collection/components/six-layout-grid/six-layout-grid.js.map +1 -1
  207. package/dist/collection/components/six-main-container/six-main-container.js +1 -1
  208. package/dist/collection/components/six-main-container/six-main-container.js.map +1 -1
  209. package/dist/collection/components/six-menu/six-menu.css +8 -7
  210. package/dist/collection/components/six-menu/six-menu.js +30 -8
  211. package/dist/collection/components/six-menu/six-menu.js.map +1 -1
  212. package/dist/collection/components/six-menu/test/six-menu.spec.js +6 -6
  213. package/dist/collection/components/six-menu/test/six-menu.spec.js.map +1 -1
  214. package/dist/collection/components/six-menu-divider/six-menu-divider.css +3 -2
  215. package/dist/collection/components/six-menu-divider/six-menu-divider.js +1 -1
  216. package/dist/collection/components/six-menu-divider/six-menu-divider.js.map +1 -1
  217. package/dist/collection/components/six-menu-item/six-menu-item.css +13 -2
  218. package/dist/collection/components/six-menu-item/six-menu-item.js +37 -8
  219. package/dist/collection/components/six-menu-item/six-menu-item.js.map +1 -1
  220. package/dist/collection/components/six-menu-label/six-menu-label.css +1 -1
  221. package/dist/collection/components/six-menu-label/six-menu-label.js +1 -1
  222. package/dist/collection/components/six-menu-label/six-menu-label.js.map +1 -1
  223. package/dist/collection/components/six-picto/six-picto.js +1 -1
  224. package/dist/collection/components/six-picto/six-picto.js.map +1 -1
  225. package/dist/collection/components/six-progress-bar/six-progress-bar.css +1 -1
  226. package/dist/collection/components/six-progress-bar/six-progress-bar.js +2 -2
  227. package/dist/collection/components/six-progress-bar/six-progress-bar.js.map +1 -1
  228. package/dist/collection/components/six-progress-ring/six-progress-ring.css +1 -1
  229. package/dist/collection/components/six-progress-ring/six-progress-ring.js +1 -1
  230. package/dist/collection/components/six-progress-ring/six-progress-ring.js.map +1 -1
  231. package/dist/collection/components/six-radio/six-radio.css +1 -1
  232. package/dist/collection/components/six-radio/six-radio.js +5 -4
  233. package/dist/collection/components/six-radio/six-radio.js.map +1 -1
  234. package/dist/collection/components/six-range/six-range.css +2 -2
  235. package/dist/collection/components/six-range/six-range.js +15 -4
  236. package/dist/collection/components/six-range/six-range.js.map +1 -1
  237. package/dist/collection/components/six-root/six-root.js +1 -69
  238. package/dist/collection/components/six-root/six-root.js.map +1 -1
  239. package/dist/collection/components/six-root/test/six-root.spec.js +0 -7
  240. package/dist/collection/components/six-root/test/six-root.spec.js.map +1 -1
  241. package/dist/collection/components/six-search-field/six-search-field.css +1 -1
  242. package/dist/collection/components/six-search-field/six-search-field.js +1 -1
  243. package/dist/collection/components/six-search-field/six-search-field.js.map +1 -1
  244. package/dist/collection/components/six-select/six-select.css +54 -66
  245. package/dist/collection/components/six-select/six-select.js +343 -168
  246. package/dist/collection/components/six-select/six-select.js.map +1 -1
  247. package/dist/collection/components/six-select/test/six-select.spec.js +31 -15
  248. package/dist/collection/components/six-select/test/six-select.spec.js.map +1 -1
  249. package/dist/collection/components/six-select/util.js.map +1 -1
  250. package/dist/collection/components/six-sidebar/six-sidebar.css +2 -2
  251. package/dist/collection/components/six-sidebar/six-sidebar.js +8 -6
  252. package/dist/collection/components/six-sidebar/six-sidebar.js.map +1 -1
  253. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js +2 -2
  254. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js.map +1 -1
  255. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.css +2 -1
  256. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js.map +1 -1
  257. package/dist/collection/components/six-spinner/six-spinner.css +1 -1
  258. package/dist/collection/components/six-spinner/six-spinner.js +2 -1
  259. package/dist/collection/components/six-spinner/six-spinner.js.map +1 -1
  260. package/dist/collection/components/six-spinner/test/six-spinner.spec.js +1 -1
  261. package/dist/collection/components/six-spinner/test/six-spinner.spec.js.map +1 -1
  262. package/dist/collection/components/six-stage-indicator/six-stage-indicator.css +1 -1
  263. package/dist/collection/components/six-switch/six-switch.css +1 -1
  264. package/dist/collection/components/six-switch/six-switch.js +5 -4
  265. package/dist/collection/components/six-switch/six-switch.js.map +1 -1
  266. package/dist/collection/components/six-tab/six-tab.css +1 -1
  267. package/dist/collection/components/six-tab/six-tab.js +5 -4
  268. package/dist/collection/components/six-tab/six-tab.js.map +1 -1
  269. package/dist/collection/components/six-tab-group/six-tab-group.css +1 -1
  270. package/dist/collection/components/six-tab-group/six-tab-group.js +36 -9
  271. package/dist/collection/components/six-tab-group/six-tab-group.js.map +1 -1
  272. package/dist/collection/components/six-tab-panel/six-tab-panel.css +1 -1
  273. package/dist/collection/components/six-tab-panel/six-tab-panel.js +1 -1
  274. package/dist/collection/components/six-tab-panel/six-tab-panel.js.map +1 -1
  275. package/dist/collection/components/six-tag/six-tag.css +1 -1
  276. package/dist/collection/components/six-tag/six-tag.js +2 -2
  277. package/dist/collection/components/six-tag/six-tag.js.map +1 -1
  278. package/dist/collection/components/six-textarea/six-textarea.css +1 -1
  279. package/dist/collection/components/six-textarea/six-textarea.js +26 -18
  280. package/dist/collection/components/six-textarea/six-textarea.js.map +1 -1
  281. package/dist/collection/components/six-textarea/test/six-textarea.spec.js.map +1 -1
  282. package/dist/collection/components/six-tile/six-tile.css +2 -2
  283. package/dist/collection/components/six-tile/six-tile.js +3 -3
  284. package/dist/collection/components/six-tile/six-tile.js.map +1 -1
  285. package/dist/collection/components/six-timepicker/six-timepicker.css +1 -1
  286. package/dist/collection/components/six-timepicker/six-timepicker.js +4 -3
  287. package/dist/collection/components/six-timepicker/six-timepicker.js.map +1 -1
  288. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js.map +1 -1
  289. package/dist/collection/components/six-tooltip/six-tooltip.css +1 -1
  290. package/dist/collection/components/six-tooltip/six-tooltip.js +2 -2
  291. package/dist/collection/components/six-tooltip/six-tooltip.js.map +1 -1
  292. package/dist/collection/index.js +1 -0
  293. package/dist/collection/index.js.map +1 -1
  294. package/dist/collection/utils/alert.js +54 -0
  295. package/dist/collection/utils/alert.js.map +1 -0
  296. package/dist/collection/utils/date-util.js +25 -0
  297. package/dist/collection/utils/date-util.js.map +1 -1
  298. package/dist/collection/utils/date-util.spec.js.map +1 -1
  299. package/dist/collection/utils/error-messages.js +7 -0
  300. package/dist/collection/utils/error-messages.js.map +1 -1
  301. package/dist/collection/utils/event-listeners.js.map +1 -1
  302. package/dist/collection/utils/focus-visible.js.map +1 -1
  303. package/dist/collection/utils/form.js.map +1 -1
  304. package/dist/collection/utils/modal.js.map +1 -1
  305. package/dist/collection/utils/popover.js.map +1 -1
  306. package/dist/collection/utils/popup.js +1 -1
  307. package/dist/collection/utils/popup.js.map +1 -1
  308. package/dist/collection/utils/scroll.js.map +1 -1
  309. package/dist/collection/utils/slot.js +0 -1
  310. package/dist/collection/utils/slot.js.map +1 -1
  311. package/dist/collection/utils/tabbable.js.map +1 -1
  312. package/dist/collection/utils/time.util.js.map +1 -1
  313. package/dist/collection/utils/time.util.spec.js.map +1 -1
  314. package/dist/components/index.js +50 -102
  315. package/dist/components/index.js.map +1 -1
  316. package/dist/components/modal.js +1 -17
  317. package/dist/components/modal.js.map +1 -1
  318. package/dist/components/six-alert.js +41 -8
  319. package/dist/components/six-alert.js.map +1 -1
  320. package/dist/components/six-avatar.js +4 -3
  321. package/dist/components/six-avatar.js.map +1 -1
  322. package/dist/components/six-badge.js +5 -4
  323. package/dist/components/six-badge.js.map +1 -1
  324. package/dist/components/six-button.js +1 -142
  325. package/dist/components/six-button.js.map +1 -1
  326. package/dist/components/six-button2.js +147 -0
  327. package/dist/components/six-button2.js.map +1 -0
  328. package/dist/components/six-card.js +4 -3
  329. package/dist/components/six-card.js.map +1 -1
  330. package/dist/components/six-checkbox.js +1 -161
  331. package/dist/components/six-checkbox.js.map +1 -1
  332. package/dist/components/six-checkbox2.js +166 -0
  333. package/dist/components/six-checkbox2.js.map +1 -0
  334. package/dist/components/six-datepicker.js +30 -3
  335. package/dist/components/six-datepicker.js.map +1 -1
  336. package/dist/components/six-details2.js +6 -5
  337. package/dist/components/six-details2.js.map +1 -1
  338. package/dist/components/six-dialog.js +14 -30
  339. package/dist/components/six-dialog.js.map +1 -1
  340. package/dist/components/six-drawer.js +13 -30
  341. package/dist/components/six-drawer.js.map +1 -1
  342. package/dist/components/six-dropdown2.js +204 -127
  343. package/dist/components/six-dropdown2.js.map +1 -1
  344. package/dist/components/six-error-page.js +3 -2
  345. package/dist/components/six-error-page.js.map +1 -1
  346. package/dist/components/six-error2.js +3 -2
  347. package/dist/components/six-error2.js.map +1 -1
  348. package/dist/components/six-file-list-item.js +5 -4
  349. package/dist/components/six-file-list-item.js.map +1 -1
  350. package/dist/components/six-file-list.js +3 -2
  351. package/dist/components/six-file-list.js.map +1 -1
  352. package/dist/components/six-file-upload.js +19 -10
  353. package/dist/components/six-file-upload.js.map +1 -1
  354. package/dist/components/six-footer.js +4 -3
  355. package/dist/components/six-footer.js.map +1 -1
  356. package/dist/components/six-group-label.js +4 -3
  357. package/dist/components/six-group-label.js.map +1 -1
  358. package/dist/components/six-header.js +22 -12
  359. package/dist/components/six-header.js.map +1 -1
  360. package/dist/components/six-icon-button2.js +6 -5
  361. package/dist/components/six-icon-button2.js.map +1 -1
  362. package/dist/components/six-icon2.js +5 -4
  363. package/dist/components/six-icon2.js.map +1 -1
  364. package/dist/components/six-input2.js +9 -5
  365. package/dist/components/six-input2.js.map +1 -1
  366. package/dist/components/six-item-picker2.js +7 -4
  367. package/dist/components/six-item-picker2.js.map +1 -1
  368. package/dist/components/six-language-switcher.js +10 -5
  369. package/dist/components/six-language-switcher.js.map +1 -1
  370. package/dist/components/six-layout-grid.js +3 -2
  371. package/dist/components/six-layout-grid.js.map +1 -1
  372. package/dist/components/six-main-container.js +3 -2
  373. package/dist/components/six-main-container.js.map +1 -1
  374. package/dist/components/six-menu-divider.js +4 -3
  375. package/dist/components/six-menu-divider.js.map +1 -1
  376. package/dist/components/six-menu-item2.js +31 -7
  377. package/dist/components/six-menu-item2.js.map +1 -1
  378. package/dist/components/six-menu-label.js +4 -3
  379. package/dist/components/six-menu-label.js.map +1 -1
  380. package/dist/components/six-menu2.js +26 -9
  381. package/dist/components/six-menu2.js.map +1 -1
  382. package/dist/components/six-picto2.js +3 -2
  383. package/dist/components/six-picto2.js.map +1 -1
  384. package/dist/components/six-progress-bar.js +5 -4
  385. package/dist/components/six-progress-bar.js.map +1 -1
  386. package/dist/components/six-progress-ring.js +4 -3
  387. package/dist/components/six-progress-ring.js.map +1 -1
  388. package/dist/components/six-radio.js +5 -4
  389. package/dist/components/six-radio.js.map +1 -1
  390. package/dist/components/six-range.js +15 -4
  391. package/dist/components/six-range.js.map +1 -1
  392. package/dist/components/six-root.js +6 -34
  393. package/dist/components/six-root.js.map +1 -1
  394. package/dist/components/six-search-field.js +4 -3
  395. package/dist/components/six-search-field.js.map +1 -1
  396. package/dist/components/six-select.js +437 -186
  397. package/dist/components/six-select.js.map +1 -1
  398. package/dist/components/six-sidebar-item-group.js +3 -2
  399. package/dist/components/six-sidebar-item-group.js.map +1 -1
  400. package/dist/components/six-sidebar-item.js +4 -3
  401. package/dist/components/six-sidebar-item.js.map +1 -1
  402. package/dist/components/six-sidebar.js +5 -4
  403. package/dist/components/six-sidebar.js.map +1 -1
  404. package/dist/components/six-spinner2.js +4 -3
  405. package/dist/components/six-spinner2.js.map +1 -1
  406. package/dist/components/six-stage-indicator2.js +3 -2
  407. package/dist/components/six-stage-indicator2.js.map +1 -1
  408. package/dist/components/six-switch.js +5 -4
  409. package/dist/components/six-switch.js.map +1 -1
  410. package/dist/components/six-tab-group.js +36 -9
  411. package/dist/components/six-tab-group.js.map +1 -1
  412. package/dist/components/six-tab-panel.js +4 -3
  413. package/dist/components/six-tab-panel.js.map +1 -1
  414. package/dist/components/six-tab.js +5 -4
  415. package/dist/components/six-tab.js.map +1 -1
  416. package/dist/components/six-tag.js +99 -1
  417. package/dist/components/six-tag.js.map +1 -1
  418. package/dist/components/six-textarea.js +5 -4
  419. package/dist/components/six-textarea.js.map +1 -1
  420. package/dist/components/six-tile.js +6 -5
  421. package/dist/components/six-tile.js.map +1 -1
  422. package/dist/components/six-timepicker2.js +5 -4
  423. package/dist/components/six-timepicker2.js.map +1 -1
  424. package/dist/components/six-tooltip2.js +5 -4
  425. package/dist/components/six-tooltip2.js.map +1 -1
  426. package/dist/components/slot.js +1 -2
  427. package/dist/components/slot.js.map +1 -1
  428. package/dist/components.d.ts +1 -21
  429. package/dist/components.json +636 -235
  430. package/dist/esm/app-globals-0f993ce5.js +5 -0
  431. package/dist/esm/app-globals-0f993ce5.js.map +1 -0
  432. package/dist/esm/error-messages-1eaaad23.js +115 -0
  433. package/dist/esm/error-messages-1eaaad23.js.map +1 -0
  434. package/dist/esm/{form-control-6b30894f.js → form-control-40c37714.js} +2 -2
  435. package/dist/esm/{form-control-6b30894f.js.map → form-control-40c37714.js.map} +1 -1
  436. package/dist/esm/{index-17d8173e.js → index-52a755dc.js} +114 -509
  437. package/dist/esm/index-52a755dc.js.map +1 -0
  438. package/dist/esm/index.js +51 -100
  439. package/dist/esm/index.js.map +1 -1
  440. package/dist/esm/loader.js +6 -4
  441. package/dist/esm/loader.js.map +1 -1
  442. package/dist/esm/{modal-96526245.js → modal-6c1288e3.js} +2 -18
  443. package/dist/esm/modal-6c1288e3.js.map +1 -0
  444. package/dist/esm/{popup-e8049817.js → popup-7209e9d5.js} +2 -2
  445. package/dist/esm/popup-7209e9d5.js.map +1 -0
  446. package/dist/esm/six-alert.entry.js +42 -9
  447. package/dist/esm/six-alert.entry.js.map +1 -1
  448. package/dist/esm/six-avatar.entry.js +5 -4
  449. package/dist/esm/six-avatar.entry.js.map +1 -1
  450. package/dist/esm/six-badge.entry.js +6 -5
  451. package/dist/esm/six-badge.entry.js.map +1 -1
  452. package/dist/esm/six-button.entry.js +7 -6
  453. package/dist/esm/six-button.entry.js.map +1 -1
  454. package/dist/esm/six-card.entry.js +5 -4
  455. package/dist/esm/six-card.entry.js.map +1 -1
  456. package/dist/esm/six-checkbox_2.entry.js +187 -0
  457. package/dist/esm/six-checkbox_2.entry.js.map +1 -0
  458. package/dist/esm/six-datepicker.entry.js +33 -6
  459. package/dist/esm/six-datepicker.entry.js.map +1 -1
  460. package/dist/esm/six-details.entry.js +7 -6
  461. package/dist/esm/six-details.entry.js.map +1 -1
  462. package/dist/esm/six-dialog.entry.js +16 -32
  463. package/dist/esm/six-dialog.entry.js.map +1 -1
  464. package/dist/esm/six-drawer.entry.js +15 -32
  465. package/dist/esm/six-drawer.entry.js.map +1 -1
  466. package/dist/esm/six-dropdown_2.entry.js +205 -131
  467. package/dist/esm/six-dropdown_2.entry.js.map +1 -1
  468. package/dist/esm/six-error-page.entry.js +4 -3
  469. package/dist/esm/six-error-page.entry.js.map +1 -1
  470. package/dist/esm/six-error.entry.js +4 -3
  471. package/dist/esm/six-error.entry.js.map +1 -1
  472. package/dist/esm/six-file-list-item.entry.js +6 -5
  473. package/dist/esm/six-file-list-item.entry.js.map +1 -1
  474. package/dist/esm/six-file-list.entry.js +4 -3
  475. package/dist/esm/six-file-list.entry.js.map +1 -1
  476. package/dist/esm/six-file-upload.entry.js +11 -9
  477. package/dist/esm/six-file-upload.entry.js.map +1 -1
  478. package/dist/esm/six-footer.entry.js +5 -4
  479. package/dist/esm/six-footer.entry.js.map +1 -1
  480. package/dist/esm/six-group-label.entry.js +7 -6
  481. package/dist/esm/six-group-label.entry.js.map +1 -1
  482. package/dist/esm/six-header.entry.js +16 -13
  483. package/dist/esm/six-header.entry.js.map +1 -1
  484. package/dist/esm/six-icon-button.entry.js +7 -6
  485. package/dist/esm/six-icon-button.entry.js.map +1 -1
  486. package/dist/esm/six-icon.entry.js +6 -5
  487. package/dist/esm/six-icon.entry.js.map +1 -1
  488. package/dist/esm/six-input.entry.js +11 -8
  489. package/dist/esm/six-input.entry.js.map +1 -1
  490. package/dist/esm/six-item-picker.entry.js +7 -6
  491. package/dist/esm/six-item-picker.entry.js.map +1 -1
  492. package/dist/esm/six-language-switcher.entry.js +11 -6
  493. package/dist/esm/six-language-switcher.entry.js.map +1 -1
  494. package/dist/esm/six-layout-grid.entry.js +4 -3
  495. package/dist/esm/six-layout-grid.entry.js.map +1 -1
  496. package/dist/esm/six-main-container.entry.js +4 -3
  497. package/dist/esm/six-main-container.entry.js.map +1 -1
  498. package/dist/esm/six-menu-divider.entry.js +5 -4
  499. package/dist/esm/six-menu-divider.entry.js.map +1 -1
  500. package/dist/esm/six-menu-label.entry.js +5 -4
  501. package/dist/esm/six-menu-label.entry.js.map +1 -1
  502. package/dist/esm/six-picto.entry.js +4 -3
  503. package/dist/esm/six-picto.entry.js.map +1 -1
  504. package/dist/esm/six-progress-bar.entry.js +6 -5
  505. package/dist/esm/six-progress-bar.entry.js.map +1 -1
  506. package/dist/esm/six-progress-ring.entry.js +5 -4
  507. package/dist/esm/six-progress-ring.entry.js.map +1 -1
  508. package/dist/esm/six-radio.entry.js +6 -5
  509. package/dist/esm/six-radio.entry.js.map +1 -1
  510. package/dist/esm/six-range.entry.js +18 -7
  511. package/dist/esm/six-range.entry.js.map +1 -1
  512. package/dist/esm/six-root.entry.js +4 -22
  513. package/dist/esm/six-root.entry.js.map +1 -1
  514. package/dist/esm/six-search-field.entry.js +5 -4
  515. package/dist/esm/six-search-field.entry.js.map +1 -1
  516. package/dist/esm/six-select.entry.js +302 -170
  517. package/dist/esm/six-select.entry.js.map +1 -1
  518. package/dist/esm/six-sidebar-item-group.entry.js +5 -4
  519. package/dist/esm/six-sidebar-item-group.entry.js.map +1 -1
  520. package/dist/esm/six-sidebar-item.entry.js +5 -4
  521. package/dist/esm/six-sidebar-item.entry.js.map +1 -1
  522. package/dist/esm/six-sidebar.entry.js +6 -5
  523. package/dist/esm/six-sidebar.entry.js.map +1 -1
  524. package/dist/esm/six-spinner.entry.js +5 -4
  525. package/dist/esm/six-spinner.entry.js.map +1 -1
  526. package/dist/esm/six-stage-indicator.entry.js +19 -0
  527. package/dist/esm/six-stage-indicator.entry.js.map +1 -0
  528. package/dist/esm/six-switch.entry.js +8 -7
  529. package/dist/esm/six-switch.entry.js.map +1 -1
  530. package/dist/esm/six-tab-group.entry.js +35 -9
  531. package/dist/esm/six-tab-group.entry.js.map +1 -1
  532. package/dist/esm/six-tab-panel.entry.js +5 -4
  533. package/dist/esm/six-tab-panel.entry.js.map +1 -1
  534. package/dist/esm/six-tab.entry.js +6 -5
  535. package/dist/esm/six-tab.entry.js.map +1 -1
  536. package/dist/esm/six-tag.entry.js +7 -6
  537. package/dist/esm/six-tag.entry.js.map +1 -1
  538. package/dist/esm/six-textarea.entry.js +8 -7
  539. package/dist/esm/six-textarea.entry.js.map +1 -1
  540. package/dist/esm/six-tile.entry.js +8 -7
  541. package/dist/esm/six-tile.entry.js.map +1 -1
  542. package/dist/esm/six-timepicker.entry.js +8 -7
  543. package/dist/esm/six-timepicker.entry.js.map +1 -1
  544. package/dist/esm/six-tooltip.entry.js +6 -5
  545. package/dist/esm/six-tooltip.entry.js.map +1 -1
  546. package/dist/esm/{slot-41bc439a.js → slot-56531341.js} +2 -3
  547. package/dist/esm/slot-56531341.js.map +1 -0
  548. package/dist/esm/{types-07748c42.js → types-a07bb999.js} +3 -1
  549. package/dist/esm/types-a07bb999.js.map +1 -0
  550. package/dist/esm/ui-library.js +7 -5
  551. package/dist/esm/ui-library.js.map +1 -1
  552. package/dist/types/components/six-alert/six-alert.d.ts +13 -6
  553. package/dist/types/components/six-datepicker/six-datepicker.d.ts +1 -1
  554. package/dist/types/components/six-dialog/six-dialog.d.ts +1 -0
  555. package/dist/types/components/six-dropdown/six-dropdown.d.ts +28 -9
  556. package/dist/types/components/six-file-upload/six-file-upload.d.ts +2 -0
  557. package/dist/types/components/six-header/six-header.d.ts +2 -0
  558. package/dist/types/components/six-input/six-input.d.ts +4 -0
  559. package/dist/types/components/six-menu/six-menu.d.ts +4 -0
  560. package/dist/types/components/six-menu-item/six-menu-item.d.ts +7 -1
  561. package/dist/types/components/six-range/six-range.d.ts +2 -0
  562. package/dist/types/components/six-root/six-root.d.ts +0 -13
  563. package/dist/types/components/six-select/six-select.d.ts +27 -12
  564. package/dist/types/components/six-spinner/six-spinner.d.ts +1 -0
  565. package/dist/types/components/six-tab-group/six-tab-group.d.ts +4 -1
  566. package/dist/types/components.d.ts +80 -60
  567. package/dist/types/index.d.ts +1 -0
  568. package/dist/types/types.d.ts +1 -0
  569. package/dist/types/utils/alert.d.ts +10 -0
  570. package/dist/types/utils/date-util.d.ts +9 -1
  571. package/dist/types/utils/error-messages.d.ts +1 -0
  572. package/dist/types/utils/slot.d.ts +0 -1
  573. package/dist/ui-library/index.esm.js +1 -1
  574. package/dist/ui-library/index.esm.js.map +1 -1
  575. package/dist/ui-library/p-01853739.entry.js +2 -0
  576. package/dist/ui-library/p-01853739.entry.js.map +1 -0
  577. package/dist/ui-library/p-03900e17.entry.js +2 -0
  578. package/dist/ui-library/p-03900e17.entry.js.map +1 -0
  579. package/dist/ui-library/p-0a094514.entry.js +2 -0
  580. package/dist/ui-library/p-0a094514.entry.js.map +1 -0
  581. package/dist/ui-library/p-0cebf1d2.js +2 -0
  582. package/dist/ui-library/p-0cebf1d2.js.map +1 -0
  583. package/dist/ui-library/p-19a1d34c.entry.js +2 -0
  584. package/dist/ui-library/p-19a1d34c.entry.js.map +1 -0
  585. package/dist/ui-library/p-19ca3bd1.entry.js +2 -0
  586. package/dist/ui-library/p-19ca3bd1.entry.js.map +1 -0
  587. package/dist/ui-library/p-1d4cb6e9.entry.js +2 -0
  588. package/dist/ui-library/p-1d4cb6e9.entry.js.map +1 -0
  589. package/dist/ui-library/p-1f1224ae.entry.js +2 -0
  590. package/dist/ui-library/p-1f1224ae.entry.js.map +1 -0
  591. package/dist/ui-library/p-21002de1.entry.js +2 -0
  592. package/dist/ui-library/p-21002de1.entry.js.map +1 -0
  593. package/dist/ui-library/p-29b75db4.entry.js +2 -0
  594. package/dist/ui-library/p-29b75db4.entry.js.map +1 -0
  595. package/dist/ui-library/p-338205f4.entry.js +2 -0
  596. package/dist/ui-library/p-338205f4.entry.js.map +1 -0
  597. package/dist/ui-library/p-3827f9e0.entry.js +2 -0
  598. package/dist/ui-library/p-3827f9e0.entry.js.map +1 -0
  599. package/dist/ui-library/p-38a9a590.entry.js +2 -0
  600. package/dist/ui-library/p-38a9a590.entry.js.map +1 -0
  601. package/dist/ui-library/p-3e9324c8.entry.js +2 -0
  602. package/dist/ui-library/p-3e9324c8.entry.js.map +1 -0
  603. package/dist/ui-library/p-3eed2287.entry.js +2 -0
  604. package/dist/ui-library/p-3eed2287.entry.js.map +1 -0
  605. package/dist/ui-library/p-45960b56.entry.js +2 -0
  606. package/dist/ui-library/p-45960b56.entry.js.map +1 -0
  607. package/dist/ui-library/p-49e5d8bb.entry.js +2 -0
  608. package/dist/ui-library/p-49e5d8bb.entry.js.map +1 -0
  609. package/dist/ui-library/p-4af73ea9.entry.js +2 -0
  610. package/dist/ui-library/p-4af73ea9.entry.js.map +1 -0
  611. package/dist/ui-library/p-50dbe99f.entry.js +2 -0
  612. package/dist/ui-library/p-50dbe99f.entry.js.map +1 -0
  613. package/dist/ui-library/p-52c04973.entry.js +2 -0
  614. package/dist/ui-library/p-52c04973.entry.js.map +1 -0
  615. package/dist/ui-library/p-5f810571.entry.js +2 -0
  616. package/dist/ui-library/p-5f810571.entry.js.map +1 -0
  617. package/dist/ui-library/p-651293e7.js +2 -0
  618. package/dist/ui-library/p-651293e7.js.map +1 -0
  619. package/dist/ui-library/p-6c96b62e.entry.js +2 -0
  620. package/dist/ui-library/p-6c96b62e.entry.js.map +1 -0
  621. package/dist/ui-library/p-724d0458.entry.js +2 -0
  622. package/dist/ui-library/p-724d0458.entry.js.map +1 -0
  623. package/dist/ui-library/p-7562d5f5.entry.js +2 -0
  624. package/dist/ui-library/p-7562d5f5.entry.js.map +1 -0
  625. package/dist/ui-library/p-756f4acf.entry.js +2 -0
  626. package/dist/ui-library/p-756f4acf.entry.js.map +1 -0
  627. package/dist/ui-library/p-7a722a13.entry.js +2 -0
  628. package/dist/ui-library/p-7a722a13.entry.js.map +1 -0
  629. package/dist/ui-library/{p-d310a6dd.entry.js → p-7a9dcb16.entry.js} +2 -2
  630. package/dist/ui-library/p-7a9dcb16.entry.js.map +1 -0
  631. package/dist/ui-library/p-7c2255b5.entry.js +2 -0
  632. package/dist/ui-library/p-7c2255b5.entry.js.map +1 -0
  633. package/dist/ui-library/p-7fc0bf6b.entry.js +2 -0
  634. package/dist/ui-library/p-7fc0bf6b.entry.js.map +1 -0
  635. package/dist/ui-library/p-803915da.entry.js +2 -0
  636. package/dist/ui-library/p-803915da.entry.js.map +1 -0
  637. package/dist/ui-library/p-80476b0f.entry.js +2 -0
  638. package/dist/ui-library/p-80476b0f.entry.js.map +1 -0
  639. package/dist/ui-library/{p-0861899a.js → p-862d474e.js} +1 -1
  640. package/dist/ui-library/p-862d474e.js.map +1 -0
  641. package/dist/ui-library/p-8644f970.entry.js +2 -0
  642. package/dist/ui-library/p-8644f970.entry.js.map +1 -0
  643. package/dist/ui-library/p-8938e9bd.entry.js +2 -0
  644. package/dist/ui-library/p-8938e9bd.entry.js.map +1 -0
  645. package/dist/ui-library/p-8dff4dcb.entry.js +2 -0
  646. package/dist/ui-library/p-8dff4dcb.entry.js.map +1 -0
  647. package/dist/ui-library/p-8f307b55.entry.js +2 -0
  648. package/dist/ui-library/p-8f307b55.entry.js.map +1 -0
  649. package/dist/ui-library/p-93ab2efc.entry.js +2 -0
  650. package/dist/ui-library/p-93ab2efc.entry.js.map +1 -0
  651. package/dist/ui-library/p-9426a37b.entry.js +2 -0
  652. package/dist/ui-library/p-9426a37b.entry.js.map +1 -0
  653. package/dist/ui-library/p-a2a6aaea.entry.js +2 -0
  654. package/dist/ui-library/p-a2a6aaea.entry.js.map +1 -0
  655. package/dist/ui-library/p-a2b8aca7.entry.js +2 -0
  656. package/dist/ui-library/p-a2b8aca7.entry.js.map +1 -0
  657. package/dist/ui-library/{p-6907a7dc.js → p-aa99a393.js} +2 -2
  658. package/dist/ui-library/p-ab8f9503.entry.js +2 -0
  659. package/dist/ui-library/p-ab8f9503.entry.js.map +1 -0
  660. package/dist/ui-library/p-acc487ec.entry.js +2 -0
  661. package/dist/ui-library/p-acc487ec.entry.js.map +1 -0
  662. package/dist/ui-library/p-ba7424b3.entry.js +2 -0
  663. package/dist/ui-library/p-ba7424b3.entry.js.map +1 -0
  664. package/dist/ui-library/p-c948cf70.entry.js +2 -0
  665. package/dist/ui-library/p-c948cf70.entry.js.map +1 -0
  666. package/dist/ui-library/p-d55db23a.entry.js +2 -0
  667. package/dist/ui-library/p-d55db23a.entry.js.map +1 -0
  668. package/dist/ui-library/p-d717a2f2.entry.js +2 -0
  669. package/dist/ui-library/p-d717a2f2.entry.js.map +1 -0
  670. package/dist/ui-library/p-d7739200.entry.js +2 -0
  671. package/dist/ui-library/p-d7739200.entry.js.map +1 -0
  672. package/dist/ui-library/p-e080d5b6.js +2 -0
  673. package/dist/ui-library/p-e080d5b6.js.map +1 -0
  674. package/dist/ui-library/p-e1255160.js +2 -0
  675. package/dist/ui-library/p-e1255160.js.map +1 -0
  676. package/dist/ui-library/p-e3766acb.entry.js +2 -0
  677. package/dist/ui-library/p-e3766acb.entry.js.map +1 -0
  678. package/dist/ui-library/p-e43e5e45.entry.js +2 -0
  679. package/dist/ui-library/p-e43e5e45.entry.js.map +1 -0
  680. package/dist/ui-library/p-e798314b.entry.js +2 -0
  681. package/dist/ui-library/p-e798314b.entry.js.map +1 -0
  682. package/dist/ui-library/p-f136a6b2.js +2 -0
  683. package/dist/ui-library/p-f136a6b2.js.map +1 -0
  684. package/dist/ui-library/p-f1bb5648.entry.js +2 -0
  685. package/dist/ui-library/p-f1bb5648.entry.js.map +1 -0
  686. package/dist/ui-library/p-f8572492.entry.js +2 -0
  687. package/dist/ui-library/p-f8572492.entry.js.map +1 -0
  688. package/dist/ui-library/p-f93d8a4e.js +3 -0
  689. package/dist/ui-library/p-f93d8a4e.js.map +1 -0
  690. package/dist/ui-library/ui-library.css +1 -10
  691. package/dist/ui-library/ui-library.esm.js +1 -1
  692. package/dist/ui-library/ui-library.esm.js.map +1 -1
  693. package/package.json +10 -13
  694. package/dist/cjs/index-3baddcdc.js.map +0 -1
  695. package/dist/cjs/modal-3ce015be.js.map +0 -1
  696. package/dist/cjs/popup-40a9adbb.js.map +0 -1
  697. package/dist/cjs/set-attributes_2.cjs.entry.js +0 -73
  698. package/dist/cjs/set-attributes_2.cjs.entry.js.map +0 -1
  699. package/dist/cjs/six-checkbox.cjs.entry.js +0 -127
  700. package/dist/cjs/six-checkbox.cjs.entry.js.map +0 -1
  701. package/dist/cjs/six-menu-item.cjs.entry.js +0 -63
  702. package/dist/cjs/six-menu-item.cjs.entry.js.map +0 -1
  703. package/dist/cjs/slot-9821749e.js.map +0 -1
  704. package/dist/cjs/types-0a6d66f6.js.map +0 -1
  705. package/dist/collection/utils/support.js +0 -16
  706. package/dist/collection/utils/support.js.map +0 -1
  707. package/dist/collection/wrappers/set-attributes/set-attributes.js +0 -74
  708. package/dist/collection/wrappers/set-attributes/set-attributes.js.map +0 -1
  709. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js +0 -16
  710. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js.map +0 -1
  711. package/dist/components/set-attributes.d.ts +0 -11
  712. package/dist/components/set-attributes.js +0 -8
  713. package/dist/components/set-attributes.js.map +0 -1
  714. package/dist/components/set-attributes2.js +0 -73
  715. package/dist/components/set-attributes2.js.map +0 -1
  716. package/dist/components/six-tag2.js +0 -102
  717. package/dist/components/six-tag2.js.map +0 -1
  718. package/dist/esm/index-17d8173e.js.map +0 -1
  719. package/dist/esm/modal-96526245.js.map +0 -1
  720. package/dist/esm/popup-e8049817.js.map +0 -1
  721. package/dist/esm/set-attributes_2.entry.js +0 -68
  722. package/dist/esm/set-attributes_2.entry.js.map +0 -1
  723. package/dist/esm/six-checkbox.entry.js +0 -123
  724. package/dist/esm/six-checkbox.entry.js.map +0 -1
  725. package/dist/esm/six-menu-item.entry.js +0 -59
  726. package/dist/esm/six-menu-item.entry.js.map +0 -1
  727. package/dist/esm/slot-41bc439a.js.map +0 -1
  728. package/dist/esm/types-07748c42.js.map +0 -1
  729. package/dist/types/utils/support.d.ts +0 -1
  730. package/dist/types/wrappers/set-attributes/set-attributes.d.ts +0 -9
  731. package/dist/ui-library/p-0861899a.js.map +0 -1
  732. package/dist/ui-library/p-0a81b42c.entry.js +0 -2
  733. package/dist/ui-library/p-0a81b42c.entry.js.map +0 -1
  734. package/dist/ui-library/p-0beec94f.js +0 -3
  735. package/dist/ui-library/p-0beec94f.js.map +0 -1
  736. package/dist/ui-library/p-0e7332db.entry.js +0 -2
  737. package/dist/ui-library/p-0e7332db.entry.js.map +0 -1
  738. package/dist/ui-library/p-178f5782.entry.js +0 -2
  739. package/dist/ui-library/p-178f5782.entry.js.map +0 -1
  740. package/dist/ui-library/p-19a61686.entry.js +0 -2
  741. package/dist/ui-library/p-19a61686.entry.js.map +0 -1
  742. package/dist/ui-library/p-1d0c5929.entry.js +0 -2
  743. package/dist/ui-library/p-1d0c5929.entry.js.map +0 -1
  744. package/dist/ui-library/p-23c02c98.entry.js +0 -2
  745. package/dist/ui-library/p-23c02c98.entry.js.map +0 -1
  746. package/dist/ui-library/p-2eed9d8d.entry.js +0 -2
  747. package/dist/ui-library/p-2eed9d8d.entry.js.map +0 -1
  748. package/dist/ui-library/p-3187bc23.entry.js +0 -2
  749. package/dist/ui-library/p-3187bc23.entry.js.map +0 -1
  750. package/dist/ui-library/p-32e1a5ab.entry.js +0 -2
  751. package/dist/ui-library/p-32e1a5ab.entry.js.map +0 -1
  752. package/dist/ui-library/p-32fed3c7.entry.js +0 -2
  753. package/dist/ui-library/p-32fed3c7.entry.js.map +0 -1
  754. package/dist/ui-library/p-3d54ecf2.entry.js +0 -2
  755. package/dist/ui-library/p-3d54ecf2.entry.js.map +0 -1
  756. package/dist/ui-library/p-4229f7e8.entry.js +0 -2
  757. package/dist/ui-library/p-4229f7e8.entry.js.map +0 -1
  758. package/dist/ui-library/p-479d8087.entry.js +0 -2
  759. package/dist/ui-library/p-479d8087.entry.js.map +0 -1
  760. package/dist/ui-library/p-49aa8d1e.entry.js +0 -2
  761. package/dist/ui-library/p-49aa8d1e.entry.js.map +0 -1
  762. package/dist/ui-library/p-58661675.entry.js +0 -2
  763. package/dist/ui-library/p-58661675.entry.js.map +0 -1
  764. package/dist/ui-library/p-5d43ea07.entry.js +0 -2
  765. package/dist/ui-library/p-5d43ea07.entry.js.map +0 -1
  766. package/dist/ui-library/p-6aa2929a.entry.js +0 -2
  767. package/dist/ui-library/p-6aa2929a.entry.js.map +0 -1
  768. package/dist/ui-library/p-7432d409.entry.js +0 -2
  769. package/dist/ui-library/p-7432d409.entry.js.map +0 -1
  770. package/dist/ui-library/p-74a714c0.entry.js +0 -2
  771. package/dist/ui-library/p-74a714c0.entry.js.map +0 -1
  772. package/dist/ui-library/p-76825395.entry.js +0 -2
  773. package/dist/ui-library/p-76825395.entry.js.map +0 -1
  774. package/dist/ui-library/p-816f857d.entry.js +0 -2
  775. package/dist/ui-library/p-816f857d.entry.js.map +0 -1
  776. package/dist/ui-library/p-882fbf6f.entry.js +0 -2
  777. package/dist/ui-library/p-882fbf6f.entry.js.map +0 -1
  778. package/dist/ui-library/p-88fd4973.entry.js +0 -2
  779. package/dist/ui-library/p-88fd4973.entry.js.map +0 -1
  780. package/dist/ui-library/p-8b750c9e.entry.js +0 -2
  781. package/dist/ui-library/p-8b750c9e.entry.js.map +0 -1
  782. package/dist/ui-library/p-911eb578.entry.js +0 -2
  783. package/dist/ui-library/p-911eb578.entry.js.map +0 -1
  784. package/dist/ui-library/p-93fcda4a.entry.js +0 -2
  785. package/dist/ui-library/p-93fcda4a.entry.js.map +0 -1
  786. package/dist/ui-library/p-981b3228.entry.js +0 -2
  787. package/dist/ui-library/p-981b3228.entry.js.map +0 -1
  788. package/dist/ui-library/p-998de05d.js +0 -2
  789. package/dist/ui-library/p-998de05d.js.map +0 -1
  790. package/dist/ui-library/p-9b1ff147.entry.js +0 -2
  791. package/dist/ui-library/p-9b1ff147.entry.js.map +0 -1
  792. package/dist/ui-library/p-a4e4620c.entry.js +0 -2
  793. package/dist/ui-library/p-a4e4620c.entry.js.map +0 -1
  794. package/dist/ui-library/p-ada23fe3.entry.js +0 -2
  795. package/dist/ui-library/p-ada23fe3.entry.js.map +0 -1
  796. package/dist/ui-library/p-b5ac1219.entry.js +0 -2
  797. package/dist/ui-library/p-b5ac1219.entry.js.map +0 -1
  798. package/dist/ui-library/p-ba247565.entry.js +0 -2
  799. package/dist/ui-library/p-ba247565.entry.js.map +0 -1
  800. package/dist/ui-library/p-bdb79948.entry.js +0 -2
  801. package/dist/ui-library/p-bdb79948.entry.js.map +0 -1
  802. package/dist/ui-library/p-bee65dd9.entry.js +0 -2
  803. package/dist/ui-library/p-bee65dd9.entry.js.map +0 -1
  804. package/dist/ui-library/p-c021a9c9.entry.js +0 -2
  805. package/dist/ui-library/p-c021a9c9.entry.js.map +0 -1
  806. package/dist/ui-library/p-c07b1240.entry.js +0 -2
  807. package/dist/ui-library/p-c07b1240.entry.js.map +0 -1
  808. package/dist/ui-library/p-c12a94ce.entry.js +0 -2
  809. package/dist/ui-library/p-c12a94ce.entry.js.map +0 -1
  810. package/dist/ui-library/p-c1675a45.entry.js +0 -2
  811. package/dist/ui-library/p-c1675a45.entry.js.map +0 -1
  812. package/dist/ui-library/p-c2df8c27.entry.js +0 -2
  813. package/dist/ui-library/p-c2df8c27.entry.js.map +0 -1
  814. package/dist/ui-library/p-c86aa5b3.entry.js +0 -2
  815. package/dist/ui-library/p-c86aa5b3.entry.js.map +0 -1
  816. package/dist/ui-library/p-cd35b3c6.entry.js +0 -2
  817. package/dist/ui-library/p-cd35b3c6.entry.js.map +0 -1
  818. package/dist/ui-library/p-d2cf4280.entry.js +0 -2
  819. package/dist/ui-library/p-d2cf4280.entry.js.map +0 -1
  820. package/dist/ui-library/p-d310a6dd.entry.js.map +0 -1
  821. package/dist/ui-library/p-d6838141.entry.js +0 -2
  822. package/dist/ui-library/p-d6838141.entry.js.map +0 -1
  823. package/dist/ui-library/p-dc908cbb.entry.js +0 -2
  824. package/dist/ui-library/p-dc908cbb.entry.js.map +0 -1
  825. package/dist/ui-library/p-dfb6bff6.entry.js +0 -2
  826. package/dist/ui-library/p-dfb6bff6.entry.js.map +0 -1
  827. package/dist/ui-library/p-ee71e3a3.entry.js +0 -2
  828. package/dist/ui-library/p-ee71e3a3.entry.js.map +0 -1
  829. package/dist/ui-library/p-ef317d69.entry.js +0 -2
  830. package/dist/ui-library/p-ef317d69.entry.js.map +0 -1
  831. package/dist/ui-library/p-f2ef23c4.js +0 -2
  832. package/dist/ui-library/p-f2ef23c4.js.map +0 -1
  833. package/dist/ui-library/p-f385f1c2.entry.js +0 -2
  834. package/dist/ui-library/p-f385f1c2.entry.js.map +0 -1
  835. package/dist/ui-library/p-f73a6bdc.entry.js +0 -2
  836. package/dist/ui-library/p-f73a6bdc.entry.js.map +0 -1
  837. package/dist/ui-library/p-faa04bb5.js +0 -2
  838. package/dist/ui-library/p-faa04bb5.js.map +0 -1
  839. package/dist/ui-library/p-fcd57e0a.entry.js +0 -2
  840. package/dist/ui-library/p-fcd57e0a.entry.js.map +0 -1
  841. /package/dist/ui-library/{p-6907a7dc.js.map → p-aa99a393.js.map} +0 -0
@@ -7,7 +7,7 @@ import { h } from "@stencil/core";
7
7
  export class SixFileUpload {
8
8
  constructor() {
9
9
  this.handleFiles = (files) => {
10
- if (this.disabled || files.length === 0) {
10
+ if (this.disabled || files.length === 0 || this.uploading) {
11
11
  return;
12
12
  }
13
13
  if (!this.multiple && files.length > 1) {
@@ -48,6 +48,7 @@ export class SixFileUpload {
48
48
  this.accept = undefined;
49
49
  this.multiple = false;
50
50
  this.maxFileSize = undefined;
51
+ this.uploading = false;
51
52
  }
52
53
  dragenterHandler() {
53
54
  if (!this.disabled) {
@@ -94,17 +95,17 @@ export class SixFileUpload {
94
95
  }
95
96
  render() {
96
97
  const Container = this.compact ? 'six-button' : 'six-card';
97
- return (h("div", { class: {
98
+ return (h("div", { key: 'e33dc9fef36d44e6a6f660ac82fe692786488a04', class: {
98
99
  'six-file-upload': true,
99
- 'six-file-upload--disabled': this.disabled,
100
- } }, h(Container, { class: {
100
+ 'six-file-upload--disabled': this.disabled || this.uploading,
101
+ } }, h(Container, { key: '6976a3c72dc21efbd6b72372ec13cfc246ccfc9e', disabled: this.disabled || this.uploading, class: {
101
102
  'six-file-upload__container--compact': this.compact,
102
103
  'six-file-upload__container--full': !this.compact,
103
- } }, this.compact && (h("span", { slot: "prefix" }, h("six-icon", { class: "six-file-upload__label-icon" }, "arrow_circle_up"))), h("div", { class: {
104
+ } }, this.compact && !this.uploading && (h("span", { slot: "prefix" }, h("six-icon", { class: "six-file-upload__label-icon" }, "arrow_circle_up"))), h("div", { key: 'ba25e2bdb0d7c8d919272dd4efb1667addc4d3c5', class: {
104
105
  'six-file-upload__drop-zone': true,
105
106
  'six-file-upload__drop-zone--hover': this.isOver,
106
107
  'six-file-upload__drop-zone--compact': this.compact,
107
- } }, h("span", null, this.renderLabel()), h("input", { class: "six-file-upload__input", type: "file", name: "resume", disabled: this.disabled, accept: this.accept, multiple: this.multiple, onChange: this.onChange, ref: (el) => (this.fileInput = el) })))));
108
+ } }, this.uploading ? (h("span", { class: "six-file-upload__drop-zone__spinner-container" }, h("six-spinner", null), " Uploading...")) : (h("div", null, h("span", null, this.renderLabel()), h("input", { class: "six-file-upload__input", type: "file", name: "resume", disabled: this.disabled, accept: this.accept, multiple: this.multiple, onChange: this.onChange, ref: (el) => (this.fileInput = el) })))))));
108
109
  }
109
110
  static get is() { return "six-file-upload"; }
110
111
  static get encapsulation() { return "scoped"; }
@@ -224,6 +225,24 @@ export class SixFileUpload {
224
225
  },
225
226
  "attribute": "max-file-size",
226
227
  "reflect": false
228
+ },
229
+ "uploading": {
230
+ "type": "boolean",
231
+ "mutable": false,
232
+ "complexType": {
233
+ "original": "boolean",
234
+ "resolved": "boolean",
235
+ "references": {}
236
+ },
237
+ "required": false,
238
+ "optional": false,
239
+ "docs": {
240
+ "tags": [],
241
+ "text": "Set to true to draw the control in a loading state."
242
+ },
243
+ "attribute": "uploading",
244
+ "reflect": true,
245
+ "defaultValue": "false"
227
246
  }
228
247
  };
229
248
  }
@@ -1 +1 @@
1
- {"version":3,"file":"six-file-upload.js","sourceRoot":"","sources":["../../../src/components/six-file-upload/six-file-upload.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Listen, Prop, State } from '@stencil/core';\n\ninterface ISingleFile {\n file: File;\n}\n\ninterface IMultipleFiles {\n files: FileList;\n}\n\nexport type SixFileUploadSuccessPayload = ISingleFile | IMultipleFiles;\n\nexport interface SixFileUploadFailurePayload {\n reason: string;\n}\n\n/**\n * @since 2.0.0\n * @status experimental\n *\n */\n@Component({\n tag: 'six-file-upload',\n styleUrl: 'six-file-upload.scss',\n scoped: true,\n shadow: false,\n})\nexport class SixFileUpload {\n @Element() readonly host!: HTMLSixFileUploadElement;\n\n private fileInput?: HTMLInputElement;\n\n @State() isOver = false;\n\n /** Set to true if file control should be small. */\n @Prop() readonly compact: boolean = false;\n\n /** Label of the drop area. */\n @Prop() readonly label?: string;\n\n /** Set when button is disabled. */\n @Prop() readonly disabled = false;\n\n /** Accepted MIME-Types. */\n @Prop() readonly accept?: string;\n\n /** More than one file allowed. */\n @Prop() readonly multiple = false;\n\n /** Allowed max file size in bytes. */\n @Prop() readonly maxFileSize?: number;\n\n /** Triggers when a file is added. */\n @Event({ eventName: 'six-file-upload-success' }) success!: EventEmitter<SixFileUploadSuccessPayload>;\n\n /** Triggers when an uploaded file doesn't match MIME type or max file size. */\n @Event({ eventName: 'six-file-upload-failure' }) failure!: EventEmitter<SixFileUploadFailurePayload>;\n\n @Listen('dragenter', { capture: false })\n dragenterHandler() {\n if (!this.disabled) {\n this.isOver = true;\n }\n }\n\n @Listen('dragover', { capture: false })\n dragoverHandler() {\n if (!this.disabled) {\n this.isOver = true;\n }\n }\n\n @Listen('dragleave', { capture: false })\n dragleaveHandler() {\n if (!this.disabled) {\n this.isOver = false;\n }\n }\n\n @Listen('drop', { capture: false })\n dropHandler({ dataTransfer }: DragEvent) {\n if (!this.disabled) {\n this.isOver = false;\n if (dataTransfer != null) {\n this.handleFiles(dataTransfer.files);\n }\n }\n }\n\n private handleFiles = (files: FileList) => {\n if (this.disabled || files.length === 0) {\n return;\n }\n\n if (!this.multiple && files.length > 1) {\n return this.failure.emit({ reason: 'Only one file is allowed.' });\n }\n\n for (const file of files) {\n if (file == null) {\n return;\n }\n\n let acceptedTypesList: string[] = [];\n if (this.accept != null) {\n acceptedTypesList = this.accept.replace(/\\s/g, '').split(',');\n }\n\n if (acceptedTypesList.length > 0 && acceptedTypesList.indexOf(file.type) === -1) {\n const reason = files.length > 1 ? 'One or more files have invalid MIME type.' : 'File has invalid MIME type.';\n return this.failure.emit({ reason });\n }\n\n if (this.maxFileSize != null && file.size > this.maxFileSize) {\n const reason = files.length > 1 ? 'One or more files are too big' : 'File is too big.';\n return this.failure.emit({ reason });\n }\n }\n\n const eventPayload: SixFileUploadSuccessPayload = this.multiple ? { files } : { file: files[0] };\n this.success.emit(eventPayload);\n };\n\n componentDidLoad() {\n ['dragenter', 'dragover', 'dragleave', 'drop'].forEach((eventName) => {\n this.host.addEventListener(eventName, this.preventDefaults, false);\n document.body.addEventListener(eventName, this.preventDefaults, false);\n });\n }\n\n disconnectedCallback() {\n ['dragenter', 'dragover', 'dragleave', 'drop'].forEach((eventName) => {\n this.host.removeEventListener(eventName, this.preventDefaults, false);\n document.body.removeEventListener(eventName, this.preventDefaults, false);\n });\n }\n\n private preventDefaults(e: Event) {\n e.preventDefault();\n e.stopPropagation();\n }\n\n private onChange = () => {\n if (this.fileInput?.files != null) {\n const files = this.fileInput.files;\n this.handleFiles(files);\n this.fileInput.value = '';\n }\n };\n\n private renderLabel() {\n return (\n this.label ??\n (this.compact ? (\n 'Upload'\n ) : (\n <span>\n Drop files to upload, or <span class=\"six-file-upload__label--highlighted\">browse</span>\n </span>\n ))\n );\n }\n\n render() {\n const Container = this.compact ? 'six-button' : 'six-card';\n\n return (\n <div\n class={{\n 'six-file-upload': true,\n 'six-file-upload--disabled': this.disabled,\n }}\n >\n <Container\n class={{\n 'six-file-upload__container--compact': this.compact,\n 'six-file-upload__container--full': !this.compact,\n }}\n >\n {this.compact && (\n <span slot=\"prefix\">\n <six-icon class=\"six-file-upload__label-icon\">arrow_circle_up</six-icon>\n </span>\n )}\n <div\n class={{\n 'six-file-upload__drop-zone': true,\n 'six-file-upload__drop-zone--hover': this.isOver,\n 'six-file-upload__drop-zone--compact': this.compact,\n }}\n >\n <span>{this.renderLabel()}</span>\n <input\n class=\"six-file-upload__input\"\n type=\"file\"\n name=\"resume\"\n disabled={this.disabled}\n accept={this.accept}\n multiple={this.multiple}\n onChange={this.onChange}\n ref={(el) => (this.fileInput = el)}\n />\n </div>\n </Container>\n </div>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"six-file-upload.js","sourceRoot":"","sources":["../../../src/components/six-file-upload/six-file-upload.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Listen, Prop, State } from '@stencil/core';\ninterface ISingleFile {\n file: File;\n}\n\ninterface IMultipleFiles {\n files: FileList;\n}\n\nexport type SixFileUploadSuccessPayload = ISingleFile | IMultipleFiles;\n\nexport interface SixFileUploadFailurePayload {\n reason: string;\n}\n\n/**\n * @since 2.0.0\n * @status experimental\n *\n */\n@Component({\n tag: 'six-file-upload',\n styleUrl: 'six-file-upload.scss',\n scoped: true,\n shadow: false,\n})\nexport class SixFileUpload {\n @Element() readonly host!: HTMLSixFileUploadElement;\n\n private fileInput?: HTMLInputElement;\n\n @State() isOver = false;\n\n /** Set to true if file control should be small. */\n @Prop() readonly compact: boolean = false;\n\n /** Label of the drop area. */\n @Prop() readonly label?: string;\n\n /** Set when button is disabled. */\n @Prop() readonly disabled = false;\n\n /** Accepted MIME-Types. */\n @Prop() readonly accept?: string;\n\n /** More than one file allowed. */\n @Prop() readonly multiple = false;\n\n /** Allowed max file size in bytes. */\n @Prop() readonly maxFileSize?: number;\n\n /** Set to true to draw the control in a loading state. */\n @Prop({ reflect: true }) uploading = false;\n\n /** Triggers when a file is added. */\n @Event({ eventName: 'six-file-upload-success' }) success!: EventEmitter<SixFileUploadSuccessPayload>;\n\n /** Triggers when an uploaded file doesn't match MIME type or max file size. */\n @Event({ eventName: 'six-file-upload-failure' }) failure!: EventEmitter<SixFileUploadFailurePayload>;\n\n @Listen('dragenter', { capture: false })\n dragenterHandler() {\n if (!this.disabled) {\n this.isOver = true;\n }\n }\n\n @Listen('dragover', { capture: false })\n dragoverHandler() {\n if (!this.disabled) {\n this.isOver = true;\n }\n }\n\n @Listen('dragleave', { capture: false })\n dragleaveHandler() {\n if (!this.disabled) {\n this.isOver = false;\n }\n }\n\n @Listen('drop', { capture: false })\n dropHandler({ dataTransfer }: DragEvent) {\n if (!this.disabled) {\n this.isOver = false;\n if (dataTransfer != null) {\n this.handleFiles(dataTransfer.files);\n }\n }\n }\n\n private handleFiles = (files: FileList) => {\n if (this.disabled || files.length === 0 || this.uploading) {\n return;\n }\n\n if (!this.multiple && files.length > 1) {\n return this.failure.emit({ reason: 'Only one file is allowed.' });\n }\n\n for (const file of files) {\n if (file == null) {\n return;\n }\n\n let acceptedTypesList: string[] = [];\n if (this.accept != null) {\n acceptedTypesList = this.accept.replace(/\\s/g, '').split(',');\n }\n\n if (acceptedTypesList.length > 0 && acceptedTypesList.indexOf(file.type) === -1) {\n const reason = files.length > 1 ? 'One or more files have invalid MIME type.' : 'File has invalid MIME type.';\n return this.failure.emit({ reason });\n }\n\n if (this.maxFileSize != null && file.size > this.maxFileSize) {\n const reason = files.length > 1 ? 'One or more files are too big' : 'File is too big.';\n return this.failure.emit({ reason });\n }\n }\n\n const eventPayload: SixFileUploadSuccessPayload = this.multiple ? { files } : { file: files[0] };\n this.success.emit(eventPayload);\n };\n\n componentDidLoad() {\n ['dragenter', 'dragover', 'dragleave', 'drop'].forEach((eventName) => {\n this.host.addEventListener(eventName, this.preventDefaults, false);\n document.body.addEventListener(eventName, this.preventDefaults, false);\n });\n }\n\n disconnectedCallback() {\n ['dragenter', 'dragover', 'dragleave', 'drop'].forEach((eventName) => {\n this.host.removeEventListener(eventName, this.preventDefaults, false);\n document.body.removeEventListener(eventName, this.preventDefaults, false);\n });\n }\n\n private preventDefaults(e: Event) {\n e.preventDefault();\n e.stopPropagation();\n }\n\n private onChange = () => {\n if (this.fileInput?.files != null) {\n const files = this.fileInput.files;\n this.handleFiles(files);\n this.fileInput.value = '';\n }\n };\n\n private renderLabel() {\n return (\n this.label ??\n (this.compact ? (\n 'Upload'\n ) : (\n <span>\n Drop files to upload, or <span class=\"six-file-upload__label--highlighted\">browse</span>\n </span>\n ))\n );\n }\n\n render() {\n const Container = this.compact ? 'six-button' : 'six-card';\n\n return (\n <div\n class={{\n 'six-file-upload': true,\n 'six-file-upload--disabled': this.disabled || this.uploading,\n }}\n >\n <Container\n disabled={this.disabled || this.uploading}\n class={{\n 'six-file-upload__container--compact': this.compact,\n 'six-file-upload__container--full': !this.compact,\n }}\n >\n {this.compact && !this.uploading && (\n <span slot=\"prefix\">\n <six-icon class=\"six-file-upload__label-icon\">arrow_circle_up</six-icon>\n </span>\n )}\n <div\n class={{\n 'six-file-upload__drop-zone': true,\n 'six-file-upload__drop-zone--hover': this.isOver,\n 'six-file-upload__drop-zone--compact': this.compact,\n }}\n >\n {this.uploading ? (\n <span class=\"six-file-upload__drop-zone__spinner-container\">\n <six-spinner /> Uploading...\n </span>\n ) : (\n <div>\n <span>{this.renderLabel()}</span>\n <input\n class=\"six-file-upload__input\"\n type=\"file\"\n name=\"resume\"\n disabled={this.disabled}\n accept={this.accept}\n multiple={this.multiple}\n onChange={this.onChange}\n ref={(el) => (this.fileInput = el)}\n />\n </div>\n )}\n </div>\n </Container>\n </div>\n );\n }\n}\n"]}
@@ -14,15 +14,17 @@ describe('six-file-upload', () => {
14
14
  <div class="six-file-upload">
15
15
  <six-card class="six-file-upload__container--full">
16
16
  <div class="six-file-upload__drop-zone">
17
- <span>
17
+ <div>
18
18
  <span>
19
- Drop files to upload, or
20
- <span class="six-file-upload__label--highlighted">
21
- browse
19
+ <span>
20
+ Drop files to upload, or
21
+ <span class="six-file-upload__label--highlighted">
22
+ browse
23
+ </span>
22
24
  </span>
23
25
  </span>
24
- </span>
25
- <input class="six-file-upload__input" name="resume" type="file">
26
+ <input class="six-file-upload__input" name="resume" type="file">
27
+ </div>
26
28
  </div>
27
29
  </six-card>
28
30
  </div>
@@ -39,10 +41,12 @@ describe('six-file-upload', () => {
39
41
  <div class="six-file-upload">
40
42
  <six-card class="six-file-upload__container--full">
41
43
  <div class="six-file-upload__drop-zone">
42
- <span>
43
- some custom label
44
- </span>
45
- <input class="six-file-upload__input" name="resume" type="file">
44
+ <div>
45
+ <span>
46
+ some custom label
47
+ </span>
48
+ <input class="six-file-upload__input" name="resume" type="file">
49
+ </div>
46
50
  </div>
47
51
  </six-card>
48
52
  </div>
@@ -57,17 +61,19 @@ describe('six-file-upload', () => {
57
61
  expect(page.root).toEqualHtml(`
58
62
  <six-file-upload disabled="">
59
63
  <div class="six-file-upload six-file-upload--disabled">
60
- <six-card class="six-file-upload__container--full">
64
+ <six-card class="six-file-upload__container--full" disabled="">
61
65
  <div class="six-file-upload__drop-zone">
62
- <span>
66
+ <div>
63
67
  <span>
64
- Drop files to upload, or
65
- <span class="six-file-upload__label--highlighted">
66
- browse
68
+ <span>
69
+ Drop files to upload, or
70
+ <span class="six-file-upload__label--highlighted">
71
+ browse
72
+ </span>
67
73
  </span>
68
74
  </span>
69
- </span>
70
- <input class="six-file-upload__input" disabled="" name="resume" type="file">
75
+ <input class="six-file-upload__input" disabled="" name="resume" type="file">
76
+ </div>
71
77
  </div>
72
78
  </six-card>
73
79
  </div>
@@ -89,15 +95,64 @@ describe('six-file-upload', () => {
89
95
  </six-icon>
90
96
  </span>
91
97
  <div class="six-file-upload__drop-zone six-file-upload__drop-zone--compact">
92
- <span>
93
- Upload
94
- </span>
95
- <input class="six-file-upload__input" name="resume" type="file">
98
+ <div>
99
+ <span>
100
+ Upload
101
+ </span>
102
+ <input class="six-file-upload__input" name="resume" type="file">
103
+ </div>
96
104
  </div>
97
105
  </six-button>
98
106
  </div>
99
107
  </six-file-upload>
100
108
  `);
101
109
  });
110
+ it('renders compact and disabled', async () => {
111
+ const page = await newSpecPage({
112
+ components: [SixFileUpload],
113
+ html: `<six-file-upload compact disabled></six-file-upload>`,
114
+ });
115
+ expect(page.root).toEqualHtml(`
116
+ <six-file-upload compact="" disabled="">
117
+ <div class="six-file-upload six-file-upload--disabled">
118
+ <six-button class="six-file-upload__container--compact" disabled="">
119
+ <span slot="prefix">
120
+ <six-icon class="six-file-upload__label-icon">
121
+ arrow_circle_up
122
+ </six-icon>
123
+ </span>
124
+ <div class="six-file-upload__drop-zone six-file-upload__drop-zone--compact">
125
+ <div>
126
+ <span>
127
+ Upload
128
+ </span>
129
+ <input class="six-file-upload__input" disabled="" name="resume" type="file">
130
+ </div>
131
+ </div>
132
+ </six-button>
133
+ </div>
134
+ </six-file-upload>
135
+ `);
136
+ });
137
+ it('renders uploading', async () => {
138
+ const page = await newSpecPage({
139
+ components: [SixFileUpload],
140
+ html: `<six-file-upload uploading></six-file-upload>`,
141
+ });
142
+ expect(page.root).toEqualHtml(`
143
+ <six-file-upload uploading="">
144
+ <div class="six-file-upload six-file-upload--disabled">
145
+ <six-card class="six-file-upload__container--full" disabled="">
146
+ <div class="six-file-upload__drop-zone">
147
+ <span class="six-file-upload__drop-zone__spinner-container">
148
+ <six-spinner></six-spinner>
149
+ Uploading...
150
+ </span>
151
+ </div>
152
+ </six-card>
153
+ </div>
154
+ </six-file-upload>
155
+ `);
156
+ });
102
157
  });
103
158
  //# sourceMappingURL=six-file-upload.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"six-file-upload.spec.js","sourceRoot":"","sources":["../../../../src/components/six-file-upload/test/six-file-upload.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;QAC/C,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,aAAa,CAAC;YAC3B,IAAI,EAAE,qCAAqC;SAC5C,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;KAkB7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;QACpC,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,aAAa,CAAC;YAC3B,IAAI,EAAE,+DAA+D;SACtE,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;;;;;KAa7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;QAChC,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,aAAa,CAAC;YAC3B,IAAI,EAAE,8CAA8C;SACrD,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;KAkB7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE;QAC/B,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,aAAa,CAAC;YAC3B,IAAI,EAAE,6CAA6C;SACpD,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;KAkB7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { SixFileUpload } from '../six-file-upload';\nimport { newSpecPage } from '@stencil/core/testing';\n\ndescribe('six-file-upload', () => {\n it('should create a component instance', () => {\n expect(new SixFileUpload()).toBeInstanceOf(SixFileUpload);\n });\n\n it('renders minimal six-file-upload', async () => {\n const page = await newSpecPage({\n components: [SixFileUpload],\n html: `<six-file-upload></six-file-upload>`,\n });\n\n expect(page.root).toEqualHtml(`\n <six-file-upload>\n <div class=\"six-file-upload\">\n <six-card class=\"six-file-upload__container--full\">\n <div class=\"six-file-upload__drop-zone\">\n <span>\n <span>\n Drop files to upload, or\n <span class=\"six-file-upload__label--highlighted\">\n browse\n </span>\n </span>\n </span>\n <input class=\"six-file-upload__input\" name=\"resume\" type=\"file\">\n </div>\n </six-card>\n </div>\n </six-file-upload>\n `);\n });\n\n it('renders custom label', async () => {\n const page = await newSpecPage({\n components: [SixFileUpload],\n html: `<six-file-upload label=\"some custom label\"></six-file-upload>`,\n });\n\n expect(page.root).toEqualHtml(`\n <six-file-upload label=\"some custom label\">\n <div class=\"six-file-upload\">\n <six-card class=\"six-file-upload__container--full\">\n <div class=\"six-file-upload__drop-zone\">\n <span>\n some custom label\n </span>\n <input class=\"six-file-upload__input\" name=\"resume\" type=\"file\">\n </div>\n </six-card>\n </div>\n </six-file-upload>\n `);\n });\n\n it('renders disabled', async () => {\n const page = await newSpecPage({\n components: [SixFileUpload],\n html: `<six-file-upload disabled></six-file-upload>`,\n });\n\n expect(page.root).toEqualHtml(`\n <six-file-upload disabled=\"\">\n <div class=\"six-file-upload six-file-upload--disabled\">\n <six-card class=\"six-file-upload__container--full\">\n <div class=\"six-file-upload__drop-zone\">\n <span>\n <span>\n Drop files to upload, or\n <span class=\"six-file-upload__label--highlighted\">\n browse\n </span>\n </span>\n </span>\n <input class=\"six-file-upload__input\" disabled=\"\" name=\"resume\" type=\"file\">\n </div>\n </six-card>\n </div>\n </six-file-upload>\n `);\n });\n\n it('renders compact', async () => {\n const page = await newSpecPage({\n components: [SixFileUpload],\n html: `<six-file-upload compact></six-file-upload>`,\n });\n\n expect(page.root).toEqualHtml(`\n <six-file-upload compact=\"\">\n <div class=\"six-file-upload\">\n <six-button class=\"six-file-upload__container--compact\">\n <span slot=\"prefix\">\n <six-icon class=\"six-file-upload__label-icon\">\n arrow_circle_up\n </six-icon>\n </span>\n <div class=\"six-file-upload__drop-zone six-file-upload__drop-zone--compact\">\n <span>\n Upload\n </span>\n <input class=\"six-file-upload__input\" name=\"resume\" type=\"file\">\n </div>\n </six-button>\n </div>\n </six-file-upload>\n `);\n });\n});\n"]}
1
+ {"version":3,"file":"six-file-upload.spec.js","sourceRoot":"","sources":["../../../../src/components/six-file-upload/test/six-file-upload.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;QAC/C,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,aAAa,CAAC;YAC3B,IAAI,EAAE,qCAAqC;SAC5C,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;KAoB7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;QACpC,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,aAAa,CAAC;YAC3B,IAAI,EAAE,+DAA+D;SACtE,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;KAe7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;QAChC,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,aAAa,CAAC;YAC3B,IAAI,EAAE,8CAA8C;SACrD,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;KAoB7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE;QAC/B,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,aAAa,CAAC;YAC3B,IAAI,EAAE,6CAA6C;SACpD,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;KAoB7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;QAC5C,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,aAAa,CAAC;YAC3B,IAAI,EAAE,sDAAsD;SAC7D,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;KAoB7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;QACjC,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,aAAa,CAAC;YAC3B,IAAI,EAAE,+CAA+C;SACtD,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;;;;;KAa7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { SixFileUpload } from '../six-file-upload';\nimport { newSpecPage } from '@stencil/core/testing';\n\ndescribe('six-file-upload', () => {\n it('should create a component instance', () => {\n expect(new SixFileUpload()).toBeInstanceOf(SixFileUpload);\n });\n\n it('renders minimal six-file-upload', async () => {\n const page = await newSpecPage({\n components: [SixFileUpload],\n html: `<six-file-upload></six-file-upload>`,\n });\n\n expect(page.root).toEqualHtml(`\n <six-file-upload>\n <div class=\"six-file-upload\">\n <six-card class=\"six-file-upload__container--full\">\n <div class=\"six-file-upload__drop-zone\">\n <div>\n <span>\n <span>\n Drop files to upload, or\n <span class=\"six-file-upload__label--highlighted\">\n browse\n </span>\n </span>\n </span>\n <input class=\"six-file-upload__input\" name=\"resume\" type=\"file\">\n </div>\n </div>\n </six-card>\n </div>\n </six-file-upload>\n `);\n });\n\n it('renders custom label', async () => {\n const page = await newSpecPage({\n components: [SixFileUpload],\n html: `<six-file-upload label=\"some custom label\"></six-file-upload>`,\n });\n\n expect(page.root).toEqualHtml(`\n <six-file-upload label=\"some custom label\">\n <div class=\"six-file-upload\">\n <six-card class=\"six-file-upload__container--full\">\n <div class=\"six-file-upload__drop-zone\">\n <div>\n <span>\n some custom label\n </span>\n <input class=\"six-file-upload__input\" name=\"resume\" type=\"file\">\n </div>\n </div>\n </six-card>\n </div>\n </six-file-upload>\n `);\n });\n\n it('renders disabled', async () => {\n const page = await newSpecPage({\n components: [SixFileUpload],\n html: `<six-file-upload disabled></six-file-upload>`,\n });\n\n expect(page.root).toEqualHtml(`\n <six-file-upload disabled=\"\">\n <div class=\"six-file-upload six-file-upload--disabled\">\n <six-card class=\"six-file-upload__container--full\" disabled=\"\">\n <div class=\"six-file-upload__drop-zone\">\n <div>\n <span>\n <span>\n Drop files to upload, or\n <span class=\"six-file-upload__label--highlighted\">\n browse\n </span>\n </span>\n </span>\n <input class=\"six-file-upload__input\" disabled=\"\" name=\"resume\" type=\"file\">\n </div>\n </div>\n </six-card>\n </div>\n </six-file-upload>\n `);\n });\n\n it('renders compact', async () => {\n const page = await newSpecPage({\n components: [SixFileUpload],\n html: `<six-file-upload compact></six-file-upload>`,\n });\n\n expect(page.root).toEqualHtml(`\n <six-file-upload compact=\"\">\n <div class=\"six-file-upload\">\n <six-button class=\"six-file-upload__container--compact\">\n <span slot=\"prefix\">\n <six-icon class=\"six-file-upload__label-icon\">\n arrow_circle_up\n </six-icon>\n </span>\n <div class=\"six-file-upload__drop-zone six-file-upload__drop-zone--compact\">\n <div>\n <span>\n Upload\n </span>\n <input class=\"six-file-upload__input\" name=\"resume\" type=\"file\">\n </div>\n </div>\n </six-button>\n </div>\n </six-file-upload>\n `);\n });\n\n it('renders compact and disabled', async () => {\n const page = await newSpecPage({\n components: [SixFileUpload],\n html: `<six-file-upload compact disabled></six-file-upload>`,\n });\n\n expect(page.root).toEqualHtml(`\n <six-file-upload compact=\"\" disabled=\"\">\n <div class=\"six-file-upload six-file-upload--disabled\">\n <six-button class=\"six-file-upload__container--compact\" disabled=\"\">\n <span slot=\"prefix\">\n <six-icon class=\"six-file-upload__label-icon\">\n arrow_circle_up\n </six-icon>\n </span>\n <div class=\"six-file-upload__drop-zone six-file-upload__drop-zone--compact\">\n <div>\n <span>\n Upload\n </span>\n <input class=\"six-file-upload__input\" disabled=\"\" name=\"resume\" type=\"file\">\n </div>\n </div>\n </six-button>\n </div>\n </six-file-upload>\n `);\n });\n\n it('renders uploading', async () => {\n const page = await newSpecPage({\n components: [SixFileUpload],\n html: `<six-file-upload uploading></six-file-upload>`,\n });\n\n expect(page.root).toEqualHtml(`\n <six-file-upload uploading=\"\">\n <div class=\"six-file-upload six-file-upload--disabled\">\n <six-card class=\"six-file-upload__container--full\" disabled=\"\">\n <div class=\"six-file-upload__drop-zone\">\n <span class=\"six-file-upload__drop-zone__spinner-container\">\n <six-spinner></six-spinner>\n Uploading...\n </span>\n </div>\n </six-card>\n </div>\n </six-file-upload>\n `);\n });\n});\n"]}
@@ -3,7 +3,7 @@
3
3
  box-sizing: border-box;
4
4
  }
5
5
  :host *, :host *:before, :host *:after {
6
- box-sizing: inherit;
6
+ box-sizing: border-box;
7
7
  }
8
8
 
9
9
  :host {
@@ -16,5 +16,5 @@
16
16
  text-align: center;
17
17
  width: 100%;
18
18
  background-color: var(--six-footer-background-color);
19
- box-shadow: var(--six-shadow-x-large-top);
19
+ box-shadow: var(--six-shadow-medium-top);
20
20
  }
@@ -7,7 +7,7 @@ import { h } from "@stencil/core";
7
7
  */
8
8
  export class SixFooter {
9
9
  render() {
10
- return (h("footer", { class: "six-footer" }, h("slot", null)));
10
+ return (h("footer", { key: '9b6b9933b76044dd048161ab084af325cc6d181d', class: "six-footer" }, h("slot", { key: 'f8f0b32271d472da8175d2fc92ca8aef319345fe' })));
11
11
  }
12
12
  static get is() { return "six-footer"; }
13
13
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"six-footer.js","sourceRoot":"","sources":["../../../src/components/six-footer/six-footer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAE7C;;;;;GAKG;AAOH,MAAM,OAAO,SAAS;IACpB,MAAM;QACJ,OAAO,CACL,cAAQ,KAAK,EAAC,YAAY;YACxB,eAAQ,CACD,CACV,CAAC;IACJ,CAAC;;;;;;;;;CACF","sourcesContent":["import { Component, h } from '@stencil/core';\n\n/**\n * @since 1.0\n * @status stable\n *\n * @slot - Used to define the content of the footer.\n */\n\n@Component({\n tag: 'six-footer',\n styleUrl: 'six-footer.scss',\n shadow: true,\n})\nexport class SixFooter {\n render() {\n return (\n <footer class=\"six-footer\">\n <slot />\n </footer>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"six-footer.js","sourceRoot":"","sources":["../../../src/components/six-footer/six-footer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAE7C;;;;;GAKG;AAOH,MAAM,OAAO,SAAS;IACpB,MAAM;QACJ,OAAO,CACL,+DAAQ,KAAK,EAAC,YAAY;YACxB,8DAAQ,CACD,CACV,CAAC;IACJ,CAAC;;;;;;;;;CACF","sourcesContent":["import { Component, h } from '@stencil/core';\n\n/**\n * @since 1.0\n * @status stable\n *\n * @slot - Used to define the content of the footer.\n */\n\n@Component({\n tag: 'six-footer',\n styleUrl: 'six-footer.scss',\n shadow: true,\n})\nexport class SixFooter {\n render() {\n return (\n <footer class=\"six-footer\">\n <slot />\n </footer>\n );\n }\n}\n"]}
@@ -3,7 +3,7 @@
3
3
  box-sizing: border-box;
4
4
  }
5
5
  :host *, :host *:before, :host *:after {
6
- box-sizing: inherit;
6
+ box-sizing: border-box;
7
7
  }
8
8
 
9
9
  .form-control .form-control__label {
@@ -47,7 +47,7 @@ export class SixGroupLabel {
47
47
  (_a = this.host.shadowRoot) === null || _a === void 0 ? void 0 : _a.removeEventListener('slotchange', this.handleSlotChange);
48
48
  }
49
49
  render() {
50
- return (h(FormControl, { inputId: this.wrapperLabelId, label: this.label, labelId: this.labelId, hasLabelSlot: this.hasLabelSlot, helpTextId: this.helpTextId, helpText: this.helpText, hasHelpTextSlot: this.hasHelpTextSlot, size: this.size, disabled: this.disabled, required: this.required }, h("slot", null)));
50
+ return (h(FormControl, { key: '63fc7943961162f3ee5cc86d4de0dfb27682606f', inputId: this.wrapperLabelId, label: this.label, labelId: this.labelId, hasLabelSlot: this.hasLabelSlot, helpTextId: this.helpTextId, helpText: this.helpText, hasHelpTextSlot: this.hasHelpTextSlot, size: this.size, disabled: this.disabled, required: this.required }, h("slot", { key: '1bf38dac10d72a3cd70023fc4641f8c0f5d5a468' })));
51
51
  }
52
52
  static get is() { return "six-group-label"; }
53
53
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"six-group-label.js","sourceRoot":"","sources":["../../../src/components/six-group-label/six-group-label.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,WAAW,MAAM,uDAAuD,CAAC;AAChF,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,IAAI,EAAE,GAAG,CAAC,CAAC;AAEX;;;;;;;;;;;;GAYG;AAMH,MAAM,OAAO,aAAa;;QAChB,mBAAc,GAAG,SAAS,EAAE,EAAE,EAAE,CAAC;QACjC,YAAO,GAAG,eAAe,EAAE,EAAE,CAAC;QAC9B,eAAU,GAAG,mBAAmB,EAAE,EAAE,CAAC;QAwCrC,qBAAgB,GAAG,GAAG,EAAE;YAC9B,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAChD,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACzD,CAAC,CAAC;+BAvCyB,KAAK;4BACR,KAAK;oBAGiC,QAAQ;qBAGtD,EAAE;wBAGC,EAAE;wBAGe,KAAK;wBAGtB,KAAK;;IAIxB,iBAAiB;QACf,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED,iBAAiB;;QACf,MAAA,IAAI,CAAC,IAAI,CAAC,UAAU,0CAAE,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC9E,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED,oBAAoB;;QAClB,MAAA,IAAI,CAAC,IAAI,CAAC,UAAU,0CAAE,mBAAmB,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACjF,CAAC;IAOD,MAAM;QACJ,OAAO,CACL,EAAC,WAAW,IACV,OAAO,EAAE,IAAI,CAAC,cAAc,EAC5B,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YAEvB,eAAa,CACD,CACf,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Element, h, Prop, State, Watch } from '@stencil/core';\nimport FormControl from '../../functional-components/form-control/form-control';\nimport { hasSlot } from '../../utils/slot';\n\nlet id = 0;\n\n/**\n * @since 1.1\n * @status stable\n *\n * @slot label - The wrapped component's label. Alternatively, you can use the label prop.\n * @slot help-text - Help text that describes how to use the input.\n * @slot error-text - Error text that is shown for validation errors. Alternatively, you can use the error-text prop.\n *\n * @part base - The component's base wrapper.\n * @part form-control - The form control that wraps the label, textarea, and help text.\n * @part label - The label of wrapped component.\n * @part help-text - The help text of the wrapped component.\n */\n@Component({\n tag: 'six-group-label',\n styleUrl: 'six-group-label.scss',\n shadow: true,\n})\nexport class SixGroupLabel {\n private wrapperLabelId = `label-${++id}`;\n private labelId = `label-label-${id}`;\n private helpTextId = `label-help-text-${id}`;\n\n @Element() host!: HTMLSixGroupLabelElement;\n\n @State() hasHelpTextSlot = false;\n @State() hasLabelSlot = false;\n\n /** The label's size. */\n @Prop({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n\n /** The wrapper label's label. Alternatively, you can use the label slot. */\n @Prop() label = '';\n\n /** The wrapper label's help text. Alternatively, you can use the help-text slot. */\n @Prop() helpText = '';\n\n /** Set to true to disable the label. */\n @Prop({ reflect: true }) disabled = false;\n\n /** Set to true to show an asterisk beneath the label. */\n @Prop() required = false;\n\n @Watch('helpText')\n @Watch('label')\n handleLabelChange() {\n this.handleSlotChange();\n }\n\n connectedCallback() {\n this.host.shadowRoot?.addEventListener('slotchange', this.handleSlotChange);\n }\n\n componentWillLoad() {\n this.handleSlotChange();\n }\n\n disconnectedCallback() {\n this.host.shadowRoot?.removeEventListener('slotchange', this.handleSlotChange);\n }\n\n private handleSlotChange = () => {\n this.hasLabelSlot = hasSlot(this.host, 'label');\n this.hasHelpTextSlot = hasSlot(this.host, 'help-text');\n };\n\n render() {\n return (\n <FormControl\n inputId={this.wrapperLabelId}\n label={this.label}\n labelId={this.labelId}\n hasLabelSlot={this.hasLabelSlot}\n helpTextId={this.helpTextId}\n helpText={this.helpText}\n hasHelpTextSlot={this.hasHelpTextSlot}\n size={this.size}\n disabled={this.disabled}\n required={this.required}\n >\n <slot></slot>\n </FormControl>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"six-group-label.js","sourceRoot":"","sources":["../../../src/components/six-group-label/six-group-label.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,WAAW,MAAM,uDAAuD,CAAC;AAChF,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,IAAI,EAAE,GAAG,CAAC,CAAC;AAEX;;;;;;;;;;;;GAYG;AAMH,MAAM,OAAO,aAAa;;QAChB,mBAAc,GAAG,SAAS,EAAE,EAAE,EAAE,CAAC;QACjC,YAAO,GAAG,eAAe,EAAE,EAAE,CAAC;QAC9B,eAAU,GAAG,mBAAmB,EAAE,EAAE,CAAC;QAwCrC,qBAAgB,GAAG,GAAG,EAAE;YAC9B,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAChD,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACzD,CAAC,CAAC;+BAvCyB,KAAK;4BACR,KAAK;oBAGiC,QAAQ;qBAGtD,EAAE;wBAGC,EAAE;wBAGe,KAAK;wBAGtB,KAAK;;IAIxB,iBAAiB;QACf,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED,iBAAiB;;QACf,MAAA,IAAI,CAAC,IAAI,CAAC,UAAU,0CAAE,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC9E,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED,oBAAoB;;QAClB,MAAA,IAAI,CAAC,IAAI,CAAC,UAAU,0CAAE,mBAAmB,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACjF,CAAC;IAOD,MAAM;QACJ,OAAO,CACL,EAAC,WAAW,qDACV,OAAO,EAAE,IAAI,CAAC,cAAc,EAC5B,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YAEvB,8DAAa,CACD,CACf,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Element, h, Prop, State, Watch } from '@stencil/core';\nimport FormControl from '../../functional-components/form-control/form-control';\nimport { hasSlot } from '../../utils/slot';\n\nlet id = 0;\n\n/**\n * @since 1.1\n * @status stable\n *\n * @slot label - The wrapped component's label. Alternatively, you can use the label prop.\n * @slot help-text - Help text that describes how to use the input.\n * @slot error-text - Error text that is shown for validation errors. Alternatively, you can use the error-text prop.\n *\n * @part base - The component's base wrapper.\n * @part form-control - The form control that wraps the label, textarea, and help text.\n * @part label - The label of wrapped component.\n * @part help-text - The help text of the wrapped component.\n */\n@Component({\n tag: 'six-group-label',\n styleUrl: 'six-group-label.scss',\n shadow: true,\n})\nexport class SixGroupLabel {\n private wrapperLabelId = `label-${++id}`;\n private labelId = `label-label-${id}`;\n private helpTextId = `label-help-text-${id}`;\n\n @Element() host!: HTMLSixGroupLabelElement;\n\n @State() hasHelpTextSlot = false;\n @State() hasLabelSlot = false;\n\n /** The label's size. */\n @Prop({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n\n /** The wrapper label's label. Alternatively, you can use the label slot. */\n @Prop() label = '';\n\n /** The wrapper label's help text. Alternatively, you can use the help-text slot. */\n @Prop() helpText = '';\n\n /** Set to true to disable the label. */\n @Prop({ reflect: true }) disabled = false;\n\n /** Set to true to show an asterisk beneath the label. */\n @Prop() required = false;\n\n @Watch('helpText')\n @Watch('label')\n handleLabelChange() {\n this.handleSlotChange();\n }\n\n connectedCallback() {\n this.host.shadowRoot?.addEventListener('slotchange', this.handleSlotChange);\n }\n\n componentWillLoad() {\n this.handleSlotChange();\n }\n\n disconnectedCallback() {\n this.host.shadowRoot?.removeEventListener('slotchange', this.handleSlotChange);\n }\n\n private handleSlotChange = () => {\n this.hasLabelSlot = hasSlot(this.host, 'label');\n this.hasHelpTextSlot = hasSlot(this.host, 'help-text');\n };\n\n render() {\n return (\n <FormControl\n inputId={this.wrapperLabelId}\n label={this.label}\n labelId={this.labelId}\n hasLabelSlot={this.hasLabelSlot}\n helpTextId={this.helpTextId}\n helpText={this.helpText}\n hasHelpTextSlot={this.hasHelpTextSlot}\n size={this.size}\n disabled={this.disabled}\n required={this.required}\n >\n <slot></slot>\n </FormControl>\n );\n }\n}\n"]}
@@ -3,7 +3,7 @@
3
3
  box-sizing: border-box;
4
4
  }
5
5
  :host *, :host *:before, :host *:after {
6
- box-sizing: inherit;
6
+ box-sizing: border-box;
7
7
  }
8
8
 
9
9
  :host {
@@ -25,7 +25,7 @@
25
25
  background-color: var(--six-header-background-color);
26
26
  align-items: center;
27
27
  flex-wrap: wrap;
28
- box-shadow: var(--six-shadow-x-large);
28
+ box-shadow: var(--six-shadow-medium);
29
29
  border-bottom: var(--six-header-border-with) solid var(--six-header-border-color);
30
30
  }
31
31
  .six-header__logo {
@@ -48,6 +48,10 @@
48
48
  .six-header__menu--open, .six-header__logo--open, .six-header__custom--open, .six-header__search--open, .six-header__notification--open, .six-header__app-switcher--open, .six-header__profile--open {
49
49
  border-bottom: solid 0.25rem var(--six-header-border-color-open);
50
50
  }
51
+ .six-header__app-switcher-dropdown {
52
+ display: flex;
53
+ align-items: center;
54
+ }
51
55
  .six-header__selected-app {
52
56
  cursor: pointer;
53
57
  font-size: 0.9rem;
@@ -66,6 +66,7 @@ export class SixHeader {
66
66
  this.selectedSection = this.openSearch ? Section.Search : Section.None;
67
67
  };
68
68
  this.shiftContent = false;
69
+ this.hideHamburgerMenu = false;
69
70
  this.openHamburgerMenu = false;
70
71
  this.openSearch = false;
71
72
  this.clickableLogo = false;
@@ -156,28 +157,29 @@ export class SixHeader {
156
157
  (_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
157
158
  }
158
159
  render() {
159
- const search = this.hasSlot(Slot.Search) && (h("section", { class: {
160
+ const hamburgerMenu = !this.hideHamburgerMenu && (h("section", { key: '4bdfb040919e63d80c73907e4ab99f81f41ed962', class: "six-header__menu" }, h("six-icon-button", { key: '65979bc405df9ede5ff51ba6671a20c89dcc07db', name: this.openHamburgerMenu ? 'menu_open' : 'menu', ref: this.setupMenu })));
161
+ const search = this.hasSlot(Slot.Search) && (h("section", { key: 'dea31e61c8c3abdd62bbfdb427c0d5c994ca005b', class: {
160
162
  'six-header__search': true,
161
163
  'six-header__search--open': this.isSectionSelected(Section.Search),
162
- } }, h("six-icon-button", { name: "search", onClick: () => this.toggleSearch(), "data-testid": "search-trigger" })));
163
- const notifications = this.hasSlot(Slot.Notifications) && (h("section", { class: "six-header__notification" }, h("slot", { name: Slot.Notifications })));
164
- const appSwitcher = this.hasSlot(Slot.AppSwitcher) && (h("section", { class: {
164
+ } }, h("six-icon-button", { key: '36411dc4797c5c14f54be612422b2b8a651dc042', name: "search", onClick: () => this.toggleSearch(), "data-testid": "search-trigger" })));
165
+ const notifications = this.hasSlot(Slot.Notifications) && (h("section", { key: '42703240d867b07571e2cae5b1475c4b40d5cab9', class: "six-header__notification" }, h("slot", { key: '17ab8c5a38463636bb485ced2bb7ff04917e2a99', name: Slot.Notifications })));
166
+ const appSwitcher = this.hasSlot(Slot.AppSwitcher) && (h("section", { key: '1663cb55a4a112cfee5b0bd1b4162c7425b8e25c', class: {
165
167
  'six-header__app-switcher': true,
166
168
  'six-header__app-switcher--open': this.isSectionSelected(Section.AppSwitcher),
167
- } }, h("a", { onClick: this.appNameClicked, class: "six-header__selected-app" }, this.selectedApp), h("six-dropdown", { distance: 13, skidding: 20, placement: "bottom-end", ref: this.setupAppSwitcher }, h("six-icon-button", { name: "apps", slot: "trigger" }), h("slot", { name: Slot.AppSwitcher }))));
168
- const profile = this.hasSlot(Slot.Profile) && (h("section", { class: {
169
+ } }, h("six-dropdown", { key: 'e0b0599707152e3514dc9216a4d3b6256631377e', distance: 13, skidding: 20, placement: "bottom-end", ref: this.setupAppSwitcher }, h("div", { key: '89a8ee9eb2af751a681256f40b66930ca7a6e6dc', slot: "trigger", class: "six-header__app-switcher-dropdown" }, h("a", { key: 'bcf7e1f1249cf0def1d2575d0e2e9a2a5543f808', onClick: this.appNameClicked, class: "six-header__selected-app" }, this.selectedApp), h("six-icon-button", { key: 'f5996669051d290c957e9a0417b77d7a424e3dab', name: "apps" })), h("slot", { key: 'a55a8cd1cf35bb4b229199d86fb119678fc79617', name: Slot.AppSwitcher }))));
170
+ const profile = this.hasSlot(Slot.Profile) && (h("section", { key: '70840d293a70fb869c6de4c70353b1f47b995e5d', class: {
169
171
  'six-header__profile': true,
170
172
  'six-header__profile--open': this.isSectionSelected(Section.Profile),
171
- } }, h("six-dropdown", { distance: 17, skidding: 20, placement: "bottom-end", ref: this.setupProfile }, h("slot", { name: "profile-avatar", slot: "trigger" }), h("slot", { name: "profile-menu" }))));
173
+ } }, h("six-dropdown", { key: '50463552c655c87b793cee909810475c418abddf', distance: 17, skidding: 20, placement: "bottom-end", ref: this.setupProfile }, h("slot", { key: 'fae7475c62c9a0c273398a77f344dfde87c85b7c', name: "profile-avatar", slot: "trigger" }), h("slot", { key: '147b4944e080330652d02e0e6680277b910f31b9', name: "profile-menu" }))));
172
174
  const logo = this.hasSlot(Slot.Logo) ? (h("section", null, h("slot", { name: "logo" }))) : (h("section", { class: {
173
175
  'six-header__logo': true,
174
176
  'six-header__logo--clickable': this.clickableLogo,
175
177
  }, ref: this.setupLogo }, h("svg", { height: "20", viewBox: "0 0 90 26", xmlns: "http://www.w3.org/2000/svg" }, h("title", null, "SIX"), h("g", { fill: "#DE3919", "fill-rule": "nonzero" }, h("path", { d: "m22.798 3.869c1.82-2.168 4.549-3.545 7.6-3.545h6.807v4.961h-6.807c-1.526 0-2.89.689-3.8 1.771l-12.19 14.526c-1.82 2.166-4.549 3.545-7.6 3.545h-6.808v-4.961h6.808c1.525 0 2.889-.689 3.799-1.773l12.191-14.525" }), h("path", { d: "m42.16.324h5.21v24.806h-5.21z" }), h("path", { d: "m66.743 3.869l4.195 4.999 4.195-4.999c1.819-2.168 4.549-3.545 7.6-3.545h6.806v4.961h-6.806c-1.526 0-2.89.689-3.8 1.771l-4.758 5.669 4.758 5.669c.91 1.084 2.274 1.773 3.8 1.773h6.806v4.961h-6.806c-3.051 0-5.781-1.379-7.6-3.545l-4.195-4.999-4.195 4.999c-1.82 2.166-4.55 3.545-7.6 3.545h-6.807v-4.961h6.807c1.525 0 2.889-.689 3.799-1.773l4.758-5.669-4.758-5.669c-.91-1.083-2.274-1.771-3.799-1.771h-6.807v-4.961h6.807c3.05 0 5.78 1.378 7.6 3.545" })))));
176
- return (h(Host, null, h("header", { class: "six-header" }, h("section", { class: "six-header__menu" }, h("six-icon-button", { name: this.openHamburgerMenu ? 'menu_open' : 'menu', ref: this.setupMenu })), logo, h("section", { class: "six-header__placeholder" }), h("section", { class: "six-header__custom" }, h("slot", null)), search, notifications, appSwitcher, profile), h("div", { class: {
178
+ return (h(Host, { key: 'fe3df0b60941b770dc1a4a876fea67648103feeb' }, h("header", { key: '297d9e50c392a86028d4a982262bb292abe9720c', class: "six-header" }, hamburgerMenu, logo, h("section", { key: 'b2f2c0a98b8bfae711ad941986c98e616c55073c', class: "six-header__placeholder" }), h("section", { key: '6d6800f2abb6986304588dda3e9a8d8905f98266', class: "six-header__custom" }, h("slot", { key: '4a8d385406e6e878c620be5945affd4e77cf7d9f' })), search, notifications, appSwitcher, profile), h("div", { key: '1d2f6aa7a0842212e556f01cbaf31d04a65ec6d5', class: {
177
179
  'six-header__search-field': true,
178
180
  'six-header__search-field--visible': this.isSectionSelected(Section.Search),
179
181
  'six-header__search-field--shift-content': this.shiftContent,
180
- } }, h("slot", { name: Slot.Search }))));
182
+ } }, h("slot", { key: '02619aaa886ecdee27f31a9687deab5fb1ec254c', name: Slot.Search }))));
181
183
  }
182
184
  static get is() { return "six-header"; }
183
185
  static get encapsulation() { return "shadow"; }
@@ -212,6 +214,24 @@ export class SixHeader {
212
214
  "reflect": false,
213
215
  "defaultValue": "false"
214
216
  },
217
+ "hideHamburgerMenu": {
218
+ "type": "boolean",
219
+ "mutable": false,
220
+ "complexType": {
221
+ "original": "boolean",
222
+ "resolved": "boolean",
223
+ "references": {}
224
+ },
225
+ "required": false,
226
+ "optional": false,
227
+ "docs": {
228
+ "tags": [],
229
+ "text": "Set whether the hamburger menu should be visible or not"
230
+ },
231
+ "attribute": "hide-hamburger-menu",
232
+ "reflect": false,
233
+ "defaultValue": "false"
234
+ },
215
235
  "openHamburgerMenu": {
216
236
  "type": "boolean",
217
237
  "mutable": false,
@@ -409,8 +429,9 @@ export class SixHeader {
409
429
  "complexType": {
410
430
  "signature": "(openState: boolean) => Promise<void>",
411
431
  "parameters": [{
412
- "tags": [],
413
- "text": ""
432
+ "name": "openState",
433
+ "type": "boolean",
434
+ "docs": ""
414
435
  }],
415
436
  "references": {
416
437
  "Promise": {
@@ -1 +1 @@
1
- {"version":3,"file":"six-header.js","sourceRoot":"","sources":["../../../src/components/six-header/six-header.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch } from '@stencil/core';\nimport { EventListeners } from '../../utils/event-listeners';\nimport { getSlot, hasSlot } from '../../utils/slot';\nimport { EmptyPayload } from '../../utils/types';\n\nexport interface SixHeaderAppSwitcherSelectPayload {\n selectedLabel: string;\n name: string;\n item: HTMLSixMenuItemElement;\n}\n\nexport interface SixHeaderProfileSelectPayload {\n selectedLabel: string;\n name: string;\n item: HTMLSixMenuItemElement;\n}\n\nexport interface SixHeaderSearchFieldToggle {\n visible: boolean;\n}\n\nenum Section {\n None,\n Search,\n AppSwitcher,\n Profile,\n}\n\nenum Slot {\n Search = 'search-field',\n Notifications = 'notifications',\n AppSwitcher = 'app-switcher-menu',\n Profile = 'profile-menu',\n Logo = 'logo',\n}\n\n/**\n * @since 1.0\n * @status stable\n *\n * @slot - Used to define a custom component that is included in the header.\n * @slot search-field - Used to define the search field component in the header.\n * @slot notifications - Used to define the notification component in the header.\n * @slot app-switcher-menu - Used to define the application switcher menu in the header.\n * @slot profile-menu - Used to define the profile menu in the header.\n * @slot profile-avatar - Used to define the avator in the header.\n */\n\n@Component({\n tag: 'six-header',\n styleUrl: 'six-header.scss',\n shadow: true,\n assetsDirs: ['assets'],\n})\nexport class SixHeader {\n /** Indicates if content should be shifted down when search field is visible. */\n @Prop() shiftContent = false;\n\n /** Set the hamburger menu icon to open or closed state */\n @Prop() openHamburgerMenu = false;\n\n /** Set the header search to be in an open or closed state */\n @Prop() openSearch = false;\n\n /** Set whether the logo should be clickable */\n @Prop() clickableLogo = false;\n\n @Watch('openSearch')\n handleOpenSearchChange() {\n this.computeSearchOpenState();\n }\n\n /** Sets open state for search */\n @Method()\n async setSearchOpenState(openState: boolean) {\n if (this.selectedSection === Section.Search && !openState) {\n this.selectedSection = Section.None;\n } else if (openState && this.selectedSection !== Section.Search) {\n this.selectedSection = Section.Search;\n }\n }\n\n /** Get open state for search */\n @Method()\n async getIsSearchOpen() {\n return this.selectedSection === Section.Search;\n }\n\n /** Emitted when the name of the selected app is clicked. */\n @Event({ eventName: 'six-header-app-name-clicked' }) sixAppNameClicked!: EventEmitter<EmptyPayload>;\n\n /** Emitted when a menu item is in the app switcher menu is selected. */\n @Event({ eventName: 'six-header-app-switcher-select' })\n sixAppSwitcherSelect!: EventEmitter<SixHeaderAppSwitcherSelectPayload>;\n\n /** Emitted when a menu item is in the profile menu is selected. */\n @Event({ eventName: 'six-header-profile-select' }) sixProfileSelect!: EventEmitter<SixHeaderProfileSelectPayload>;\n\n /** Emitted when the hamburger menu is clicked. */\n @Event({ eventName: 'six-header-hamburger-menu-clicked' }) sixHamburgerClick!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the header logo is clicked. */\n @Event({ eventName: 'six-header-logo-clicked' }) sixLogoClick!: EventEmitter<EmptyPayload>;\n\n /** Emitted when search field is toggled. */\n @Event({ eventName: 'six-header-search-field-toggle' })\n sixSearchFieldToggle!: EventEmitter<SixHeaderSearchFieldToggle>;\n\n @Element() host!: HTMLSixHeaderElement;\n\n private eventListeners = new EventListeners();\n\n private slots?: Record<Slot, boolean>;\n\n private mutationObserver?: MutationObserver;\n\n @State() selectedApp?: string;\n @State() selectedSection?: Section;\n\n private hasSlot(slot: Slot): boolean {\n if (this.slots == null) {\n return false;\n }\n return this.slots[slot];\n }\n\n private isSectionSelected(value: Section) {\n return value === this.selectedSection;\n }\n\n private selectSection(section: Section) {\n return () => (this.selectedSection = section);\n }\n\n private toggleSearch() {\n const visible = this.selectedSection !== Section.Search;\n this.selectedSection = this.selectedSection === Section.Search ? Section.None : Section.Search;\n this.sixSearchFieldToggle.emit({ visible });\n if (this.selectedSection === Section.Search) {\n // setFocus deferred due to https://github.com/ionic-team/stencil/issues/3772\n setTimeout(async () => {\n const slot = getSlot(this.host, Slot.Search);\n slot?.shadowRoot?.querySelector('six-input')?.setFocus();\n }, 50);\n }\n }\n\n private setupMenu = (el?: HTMLSixIconButtonElement) => {\n if (el == null) return;\n\n this.eventListeners.add(el, 'click', () => this.sixHamburgerClick.emit());\n };\n\n private setupLogo = (el?: HTMLElement) => {\n if (!this.clickableLogo || el == null) return;\n\n this.eventListeners.add(el, 'click', () => this.sixLogoClick.emit());\n };\n\n private setupProfile = (el?: HTMLSixDropdownElement) => {\n if (el == null) return;\n\n this.eventListeners.add(el, 'six-dropdown-show', this.selectSection(Section.Profile));\n this.eventListeners.add(el, 'six-dropdown-hide', this.selectSection(Section.None));\n this.eventListeners.add(el, 'six-menu-item-selected', (event: Event) => {\n const { name, item } = (event as CustomEvent).detail;\n this.sixProfileSelect.emit({ selectedLabel: item.innerText, name, item });\n });\n };\n\n private setupAppSwitcher = (el?: HTMLSixDropdownElement) => {\n if (el == null) return;\n\n this.eventListeners.add(el, 'six-dropdown-show', this.selectSection(Section.AppSwitcher));\n this.eventListeners.add(el, 'six-dropdown-hide', this.selectSection(Section.None));\n this.eventListeners.add(el, 'six-menu-item-selected', (event: Event) => {\n const { name, item } = (event as CustomEvent).detail;\n this.selectedApp = item.innerText;\n this.sixAppSwitcherSelect.emit({ selectedLabel: item.innerText, name, item });\n });\n };\n\n private appNameClicked = () => this.sixAppNameClicked.emit();\n\n private computeSearchOpenState = () => {\n this.selectedSection = this.openSearch ? Section.Search : Section.None;\n };\n\n componentWillLoad() {\n this.slots = {\n [Slot.Search]: hasSlot(this.host, Slot.Search),\n [Slot.Notifications]: hasSlot(this.host, Slot.Notifications),\n [Slot.AppSwitcher]: hasSlot(this.host, Slot.AppSwitcher),\n [Slot.Profile]: hasSlot(this.host, Slot.Profile),\n [Slot.Logo]: hasSlot(this.host, Slot.Logo),\n };\n\n if (this.hasSlot(Slot.AppSwitcher)) {\n this.updateSelectedApp();\n }\n\n if (this.hasSlot(Slot.Search)) {\n this.computeSearchOpenState();\n }\n }\n\n connectedCallback() {\n const appSwitcherSlot = getSlot(this.host, Slot.AppSwitcher);\n if (appSwitcherSlot) {\n this.mutationObserver = new MutationObserver((mutations) => {\n if (mutations.some((mutation) => mutation.type === 'childList' || mutation.type === 'attributes')) {\n this.updateSelectedApp();\n }\n });\n this.mutationObserver.observe(appSwitcherSlot, { attributes: true, childList: true, subtree: true });\n }\n }\n\n private updateSelectedApp() {\n // there are more concise ways to select the first checked menu item, but this is one that works for jest\n const element = getSlot(this.host, Slot.AppSwitcher);\n if (element == null) {\n return undefined;\n }\n const items = Array.from(element.querySelectorAll('six-menu-item'));\n const firstCheckedMenuItem = items.find(\n (item) => item.hasAttribute('checked') && item.getAttribute('checked') !== 'false'\n );\n this.selectedApp = firstCheckedMenuItem?.textContent ?? undefined;\n }\n\n disconnectedCallback() {\n this.eventListeners.removeAll();\n this.mutationObserver?.disconnect();\n }\n\n render() {\n const search = this.hasSlot(Slot.Search) && (\n <section\n class={{\n 'six-header__search': true,\n 'six-header__search--open': this.isSectionSelected(Section.Search),\n }}\n >\n <six-icon-button name=\"search\" onClick={() => this.toggleSearch()} data-testid=\"search-trigger\" />\n </section>\n );\n\n const notifications = this.hasSlot(Slot.Notifications) && (\n <section class=\"six-header__notification\">\n <slot name={Slot.Notifications} />\n </section>\n );\n\n const appSwitcher = this.hasSlot(Slot.AppSwitcher) && (\n <section\n class={{\n 'six-header__app-switcher': true,\n 'six-header__app-switcher--open': this.isSectionSelected(Section.AppSwitcher),\n }}\n >\n <a onClick={this.appNameClicked} class=\"six-header__selected-app\">\n {this.selectedApp}\n </a>\n <six-dropdown distance={13} skidding={20} placement=\"bottom-end\" ref={this.setupAppSwitcher}>\n <six-icon-button name=\"apps\" slot=\"trigger\" />\n <slot name={Slot.AppSwitcher} />\n </six-dropdown>\n </section>\n );\n\n const profile = this.hasSlot(Slot.Profile) && (\n <section\n class={{\n 'six-header__profile': true,\n 'six-header__profile--open': this.isSectionSelected(Section.Profile),\n }}\n >\n <six-dropdown distance={17} skidding={20} placement=\"bottom-end\" ref={this.setupProfile}>\n <slot name=\"profile-avatar\" slot=\"trigger\" />\n <slot name=\"profile-menu\" />\n </six-dropdown>\n </section>\n );\n\n const logo = this.hasSlot(Slot.Logo) ? (\n <section>\n <slot name=\"logo\" />\n </section>\n ) : (\n <section\n class={{\n 'six-header__logo': true,\n 'six-header__logo--clickable': this.clickableLogo,\n }}\n ref={this.setupLogo}\n >\n <svg height=\"20\" viewBox=\"0 0 90 26\" xmlns=\"http://www.w3.org/2000/svg\">\n <title>SIX</title>\n <g fill=\"#DE3919\" fill-rule=\"nonzero\">\n <path d=\"m22.798 3.869c1.82-2.168 4.549-3.545 7.6-3.545h6.807v4.961h-6.807c-1.526 0-2.89.689-3.8 1.771l-12.19 14.526c-1.82 2.166-4.549 3.545-7.6 3.545h-6.808v-4.961h6.808c1.525 0 2.889-.689 3.799-1.773l12.191-14.525\" />\n <path d=\"m42.16.324h5.21v24.806h-5.21z\" />\n <path d=\"m66.743 3.869l4.195 4.999 4.195-4.999c1.819-2.168 4.549-3.545 7.6-3.545h6.806v4.961h-6.806c-1.526 0-2.89.689-3.8 1.771l-4.758 5.669 4.758 5.669c.91 1.084 2.274 1.773 3.8 1.773h6.806v4.961h-6.806c-3.051 0-5.781-1.379-7.6-3.545l-4.195-4.999-4.195 4.999c-1.82 2.166-4.55 3.545-7.6 3.545h-6.807v-4.961h6.807c1.525 0 2.889-.689 3.799-1.773l4.758-5.669-4.758-5.669c-.91-1.083-2.274-1.771-3.799-1.771h-6.807v-4.961h6.807c3.05 0 5.78 1.378 7.6 3.545\" />\n </g>\n </svg>\n </section>\n );\n\n return (\n <Host>\n <header class=\"six-header\">\n <section class=\"six-header__menu\">\n <six-icon-button name={this.openHamburgerMenu ? 'menu_open' : 'menu'} ref={this.setupMenu} />\n </section>\n\n {logo}\n\n <section class=\"six-header__placeholder\" />\n\n <section class=\"six-header__custom\">\n <slot />\n </section>\n\n {search}\n\n {notifications}\n\n {appSwitcher}\n\n {profile}\n </header>\n\n <div\n class={{\n 'six-header__search-field': true,\n 'six-header__search-field--visible': this.isSectionSelected(Section.Search),\n 'six-header__search-field--shift-content': this.shiftContent,\n }}\n >\n <slot name={Slot.Search} />\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"six-header.js","sourceRoot":"","sources":["../../../src/components/six-header/six-header.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch } from '@stencil/core';\nimport { EventListeners } from '../../utils/event-listeners';\nimport { getSlot, hasSlot } from '../../utils/slot';\nimport { EmptyPayload } from '../../utils/types';\n\nexport interface SixHeaderAppSwitcherSelectPayload {\n selectedLabel: string;\n name: string;\n item: HTMLSixMenuItemElement;\n}\n\nexport interface SixHeaderProfileSelectPayload {\n selectedLabel: string;\n name: string;\n item: HTMLSixMenuItemElement;\n}\n\nexport interface SixHeaderSearchFieldToggle {\n visible: boolean;\n}\n\nenum Section {\n None,\n Search,\n AppSwitcher,\n Profile,\n}\n\nenum Slot {\n Search = 'search-field',\n Notifications = 'notifications',\n AppSwitcher = 'app-switcher-menu',\n Profile = 'profile-menu',\n Logo = 'logo',\n}\n\n/**\n * @since 1.0\n * @status stable\n *\n * @slot - Used to define a custom component that is included in the header.\n * @slot search-field - Used to define the search field component in the header.\n * @slot notifications - Used to define the notification component in the header.\n * @slot app-switcher-menu - Used to define the application switcher menu in the header.\n * @slot profile-menu - Used to define the profile menu in the header.\n * @slot profile-avatar - Used to define the avator in the header.\n */\n\n@Component({\n tag: 'six-header',\n styleUrl: 'six-header.scss',\n shadow: true,\n assetsDirs: ['assets'],\n})\nexport class SixHeader {\n /** Indicates if content should be shifted down when search field is visible. */\n @Prop() shiftContent = false;\n\n /** Set whether the hamburger menu should be visible or not */\n @Prop() hideHamburgerMenu = false;\n\n /** Set the hamburger menu icon to open or closed state */\n @Prop() openHamburgerMenu = false;\n\n /** Set the header search to be in an open or closed state */\n @Prop() openSearch = false;\n\n /** Set whether the logo should be clickable */\n @Prop() clickableLogo = false;\n\n @Watch('openSearch')\n handleOpenSearchChange() {\n this.computeSearchOpenState();\n }\n\n /** Sets open state for search */\n @Method()\n async setSearchOpenState(openState: boolean) {\n if (this.selectedSection === Section.Search && !openState) {\n this.selectedSection = Section.None;\n } else if (openState && this.selectedSection !== Section.Search) {\n this.selectedSection = Section.Search;\n }\n }\n\n /** Get open state for search */\n @Method()\n async getIsSearchOpen() {\n return this.selectedSection === Section.Search;\n }\n\n /** Emitted when the name of the selected app is clicked. */\n @Event({ eventName: 'six-header-app-name-clicked' }) sixAppNameClicked!: EventEmitter<EmptyPayload>;\n\n /** Emitted when a menu item is in the app switcher menu is selected. */\n @Event({ eventName: 'six-header-app-switcher-select' })\n sixAppSwitcherSelect!: EventEmitter<SixHeaderAppSwitcherSelectPayload>;\n\n /** Emitted when a menu item is in the profile menu is selected. */\n @Event({ eventName: 'six-header-profile-select' }) sixProfileSelect!: EventEmitter<SixHeaderProfileSelectPayload>;\n\n /** Emitted when the hamburger menu is clicked. */\n @Event({ eventName: 'six-header-hamburger-menu-clicked' }) sixHamburgerClick!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the header logo is clicked. */\n @Event({ eventName: 'six-header-logo-clicked' }) sixLogoClick!: EventEmitter<EmptyPayload>;\n\n /** Emitted when search field is toggled. */\n @Event({ eventName: 'six-header-search-field-toggle' })\n sixSearchFieldToggle!: EventEmitter<SixHeaderSearchFieldToggle>;\n\n @Element() host!: HTMLSixHeaderElement;\n\n private eventListeners = new EventListeners();\n\n private slots?: Record<Slot, boolean>;\n\n private mutationObserver?: MutationObserver;\n\n @State() selectedApp?: string;\n @State() selectedSection?: Section;\n\n private hasSlot(slot: Slot): boolean {\n if (this.slots == null) {\n return false;\n }\n return this.slots[slot];\n }\n\n private isSectionSelected(value: Section) {\n return value === this.selectedSection;\n }\n\n private selectSection(section: Section) {\n return () => (this.selectedSection = section);\n }\n\n private toggleSearch() {\n const visible = this.selectedSection !== Section.Search;\n this.selectedSection = this.selectedSection === Section.Search ? Section.None : Section.Search;\n this.sixSearchFieldToggle.emit({ visible });\n if (this.selectedSection === Section.Search) {\n // setFocus deferred due to https://github.com/ionic-team/stencil/issues/3772\n setTimeout(async () => {\n const slot = getSlot(this.host, Slot.Search);\n slot?.shadowRoot?.querySelector('six-input')?.setFocus();\n }, 50);\n }\n }\n\n private setupMenu = (el?: HTMLSixIconButtonElement) => {\n if (el == null) return;\n\n this.eventListeners.add(el, 'click', () => this.sixHamburgerClick.emit());\n };\n\n private setupLogo = (el?: HTMLElement) => {\n if (!this.clickableLogo || el == null) return;\n\n this.eventListeners.add(el, 'click', () => this.sixLogoClick.emit());\n };\n\n private setupProfile = (el?: HTMLSixDropdownElement) => {\n if (el == null) return;\n\n this.eventListeners.add(el, 'six-dropdown-show', this.selectSection(Section.Profile));\n this.eventListeners.add(el, 'six-dropdown-hide', this.selectSection(Section.None));\n this.eventListeners.add(el, 'six-menu-item-selected', (event: Event) => {\n const { name, item } = (event as CustomEvent).detail;\n this.sixProfileSelect.emit({ selectedLabel: item.innerText, name, item });\n });\n };\n\n private setupAppSwitcher = (el?: HTMLSixDropdownElement) => {\n if (el == null) return;\n\n this.eventListeners.add(el, 'six-dropdown-show', this.selectSection(Section.AppSwitcher));\n this.eventListeners.add(el, 'six-dropdown-hide', this.selectSection(Section.None));\n this.eventListeners.add(el, 'six-menu-item-selected', (event: Event) => {\n const { name, item } = (event as CustomEvent).detail;\n this.selectedApp = item.innerText;\n this.sixAppSwitcherSelect.emit({ selectedLabel: item.innerText, name, item });\n });\n };\n\n private appNameClicked = () => this.sixAppNameClicked.emit();\n\n private computeSearchOpenState = () => {\n this.selectedSection = this.openSearch ? Section.Search : Section.None;\n };\n\n componentWillLoad() {\n this.slots = {\n [Slot.Search]: hasSlot(this.host, Slot.Search),\n [Slot.Notifications]: hasSlot(this.host, Slot.Notifications),\n [Slot.AppSwitcher]: hasSlot(this.host, Slot.AppSwitcher),\n [Slot.Profile]: hasSlot(this.host, Slot.Profile),\n [Slot.Logo]: hasSlot(this.host, Slot.Logo),\n };\n\n if (this.hasSlot(Slot.AppSwitcher)) {\n this.updateSelectedApp();\n }\n\n if (this.hasSlot(Slot.Search)) {\n this.computeSearchOpenState();\n }\n }\n\n connectedCallback() {\n const appSwitcherSlot = getSlot(this.host, Slot.AppSwitcher);\n if (appSwitcherSlot) {\n this.mutationObserver = new MutationObserver((mutations) => {\n if (mutations.some((mutation) => mutation.type === 'childList' || mutation.type === 'attributes')) {\n this.updateSelectedApp();\n }\n });\n this.mutationObserver.observe(appSwitcherSlot, { attributes: true, childList: true, subtree: true });\n }\n }\n\n private updateSelectedApp() {\n // there are more concise ways to select the first checked menu item, but this is one that works for jest\n const element = getSlot(this.host, Slot.AppSwitcher);\n if (element == null) {\n return undefined;\n }\n const items = Array.from(element.querySelectorAll('six-menu-item'));\n const firstCheckedMenuItem = items.find(\n (item) => item.hasAttribute('checked') && item.getAttribute('checked') !== 'false'\n );\n this.selectedApp = firstCheckedMenuItem?.textContent ?? undefined;\n }\n\n disconnectedCallback() {\n this.eventListeners.removeAll();\n this.mutationObserver?.disconnect();\n }\n\n render() {\n const hamburgerMenu = !this.hideHamburgerMenu && (\n <section class=\"six-header__menu\">\n <six-icon-button name={this.openHamburgerMenu ? 'menu_open' : 'menu'} ref={this.setupMenu} />\n </section>\n );\n\n const search = this.hasSlot(Slot.Search) && (\n <section\n class={{\n 'six-header__search': true,\n 'six-header__search--open': this.isSectionSelected(Section.Search),\n }}\n >\n <six-icon-button name=\"search\" onClick={() => this.toggleSearch()} data-testid=\"search-trigger\" />\n </section>\n );\n\n const notifications = this.hasSlot(Slot.Notifications) && (\n <section class=\"six-header__notification\">\n <slot name={Slot.Notifications} />\n </section>\n );\n\n const appSwitcher = this.hasSlot(Slot.AppSwitcher) && (\n <section\n class={{\n 'six-header__app-switcher': true,\n 'six-header__app-switcher--open': this.isSectionSelected(Section.AppSwitcher),\n }}\n >\n <six-dropdown distance={13} skidding={20} placement=\"bottom-end\" ref={this.setupAppSwitcher}>\n <div slot=\"trigger\" class=\"six-header__app-switcher-dropdown\">\n <a onClick={this.appNameClicked} class=\"six-header__selected-app\">\n {this.selectedApp}\n </a>\n <six-icon-button name=\"apps\" />\n </div>\n <slot name={Slot.AppSwitcher} />\n </six-dropdown>\n </section>\n );\n\n const profile = this.hasSlot(Slot.Profile) && (\n <section\n class={{\n 'six-header__profile': true,\n 'six-header__profile--open': this.isSectionSelected(Section.Profile),\n }}\n >\n <six-dropdown distance={17} skidding={20} placement=\"bottom-end\" ref={this.setupProfile}>\n <slot name=\"profile-avatar\" slot=\"trigger\" />\n <slot name=\"profile-menu\" />\n </six-dropdown>\n </section>\n );\n\n const logo = this.hasSlot(Slot.Logo) ? (\n <section>\n <slot name=\"logo\" />\n </section>\n ) : (\n <section\n class={{\n 'six-header__logo': true,\n 'six-header__logo--clickable': this.clickableLogo,\n }}\n ref={this.setupLogo}\n >\n <svg height=\"20\" viewBox=\"0 0 90 26\" xmlns=\"http://www.w3.org/2000/svg\">\n <title>SIX</title>\n <g fill=\"#DE3919\" fill-rule=\"nonzero\">\n <path d=\"m22.798 3.869c1.82-2.168 4.549-3.545 7.6-3.545h6.807v4.961h-6.807c-1.526 0-2.89.689-3.8 1.771l-12.19 14.526c-1.82 2.166-4.549 3.545-7.6 3.545h-6.808v-4.961h6.808c1.525 0 2.889-.689 3.799-1.773l12.191-14.525\" />\n <path d=\"m42.16.324h5.21v24.806h-5.21z\" />\n <path d=\"m66.743 3.869l4.195 4.999 4.195-4.999c1.819-2.168 4.549-3.545 7.6-3.545h6.806v4.961h-6.806c-1.526 0-2.89.689-3.8 1.771l-4.758 5.669 4.758 5.669c.91 1.084 2.274 1.773 3.8 1.773h6.806v4.961h-6.806c-3.051 0-5.781-1.379-7.6-3.545l-4.195-4.999-4.195 4.999c-1.82 2.166-4.55 3.545-7.6 3.545h-6.807v-4.961h6.807c1.525 0 2.889-.689 3.799-1.773l4.758-5.669-4.758-5.669c-.91-1.083-2.274-1.771-3.799-1.771h-6.807v-4.961h6.807c3.05 0 5.78 1.378 7.6 3.545\" />\n </g>\n </svg>\n </section>\n );\n\n return (\n <Host>\n <header class=\"six-header\">\n {hamburgerMenu}\n\n {logo}\n\n <section class=\"six-header__placeholder\" />\n\n <section class=\"six-header__custom\">\n <slot />\n </section>\n\n {search}\n\n {notifications}\n\n {appSwitcher}\n\n {profile}\n </header>\n\n <div\n class={{\n 'six-header__search-field': true,\n 'six-header__search-field--visible': this.isSectionSelected(Section.Search),\n 'six-header__search-field--shift-content': this.shiftContent,\n }}\n >\n <slot name={Slot.Search} />\n </div>\n </Host>\n );\n }\n}\n"]}