@six-group/ui-library 0.0.0-insider.d16ec8e → 0.0.0-insider.d82aaa2

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 (821) hide show
  1. package/README.md +9 -0
  2. package/dist/cjs/{event-listeners-dd94dcfb.js → event-listeners-fdfe838c.js} +17 -1
  3. package/dist/cjs/event-listeners-fdfe838c.js.map +1 -0
  4. package/dist/cjs/{execution-control-45c84c46.js → execution-control-b4707294.js} +1 -1
  5. package/dist/cjs/execution-control-b4707294.js.map +1 -0
  6. package/dist/cjs/{focus-visible-e0d93a95.js → focus-visible-ae2470dd.js} +1 -1
  7. package/dist/cjs/focus-visible-ae2470dd.js.map +1 -0
  8. package/dist/cjs/form-2df8c5bb.js +20 -0
  9. package/dist/cjs/form-2df8c5bb.js.map +1 -0
  10. package/dist/cjs/{form-control-7494488a.js → form-control-d369af14.js} +3 -5
  11. package/dist/cjs/form-control-d369af14.js.map +1 -0
  12. package/dist/cjs/{index-ccf35821.js → index-900437fc.js} +396 -57
  13. package/dist/cjs/index-900437fc.js.map +1 -0
  14. package/dist/cjs/index.cjs.js +94 -0
  15. package/dist/cjs/index.cjs.js.map +1 -1
  16. package/dist/cjs/loader.cjs.js +3 -12
  17. package/dist/cjs/loader.cjs.js.map +1 -1
  18. package/dist/cjs/{modal-21350fb5.js → modal-d5f074c7.js} +1 -1
  19. package/dist/cjs/modal-d5f074c7.js.map +1 -0
  20. package/dist/cjs/{popover-b5e2d5ef.js → popover-2df7e154.js} +7 -13
  21. package/dist/cjs/popover-2df7e154.js.map +1 -0
  22. package/dist/cjs/{popup-44836aaf.js → popup-f1d9910f.js} +1 -1
  23. package/dist/cjs/popup-f1d9910f.js.map +1 -0
  24. package/dist/cjs/{scroll-76e6f5d7.js → scroll-03678de1.js} +1 -1
  25. package/dist/cjs/scroll-03678de1.js.map +1 -0
  26. package/dist/cjs/set-attributes_2.cjs.entry.js +1 -1
  27. package/dist/cjs/set-attributes_2.cjs.entry.js.map +1 -1
  28. package/dist/cjs/six-alert.cjs.entry.js +1 -1
  29. package/dist/cjs/six-alert.cjs.entry.js.map +1 -1
  30. package/dist/cjs/six-avatar.cjs.entry.js +1 -1
  31. package/dist/cjs/six-avatar.cjs.entry.js.map +1 -1
  32. package/dist/cjs/six-badge.cjs.entry.js +1 -1
  33. package/dist/cjs/six-badge.cjs.entry.js.map +1 -1
  34. package/dist/cjs/six-button.cjs.entry.js +9 -3
  35. package/dist/cjs/six-button.cjs.entry.js.map +1 -1
  36. package/dist/cjs/six-card.cjs.entry.js +1 -1
  37. package/dist/cjs/six-card.cjs.entry.js.map +1 -1
  38. package/dist/cjs/six-checkbox.cjs.entry.js +11 -58
  39. package/dist/cjs/six-checkbox.cjs.entry.js.map +1 -1
  40. package/dist/cjs/six-datepicker.cjs.entry.js +29 -58
  41. package/dist/cjs/six-datepicker.cjs.entry.js.map +1 -1
  42. package/dist/cjs/six-details.cjs.entry.js +2 -2
  43. package/dist/cjs/six-details.cjs.entry.js.map +1 -1
  44. package/dist/cjs/six-dialog.cjs.entry.js +4 -4
  45. package/dist/cjs/six-dialog.cjs.entry.js.map +1 -1
  46. package/dist/cjs/six-drawer.cjs.entry.js +4 -4
  47. package/dist/cjs/six-drawer.cjs.entry.js.map +1 -1
  48. package/dist/cjs/six-dropdown_2.cjs.entry.js +5 -5
  49. package/dist/cjs/six-dropdown_2.cjs.entry.js.map +1 -1
  50. package/dist/cjs/six-error-page.cjs.entry.js +1 -1
  51. package/dist/cjs/six-error-page.cjs.entry.js.map +1 -1
  52. package/dist/cjs/six-file-list-item.cjs.entry.js +1 -1
  53. package/dist/cjs/six-file-list-item.cjs.entry.js.map +1 -1
  54. package/dist/cjs/six-file-list.cjs.entry.js +1 -1
  55. package/dist/cjs/six-file-list.cjs.entry.js.map +1 -1
  56. package/dist/cjs/six-file-upload.cjs.entry.js +1 -1
  57. package/dist/cjs/six-file-upload.cjs.entry.js.map +1 -1
  58. package/dist/cjs/six-footer.cjs.entry.js +1 -1
  59. package/dist/cjs/six-footer.cjs.entry.js.map +1 -1
  60. package/dist/cjs/six-group-label.cjs.entry.js +3 -3
  61. package/dist/cjs/six-group-label.cjs.entry.js.map +1 -1
  62. package/dist/cjs/six-header.cjs.entry.js +3 -3
  63. package/dist/cjs/six-header.cjs.entry.js.map +1 -1
  64. package/dist/cjs/six-icon-button.cjs.entry.js +2 -2
  65. package/dist/cjs/six-icon-button.cjs.entry.js.map +1 -1
  66. package/dist/cjs/six-icon.cjs.entry.js +1 -1
  67. package/dist/cjs/six-icon.cjs.entry.js.map +1 -1
  68. package/dist/cjs/six-input.cjs.entry.js +30 -89
  69. package/dist/cjs/six-input.cjs.entry.js.map +1 -1
  70. package/dist/cjs/six-item-picker.cjs.entry.js +6 -6
  71. package/dist/cjs/six-item-picker.cjs.entry.js.map +1 -1
  72. package/dist/cjs/six-language-switcher.cjs.entry.js +1 -1
  73. package/dist/cjs/six-language-switcher.cjs.entry.js.map +1 -1
  74. package/dist/cjs/six-layout-grid.cjs.entry.js +1 -1
  75. package/dist/cjs/six-layout-grid.cjs.entry.js.map +1 -1
  76. package/dist/cjs/six-main-container.cjs.entry.js +1 -1
  77. package/dist/cjs/six-main-container.cjs.entry.js.map +1 -1
  78. package/dist/cjs/six-menu-divider.cjs.entry.js +1 -1
  79. package/dist/cjs/six-menu-divider.cjs.entry.js.map +1 -1
  80. package/dist/cjs/six-menu-item.cjs.entry.js +2 -2
  81. package/dist/cjs/six-menu-item.cjs.entry.js.map +1 -1
  82. package/dist/cjs/six-menu-label.cjs.entry.js +1 -1
  83. package/dist/cjs/six-menu-label.cjs.entry.js.map +1 -1
  84. package/dist/cjs/six-picto.cjs.entry.js +1 -1
  85. package/dist/cjs/six-picto.cjs.entry.js.map +1 -1
  86. package/dist/cjs/six-progress-bar.cjs.entry.js +1 -1
  87. package/dist/cjs/six-progress-bar.cjs.entry.js.map +1 -1
  88. package/dist/cjs/six-progress-ring.cjs.entry.js +1 -1
  89. package/dist/cjs/six-progress-ring.cjs.entry.js.map +1 -1
  90. package/dist/cjs/six-radio.cjs.entry.js +26 -40
  91. package/dist/cjs/six-radio.cjs.entry.js.map +1 -1
  92. package/dist/cjs/six-range.cjs.entry.js +7 -45
  93. package/dist/cjs/six-range.cjs.entry.js.map +1 -1
  94. package/dist/cjs/six-root.cjs.entry.js +1 -1
  95. package/dist/cjs/six-root.cjs.entry.js.map +1 -1
  96. package/dist/cjs/six-search-field.cjs.entry.js +3 -3
  97. package/dist/cjs/six-search-field.cjs.entry.js.map +1 -1
  98. package/dist/cjs/six-select.cjs.entry.js +27 -66
  99. package/dist/cjs/six-select.cjs.entry.js.map +1 -1
  100. package/dist/cjs/six-sidebar-item-group.cjs.entry.js +2 -2
  101. package/dist/cjs/six-sidebar-item-group.cjs.entry.js.map +1 -1
  102. package/dist/cjs/six-sidebar-item.cjs.entry.js +1 -1
  103. package/dist/cjs/six-sidebar-item.cjs.entry.js.map +1 -1
  104. package/dist/cjs/six-sidebar.cjs.entry.js +2 -2
  105. package/dist/cjs/six-sidebar.cjs.entry.js.map +1 -1
  106. package/dist/cjs/six-spinner.cjs.entry.js +1 -1
  107. package/dist/cjs/six-spinner.cjs.entry.js.map +1 -1
  108. package/dist/cjs/six-switch.cjs.entry.js +21 -33
  109. package/dist/cjs/six-switch.cjs.entry.js.map +1 -1
  110. package/dist/cjs/six-tab-group.cjs.entry.js +3 -3
  111. package/dist/cjs/six-tab-group.cjs.entry.js.map +1 -1
  112. package/dist/cjs/six-tab-panel.cjs.entry.js +1 -1
  113. package/dist/cjs/six-tab-panel.cjs.entry.js.map +1 -1
  114. package/dist/cjs/six-tab.cjs.entry.js +1 -1
  115. package/dist/cjs/six-tab.cjs.entry.js.map +1 -1
  116. package/dist/cjs/six-tag.cjs.entry.js +2 -2
  117. package/dist/cjs/six-tag.cjs.entry.js.map +1 -1
  118. package/dist/cjs/six-textarea.cjs.entry.js +28 -77
  119. package/dist/cjs/six-textarea.cjs.entry.js.map +1 -1
  120. package/dist/cjs/six-tile.cjs.entry.js +2 -2
  121. package/dist/cjs/six-tile.cjs.entry.js.map +1 -1
  122. package/dist/cjs/six-timepicker.cjs.entry.js +21 -31
  123. package/dist/cjs/six-timepicker.cjs.entry.js.map +1 -1
  124. package/dist/cjs/six-tooltip.cjs.entry.js +2 -2
  125. package/dist/cjs/six-tooltip.cjs.entry.js.map +1 -1
  126. package/dist/cjs/{slot-bccbdb59.js → slot-6e6a400f.js} +1 -1
  127. package/dist/cjs/slot-6e6a400f.js.map +1 -0
  128. package/dist/cjs/{types-64878648.js → types-47199040.js} +1 -1
  129. package/dist/cjs/types-47199040.js.map +1 -0
  130. package/dist/cjs/ui-library.cjs.js +3 -6
  131. package/dist/cjs/ui-library.cjs.js.map +1 -1
  132. package/dist/collection/collection-manifest.json +54 -55
  133. package/dist/collection/components/six-alert/six-alert.js +15 -8
  134. package/dist/collection/components/six-alert/six-alert.js.map +1 -1
  135. package/dist/collection/components/six-alert/test/six-alert.spec.js +25 -0
  136. package/dist/collection/components/six-alert/test/six-alert.spec.js.map +1 -0
  137. package/dist/collection/components/six-avatar/six-avatar.js +1 -1
  138. package/dist/collection/components/six-avatar/test/six-avatar.spec.js +26 -0
  139. package/dist/collection/components/six-avatar/test/six-avatar.spec.js.map +1 -0
  140. package/dist/collection/components/six-badge/six-badge.js +1 -1
  141. package/dist/collection/components/six-badge/test/six-badge.spec.js +20 -0
  142. package/dist/collection/components/six-badge/test/six-badge.spec.js.map +1 -0
  143. package/dist/collection/components/six-button/six-button.js +19 -8
  144. package/dist/collection/components/six-button/six-button.js.map +1 -1
  145. package/dist/collection/components/six-button/test/six-button.spec.js +69 -0
  146. package/dist/collection/components/six-button/test/six-button.spec.js.map +1 -0
  147. package/dist/collection/components/six-card/six-card.js +1 -1
  148. package/dist/collection/components/six-card/test/six-card.spec.js +18 -0
  149. package/dist/collection/components/six-card/test/six-card.spec.js.map +1 -0
  150. package/dist/collection/components/six-checkbox/six-checkbox.js +37 -164
  151. package/dist/collection/components/six-checkbox/six-checkbox.js.map +1 -1
  152. package/dist/collection/components/six-checkbox/test/six-checkbox.spec.js +79 -0
  153. package/dist/collection/components/six-checkbox/test/six-checkbox.spec.js.map +1 -0
  154. package/dist/collection/components/six-datepicker/components/day-selection.js +1 -1
  155. package/dist/collection/components/six-datepicker/components/month-selection.js +2 -2
  156. package/dist/collection/components/six-datepicker/components/year-selection.js +2 -2
  157. package/dist/collection/components/six-datepicker/six-datepicker.js +120 -182
  158. package/dist/collection/components/six-datepicker/six-datepicker.js.map +1 -1
  159. package/dist/collection/components/six-datepicker/test/six-datepicker.spec.js +26 -0
  160. package/dist/collection/components/six-datepicker/test/six-datepicker.spec.js.map +1 -0
  161. package/dist/collection/components/six-details/six-details.js +14 -8
  162. package/dist/collection/components/six-details/six-details.js.map +1 -1
  163. package/dist/collection/components/six-details/test/six-details.spec.js +36 -0
  164. package/dist/collection/components/six-details/test/six-details.spec.js.map +1 -0
  165. package/dist/collection/components/six-dialog/six-dialog.js +21 -13
  166. package/dist/collection/components/six-dialog/six-dialog.js.map +1 -1
  167. package/dist/collection/components/six-dialog/test/six-dialog.spec.js +34 -0
  168. package/dist/collection/components/six-dialog/test/six-dialog.spec.js.map +1 -0
  169. package/dist/collection/components/six-drawer/six-drawer.js +21 -13
  170. package/dist/collection/components/six-drawer/six-drawer.js.map +1 -1
  171. package/dist/collection/components/six-drawer/test/six-drawer.spec.js +34 -0
  172. package/dist/collection/components/six-drawer/test/six-drawer.spec.js.map +1 -0
  173. package/dist/collection/components/six-dropdown/six-dropdown.js +30 -18
  174. package/dist/collection/components/six-dropdown/six-dropdown.js.map +1 -1
  175. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js +122 -0
  176. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js.map +1 -0
  177. package/dist/collection/components/six-error-page/six-error-page.js +1 -1
  178. package/dist/collection/components/six-error-page/test/six-error-page.spec.js +240 -0
  179. package/dist/collection/components/six-error-page/test/six-error-page.spec.js.map +1 -0
  180. package/dist/collection/components/six-file-list/six-file-list.js +1 -1
  181. package/dist/collection/components/six-file-list/test/six-file-list.spec.js +67 -0
  182. package/dist/collection/components/six-file-list/test/six-file-list.spec.js.map +1 -0
  183. package/dist/collection/components/six-file-list-item/six-file-list-item.js +5 -3
  184. package/dist/collection/components/six-file-list-item/six-file-list-item.js.map +1 -1
  185. package/dist/collection/components/six-file-list-item/test/six-file-list-item.spec.js +169 -0
  186. package/dist/collection/components/six-file-list-item/test/six-file-list-item.spec.js.map +1 -0
  187. package/dist/collection/components/six-file-upload/six-file-upload.js +5 -3
  188. package/dist/collection/components/six-file-upload/six-file-upload.js.map +1 -1
  189. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js +103 -0
  190. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js.map +1 -0
  191. package/dist/collection/components/six-footer/six-footer.js +1 -1
  192. package/dist/collection/components/six-footer/test/six-footer.spec.js +21 -0
  193. package/dist/collection/components/six-footer/test/six-footer.spec.js.map +1 -0
  194. package/dist/collection/components/six-group-label/six-group-label.js +5 -5
  195. package/dist/collection/components/six-group-label/six-group-label.js.map +1 -1
  196. package/dist/collection/components/six-group-label/test/six-group-label.spec.js +43 -0
  197. package/dist/collection/components/six-group-label/test/six-group-label.spec.js.map +1 -0
  198. package/dist/collection/components/six-header/six-header.js +19 -11
  199. package/dist/collection/components/six-header/six-header.js.map +1 -1
  200. package/dist/collection/components/six-header/test/six-header.spec.js +133 -0
  201. package/dist/collection/components/six-header/test/six-header.spec.js.map +1 -0
  202. package/dist/collection/components/six-icon/six-icon.js +1 -1
  203. package/dist/collection/components/six-icon/test/six-icon.spec.js +20 -0
  204. package/dist/collection/components/six-icon/test/six-icon.spec.js.map +1 -0
  205. package/dist/collection/components/six-icon-button/six-icon-button.js +2 -2
  206. package/dist/collection/components/six-icon-button/test/six-icon-button.spec.js +23 -0
  207. package/dist/collection/components/six-icon-button/test/six-icon-button.spec.js.map +1 -0
  208. package/dist/collection/components/six-input/six-input.css +1 -1
  209. package/dist/collection/components/six-input/six-input.js +91 -277
  210. package/dist/collection/components/six-input/six-input.js.map +1 -1
  211. package/dist/collection/components/six-input/test/six-input.spec.js +37 -0
  212. package/dist/collection/components/six-input/test/six-input.spec.js.map +1 -0
  213. package/dist/collection/components/six-item-picker/six-item-picker.js +14 -10
  214. package/dist/collection/components/six-item-picker/six-item-picker.js.map +1 -1
  215. package/dist/collection/components/six-item-picker/test/six-item-picker.spec.js +90 -0
  216. package/dist/collection/components/six-item-picker/test/six-item-picker.spec.js.map +1 -0
  217. package/dist/collection/components/six-language-switcher/six-language-switcher.js +5 -3
  218. package/dist/collection/components/six-language-switcher/six-language-switcher.js.map +1 -1
  219. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js +196 -0
  220. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js.map +1 -0
  221. package/dist/collection/components/six-layout-grid/six-layout-grid.js +1 -1
  222. package/dist/collection/components/six-layout-grid/test/six-layout-grid.spec.js +18 -0
  223. package/dist/collection/components/six-layout-grid/test/six-layout-grid.spec.js.map +1 -0
  224. package/dist/collection/components/six-main-container/six-main-container.js +1 -1
  225. package/dist/collection/components/six-main-container/test/six-main-container.spec.js +22 -0
  226. package/dist/collection/components/six-main-container/test/six-main-container.spec.js.map +1 -0
  227. package/dist/collection/components/six-menu/six-menu.js +12 -8
  228. package/dist/collection/components/six-menu/six-menu.js.map +1 -1
  229. package/dist/collection/components/six-menu/test/six-menu.spec.js +93 -0
  230. package/dist/collection/components/six-menu/test/six-menu.spec.js.map +1 -0
  231. package/dist/collection/components/six-menu-divider/six-menu-divider.js +1 -1
  232. package/dist/collection/components/six-menu-divider/test/six-menu-divider.spec.js +18 -0
  233. package/dist/collection/components/six-menu-divider/test/six-menu-divider.spec.js.map +1 -0
  234. package/dist/collection/components/six-menu-item/six-menu-item.js +10 -6
  235. package/dist/collection/components/six-menu-item/six-menu-item.js.map +1 -1
  236. package/dist/collection/components/six-menu-item/test/six-menu-item.spec.js +33 -0
  237. package/dist/collection/components/six-menu-item/test/six-menu-item.spec.js.map +1 -0
  238. package/dist/collection/components/six-menu-label/six-menu-label.js +1 -1
  239. package/dist/collection/components/six-menu-label/test/six-menu-label.spec.js +20 -0
  240. package/dist/collection/components/six-menu-label/test/six-menu-label.spec.js.map +1 -0
  241. package/dist/collection/components/six-picto/six-picto.js +1 -1
  242. package/dist/collection/components/six-picto/test/six-picto.spec.js +33 -0
  243. package/dist/collection/components/six-picto/test/six-picto.spec.js.map +1 -0
  244. package/dist/collection/components/six-progress-bar/six-progress-bar.js +1 -1
  245. package/dist/collection/components/six-progress-bar/test/six-progress-bar.spec.js +24 -0
  246. package/dist/collection/components/six-progress-bar/test/six-progress-bar.spec.js.map +1 -0
  247. package/dist/collection/components/six-progress-ring/six-progress-ring.js +1 -1
  248. package/dist/collection/components/six-progress-ring/test/six-progress-ring.spec.js +26 -0
  249. package/dist/collection/components/six-progress-ring/test/six-progress-ring.spec.js.map +1 -0
  250. package/dist/collection/components/six-radio/six-radio.js +42 -115
  251. package/dist/collection/components/six-radio/six-radio.js.map +1 -1
  252. package/dist/collection/components/six-radio/test/six-radio.spec.js +63 -0
  253. package/dist/collection/components/six-radio/test/six-radio.spec.js.map +1 -0
  254. package/dist/collection/components/six-range/six-range.js +43 -129
  255. package/dist/collection/components/six-range/six-range.js.map +1 -1
  256. package/dist/collection/components/six-range/test/six-range.spec.js +32 -0
  257. package/dist/collection/components/six-range/test/six-range.spec.js.map +1 -0
  258. package/dist/collection/components/six-root/six-root.js +5 -3
  259. package/dist/collection/components/six-root/six-root.js.map +1 -1
  260. package/dist/collection/components/six-root/test/six-root.spec.js +43 -0
  261. package/dist/collection/components/six-root/test/six-root.spec.js.map +1 -0
  262. package/dist/collection/components/six-search-field/six-search-field.js +5 -4
  263. package/dist/collection/components/six-search-field/six-search-field.js.map +1 -1
  264. package/dist/collection/components/six-search-field/test/six-search-field.spec.js +22 -0
  265. package/dist/collection/components/six-search-field/test/six-search-field.spec.js.map +1 -0
  266. package/dist/collection/components/six-select/six-select.css +6 -9
  267. package/dist/collection/components/six-select/six-select.js +75 -190
  268. package/dist/collection/components/six-select/six-select.js.map +1 -1
  269. package/dist/collection/components/six-select/test/six-select.spec.js +82 -0
  270. package/dist/collection/components/six-select/test/six-select.spec.js.map +1 -0
  271. package/dist/collection/components/six-select/test/util.spec.js +81 -0
  272. package/dist/collection/components/six-select/test/util.spec.js.map +1 -0
  273. package/dist/collection/components/six-sidebar/six-sidebar.js +26 -14
  274. package/dist/collection/components/six-sidebar/six-sidebar.js.map +1 -1
  275. package/dist/collection/components/six-sidebar/test/six-sidebar.spec.js +22 -0
  276. package/dist/collection/components/six-sidebar/test/six-sidebar.spec.js.map +1 -0
  277. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js +1 -1
  278. package/dist/collection/components/six-sidebar-item/test/six-sidebar-item.spec.js +50 -0
  279. package/dist/collection/components/six-sidebar-item/test/six-sidebar-item.spec.js.map +1 -0
  280. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js +2 -2
  281. package/dist/collection/components/six-sidebar-item-group/test/six-sidebar-item-group.spec.js +53 -0
  282. package/dist/collection/components/six-sidebar-item-group/test/six-sidebar-item-group.spec.js.map +1 -0
  283. package/dist/collection/components/six-spinner/six-spinner.js +1 -1
  284. package/dist/collection/components/six-spinner/test/six-spinner.spec.js +37 -0
  285. package/dist/collection/components/six-spinner/test/six-spinner.spec.js.map +1 -0
  286. package/dist/collection/components/six-stage-indicator/six-stage-indicator.js +3 -2
  287. package/dist/collection/components/six-stage-indicator/six-stage-indicator.js.map +1 -1
  288. package/dist/collection/components/six-stage-indicator/test/six-stage-indicator.spec.js +117 -0
  289. package/dist/collection/components/six-stage-indicator/test/six-stage-indicator.spec.js.map +1 -0
  290. package/dist/collection/components/six-switch/six-switch.css +77 -0
  291. package/dist/collection/components/six-switch/six-switch.js +67 -106
  292. package/dist/collection/components/six-switch/six-switch.js.map +1 -1
  293. package/dist/collection/components/six-switch/test/six-switch.spec.js +69 -0
  294. package/dist/collection/components/six-switch/test/six-switch.spec.js.map +1 -0
  295. package/dist/collection/components/six-tab/six-tab.js +9 -5
  296. package/dist/collection/components/six-tab/six-tab.js.map +1 -1
  297. package/dist/collection/components/six-tab/test/six-tab.spec.js +20 -0
  298. package/dist/collection/components/six-tab/test/six-tab.spec.js.map +1 -0
  299. package/dist/collection/components/six-tab-group/six-tab-group.js +10 -7
  300. package/dist/collection/components/six-tab-group/six-tab-group.js.map +1 -1
  301. package/dist/collection/components/six-tab-group/test/six-tab-group.spec.js +45 -0
  302. package/dist/collection/components/six-tab-group/test/six-tab-group.spec.js.map +1 -0
  303. package/dist/collection/components/six-tab-panel/six-tab-panel.js +1 -1
  304. package/dist/collection/components/six-tab-panel/test/six-tab-panel.spec.js +20 -0
  305. package/dist/collection/components/six-tab-panel/test/six-tab-panel.spec.js.map +1 -0
  306. package/dist/collection/components/six-tag/six-tag.css +6 -0
  307. package/dist/collection/components/six-tag/six-tag.js +3 -2
  308. package/dist/collection/components/six-tag/six-tag.js.map +1 -1
  309. package/dist/collection/components/six-tag/test/six-tag.spec.js +42 -0
  310. package/dist/collection/components/six-tag/test/six-tag.spec.js.map +1 -0
  311. package/dist/collection/components/six-textarea/six-textarea.js +88 -213
  312. package/dist/collection/components/six-textarea/six-textarea.js.map +1 -1
  313. package/dist/collection/components/six-textarea/test/six-textarea.spec.js +117 -0
  314. package/dist/collection/components/six-textarea/test/six-textarea.spec.js.map +1 -0
  315. package/dist/collection/components/six-tile/six-tile.js +10 -6
  316. package/dist/collection/components/six-tile/six-tile.js.map +1 -1
  317. package/dist/collection/components/six-tile/test/six-tile.spec.js +69 -0
  318. package/dist/collection/components/six-tile/test/six-tile.spec.js.map +1 -0
  319. package/dist/collection/components/six-timepicker/six-timepicker.js +60 -107
  320. package/dist/collection/components/six-timepicker/six-timepicker.js.map +1 -1
  321. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js +496 -0
  322. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js.map +1 -0
  323. package/dist/collection/components/six-tooltip/six-tooltip.js +14 -8
  324. package/dist/collection/components/six-tooltip/six-tooltip.js.map +1 -1
  325. package/dist/collection/components/six-tooltip/test/six-tooltip.spec.js +28 -0
  326. package/dist/collection/components/six-tooltip/test/six-tooltip.spec.js.map +1 -0
  327. package/dist/collection/functional-components/form-control/form-control.js +2 -4
  328. package/dist/collection/functional-components/form-control/form-control.js.map +1 -1
  329. package/dist/collection/index.js +1 -1
  330. package/dist/collection/index.js.map +1 -1
  331. package/dist/collection/utils/date-util.js +2 -1
  332. package/dist/collection/utils/date-util.js.map +1 -1
  333. package/dist/collection/utils/date-util.spec.js +995 -0
  334. package/dist/collection/utils/date-util.spec.js.map +1 -0
  335. package/dist/collection/utils/error-messages.js +91 -0
  336. package/dist/collection/utils/error-messages.js.map +1 -0
  337. package/dist/collection/utils/event-listeners.js +16 -0
  338. package/dist/collection/utils/event-listeners.js.map +1 -1
  339. package/dist/collection/utils/form.js +15 -0
  340. package/dist/collection/utils/form.js.map +1 -0
  341. package/dist/collection/utils/popover.js +1 -1
  342. package/dist/collection/utils/scroll.js +1 -1
  343. package/dist/collection/utils/scroll.spec.js +122 -0
  344. package/dist/collection/utils/scroll.spec.js.map +1 -0
  345. package/dist/collection/utils/time.util.spec.js +368 -0
  346. package/dist/collection/utils/time.util.spec.js.map +1 -0
  347. package/dist/collection/wrappers/set-attributes/set-attributes.js +1 -1
  348. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js +16 -0
  349. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js.map +1 -0
  350. package/dist/components/event-listeners.js +16 -0
  351. package/dist/components/event-listeners.js.map +1 -1
  352. package/dist/components/execution-control.js.map +1 -1
  353. package/dist/components/focus-visible.js.map +1 -1
  354. package/dist/components/form-control.js +1 -3
  355. package/dist/components/form-control.js.map +1 -1
  356. package/dist/components/form.js +18 -0
  357. package/dist/components/form.js.map +1 -0
  358. package/dist/components/index.js +92 -3
  359. package/dist/components/index.js.map +1 -1
  360. package/dist/components/modal.js.map +1 -1
  361. package/dist/components/popover.js +6 -12
  362. package/dist/components/popover.js.map +1 -1
  363. package/dist/components/scroll.js.map +1 -1
  364. package/dist/components/set-attributes2.js.map +1 -1
  365. package/dist/components/six-alert.js.map +1 -1
  366. package/dist/components/six-avatar.js.map +1 -1
  367. package/dist/components/six-badge.js.map +1 -1
  368. package/dist/components/six-button.js +7 -1
  369. package/dist/components/six-button.js.map +1 -1
  370. package/dist/components/six-card.js.map +1 -1
  371. package/dist/components/six-checkbox.js +9 -62
  372. package/dist/components/six-checkbox.js.map +1 -1
  373. package/dist/components/six-datepicker.js +29 -61
  374. package/dist/components/six-datepicker.js.map +1 -1
  375. package/dist/components/six-details2.js.map +1 -1
  376. package/dist/components/six-dialog.js.map +1 -1
  377. package/dist/components/six-drawer.js.map +1 -1
  378. package/dist/components/six-dropdown2.js.map +1 -1
  379. package/dist/components/six-error-page.js.map +1 -1
  380. package/dist/components/six-file-list-item.js.map +1 -1
  381. package/dist/components/six-file-list.js.map +1 -1
  382. package/dist/components/six-file-upload.js.map +1 -1
  383. package/dist/components/six-footer.js.map +1 -1
  384. package/dist/components/six-group-label.js +1 -1
  385. package/dist/components/six-group-label.js.map +1 -1
  386. package/dist/components/six-header.js.map +1 -1
  387. package/dist/components/six-icon-button2.js.map +1 -1
  388. package/dist/components/six-icon2.js.map +1 -1
  389. package/dist/components/six-input2.js +31 -99
  390. package/dist/components/six-input2.js.map +1 -1
  391. package/dist/components/six-item-picker2.js +2 -2
  392. package/dist/components/six-item-picker2.js.map +1 -1
  393. package/dist/components/six-language-switcher.js.map +1 -1
  394. package/dist/components/six-layout-grid.js.map +1 -1
  395. package/dist/components/six-main-container.js.map +1 -1
  396. package/dist/components/six-menu-divider.js.map +1 -1
  397. package/dist/components/six-menu-item2.js.map +1 -1
  398. package/dist/components/six-menu-label.js.map +1 -1
  399. package/dist/components/six-menu2.js.map +1 -1
  400. package/dist/components/six-picto2.js.map +1 -1
  401. package/dist/components/six-progress-bar.js.map +1 -1
  402. package/dist/components/six-progress-ring.js.map +1 -1
  403. package/dist/components/six-radio.js +28 -46
  404. package/dist/components/six-radio.js.map +1 -1
  405. package/dist/components/six-range.js +8 -50
  406. package/dist/components/six-range.js.map +1 -1
  407. package/dist/components/six-root.js.map +1 -1
  408. package/dist/components/six-search-field.js.map +1 -1
  409. package/dist/components/six-select.js +25 -70
  410. package/dist/components/six-select.js.map +1 -1
  411. package/dist/components/six-sidebar-item-group.js.map +1 -1
  412. package/dist/components/six-sidebar-item.js.map +1 -1
  413. package/dist/components/six-sidebar.js.map +1 -1
  414. package/dist/components/six-spinner2.js.map +1 -1
  415. package/dist/components/six-stage-indicator2.js.map +1 -1
  416. package/dist/components/six-switch.js +24 -38
  417. package/dist/components/six-switch.js.map +1 -1
  418. package/dist/components/six-tab-group.js.map +1 -1
  419. package/dist/components/six-tab-panel.js.map +1 -1
  420. package/dist/components/six-tab.js.map +1 -1
  421. package/dist/components/six-tag2.js +1 -1
  422. package/dist/components/six-tag2.js.map +1 -1
  423. package/dist/components/six-textarea.js +29 -84
  424. package/dist/components/six-textarea.js.map +1 -1
  425. package/dist/components/six-tile.js.map +1 -1
  426. package/dist/components/six-timepicker2.js +18 -31
  427. package/dist/components/six-timepicker2.js.map +1 -1
  428. package/dist/components/six-tooltip2.js.map +1 -1
  429. package/dist/components/slot.js.map +1 -1
  430. package/dist/components.d.ts +361 -88
  431. package/dist/components.json +3830 -777
  432. package/dist/esm/{event-listeners-6b434035.js → event-listeners-f6e5b0ab.js} +17 -1
  433. package/dist/esm/event-listeners-f6e5b0ab.js.map +1 -0
  434. package/dist/esm/{execution-control-72cc50f4.js → execution-control-e0892a05.js} +1 -1
  435. package/dist/esm/execution-control-e0892a05.js.map +1 -0
  436. package/dist/esm/{focus-visible-fa7129a0.js → focus-visible-fc6ac671.js} +1 -1
  437. package/dist/esm/focus-visible-fc6ac671.js.map +1 -0
  438. package/dist/esm/form-81252534.js +18 -0
  439. package/dist/esm/form-81252534.js.map +1 -0
  440. package/dist/esm/{form-control-44a50dd6.js → form-control-32cb533f.js} +3 -5
  441. package/dist/esm/form-control-32cb533f.js.map +1 -0
  442. package/dist/esm/{index-371fb9d4.js → index-8a74f992.js} +397 -57
  443. package/dist/esm/index-8a74f992.js.map +1 -0
  444. package/dist/esm/index.js +91 -0
  445. package/dist/esm/index.js.map +1 -1
  446. package/dist/esm/loader.js +4 -13
  447. package/dist/esm/loader.js.map +1 -1
  448. package/dist/esm/{modal-b1d96441.js → modal-7d32e141.js} +1 -1
  449. package/dist/esm/modal-7d32e141.js.map +1 -0
  450. package/dist/esm/{popover-1aacbae8.js → popover-136d1f73.js} +7 -13
  451. package/dist/esm/popover-136d1f73.js.map +1 -0
  452. package/dist/esm/{popup-678b8592.js → popup-7f89a001.js} +1 -1
  453. package/dist/esm/popup-7f89a001.js.map +1 -0
  454. package/dist/esm/{scroll-180b53fd.js → scroll-3fb087a2.js} +1 -1
  455. package/dist/esm/scroll-3fb087a2.js.map +1 -0
  456. package/dist/esm/set-attributes_2.entry.js +1 -1
  457. package/dist/esm/set-attributes_2.entry.js.map +1 -1
  458. package/dist/esm/six-alert.entry.js +1 -1
  459. package/dist/esm/six-alert.entry.js.map +1 -1
  460. package/dist/esm/six-avatar.entry.js +1 -1
  461. package/dist/esm/six-avatar.entry.js.map +1 -1
  462. package/dist/esm/six-badge.entry.js +1 -1
  463. package/dist/esm/six-badge.entry.js.map +1 -1
  464. package/dist/esm/six-button.entry.js +9 -3
  465. package/dist/esm/six-button.entry.js.map +1 -1
  466. package/dist/esm/six-card.entry.js +1 -1
  467. package/dist/esm/six-card.entry.js.map +1 -1
  468. package/dist/esm/six-checkbox.entry.js +11 -58
  469. package/dist/esm/six-checkbox.entry.js.map +1 -1
  470. package/dist/esm/six-datepicker.entry.js +29 -58
  471. package/dist/esm/six-datepicker.entry.js.map +1 -1
  472. package/dist/esm/six-details.entry.js +2 -2
  473. package/dist/esm/six-details.entry.js.map +1 -1
  474. package/dist/esm/six-dialog.entry.js +4 -4
  475. package/dist/esm/six-dialog.entry.js.map +1 -1
  476. package/dist/esm/six-drawer.entry.js +4 -4
  477. package/dist/esm/six-drawer.entry.js.map +1 -1
  478. package/dist/esm/six-dropdown_2.entry.js +5 -5
  479. package/dist/esm/six-dropdown_2.entry.js.map +1 -1
  480. package/dist/esm/six-error-page.entry.js +1 -1
  481. package/dist/esm/six-error-page.entry.js.map +1 -1
  482. package/dist/esm/six-file-list-item.entry.js +1 -1
  483. package/dist/esm/six-file-list-item.entry.js.map +1 -1
  484. package/dist/esm/six-file-list.entry.js +1 -1
  485. package/dist/esm/six-file-list.entry.js.map +1 -1
  486. package/dist/esm/six-file-upload.entry.js +1 -1
  487. package/dist/esm/six-file-upload.entry.js.map +1 -1
  488. package/dist/esm/six-footer.entry.js +1 -1
  489. package/dist/esm/six-footer.entry.js.map +1 -1
  490. package/dist/esm/six-group-label.entry.js +3 -3
  491. package/dist/esm/six-group-label.entry.js.map +1 -1
  492. package/dist/esm/six-header.entry.js +3 -3
  493. package/dist/esm/six-header.entry.js.map +1 -1
  494. package/dist/esm/six-icon-button.entry.js +2 -2
  495. package/dist/esm/six-icon-button.entry.js.map +1 -1
  496. package/dist/esm/six-icon.entry.js +1 -1
  497. package/dist/esm/six-icon.entry.js.map +1 -1
  498. package/dist/esm/six-input.entry.js +30 -89
  499. package/dist/esm/six-input.entry.js.map +1 -1
  500. package/dist/esm/six-item-picker.entry.js +6 -6
  501. package/dist/esm/six-item-picker.entry.js.map +1 -1
  502. package/dist/esm/six-language-switcher.entry.js +1 -1
  503. package/dist/esm/six-language-switcher.entry.js.map +1 -1
  504. package/dist/esm/six-layout-grid.entry.js +1 -1
  505. package/dist/esm/six-layout-grid.entry.js.map +1 -1
  506. package/dist/esm/six-main-container.entry.js +1 -1
  507. package/dist/esm/six-main-container.entry.js.map +1 -1
  508. package/dist/esm/six-menu-divider.entry.js +1 -1
  509. package/dist/esm/six-menu-divider.entry.js.map +1 -1
  510. package/dist/esm/six-menu-item.entry.js +2 -2
  511. package/dist/esm/six-menu-item.entry.js.map +1 -1
  512. package/dist/esm/six-menu-label.entry.js +1 -1
  513. package/dist/esm/six-menu-label.entry.js.map +1 -1
  514. package/dist/esm/six-picto.entry.js +1 -1
  515. package/dist/esm/six-picto.entry.js.map +1 -1
  516. package/dist/esm/six-progress-bar.entry.js +1 -1
  517. package/dist/esm/six-progress-bar.entry.js.map +1 -1
  518. package/dist/esm/six-progress-ring.entry.js +1 -1
  519. package/dist/esm/six-progress-ring.entry.js.map +1 -1
  520. package/dist/esm/six-radio.entry.js +26 -40
  521. package/dist/esm/six-radio.entry.js.map +1 -1
  522. package/dist/esm/six-range.entry.js +7 -45
  523. package/dist/esm/six-range.entry.js.map +1 -1
  524. package/dist/esm/six-root.entry.js +1 -1
  525. package/dist/esm/six-root.entry.js.map +1 -1
  526. package/dist/esm/six-search-field.entry.js +3 -3
  527. package/dist/esm/six-search-field.entry.js.map +1 -1
  528. package/dist/esm/six-select.entry.js +27 -66
  529. package/dist/esm/six-select.entry.js.map +1 -1
  530. package/dist/esm/six-sidebar-item-group.entry.js +2 -2
  531. package/dist/esm/six-sidebar-item-group.entry.js.map +1 -1
  532. package/dist/esm/six-sidebar-item.entry.js +1 -1
  533. package/dist/esm/six-sidebar-item.entry.js.map +1 -1
  534. package/dist/esm/six-sidebar.entry.js +2 -2
  535. package/dist/esm/six-sidebar.entry.js.map +1 -1
  536. package/dist/esm/six-spinner.entry.js +1 -1
  537. package/dist/esm/six-spinner.entry.js.map +1 -1
  538. package/dist/esm/six-switch.entry.js +21 -33
  539. package/dist/esm/six-switch.entry.js.map +1 -1
  540. package/dist/esm/six-tab-group.entry.js +3 -3
  541. package/dist/esm/six-tab-group.entry.js.map +1 -1
  542. package/dist/esm/six-tab-panel.entry.js +1 -1
  543. package/dist/esm/six-tab-panel.entry.js.map +1 -1
  544. package/dist/esm/six-tab.entry.js +1 -1
  545. package/dist/esm/six-tab.entry.js.map +1 -1
  546. package/dist/esm/six-tag.entry.js +2 -2
  547. package/dist/esm/six-tag.entry.js.map +1 -1
  548. package/dist/esm/six-textarea.entry.js +28 -77
  549. package/dist/esm/six-textarea.entry.js.map +1 -1
  550. package/dist/esm/six-tile.entry.js +2 -2
  551. package/dist/esm/six-tile.entry.js.map +1 -1
  552. package/dist/esm/six-timepicker.entry.js +21 -31
  553. package/dist/esm/six-timepicker.entry.js.map +1 -1
  554. package/dist/esm/six-tooltip.entry.js +2 -2
  555. package/dist/esm/six-tooltip.entry.js.map +1 -1
  556. package/dist/esm/{slot-2e64df19.js → slot-ad36df3a.js} +1 -1
  557. package/dist/esm/slot-ad36df3a.js.map +1 -0
  558. package/dist/esm/{types-4b10b413.js → types-59b455aa.js} +1 -1
  559. package/dist/esm/types-59b455aa.js.map +1 -0
  560. package/dist/esm/ui-library.js +4 -7
  561. package/dist/esm/ui-library.js.map +1 -1
  562. package/dist/types/components/six-checkbox/six-checkbox.d.ts +5 -21
  563. package/dist/types/components/six-datepicker/six-datepicker.d.ts +11 -17
  564. package/dist/types/components/six-group-label/six-group-label.d.ts +1 -1
  565. package/dist/types/components/six-input/six-input.d.ts +7 -33
  566. package/dist/types/components/six-radio/six-radio.d.ts +5 -15
  567. package/dist/types/components/six-range/six-range.d.ts +6 -21
  568. package/dist/types/components/six-select/six-select.d.ts +9 -24
  569. package/dist/types/components/six-switch/six-switch.d.ts +11 -13
  570. package/dist/types/components/six-textarea/six-textarea.d.ts +7 -26
  571. package/dist/types/components/six-timepicker/six-timepicker.d.ts +7 -12
  572. package/dist/types/components.d.ts +94 -341
  573. package/dist/types/functional-components/form-control/form-control.d.ts +1 -3
  574. package/dist/types/index.d.ts +1 -0
  575. package/dist/types/stencil-public-runtime.d.ts +15 -2
  576. package/dist/types/types.d.ts +2 -0
  577. package/dist/types/utils/date-util.d.ts +1 -0
  578. package/dist/types/utils/error-messages.d.ts +42 -0
  579. package/dist/types/utils/event-listeners.d.ts +4 -3
  580. package/dist/types/utils/form.d.ts +1 -0
  581. package/dist/ui-library/index.esm.js +1 -1
  582. package/dist/ui-library/index.esm.js.map +1 -1
  583. package/dist/ui-library/p-02981b91.entry.js +2 -0
  584. package/dist/ui-library/p-02981b91.entry.js.map +1 -0
  585. package/dist/ui-library/{p-25a3bf57.js → p-0f510624.js} +1 -1
  586. package/dist/ui-library/p-0f510624.js.map +1 -0
  587. package/dist/ui-library/{p-bf4a35ec.js → p-0fdb185d.js} +1 -1
  588. package/dist/ui-library/p-0fdb185d.js.map +1 -0
  589. package/dist/ui-library/{p-f29ba9cb.entry.js → p-1256cc0a.entry.js} +2 -2
  590. package/dist/ui-library/p-1256cc0a.entry.js.map +1 -0
  591. package/dist/ui-library/{p-5084ca7c.entry.js → p-13b43e04.entry.js} +2 -2
  592. package/dist/ui-library/p-13b43e04.entry.js.map +1 -0
  593. package/dist/ui-library/{p-d87a6f4d.js → p-15559d38.js} +1 -1
  594. package/dist/ui-library/p-15559d38.js.map +1 -0
  595. package/dist/ui-library/{p-5c60227f.entry.js → p-19ed7a4c.entry.js} +2 -2
  596. package/dist/ui-library/p-19ed7a4c.entry.js.map +1 -0
  597. package/dist/ui-library/{p-965fa6a6.entry.js → p-1d5ee1a0.entry.js} +2 -2
  598. package/dist/ui-library/p-1d5ee1a0.entry.js.map +1 -0
  599. package/dist/ui-library/{p-eb8f05a9.js → p-1f18768a.js} +1 -1
  600. package/dist/ui-library/p-1f18768a.js.map +1 -0
  601. package/dist/ui-library/{p-deb01174.entry.js → p-21b3b321.entry.js} +2 -2
  602. package/dist/ui-library/p-21b3b321.entry.js.map +1 -0
  603. package/dist/ui-library/p-264d4ea8.entry.js +2 -0
  604. package/dist/ui-library/p-264d4ea8.entry.js.map +1 -0
  605. package/dist/ui-library/{p-73325eec.entry.js → p-29ac3d7d.entry.js} +2 -2
  606. package/dist/ui-library/p-29ac3d7d.entry.js.map +1 -0
  607. package/dist/ui-library/{p-713684c7.entry.js → p-314b2096.entry.js} +2 -2
  608. package/dist/ui-library/p-314b2096.entry.js.map +1 -0
  609. package/dist/ui-library/{p-f974a184.entry.js → p-330a4988.entry.js} +2 -2
  610. package/dist/ui-library/p-330a4988.entry.js.map +1 -0
  611. package/dist/ui-library/{p-a5143b8d.entry.js → p-346f9557.entry.js} +2 -2
  612. package/dist/ui-library/p-346f9557.entry.js.map +1 -0
  613. package/dist/ui-library/{p-a3cc0521.entry.js → p-37557787.entry.js} +2 -2
  614. package/dist/ui-library/p-37557787.entry.js.map +1 -0
  615. package/dist/ui-library/{p-cf1133a0.entry.js → p-3cc5addb.entry.js} +2 -2
  616. package/dist/ui-library/p-3cc5addb.entry.js.map +1 -0
  617. package/dist/ui-library/p-3d9de119.entry.js +2 -0
  618. package/dist/ui-library/p-3d9de119.entry.js.map +1 -0
  619. package/dist/ui-library/{p-cf1d36c0.entry.js → p-411ed539.entry.js} +2 -2
  620. package/dist/ui-library/p-411ed539.entry.js.map +1 -0
  621. package/dist/ui-library/{p-2a8ad91b.entry.js → p-4705a51e.entry.js} +2 -2
  622. package/dist/ui-library/p-4705a51e.entry.js.map +1 -0
  623. package/dist/ui-library/p-4abed9df.entry.js +2 -0
  624. package/dist/ui-library/p-4abed9df.entry.js.map +1 -0
  625. package/dist/ui-library/{p-0cc08e91.js → p-5654e4c7.js} +1 -1
  626. package/dist/ui-library/p-5654e4c7.js.map +1 -0
  627. package/dist/ui-library/{p-0fe78f9b.js → p-59210f0b.js} +1 -1
  628. package/dist/ui-library/p-59210f0b.js.map +1 -0
  629. package/dist/ui-library/{p-b27f496f.entry.js → p-5af44076.entry.js} +2 -2
  630. package/dist/ui-library/p-5af44076.entry.js.map +1 -0
  631. package/dist/ui-library/p-5d6b7353.entry.js +2 -0
  632. package/dist/ui-library/p-5d6b7353.entry.js.map +1 -0
  633. package/dist/ui-library/{p-aa6f71e1.entry.js → p-613283a7.entry.js} +2 -2
  634. package/dist/ui-library/p-613283a7.entry.js.map +1 -0
  635. package/dist/ui-library/p-6153045b.js +3 -0
  636. package/dist/ui-library/p-6153045b.js.map +1 -0
  637. package/dist/ui-library/{p-886a35ee.entry.js → p-6197fe2f.entry.js} +2 -2
  638. package/dist/ui-library/p-6197fe2f.entry.js.map +1 -0
  639. package/dist/ui-library/{p-8cf72af6.js → p-698bb2c8.js} +1 -1
  640. package/dist/ui-library/p-698bb2c8.js.map +1 -0
  641. package/dist/ui-library/{p-c07adc21.entry.js → p-72254eef.entry.js} +2 -2
  642. package/dist/ui-library/p-72254eef.entry.js.map +1 -0
  643. package/dist/ui-library/{p-3b71cac4.entry.js → p-724875b0.entry.js} +2 -2
  644. package/dist/ui-library/p-724875b0.entry.js.map +1 -0
  645. package/dist/ui-library/{p-649017db.entry.js → p-7afafb9d.entry.js} +2 -2
  646. package/dist/ui-library/p-7afafb9d.entry.js.map +1 -0
  647. package/dist/ui-library/p-7d95def3.js +2 -0
  648. package/dist/ui-library/p-7d95def3.js.map +1 -0
  649. package/dist/ui-library/{p-3a47c8ad.entry.js → p-7e3ad38a.entry.js} +2 -2
  650. package/dist/ui-library/p-7e3ad38a.entry.js.map +1 -0
  651. package/dist/ui-library/{p-053d6de8.entry.js → p-83864cfe.entry.js} +2 -2
  652. package/dist/ui-library/p-83864cfe.entry.js.map +1 -0
  653. package/dist/ui-library/{p-f66eb76c.entry.js → p-878226a0.entry.js} +2 -2
  654. package/dist/ui-library/p-878226a0.entry.js.map +1 -0
  655. package/dist/ui-library/p-8c0971e0.js +2 -0
  656. package/dist/ui-library/p-8c0971e0.js.map +1 -0
  657. package/dist/ui-library/{p-5b3e6eb7.entry.js → p-91b51800.entry.js} +2 -2
  658. package/dist/ui-library/p-91b51800.entry.js.map +1 -0
  659. package/dist/ui-library/{p-764f56dd.entry.js → p-95fbdd0b.entry.js} +2 -2
  660. package/dist/ui-library/p-95fbdd0b.entry.js.map +1 -0
  661. package/dist/ui-library/{p-8d6f4311.entry.js → p-99e24daf.entry.js} +2 -2
  662. package/dist/ui-library/p-99e24daf.entry.js.map +1 -0
  663. package/dist/ui-library/{p-ba74863a.js → p-9ace84c7.js} +1 -1
  664. package/dist/ui-library/p-9ace84c7.js.map +1 -0
  665. package/dist/ui-library/{p-cab99e54.entry.js → p-9b354f5d.entry.js} +2 -2
  666. package/dist/ui-library/p-9b354f5d.entry.js.map +1 -0
  667. package/dist/ui-library/{p-d8c97778.entry.js → p-9c1be3fb.entry.js} +2 -2
  668. package/dist/ui-library/p-9c1be3fb.entry.js.map +1 -0
  669. package/dist/ui-library/p-9f0b43f9.entry.js +2 -0
  670. package/dist/ui-library/p-9f0b43f9.entry.js.map +1 -0
  671. package/dist/ui-library/{p-e5ba13d2.entry.js → p-a0f290d0.entry.js} +2 -2
  672. package/dist/ui-library/p-a0f290d0.entry.js.map +1 -0
  673. package/dist/ui-library/{p-c700e3eb.entry.js → p-a55c7258.entry.js} +2 -2
  674. package/dist/ui-library/p-a55c7258.entry.js.map +1 -0
  675. package/dist/ui-library/{p-27c4ee88.entry.js → p-a6a9ee96.entry.js} +2 -2
  676. package/dist/ui-library/p-a6a9ee96.entry.js.map +1 -0
  677. package/dist/ui-library/{p-3e4b9341.entry.js → p-ac099e6b.entry.js} +2 -2
  678. package/dist/ui-library/p-ac099e6b.entry.js.map +1 -0
  679. package/dist/ui-library/{p-90c2dc30.entry.js → p-ae601a0f.entry.js} +2 -2
  680. package/dist/ui-library/p-ae601a0f.entry.js.map +1 -0
  681. package/dist/ui-library/{p-9f8b6144.entry.js → p-b351f889.entry.js} +2 -2
  682. package/dist/ui-library/p-b351f889.entry.js.map +1 -0
  683. package/dist/ui-library/p-b550a258.entry.js +2 -0
  684. package/dist/ui-library/p-b550a258.entry.js.map +1 -0
  685. package/dist/ui-library/p-bf87464b.entry.js +2 -0
  686. package/dist/ui-library/p-bf87464b.entry.js.map +1 -0
  687. package/dist/ui-library/{p-abb98245.entry.js → p-c03ebf7d.entry.js} +2 -2
  688. package/dist/ui-library/p-c03ebf7d.entry.js.map +1 -0
  689. package/dist/ui-library/{p-0eee4c41.entry.js → p-cd67da3d.entry.js} +2 -2
  690. package/dist/ui-library/p-cd67da3d.entry.js.map +1 -0
  691. package/dist/ui-library/{p-5dc40a6a.entry.js → p-cdaed936.entry.js} +2 -2
  692. package/dist/ui-library/p-cdaed936.entry.js.map +1 -0
  693. package/dist/ui-library/{p-5c1dd25a.entry.js → p-d367f4f9.entry.js} +2 -2
  694. package/dist/ui-library/p-d367f4f9.entry.js.map +1 -0
  695. package/dist/ui-library/p-d42c2025.js +2 -0
  696. package/dist/ui-library/p-d42c2025.js.map +1 -0
  697. package/dist/ui-library/{p-9b9c3afc.entry.js → p-dfed33c5.entry.js} +2 -2
  698. package/dist/ui-library/p-dfed33c5.entry.js.map +1 -0
  699. package/dist/ui-library/p-ed381ad9.entry.js +2 -0
  700. package/dist/ui-library/p-ed381ad9.entry.js.map +1 -0
  701. package/dist/ui-library/p-ee8342e1.entry.js +2 -0
  702. package/dist/ui-library/p-ee8342e1.entry.js.map +1 -0
  703. package/dist/ui-library/{p-25b42655.entry.js → p-ee950ce2.entry.js} +2 -2
  704. package/dist/ui-library/p-ee950ce2.entry.js.map +1 -0
  705. package/dist/ui-library/{p-41f0b6ff.entry.js → p-ff90ffd1.entry.js} +2 -2
  706. package/dist/ui-library/p-ff90ffd1.entry.js.map +1 -0
  707. package/dist/ui-library/ui-library.esm.js +1 -1
  708. package/dist/ui-library/ui-library.esm.js.map +1 -1
  709. package/loader/index.d.ts +1 -1
  710. package/package.json +8 -8
  711. package/dist/cjs/event-listeners-dd94dcfb.js.map +0 -1
  712. package/dist/cjs/execution-control-45c84c46.js.map +0 -1
  713. package/dist/cjs/focus-visible-e0d93a95.js.map +0 -1
  714. package/dist/cjs/form-control-7494488a.js.map +0 -1
  715. package/dist/cjs/index-ccf35821.js.map +0 -1
  716. package/dist/cjs/modal-21350fb5.js.map +0 -1
  717. package/dist/cjs/popover-b5e2d5ef.js.map +0 -1
  718. package/dist/cjs/popup-44836aaf.js.map +0 -1
  719. package/dist/cjs/scroll-76e6f5d7.js.map +0 -1
  720. package/dist/cjs/six-form.cjs.entry.js +0 -236
  721. package/dist/cjs/six-form.cjs.entry.js.map +0 -1
  722. package/dist/cjs/slot-bccbdb59.js.map +0 -1
  723. package/dist/cjs/types-64878648.js.map +0 -1
  724. package/dist/collection/components/six-form/six-form.css +0 -11
  725. package/dist/collection/components/six-form/six-form.js +0 -427
  726. package/dist/collection/components/six-form/six-form.js.map +0 -1
  727. package/dist/components/six-form.d.ts +0 -11
  728. package/dist/components/six-form.js +0 -257
  729. package/dist/components/six-form.js.map +0 -1
  730. package/dist/esm/event-listeners-6b434035.js.map +0 -1
  731. package/dist/esm/execution-control-72cc50f4.js.map +0 -1
  732. package/dist/esm/focus-visible-fa7129a0.js.map +0 -1
  733. package/dist/esm/form-control-44a50dd6.js.map +0 -1
  734. package/dist/esm/index-371fb9d4.js.map +0 -1
  735. package/dist/esm/modal-b1d96441.js.map +0 -1
  736. package/dist/esm/polyfills/css-shim.js +0 -1
  737. package/dist/esm/popover-1aacbae8.js.map +0 -1
  738. package/dist/esm/popup-678b8592.js.map +0 -1
  739. package/dist/esm/scroll-180b53fd.js.map +0 -1
  740. package/dist/esm/six-form.entry.js +0 -232
  741. package/dist/esm/six-form.entry.js.map +0 -1
  742. package/dist/esm/slot-2e64df19.js.map +0 -1
  743. package/dist/esm/types-4b10b413.js.map +0 -1
  744. package/dist/types/components/six-form/six-form.d.ts +0 -60
  745. package/dist/ui-library/p-02d5a6d8.js +0 -2
  746. package/dist/ui-library/p-02d5a6d8.js.map +0 -1
  747. package/dist/ui-library/p-053d6de8.entry.js.map +0 -1
  748. package/dist/ui-library/p-0cc08e91.js.map +0 -1
  749. package/dist/ui-library/p-0eee4c41.entry.js.map +0 -1
  750. package/dist/ui-library/p-0fe78f9b.js.map +0 -1
  751. package/dist/ui-library/p-187fbba0.js +0 -3
  752. package/dist/ui-library/p-187fbba0.js.map +0 -1
  753. package/dist/ui-library/p-25a3bf57.js.map +0 -1
  754. package/dist/ui-library/p-25b42655.entry.js.map +0 -1
  755. package/dist/ui-library/p-271ba152.entry.js +0 -2
  756. package/dist/ui-library/p-271ba152.entry.js.map +0 -1
  757. package/dist/ui-library/p-27c4ee88.entry.js.map +0 -1
  758. package/dist/ui-library/p-2a36b7d0.entry.js +0 -2
  759. package/dist/ui-library/p-2a36b7d0.entry.js.map +0 -1
  760. package/dist/ui-library/p-2a8ad91b.entry.js.map +0 -1
  761. package/dist/ui-library/p-30e0cdce.entry.js +0 -2
  762. package/dist/ui-library/p-30e0cdce.entry.js.map +0 -1
  763. package/dist/ui-library/p-3a47c8ad.entry.js.map +0 -1
  764. package/dist/ui-library/p-3a4815cb.entry.js +0 -2
  765. package/dist/ui-library/p-3a4815cb.entry.js.map +0 -1
  766. package/dist/ui-library/p-3b71cac4.entry.js.map +0 -1
  767. package/dist/ui-library/p-3d4a2e03.entry.js +0 -2
  768. package/dist/ui-library/p-3d4a2e03.entry.js.map +0 -1
  769. package/dist/ui-library/p-3e4b9341.entry.js.map +0 -1
  770. package/dist/ui-library/p-41f0b6ff.entry.js.map +0 -1
  771. package/dist/ui-library/p-435242a8.entry.js +0 -2
  772. package/dist/ui-library/p-435242a8.entry.js.map +0 -1
  773. package/dist/ui-library/p-5084ca7c.entry.js.map +0 -1
  774. package/dist/ui-library/p-5b3e6eb7.entry.js.map +0 -1
  775. package/dist/ui-library/p-5c1dd25a.entry.js.map +0 -1
  776. package/dist/ui-library/p-5c60227f.entry.js.map +0 -1
  777. package/dist/ui-library/p-5dc40a6a.entry.js.map +0 -1
  778. package/dist/ui-library/p-649017db.entry.js.map +0 -1
  779. package/dist/ui-library/p-713684c7.entry.js.map +0 -1
  780. package/dist/ui-library/p-73325eec.entry.js.map +0 -1
  781. package/dist/ui-library/p-7639c68e.entry.js +0 -2
  782. package/dist/ui-library/p-7639c68e.entry.js.map +0 -1
  783. package/dist/ui-library/p-764f56dd.entry.js.map +0 -1
  784. package/dist/ui-library/p-886a35ee.entry.js.map +0 -1
  785. package/dist/ui-library/p-8cf72af6.js.map +0 -1
  786. package/dist/ui-library/p-8d6f4311.entry.js.map +0 -1
  787. package/dist/ui-library/p-90c2dc30.entry.js.map +0 -1
  788. package/dist/ui-library/p-965fa6a6.entry.js.map +0 -1
  789. package/dist/ui-library/p-98234e3f.entry.js +0 -2
  790. package/dist/ui-library/p-98234e3f.entry.js.map +0 -1
  791. package/dist/ui-library/p-9b9c3afc.entry.js.map +0 -1
  792. package/dist/ui-library/p-9c34eab7.entry.js +0 -2
  793. package/dist/ui-library/p-9c34eab7.entry.js.map +0 -1
  794. package/dist/ui-library/p-9e0c386f.entry.js +0 -2
  795. package/dist/ui-library/p-9e0c386f.entry.js.map +0 -1
  796. package/dist/ui-library/p-9f8b6144.entry.js.map +0 -1
  797. package/dist/ui-library/p-a3cc0521.entry.js.map +0 -1
  798. package/dist/ui-library/p-a5143b8d.entry.js.map +0 -1
  799. package/dist/ui-library/p-aa6f71e1.entry.js.map +0 -1
  800. package/dist/ui-library/p-abb98245.entry.js.map +0 -1
  801. package/dist/ui-library/p-b183e44f.js +0 -2
  802. package/dist/ui-library/p-b183e44f.js.map +0 -1
  803. package/dist/ui-library/p-b27f496f.entry.js.map +0 -1
  804. package/dist/ui-library/p-ba74863a.js.map +0 -1
  805. package/dist/ui-library/p-bf4a35ec.js.map +0 -1
  806. package/dist/ui-library/p-c07adc21.entry.js.map +0 -1
  807. package/dist/ui-library/p-c700e3eb.entry.js.map +0 -1
  808. package/dist/ui-library/p-cab99e54.entry.js.map +0 -1
  809. package/dist/ui-library/p-cf1133a0.entry.js.map +0 -1
  810. package/dist/ui-library/p-cf1d36c0.entry.js.map +0 -1
  811. package/dist/ui-library/p-d87a6f4d.js.map +0 -1
  812. package/dist/ui-library/p-d8c97778.entry.js.map +0 -1
  813. package/dist/ui-library/p-deb01174.entry.js.map +0 -1
  814. package/dist/ui-library/p-e5ba13d2.entry.js.map +0 -1
  815. package/dist/ui-library/p-eb8f05a9.js.map +0 -1
  816. package/dist/ui-library/p-f29ba9cb.entry.js.map +0 -1
  817. package/dist/ui-library/p-f66eb76c.entry.js.map +0 -1
  818. package/dist/ui-library/p-f974a184.entry.js.map +0 -1
  819. package/dist/ui-library/p-fb8d0734.entry.js +0 -2
  820. package/dist/ui-library/p-fb8d0734.entry.js.map +0 -1
  821. package/readme.md +0 -156
@@ -1 +1 @@
1
- {"file":"six-header.js","mappings":"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","names":["SixHeader"],"sources":["./src/components/six-header/six-header.scss?tag=six-header&encapsulation=shadow","./src/components/six-header/six-header.tsx"],"sourcesContent":["@import 'src/global/component';\n\n$header-height: 3.75rem;\n$border-height: 0.25rem;\n\n:host {\n display: block;\n user-select: none;\n --search-border-width: 1px;\n}\n\n::slotted(six-search-field) {\n position: absolute;\n margin-left: var(--search-border-width);\n width: calc(100% - 2 * var(--search-border-width));\n}\n\n.six-header {\n display: flex;\n width: 100%;\n height: $header-height;\n background-color: var(--six-header-background-color);\n align-items: center;\n flex-wrap: wrap;\n box-shadow: var(--six-shadow-x-large);\n border-bottom: var(--six-header-border-with) solid var(--six-header-border-color);\n\n &__logo {\n width: 6rem;\n margin-top: 0.15rem;\n\n &--clickable {\n cursor: pointer;\n }\n }\n\n &__placeholder {\n flex: 1;\n }\n\n &__menu,\n &__logo,\n &__custom,\n &__search,\n &__notification,\n &__app-switcher,\n &__profile {\n height: calc(100% - #{$border-height} - 1px);\n padding: 0 1.25rem;\n display: flex;\n align-items: center;\n border-bottom: solid $border-height transparent;\n\n &--open {\n border-bottom: solid $border-height var(--six-header-border-color-open);\n }\n }\n\n &__selected-app {\n cursor: pointer;\n font-size: 0.9rem;\n font-weight: 600;\n padding-right: 0;\n padding-left: 0.3rem;\n &:hover {\n color: var(--six-header-selected-app-color-hover);\n }\n }\n\n &__search-field {\n opacity: 0;\n transform: scale(0.9);\n transition: var(--six-transition-fast) opacity, var(--six-transition-fast) transform;\n display: none;\n\n &--visible {\n opacity: 1;\n transform: none;\n display: block;\n }\n\n &--shift-content.six-header__search-field--visible {\n height: 2.65rem;\n transition: var(--six-transition-fast) height;\n }\n\n &--shift-content:not(.six-header__search-field--visible) {\n height: 0;\n transition: var(--six-transition-fast) height;\n }\n }\n}\n","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 @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.selectedApp = this.getSelectedApp();\n }\n\n if (this.hasSlot(Slot.Search)) {\n this.computeSearchOpenState();\n }\n }\n\n private getSelectedApp(): string | undefined {\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((item: HTMLElement) => item.hasAttribute('checked'));\n return firstCheckedMenuItem?.textContent ?? undefined;\n }\n\n disconnectedCallback() {\n this.eventListeners.removeAll();\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"],"version":3}
1
+ {"file":"six-header.js","mappings":";;;;;;;;;;AAAA,MAAM,YAAY,GAAG,02DAA02D;;ACqB/3D,IAAK,OAKJ;AALD,WAAK,OAAO;EACV,qCAAI,CAAA;EACJ,yCAAM,CAAA;EACN,mDAAW,CAAA;EACX,2CAAO,CAAA;AACT,CAAC,EALI,OAAO,KAAP,OAAO,QAKX;AAED,IAAK,IAMJ;AAND,WAAK,IAAI;EACP,+BAAuB,CAAA;EACvB,uCAA+B,CAAA;EAC/B,yCAAiC,CAAA;EACjC,gCAAwB,CAAA;EACxB,qBAAa,CAAA;AACf,CAAC,EANI,IAAI,KAAJ,IAAI,QAMR;MAoBYA,WAAS;;;;;;;;;;;IAwDZ,mBAAc,GAAG,IAAI,cAAc,EAAE,CAAC;IAmCtC,cAAS,GAAG,CAAC,EAA6B;MAChD,IAAI,EAAE,IAAI,IAAI;QAAE,OAAO;MAEvB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC;KAC3E,CAAC;IAEM,cAAS,GAAG,CAAC,EAAgB;MACnC,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,IAAI,IAAI;QAAE,OAAO;MAE9C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;KACtE,CAAC;IAEM,iBAAY,GAAG,CAAC,EAA2B;MACjD,IAAI,EAAE,IAAI,IAAI;QAAE,OAAO;MAEvB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,EAAE,mBAAmB,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;MACtF,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,EAAE,mBAAmB,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;MACnF,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,EAAE,wBAAwB,EAAE,CAAC,KAAY;QACjE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAI,KAAqB,CAAC,MAAM,CAAC;QACrD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;OAC3E,CAAC,CAAC;KACJ,CAAC;IAEM,qBAAgB,GAAG,CAAC,EAA2B;MACrD,IAAI,EAAE,IAAI,IAAI;QAAE,OAAO;MAEvB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,EAAE,mBAAmB,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;MAC1F,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,EAAE,mBAAmB,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;MACnF,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,EAAE,wBAAwB,EAAE,CAAC,KAAY;QACjE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAI,KAAqB,CAAC,MAAM,CAAC;QACrD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;OAC/E,CAAC,CAAC;KACJ,CAAC;IAEM,mBAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;IAErD,2BAAsB,GAAG;MAC/B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;KACxE,CAAC;wBAhIqB,KAAK;6BAGA,KAAK;sBAGZ,KAAK;yBAGF,KAAK;;;;EAG7B,sBAAsB;IACpB,IAAI,CAAC,sBAAsB,EAAE,CAAC;GAC/B;;EAID,MAAM,kBAAkB,CAAC,SAAkB;IACzC,IAAI,IAAI,CAAC,eAAe,KAAK,OAAO,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE;MACzD,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;KACrC;SAAM,IAAI,SAAS,IAAI,IAAI,CAAC,eAAe,KAAK,OAAO,CAAC,MAAM,EAAE;MAC/D,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;KACvC;GACF;;EAID,MAAM,eAAe;IACnB,OAAO,IAAI,CAAC,eAAe,KAAK,OAAO,CAAC,MAAM,CAAC;GAChD;EA+BO,OAAO,CAAC,IAAU;IACxB,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,EAAE;MACtB,OAAO,KAAK,CAAC;KACd;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;GACzB;EAEO,iBAAiB,CAAC,KAAc;IACtC,OAAO,KAAK,KAAK,IAAI,CAAC,eAAe,CAAC;GACvC;EAEO,aAAa,CAAC,OAAgB;IACpC,OAAO,OAAO,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,CAAC;GAC/C;EAEO,YAAY;IAClB,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,KAAK,OAAO,CAAC,MAAM,CAAC;IACxD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,KAAK,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC;IAC/F,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5C,IAAI,IAAI,CAAC,eAAe,KAAK,OAAO,CAAC,MAAM,EAAE;;MAE3C,UAAU,CAAC;;QACT,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,0CAAE,aAAa,CAAC,WAAW,CAAC,0CAAE,QAAQ,EAAE,CAAC;OAC1D,EAAE,EAAE,CAAC,CAAC;KACR;GACF;EA2CD,iBAAiB;IACf,IAAI,CAAC,KAAK,GAAG;MACX,CAAC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;MAC9C,CAAC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC;MAC5D,CAAC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC;MACxD,CAAC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC;MAChD,CAAC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;KAC3C,CAAC;IAEF,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;MAClC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;KAC1C;IAED,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;MAC7B,IAAI,CAAC,sBAAsB,EAAE,CAAC;KAC/B;GACF;EAEO,cAAc;;;IAEpB,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACrD,IAAI,OAAO,IAAI,IAAI,EAAE;MACnB,OAAO,SAAS,CAAC;KAClB;IACD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC,CAAC;IACpE,MAAM,oBAAoB,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAiB,KAAK,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;IAC7F,OAAO,MAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,WAAW,mCAAI,SAAS,CAAC;GACvD;EAED,oBAAoB;IAClB,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC;GACjC;EAED,MAAM;IACJ,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KACtC,eACE,KAAK,EAAE;QACL,oBAAoB,EAAE,IAAI;QAC1B,0BAA0B,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC;OACnE,IAED,uBAAiB,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAE,MAAM,IAAI,CAAC,YAAY,EAAE,iBAAc,gBAAgB,GAAG,CAC1F,CACX,CAAC;IAEF,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,KACpD,eAAS,KAAK,EAAC,0BAA0B,IACvC,YAAM,IAAI,EAAE,IAAI,CAAC,aAAa,GAAI,CAC1B,CACX,CAAC;IAEF,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,KAChD,eACE,KAAK,EAAE;QACL,0BAA0B,EAAE,IAAI;QAChC,gCAAgC,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,WAAW,CAAC;OAC9E,IAED,SAAG,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,EAAC,0BAA0B,IAC9D,IAAI,CAAC,WAAW,CACf,EACJ,oBAAc,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAC,YAAY,EAAC,GAAG,EAAE,IAAI,CAAC,gBAAgB,IACzF,uBAAiB,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,SAAS,GAAG,EAC9C,YAAM,IAAI,EAAE,IAAI,CAAC,WAAW,GAAI,CACnB,CACP,CACX,CAAC;IAEF,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,KACxC,eACE,KAAK,EAAE;QACL,qBAAqB,EAAE,IAAI;QAC3B,2BAA2B,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC;OACrE,IAED,oBAAc,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAC,YAAY,EAAC,GAAG,EAAE,IAAI,CAAC,YAAY,IACrF,YAAM,IAAI,EAAC,gBAAgB,EAAC,IAAI,EAAC,SAAS,GAAG,EAC7C,YAAM,IAAI,EAAC,cAAc,GAAG,CACf,CACP,CACX,CAAC;IAEF,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAClC,mBACE,YAAM,IAAI,EAAC,MAAM,GAAG,CACZ,KAEV,eACE,KAAK,EAAE;QACL,kBAAkB,EAAE,IAAI;QACxB,6BAA6B,EAAE,IAAI,CAAC,aAAa;OAClD,EACD,GAAG,EAAE,IAAI,CAAC,SAAS,IAEnB,WAAK,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,4BAA4B,IACrE,uBAAkB,EAClB,SAAG,IAAI,EAAC,SAAS,eAAW,SAAS,IACnC,YAAM,CAAC,EAAC,gNAAgN,GAAG,EAC3N,YAAM,CAAC,EAAC,+BAA+B,GAAG,EAC1C,YAAM,CAAC,EAAC,2bAA2b,GAAG,CACpc,CACA,CACE,CACX,CAAC;IAEF,QACE,EAAC,IAAI,QACH,cAAQ,KAAK,EAAC,YAAY,IACxB,eAAS,KAAK,EAAC,kBAAkB,IAC/B,uBAAiB,IAAI,EAAE,IAAI,CAAC,iBAAiB,GAAG,WAAW,GAAG,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,GAAI,CACrF,EAET,IAAI,EAEL,eAAS,KAAK,EAAC,yBAAyB,GAAG,EAE3C,eAAS,KAAK,EAAC,oBAAoB,IACjC,eAAQ,CACA,EAET,MAAM,EAEN,aAAa,EAEb,WAAW,EAEX,OAAO,CACD,EAET,WACE,KAAK,EAAE;QACL,0BAA0B,EAAE,IAAI;QAChC,mCAAmC,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC;QAC3E,yCAAyC,EAAE,IAAI,CAAC,YAAY;OAC7D,IAED,YAAM,IAAI,EAAE,IAAI,CAAC,MAAM,GAAI,CACvB,CACD,EACP;GACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["SixHeader"],"sources":["src/components/six-header/six-header.scss?tag=six-header&encapsulation=shadow","src/components/six-header/six-header.tsx"],"sourcesContent":["@import 'src/global/component';\n\n$header-height: 3.75rem;\n$border-height: 0.25rem;\n\n:host {\n display: block;\n user-select: none;\n --search-border-width: 1px;\n}\n\n::slotted(six-search-field) {\n position: absolute;\n margin-left: var(--search-border-width);\n width: calc(100% - 2 * var(--search-border-width));\n}\n\n.six-header {\n display: flex;\n width: 100%;\n height: $header-height;\n background-color: var(--six-header-background-color);\n align-items: center;\n flex-wrap: wrap;\n box-shadow: var(--six-shadow-x-large);\n border-bottom: var(--six-header-border-with) solid var(--six-header-border-color);\n\n &__logo {\n width: 6rem;\n margin-top: 0.15rem;\n\n &--clickable {\n cursor: pointer;\n }\n }\n\n &__placeholder {\n flex: 1;\n }\n\n &__menu,\n &__logo,\n &__custom,\n &__search,\n &__notification,\n &__app-switcher,\n &__profile {\n height: calc(100% - #{$border-height} - 1px);\n padding: 0 1.25rem;\n display: flex;\n align-items: center;\n border-bottom: solid $border-height transparent;\n\n &--open {\n border-bottom: solid $border-height var(--six-header-border-color-open);\n }\n }\n\n &__selected-app {\n cursor: pointer;\n font-size: 0.9rem;\n font-weight: 600;\n padding-right: 0;\n padding-left: 0.3rem;\n &:hover {\n color: var(--six-header-selected-app-color-hover);\n }\n }\n\n &__search-field {\n opacity: 0;\n transform: scale(0.9);\n transition: var(--six-transition-fast) opacity, var(--six-transition-fast) transform;\n display: none;\n\n &--visible {\n opacity: 1;\n transform: none;\n display: block;\n }\n\n &--shift-content.six-header__search-field--visible {\n height: 2.65rem;\n transition: var(--six-transition-fast) height;\n }\n\n &--shift-content:not(.six-header__search-field--visible) {\n height: 0;\n transition: var(--six-transition-fast) height;\n }\n }\n}\n","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 @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.selectedApp = this.getSelectedApp();\n }\n\n if (this.hasSlot(Slot.Search)) {\n this.computeSearchOpenState();\n }\n }\n\n private getSelectedApp(): string | undefined {\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((item: HTMLElement) => item.hasAttribute('checked'));\n return firstCheckedMenuItem?.textContent ?? undefined;\n }\n\n disconnectedCallback() {\n this.eventListeners.removeAll();\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"],"version":3}
@@ -1 +1 @@
1
- {"file":"six-icon-button2.js","mappings":";;;;AAAA,MAAM,gBAAgB,GAAG,g0CAAg0C;;MCiB50C,aAAa;;;;;IA2DhB,qBAAgB,GAAG,CAAC,KAAY;MACtC,IAAI,IAAI,CAAC,QAAQ,EAAE;QACjB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;OACzB;KACF,CAAC;;gBAzD2G,QAAQ;;oBASjF,KAAK;;;EAKzC,gBAAgB;IACd,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE;MACvB,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACnC;GACF;EAED,oBAAoB;IAClB,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE;MACvB,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACrC;GACF;EAED,MAAM;IACJ,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,YAAM,SAAS,EAAE,IAAI,CAAC,IAAI,GAAI,CAAC;IAEzD,QACE,WAAK,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,KAAK,EAAE,EAAE,+BAA+B,EAAE,IAAI,CAAC,QAAQ,EAAE,IAC5F,cACE,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,EAC/B,IAAI,EAAC,MAAM,EACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,KAAK,EAAE;QACL,aAAa,EAAE,IAAI;QACnB,uBAAuB,EAAE,IAAI,CAAC,QAAQ;OACvC,EACD,IAAI,EAAC,QAAQ,gBACD,IAAI,CAAC,KAAK,IAEtB,+BAAsB,MAAM,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,IACzC,IAAI,CAAC,IAAI,CACD,EACX,eAAQ,EACP,IAAI,CACE,CACL,EACN;GACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["./src/components/six-icon-button/six-icon-button.scss?tag=six-icon-button&encapsulation=shadow","./src/components/six-icon-button/six-icon-button.tsx"],"sourcesContent":["@import 'src/global/component';\n\n:host {\n display: inline-block;\n}\n\n.icon-button {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n background: none;\n border: none;\n border-radius: var(--six-border-radius-medium);\n font-size: inherit;\n color: var(--six-input-icon-color);\n padding: var(--six-spacing-x-small);\n cursor: pointer;\n transition: var(--six-transition-medium) color;\n -webkit-appearance: none;\n\n &:hover:not(.icon-button--disabled),\n &:focus:not(.icon-button--disabled) {\n color: var(--six-input-icon-color-hover);\n }\n\n &:active:not(.icon-button--disabled) {\n color: var(--six-input-icon-color);\n }\n\n &:focus {\n outline: none;\n }\n}\n\n.icon-button--disabled {\n opacity: 0.5;\n pointer-events: none;\n}\n\n.icon-button-wrapper--disabled {\n cursor: not-allowed;\n}\n\n.focus-visible.icon-button:focus {\n box-shadow: var(--six-button-focus-shadow);\n}\n\n.icon-button ::slotted(six-badge) {\n position: absolute;\n top: 0;\n right: 0;\n pointer-events: none;\n}\n\n.icon-button six-icon[size='xLarge'] + ::slotted(six-badge) {\n transform: translateY(40%) translateX(-35%);\n}\n\n.icon-button six-icon[size='large'] + ::slotted(six-badge) {\n transform: translateY(20%) translateX(-20%);\n}\n\n// TODO: tx4u9 should be adjusted for all sizes after design team\n.icon-button six-icon[size='medium'] + ::slotted(six-badge) {\n transform: translateY(10%) translateX(50%);\n}\n\n.icon-button six-icon[size='small'] + ::slotted(six-badge) {\n // no translation necessary\n}\n\n.icon-button six-icon[size='xSmall'] + ::slotted(six-badge) {\n transform: translateY(-25%) translateX(25%);\n}\n","import { Component, h, Prop } from '@stencil/core';\nimport { focusVisible } from '../../utils/focus-visible';\n\n/**\n * @since 1.0\n * @status stable\n *\n * Forked from https://github.com/shoelace-style/shoelace version v2.0.0-beta27.\n *\n * @part base - The component's base wrapper.\n */\n\n@Component({\n tag: 'six-icon-button',\n styleUrl: 'six-icon-button.scss',\n shadow: true,\n})\nexport class SixIconButton {\n private button?: HTMLButtonElement;\n\n /** The name of the icon to draw. */\n @Prop({ reflect: true }) name?: string;\n\n /** The icon's size. */\n @Prop({ reflect: true }) size: 'xSmall' | 'small' | 'medium' | 'large' | 'xLarge' | 'xxLarge' | 'xxxLarge' = 'medium';\n\n /**\n * A description that gets read by screen readers and other assistive devices. For optimal accessibility, you should\n * always include a label that describes what the icon button does.\n */\n @Prop({ reflect: true }) label?: string;\n\n /** Set to true to disable the button. */\n @Prop({ reflect: true }) disabled = false;\n\n /** HTML symbol code or entity. */\n @Prop({ reflect: true }) html?: string;\n\n componentDidLoad() {\n if (this.button != null) {\n focusVisible.observe(this.button);\n }\n }\n\n disconnectedCallback() {\n if (this.button != null) {\n focusVisible.unobserve(this.button);\n }\n }\n\n render() {\n const html = this.html && <span innerHTML={this.html} />;\n\n return (\n <div onClick={this.handleClickEvent} class={{ 'icon-button-wrapper--disabled': this.disabled }}>\n <button\n ref={(el) => (this.button = el)}\n part=\"base\"\n disabled={this.disabled}\n class={{\n 'icon-button': true,\n 'icon-button--disabled': this.disabled,\n }}\n type=\"button\"\n aria-label={this.label}\n >\n <six-icon aria-hidden=\"true\" size={this.size}>\n {this.name}\n </six-icon>\n <slot />\n {html}\n </button>\n </div>\n );\n }\n\n private handleClickEvent = (event: Event) => {\n if (this.disabled) {\n event.preventDefault();\n event.stopPropagation();\n }\n };\n}\n"],"version":3}
1
+ {"file":"six-icon-button2.js","mappings":";;;;AAAA,MAAM,gBAAgB,GAAG,g0CAAg0C;;MCiB50C,aAAa;;;;;IA2DhB,qBAAgB,GAAG,CAAC,KAAY;MACtC,IAAI,IAAI,CAAC,QAAQ,EAAE;QACjB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;OACzB;KACF,CAAC;;gBAzD2G,QAAQ;;oBASjF,KAAK;;;EAKzC,gBAAgB;IACd,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE;MACvB,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACnC;GACF;EAED,oBAAoB;IAClB,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE;MACvB,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACrC;GACF;EAED,MAAM;IACJ,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,YAAM,SAAS,EAAE,IAAI,CAAC,IAAI,GAAI,CAAC;IAEzD,QACE,WAAK,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,KAAK,EAAE,EAAE,+BAA+B,EAAE,IAAI,CAAC,QAAQ,EAAE,IAC5F,cACE,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,EAC/B,IAAI,EAAC,MAAM,EACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,KAAK,EAAE;QACL,aAAa,EAAE,IAAI;QACnB,uBAAuB,EAAE,IAAI,CAAC,QAAQ;OACvC,EACD,IAAI,EAAC,QAAQ,gBACD,IAAI,CAAC,KAAK,IAEtB,+BAAsB,MAAM,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,IACzC,IAAI,CAAC,IAAI,CACD,EACX,eAAQ,EACP,IAAI,CACE,CACL,EACN;GACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/six-icon-button/six-icon-button.scss?tag=six-icon-button&encapsulation=shadow","src/components/six-icon-button/six-icon-button.tsx"],"sourcesContent":["@import 'src/global/component';\n\n:host {\n display: inline-block;\n}\n\n.icon-button {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n background: none;\n border: none;\n border-radius: var(--six-border-radius-medium);\n font-size: inherit;\n color: var(--six-input-icon-color);\n padding: var(--six-spacing-x-small);\n cursor: pointer;\n transition: var(--six-transition-medium) color;\n -webkit-appearance: none;\n\n &:hover:not(.icon-button--disabled),\n &:focus:not(.icon-button--disabled) {\n color: var(--six-input-icon-color-hover);\n }\n\n &:active:not(.icon-button--disabled) {\n color: var(--six-input-icon-color);\n }\n\n &:focus {\n outline: none;\n }\n}\n\n.icon-button--disabled {\n opacity: 0.5;\n pointer-events: none;\n}\n\n.icon-button-wrapper--disabled {\n cursor: not-allowed;\n}\n\n.focus-visible.icon-button:focus {\n box-shadow: var(--six-button-focus-shadow);\n}\n\n.icon-button ::slotted(six-badge) {\n position: absolute;\n top: 0;\n right: 0;\n pointer-events: none;\n}\n\n.icon-button six-icon[size='xLarge'] + ::slotted(six-badge) {\n transform: translateY(40%) translateX(-35%);\n}\n\n.icon-button six-icon[size='large'] + ::slotted(six-badge) {\n transform: translateY(20%) translateX(-20%);\n}\n\n// TODO: tx4u9 should be adjusted for all sizes after design team\n.icon-button six-icon[size='medium'] + ::slotted(six-badge) {\n transform: translateY(10%) translateX(50%);\n}\n\n.icon-button six-icon[size='small'] + ::slotted(six-badge) {\n // no translation necessary\n}\n\n.icon-button six-icon[size='xSmall'] + ::slotted(six-badge) {\n transform: translateY(-25%) translateX(25%);\n}\n","import { Component, h, Prop } from '@stencil/core';\nimport { focusVisible } from '../../utils/focus-visible';\n\n/**\n * @since 1.0\n * @status stable\n *\n * Forked from https://github.com/shoelace-style/shoelace version v2.0.0-beta27.\n *\n * @part base - The component's base wrapper.\n */\n\n@Component({\n tag: 'six-icon-button',\n styleUrl: 'six-icon-button.scss',\n shadow: true,\n})\nexport class SixIconButton {\n private button?: HTMLButtonElement;\n\n /** The name of the icon to draw. */\n @Prop({ reflect: true }) name?: string;\n\n /** The icon's size. */\n @Prop({ reflect: true }) size: 'xSmall' | 'small' | 'medium' | 'large' | 'xLarge' | 'xxLarge' | 'xxxLarge' = 'medium';\n\n /**\n * A description that gets read by screen readers and other assistive devices. For optimal accessibility, you should\n * always include a label that describes what the icon button does.\n */\n @Prop({ reflect: true }) label?: string;\n\n /** Set to true to disable the button. */\n @Prop({ reflect: true }) disabled = false;\n\n /** HTML symbol code or entity. */\n @Prop({ reflect: true }) html?: string;\n\n componentDidLoad() {\n if (this.button != null) {\n focusVisible.observe(this.button);\n }\n }\n\n disconnectedCallback() {\n if (this.button != null) {\n focusVisible.unobserve(this.button);\n }\n }\n\n render() {\n const html = this.html && <span innerHTML={this.html} />;\n\n return (\n <div onClick={this.handleClickEvent} class={{ 'icon-button-wrapper--disabled': this.disabled }}>\n <button\n ref={(el) => (this.button = el)}\n part=\"base\"\n disabled={this.disabled}\n class={{\n 'icon-button': true,\n 'icon-button--disabled': this.disabled,\n }}\n type=\"button\"\n aria-label={this.label}\n >\n <six-icon aria-hidden=\"true\" size={this.size}>\n {this.name}\n </six-icon>\n <slot />\n {html}\n </button>\n </div>\n );\n }\n\n private handleClickEvent = (event: Event) => {\n if (this.disabled) {\n event.preventDefault();\n event.stopPropagation();\n }\n };\n}\n"],"version":3}
@@ -1 +1 @@
1
- {"file":"six-icon2.js","mappings":";;AAAA,MAAM,UAAU,GAAG,4wBAA4wB;;MCclxB,OAAO;;;;;gBAUD,SAAS;kBAGT,KAAK;;EAEtB,MAAM;IACJ,QACE,SACE,KAAK,EAAE;QACL,gBAAgB,EAAE,IAAI;QACtB,yBAAyB,EAAE,CAAC,IAAI,CAAC,MAAM;QACvC,uBAAuB,EAAE,IAAI,CAAC,MAAM;QACpC,cAAc,EAAE,IAAI,CAAC,IAAI,KAAK,QAAQ;QACtC,aAAa,EAAE,IAAI,CAAC,IAAI,KAAK,OAAO;QACpC,cAAc,EAAE,IAAI,CAAC,IAAI,KAAK,QAAQ;QACtC,aAAa,EAAE,IAAI,CAAC,IAAI,KAAK,OAAO;QACpC,cAAc,EAAE,IAAI,CAAC,IAAI,KAAK,QAAQ;QACtC,eAAe,EAAE,IAAI,CAAC,IAAI,KAAK,SAAS;QACxC,gBAAgB,EAAE,IAAI,CAAC,IAAI,KAAK,UAAU;QAC1C,eAAe,EAAE,IAAI,CAAC,IAAI,KAAK,SAAS;OACzC,IAED,eAAa,CACX,EACJ;GACH;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["./src/components/six-icon/six-icon.scss?tag=six-icon&encapsulation=shadow","./src/components/six-icon/six-icon.tsx"],"sourcesContent":["@import 'src/global/component';\n\n:host {\n display: inline;\n}\n\n.material-icons {\n vertical-align: middle;\n font-weight: normal;\n font-style: normal;\n text-transform: none;\n letter-spacing: normal;\n word-wrap: normal;\n white-space: nowrap;\n direction: ltr;\n\n /* Support for all WebKit browsers. */\n -webkit-font-smoothing: antialiased;\n /* Support for Safari and Chrome. */\n text-rendering: optimizeLegibility;\n\n /* Support for Firefox. */\n -moz-osx-font-smoothing: grayscale;\n\n /* Support for IE. */\n font-feature-settings: 'liga';\n}\n\n.material-icons-filled {\n font-family: 'Material Icons';\n}\n\n.material-icons-outlined {\n font-family: 'Material Icons Outlined';\n}\n\n.icon {\n &--xsmall {\n font-size: 12px;\n }\n\n &--small {\n font-size: 18px;\n }\n\n &--medium {\n font-size: 24px;\n }\n\n &--large {\n font-size: 36px;\n }\n\n &--xlarge {\n font-size: 48px;\n }\n\n &--xxlarge {\n font-size: 72px;\n }\n\n &--xxxlarge {\n font-size: 96px;\n }\n\n &--inherit {\n font-size: 1.5em;\n }\n}\n","import { Component, h, Prop } from '@stencil/core';\n\n/**\n * @since 1.0\n * @status stable\n *\n * @slot - Used to define the material icon name.\n */\n\n@Component({\n tag: 'six-icon',\n styleUrls: ['six-icon.scss'],\n shadow: true,\n})\nexport class SixIcon {\n /** The icon's size. */\n @Prop({ reflect: true }) size:\n | 'inherit'\n | 'xSmall'\n | 'small'\n | 'medium'\n | 'large'\n | 'xLarge'\n | 'xxLarge'\n | 'xxxLarge' = 'inherit';\n\n /** If set to true the default material outlined icons are not used. */\n @Prop() filled = false;\n\n render() {\n return (\n <i\n class={{\n 'material-icons': true,\n 'material-icons-outlined': !this.filled,\n 'material-icons-filled': this.filled,\n 'icon--xsmall': this.size === 'xSmall',\n 'icon--small': this.size === 'small',\n 'icon--medium': this.size === 'medium',\n 'icon--large': this.size === 'large',\n 'icon--xlarge': this.size === 'xLarge',\n 'icon--xxlarge': this.size === 'xxLarge',\n 'icon--xxxlarge': this.size === 'xxxLarge',\n 'icon--inherit': this.size === 'inherit',\n }}\n >\n <slot></slot>\n </i>\n );\n }\n}\n"],"version":3}
1
+ {"file":"six-icon2.js","mappings":";;AAAA,MAAM,UAAU,GAAG,4wBAA4wB;;MCclxB,OAAO;;;;;gBAUD,SAAS;kBAGT,KAAK;;EAEtB,MAAM;IACJ,QACE,SACE,KAAK,EAAE;QACL,gBAAgB,EAAE,IAAI;QACtB,yBAAyB,EAAE,CAAC,IAAI,CAAC,MAAM;QACvC,uBAAuB,EAAE,IAAI,CAAC,MAAM;QACpC,cAAc,EAAE,IAAI,CAAC,IAAI,KAAK,QAAQ;QACtC,aAAa,EAAE,IAAI,CAAC,IAAI,KAAK,OAAO;QACpC,cAAc,EAAE,IAAI,CAAC,IAAI,KAAK,QAAQ;QACtC,aAAa,EAAE,IAAI,CAAC,IAAI,KAAK,OAAO;QACpC,cAAc,EAAE,IAAI,CAAC,IAAI,KAAK,QAAQ;QACtC,eAAe,EAAE,IAAI,CAAC,IAAI,KAAK,SAAS;QACxC,gBAAgB,EAAE,IAAI,CAAC,IAAI,KAAK,UAAU;QAC1C,eAAe,EAAE,IAAI,CAAC,IAAI,KAAK,SAAS;OACzC,IAED,eAAa,CACX,EACJ;GACH;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/six-icon/six-icon.scss?tag=six-icon&encapsulation=shadow","src/components/six-icon/six-icon.tsx"],"sourcesContent":["@import 'src/global/component';\n\n:host {\n display: inline;\n}\n\n.material-icons {\n vertical-align: middle;\n font-weight: normal;\n font-style: normal;\n text-transform: none;\n letter-spacing: normal;\n word-wrap: normal;\n white-space: nowrap;\n direction: ltr;\n\n /* Support for all WebKit browsers. */\n -webkit-font-smoothing: antialiased;\n /* Support for Safari and Chrome. */\n text-rendering: optimizeLegibility;\n\n /* Support for Firefox. */\n -moz-osx-font-smoothing: grayscale;\n\n /* Support for IE. */\n font-feature-settings: 'liga';\n}\n\n.material-icons-filled {\n font-family: 'Material Icons';\n}\n\n.material-icons-outlined {\n font-family: 'Material Icons Outlined';\n}\n\n.icon {\n &--xsmall {\n font-size: 12px;\n }\n\n &--small {\n font-size: 18px;\n }\n\n &--medium {\n font-size: 24px;\n }\n\n &--large {\n font-size: 36px;\n }\n\n &--xlarge {\n font-size: 48px;\n }\n\n &--xxlarge {\n font-size: 72px;\n }\n\n &--xxxlarge {\n font-size: 96px;\n }\n\n &--inherit {\n font-size: 1.5em;\n }\n}\n","import { Component, h, Prop } from '@stencil/core';\n\n/**\n * @since 1.0\n * @status stable\n *\n * @slot - Used to define the material icon name.\n */\n\n@Component({\n tag: 'six-icon',\n styleUrls: ['six-icon.scss'],\n shadow: true,\n})\nexport class SixIcon {\n /** The icon's size. */\n @Prop({ reflect: true }) size:\n | 'inherit'\n | 'xSmall'\n | 'small'\n | 'medium'\n | 'large'\n | 'xLarge'\n | 'xxLarge'\n | 'xxxLarge' = 'inherit';\n\n /** If set to true the default material outlined icons are not used. */\n @Prop() filled = false;\n\n render() {\n return (\n <i\n class={{\n 'material-icons': true,\n 'material-icons-outlined': !this.filled,\n 'material-icons-filled': this.filled,\n 'icon--xsmall': this.size === 'xSmall',\n 'icon--small': this.size === 'small',\n 'icon--medium': this.size === 'medium',\n 'icon--large': this.size === 'large',\n 'icon--xlarge': this.size === 'xLarge',\n 'icon--xxlarge': this.size === 'xxLarge',\n 'icon--xxxlarge': this.size === 'xxxLarge',\n 'icon--inherit': this.size === 'inherit',\n }}\n >\n <slot></slot>\n </i>\n );\n }\n}\n"],"version":3}
@@ -2,9 +2,10 @@ import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/i
2
2
  import { F as FormControl } from './form-control.js';
3
3
  import { h as hasSlot } from './slot.js';
4
4
  import { E as EventListeners } from './event-listeners.js';
5
+ import { s as submitForm } from './form.js';
5
6
  import { d as defineCustomElement$1 } from './six-icon2.js';
6
7
 
7
- const sixInputCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}.form-control .form-control__label{display:none}.form-control .form-control__help-text{display:none}.form-control .form-control__error-text{display:none}.form-control--has-label .form-control__label{display:inline-block;color:var(--six-input-label-color);font-weight:var(--six-font-weight-bold);margin-bottom:var(--six-spacing-x-small)}.form-control--has-label .form-control__label__required::after{color:var(--six-color-danger-800);content:\"*\"}.form-control--has-label.form-control--small .form-control__label{font-size:var(--six-input-label-font-size-small)}.form-control--has-label.form-control--medium .form-control__label{font-size:var(--six-input-label-font-size-medium)}.form-control--has-label.form-control--large .form-control_label{font-size:var(--six-input-label-font-size-large)}.form-control--has-help-text .form-control__help-text{display:block;color:var(--six-input-help-text-color);margin-top:var(--six-spacing-x-small)}.form-control--has-help-text .form-control__help-text ::slotted(*){margin-top:var(--six-spacing-xxx-small)}.form-control--has-help-text.form-control--small .form-control__help-text{font-size:var(--six-input-help-text-font-size-small)}.form-control--has-help-text.form-control--medium .form-control__help-text{font-size:var(--six-input-help-text-font-size-medium)}.form-control--has-help-text.form-control--large .form-control__help-text{font-size:var(--six-input-help-text-font-size-large)}.form-control--has-error-text .form-control__error-text{display:block;color:var(--six-color-danger-800);margin-top:var(--six-spacing-xxx-small)}.form-control--has-error-text .form-control__error-text ::slotted(*){margin-top:var(--six-spacing-xxx-small)}.form-control--has-error-text.form-control--small .form-control__error-text{font-size:var(--six-input-help-text-font-size-small)}.form-control--has-error-text.form-control--medium .form-control__error-text{font-size:var(--six-input-help-text-font-size-medium)}.form-control--has-error-text.form-control--large .form-control__error-text{font-size:var(--six-input-help-text-font-size-large)}.form-control--disabled .form-control__help-text{color:var(--six-input-help-text-color-disabled)}.form-control--disabled .form-control__label{color:var(--six-input-label-color-disabled)}.form-control--invalid:not(.form-control--disabled) .form-control__label{color:var(--six-input-label-color)}:host{display:block}.input{display:inline-flex;align-items:stretch;justify-content:start;position:relative;width:100%;font-family:var(--six-font-family);font-weight:var(--six-input-font-weight);letter-spacing:var(--six-input-letter-spacing);background-color:var(--six-input-background-color);border:solid var(--six-border-width) var(--six-input-border-color);vertical-align:middle;overflow:hidden;transition:var(--six-transition-fast) color, var(--six-transition-fast) border, var(--six-transition-fast) box-shadow;cursor:text}.input--line{border:none;border-bottom:solid var(--six-border-width) var(--six-input-border-color)}.input:hover:not(.input--disabled){background-color:var(--six-input-background-color-hover);border-color:var(--six-input-border-color-hover)}.input:hover:not(.input--disabled) .input__control{color:var(--six-input-color-hover)}.input.input--focused:not(.input--disabled){background-color:var(--six-input-background-color-focus);border-bottom-color:var(--six-input-border-color-focus);box-shadow:0 1px 0 0 var(--six-input-border-color-focus)}.input.input--focused:not(.input--disabled):not(.input--line){border-color:var(--six-input-border-color-focus);box-shadow:var(--six-input-focus-shadow)}.input.input--focused:not(.input--disabled) .input__control{color:var(--six-input-color-focus)}.input.input--disabled{background-color:var(--six-input-background-color-disabled);border-color:var(--six-input-border-color-disabled);cursor:not-allowed}.input.input--disabled .input__control{color:var(--six-input-color-disabled)}.input.input--disabled .input__control::placeholder{color:var(--six-input-placeholder-color-disabled)}.input.input--invalid:not(.input--disabled):not(.input--focused){border-bottom-color:var(--six-input-border-color-danger)}.input.input--invalid:not(.input--disabled):not(.input--focused):not(.input--line){border-color:var(--six-input-border-color-danger)}.input__control{flex:1 1 auto;font-family:inherit;font-size:var(--six-input-font-size-medium);font-weight:inherit;min-width:0;color:var(--six-input-color);border:none;background:none;box-shadow:none;padding:0;margin:0;cursor:inherit;-webkit-appearance:none}.input__control::-webkit-search-decoration,.input__control::-webkit-search-cancel-button,.input__control::-webkit-search-results-button,.input__control::-webkit-search-results-decoration{-webkit-appearance:none}.input__control:-webkit-autofill,.input__control:-webkit-autofill:hover,.input__control:-webkit-autofill:focus,.input__control:-webkit-autofill:active{box-shadow:0 0 0 var(--six-height-large) var(--six-input-background-color-hover) inset !important;-webkit-text-fill-color:var(--six-color-primary-500)}.input__control::placeholder{color:var(--six-input-placeholder-color);user-select:none}.input__control:focus{outline:none}.input__control::-ms-reveal{display:none}.input__prefix,.input__suffix{display:inline-flex;flex:0 0 auto;align-items:center;cursor:default}.input__prefix ::slotted(six-icon),.input__suffix ::slotted(six-icon){color:var(--six-input-icon-color)}.input.input--disabled ::slotted(six-icon){cursor:not-allowed}.input--small{border-radius:var(--six-input-border-radius-small);font-size:var(--six-input-font-size-small);height:var(--six-height-small)}.input--small .input__control{height:calc(var(--six-height-small) - var(--six-border-width) * 2);margin:0 var(--six-input-spacing-small)}.input--small .input__control__prefix{margin:0 var(--six-input-prefix-spacing-small)}.input--small .input__clear,.input--small .input__password-toggle{margin-right:var(--six-input-spacing-small)}.input--small .input__prefix ::slotted(*){margin-left:var(--six-input-prefix-spacing-small)}.input--small .input__suffix ::slotted(*){margin-right:var(--six-input-prefix-spacing-small)}.input--medium{border-radius:var(--six-input-border-radius-medium);font-size:var(--six-input-font-size-medium);height:var(--six-height-medium)}.input--medium .input__control{height:calc(var(--six-height-medium) - var(--six-border-width) * 2);margin:0 var(--six-input-spacing-medium)}.input--medium .input__control__prefix{margin:0 var(--six-input-prefix-spacing-medium)}.input--medium .input__clear,.input--medium .input__password-toggle{margin-right:var(--six-input-spacing-medium)}.input--medium .input__prefix ::slotted(*){margin-left:var(--six-input-prefix-spacing-medium)}.input--medium .input__suffix ::slotted(*){margin-right:var(--six-input-prefix-spacing-medium)}.input--large{border-radius:var(--six-input-border-radius-large);font-size:var(--six-input-font-size-large);height:var(--six-height-large)}.input--large .input__control{height:calc(var(--six-height-large) - var(--six-border-width) * 2);margin:0 var(--six-input-spacing-large)}.input--large .input__control__prefix{margin:0 var(--six-input-prefix-spacing-large)}.input--large .input__clear,.input--large .input__password-toggle{margin-right:var(--six-input-spacing-large)}.input--large .input__prefix ::slotted(*){margin-left:var(--six-input-prefix-spacing-large)}.input--large .input__suffix ::slotted(*){margin-right:var(--six-input-prefix-spacing-large)}.input--pill.input--small{border-radius:var(--six-height-small)}.input--pill.input--medium{border-radius:var(--six-height-medium)}.input--pill.input--large{border-radius:var(--six-height-large)}.input__clear,.input__password-toggle{display:inline-flex;align-items:center;font-size:inherit;color:var(--six-input-icon-color);border:none;background:none;padding:0;transition:var(--six-transition-fast) color;cursor:pointer}.input__clear:hover,.input__password-toggle:hover{color:var(--six-input-icon-color-hover)}.input__clear:focus,.input__password-toggle:focus{outline:none}.input--empty .input__clear{visibility:hidden}";
8
+ const sixInputCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}.form-control .form-control__label{display:none}.form-control .form-control__help-text{display:none}.form-control .form-control__error-text{display:none}.form-control--has-label .form-control__label{display:inline-block;color:var(--six-input-label-color);font-weight:var(--six-font-weight-bold);margin-bottom:var(--six-spacing-x-small)}.form-control--has-label .form-control__label__required::after{color:var(--six-color-danger-800);content:\"*\"}.form-control--has-label.form-control--small .form-control__label{font-size:var(--six-input-label-font-size-small)}.form-control--has-label.form-control--medium .form-control__label{font-size:var(--six-input-label-font-size-medium)}.form-control--has-label.form-control--large .form-control_label{font-size:var(--six-input-label-font-size-large)}.form-control--has-help-text .form-control__help-text{display:block;color:var(--six-input-help-text-color);margin-top:var(--six-spacing-x-small)}.form-control--has-help-text .form-control__help-text ::slotted(*){margin-top:var(--six-spacing-xxx-small)}.form-control--has-help-text.form-control--small .form-control__help-text{font-size:var(--six-input-help-text-font-size-small)}.form-control--has-help-text.form-control--medium .form-control__help-text{font-size:var(--six-input-help-text-font-size-medium)}.form-control--has-help-text.form-control--large .form-control__help-text{font-size:var(--six-input-help-text-font-size-large)}.form-control--has-error-text .form-control__error-text{display:block;color:var(--six-color-danger-800);margin-top:var(--six-spacing-xxx-small)}.form-control--has-error-text .form-control__error-text ::slotted(*){margin-top:var(--six-spacing-xxx-small)}.form-control--has-error-text.form-control--small .form-control__error-text{font-size:var(--six-input-help-text-font-size-small)}.form-control--has-error-text.form-control--medium .form-control__error-text{font-size:var(--six-input-help-text-font-size-medium)}.form-control--has-error-text.form-control--large .form-control__error-text{font-size:var(--six-input-help-text-font-size-large)}.form-control--disabled .form-control__help-text{color:var(--six-input-help-text-color-disabled)}.form-control--disabled .form-control__label{color:var(--six-input-label-color-disabled)}.form-control--invalid:not(.form-control--disabled) .form-control__label{color:var(--six-input-label-color)}:host{display:block}.input{display:inline-flex;align-items:stretch;justify-content:start;position:relative;width:100%;font-family:var(--six-font-family);font-weight:var(--six-input-font-weight);letter-spacing:var(--six-input-letter-spacing);background-color:var(--six-input-background-color);border:solid var(--six-border-width) var(--six-input-border-color);vertical-align:middle;overflow:hidden;transition:var(--six-transition-fast) color, var(--six-transition-fast) border, var(--six-transition-fast) box-shadow;cursor:text}.input--line{border:none;border-bottom:solid var(--six-border-width) var(--six-input-border-color)}.input:hover:not(.input--disabled){background-color:var(--six-input-background-color-hover);border-color:var(--six-input-border-color-hover)}.input:hover:not(.input--disabled) .input__control{color:var(--six-input-color-hover)}.input.input--focused:not(.input--disabled){background-color:var(--six-input-background-color-focus);border-bottom-color:var(--six-input-border-color-focus);box-shadow:0 1px 0 0 var(--six-input-border-color-focus)}.input.input--focused:not(.input--disabled):not(.input--line){border-color:var(--six-input-border-color-focus);box-shadow:var(--six-input-focus-shadow)}.input.input--focused:not(.input--disabled) .input__control{color:var(--six-input-color-focus)}.input.input--disabled{background-color:var(--six-input-background-color-disabled);border-color:var(--six-input-border-color-disabled);cursor:not-allowed}.input.input--disabled .input__control{color:var(--six-input-color-disabled)}.input.input--disabled .input__control::placeholder{color:var(--six-input-placeholder-color-disabled)}.input.input--invalid:not(.input--disabled):not(.input--focused){border-bottom-color:var(--six-input-border-color-danger)}.input.input--invalid:not(.input--disabled):not(.input--focused):not(.input--line){border-color:var(--six-input-border-color-danger)}.input__control{flex:1 1 auto;font-family:inherit;font-size:inherit;font-weight:inherit;min-width:0;color:var(--six-input-color);border:none;background:none;box-shadow:none;padding:0;margin:0;cursor:inherit;-webkit-appearance:none}.input__control::-webkit-search-decoration,.input__control::-webkit-search-cancel-button,.input__control::-webkit-search-results-button,.input__control::-webkit-search-results-decoration{-webkit-appearance:none}.input__control:-webkit-autofill,.input__control:-webkit-autofill:hover,.input__control:-webkit-autofill:focus,.input__control:-webkit-autofill:active{box-shadow:0 0 0 var(--six-height-large) var(--six-input-background-color-hover) inset !important;-webkit-text-fill-color:var(--six-color-primary-500)}.input__control::placeholder{color:var(--six-input-placeholder-color);user-select:none}.input__control:focus{outline:none}.input__control::-ms-reveal{display:none}.input__prefix,.input__suffix{display:inline-flex;flex:0 0 auto;align-items:center;cursor:default}.input__prefix ::slotted(six-icon),.input__suffix ::slotted(six-icon){color:var(--six-input-icon-color)}.input.input--disabled ::slotted(six-icon){cursor:not-allowed}.input--small{border-radius:var(--six-input-border-radius-small);font-size:var(--six-input-font-size-small);height:var(--six-height-small)}.input--small .input__control{height:calc(var(--six-height-small) - var(--six-border-width) * 2);margin:0 var(--six-input-spacing-small)}.input--small .input__control__prefix{margin:0 var(--six-input-prefix-spacing-small)}.input--small .input__clear,.input--small .input__password-toggle{margin-right:var(--six-input-spacing-small)}.input--small .input__prefix ::slotted(*){margin-left:var(--six-input-prefix-spacing-small)}.input--small .input__suffix ::slotted(*){margin-right:var(--six-input-prefix-spacing-small)}.input--medium{border-radius:var(--six-input-border-radius-medium);font-size:var(--six-input-font-size-medium);height:var(--six-height-medium)}.input--medium .input__control{height:calc(var(--six-height-medium) - var(--six-border-width) * 2);margin:0 var(--six-input-spacing-medium)}.input--medium .input__control__prefix{margin:0 var(--six-input-prefix-spacing-medium)}.input--medium .input__clear,.input--medium .input__password-toggle{margin-right:var(--six-input-spacing-medium)}.input--medium .input__prefix ::slotted(*){margin-left:var(--six-input-prefix-spacing-medium)}.input--medium .input__suffix ::slotted(*){margin-right:var(--six-input-prefix-spacing-medium)}.input--large{border-radius:var(--six-input-border-radius-large);font-size:var(--six-input-font-size-large);height:var(--six-height-large)}.input--large .input__control{height:calc(var(--six-height-large) - var(--six-border-width) * 2);margin:0 var(--six-input-spacing-large)}.input--large .input__control__prefix{margin:0 var(--six-input-prefix-spacing-large)}.input--large .input__clear,.input--large .input__password-toggle{margin-right:var(--six-input-spacing-large)}.input--large .input__prefix ::slotted(*){margin-left:var(--six-input-prefix-spacing-large)}.input--large .input__suffix ::slotted(*){margin-right:var(--six-input-prefix-spacing-large)}.input--pill.input--small{border-radius:var(--six-height-small)}.input--pill.input--medium{border-radius:var(--six-height-medium)}.input--pill.input--large{border-radius:var(--six-height-large)}.input__clear,.input__password-toggle{display:inline-flex;align-items:center;font-size:inherit;color:var(--six-input-icon-color);border:none;background:none;padding:0;transition:var(--six-transition-fast) color;cursor:pointer}.input__clear:hover,.input__password-toggle:hover{color:var(--six-input-icon-color-hover)}.input__clear:focus,.input__password-toggle:focus{outline:none}.input--empty .input__clear{visibility:hidden}";
8
9
 
9
10
  const ICON_SIZES = {
10
11
  large: 'medium',
@@ -26,18 +27,16 @@ const SixInput = /*@__PURE__*/ proxyCustomElement(class SixInput extends HTMLEle
26
27
  this.labelId = `input-label-${id}`;
27
28
  this.helpTextId = `input-help-text-${id}`;
28
29
  this.errorTextId = `input-error-text-${id}`;
29
- this.customErrorText = '';
30
- this.customValidation = false;
31
30
  this.eventListeners = new EventListeners();
32
- /** defaultValue which the input will be reverted to when executing reset */
33
- this.defaultValue = '';
34
- this.handleChange = () => {
31
+ this.handleChange = (event) => {
32
+ event.stopPropagation();
35
33
  if (this.nativeInput != null) {
36
34
  this.value = this.nativeInput.value;
37
35
  this.sixChange.emit();
38
36
  }
39
37
  };
40
- this.handleInput = () => {
38
+ this.handleInput = (event) => {
39
+ event.stopPropagation();
41
40
  if (this.nativeInput != null) {
42
41
  this.value = this.nativeInput.value;
43
42
  this.sixInput.emit();
@@ -61,17 +60,25 @@ const SixInput = /*@__PURE__*/ proxyCustomElement(class SixInput extends HTMLEle
61
60
  }
62
61
  event.stopPropagation();
63
62
  };
63
+ this.handleKeyDown = (event) => {
64
+ const hasModifier = event.metaKey || event.ctrlKey || event.shiftKey || event.altKey;
65
+ if (event.key === 'Enter' && !hasModifier) {
66
+ setTimeout(() => {
67
+ if (!event.defaultPrevented && !event.isComposing) {
68
+ submitForm(this.host);
69
+ }
70
+ });
71
+ }
72
+ };
64
73
  this.handlePasswordToggle = () => {
65
74
  this.isPasswordVisible = !this.isPasswordVisible;
66
75
  };
67
76
  this.handleSlotChange = () => {
68
77
  this.hasHelpTextSlot = hasSlot(this.host, 'help-text');
69
- this.hasErrorTextSlot = hasSlot(this.host, 'error-text');
70
78
  this.hasLabelSlot = hasSlot(this.host, 'label');
71
79
  };
72
80
  this.hasFocus = false;
73
81
  this.hasHelpTextSlot = false;
74
- this.hasErrorTextSlot = false;
75
82
  this.hasLabelSlot = false;
76
83
  this.isPasswordVisible = false;
77
84
  this.type = 'text';
@@ -79,9 +86,7 @@ const SixInput = /*@__PURE__*/ proxyCustomElement(class SixInput extends HTMLEle
79
86
  this.name = '';
80
87
  this.value = '';
81
88
  this.pill = false;
82
- this.label = '';
83
89
  this.helpText = '';
84
- this.errorText = '';
85
90
  this.placeholder = undefined;
86
91
  this.disabled = false;
87
92
  this.readonly = false;
@@ -97,46 +102,34 @@ const SixInput = /*@__PURE__*/ proxyCustomElement(class SixInput extends HTMLEle
97
102
  this.autocomplete = 'off';
98
103
  this.autofocus = false;
99
104
  this.spellcheck = false;
105
+ this.label = '';
106
+ this.errorText = '';
100
107
  this.invalid = false;
101
108
  this.clearable = false;
102
109
  this.togglePassword = false;
103
110
  this.inputmode = undefined;
104
111
  this.line = false;
105
- this.errorOnBlur = false;
106
112
  }
107
113
  handleLabelChange() {
108
114
  this.handleSlotChange();
109
115
  }
110
116
  handleValueChange() {
111
117
  this.value = this.getValue();
112
- if (this.nativeInput != null) {
113
- if (this.nativeInput.value !== this.value) {
114
- this.nativeInput.value = this.value;
115
- }
116
- this.invalid = !this.nativeInput.checkValidity();
118
+ if (this.nativeInput != null && this.nativeInput.value !== this.value) {
119
+ this.nativeInput.value = this.value;
117
120
  }
118
121
  }
119
122
  connectedCallback() {
120
123
  var _a;
121
124
  (_a = this.host.shadowRoot) === null || _a === void 0 ? void 0 : _a.addEventListener('slotchange', this.handleSlotChange);
125
+ this.eventListeners.forward('six-input-input', 'input', this.host);
126
+ this.eventListeners.forward('six-input-change', 'change', this.host);
127
+ this.eventListeners.forward('six-input-focus', 'focus', this.host);
128
+ this.eventListeners.forward('six-input-blur', 'blur', this.host);
122
129
  }
123
130
  componentWillLoad() {
124
- this.defaultValue = this.getValue();
125
131
  this.handleSlotChange();
126
132
  }
127
- componentDidLoad() {
128
- const nativeInput = this.nativeInput;
129
- if (nativeInput == null) {
130
- return;
131
- }
132
- this.eventListeners.add(nativeInput, 'invalid', (event) => {
133
- this.invalid = true;
134
- if (this.customValidation || (!this.hasErrorTextSlot && this.errorText === '' && this.customErrorText === '')) {
135
- this.customErrorText = nativeInput.validationMessage;
136
- }
137
- event.preventDefault();
138
- });
139
- }
140
133
  disconnectedCallback() {
141
134
  var _a;
142
135
  (_a = this.host.shadowRoot) === null || _a === void 0 ? void 0 : _a.removeEventListener('slotchange', this.handleSlotChange);
@@ -174,64 +167,12 @@ const SixInput = /*@__PURE__*/ proxyCustomElement(class SixInput extends HTMLEle
174
167
  this.sixInput.emit();
175
168
  }
176
169
  }
177
- /** Checks for validity and shows the browser's validation message if the control is invalid. */
178
- async reportValidity() {
179
- var _a;
180
- return (_a = this.nativeInput) === null || _a === void 0 ? void 0 : _a.reportValidity();
181
- }
182
- /** Checks for validity. */
183
- async checkValidity() {
184
- if (this.nativeInput == null) {
185
- return true;
186
- }
187
- return this.nativeInput.validity.valid;
188
- }
189
- /** Sets a custom validation message. If `message` is not empty, the field will be considered invalid. */
190
- async setCustomValidity(message) {
191
- this.customErrorText = '';
192
- this.customValidation = message !== '';
193
- if (this.nativeInput != null) {
194
- this.nativeInput.setCustomValidity(message);
195
- this.invalid = !this.nativeInput.checkValidity();
196
- }
197
- }
198
- /** Returns the native input's validity */
199
- async getValidity() {
200
- var _a;
201
- return (_a = this === null || this === void 0 ? void 0 : this.nativeInput) === null || _a === void 0 ? void 0 : _a.validity;
202
- }
203
- /** Returns the native input's validity */
204
- async isValid() {
205
- if (this.nativeInput == null) {
206
- return true;
207
- }
208
- return this.nativeInput.validity.valid;
209
- }
210
- /** Returns the native input's validationMessage */
211
- async getValidationMessage() {
212
- if (this.nativeInput == null) {
213
- return '';
214
- }
215
- return this.nativeInput.validationMessage;
216
- }
217
- /** Resets the formcontrol */
218
- async reset() {
219
- var _a;
220
- this.value = this.defaultValue;
221
- this.customErrorText = '';
222
- this.customValidation = false;
223
- (_a = this.nativeInput) === null || _a === void 0 ? void 0 : _a.setCustomValidity('');
224
- this.invalid = false;
225
- }
226
- displayError() {
227
- return this.invalid && (!this.errorOnBlur || !this.hasFocus);
228
- }
229
170
  getValue() {
230
171
  var _a;
231
172
  return ((_a = this.value) !== null && _a !== void 0 ? _a : '').toString();
232
173
  }
233
174
  render() {
234
- return (h(FormControl, { inputId: this.inputId, label: this.label, labelId: this.labelId, hasLabelSlot: this.hasLabelSlot, helpTextId: this.helpTextId, helpText: this.helpText, hasHelpTextSlot: this.hasHelpTextSlot, errorTextId: this.errorTextId, errorText: this.customErrorText !== '' ? this.customErrorText : this.errorText, hasErrorTextSlot: this.hasErrorTextSlot, size: this.size, disabled: this.disabled, required: this.required, displayError: this.displayError() }, h("div", { part: "base", class: {
175
+ return (h(FormControl, { inputId: this.inputId, label: this.label, labelId: this.labelId, hasLabelSlot: this.hasLabelSlot, helpTextId: this.helpTextId, helpText: this.helpText, hasHelpTextSlot: this.hasHelpTextSlot, errorTextId: this.errorTextId, errorText: this.errorText, size: this.size, disabled: this.disabled, required: this.required, displayError: this.invalid }, h("div", { part: "base", class: {
235
176
  input: true,
236
177
  // Sizes
237
178
  'input--small': this.size === 'small',
@@ -247,7 +188,7 @@ const SixInput = /*@__PURE__*/ proxyCustomElement(class SixInput extends HTMLEle
247
188
  } }, h("span", { part: "prefix", class: "input__prefix" }, h("slot", { name: "prefix" })), h("input", { part: "input", ref: (el) => (this.nativeInput = el), id: this.inputId, size: 1, class: {
248
189
  input__control: true,
249
190
  input__control__prefix: hasSlot(this.host, 'prefix'),
250
- }, type: this.type === 'password' && this.isPasswordVisible ? 'text' : this.type, name: this.name, placeholder: this.placeholder, disabled: this.disabled, readonly: this.readonly, minLength: this.minlength, maxLength: this.maxlength, min: this.min, max: this.max, step: this.step, value: this.getValue(), autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, spellcheck: this.spellcheck, pattern: this.pattern, required: this.required, inputMode: this.inputmode, "aria-labelledby": this.labelId, "aria-describedby": this.helpTextId, "aria-invalid": this.invalid ? 'true' : 'false', onChange: this.handleChange, onInput: this.handleInput, onFocus: this.handleFocus, onBlur: this.handleBlur, "data-testid": "input-control" }), this.clearable && (h("button", { part: "clear-button", class: "input__clear", type: "button", onClick: this.handleClearClick, tabindex: "-1", "data-testid": "input-clear-button" }, h("slot", { name: "clear-icon" }, h("six-icon", { size: ICON_SIZES[this.size] }, "clear")))), this.togglePassword && (h("button", { part: "password-toggle-button", class: "input__password-toggle", type: "button", onClick: this.handlePasswordToggle, tabindex: "-1" }, this.isPasswordVisible ? (h("slot", { name: "show-password-icon" }, h("six-icon", { size: ICON_SIZES[this.size] }, "visibility_off"))) : (h("slot", { name: "hide-password-icon" }, h("six-icon", { size: ICON_SIZES[this.size] }, "visibility"))))), h("span", { part: "suffix", class: "input__suffix" }, h("slot", { name: "suffix" })))));
191
+ }, type: this.type === 'password' && this.isPasswordVisible ? 'text' : this.type, name: this.name, placeholder: this.placeholder, disabled: this.disabled, readonly: this.readonly, minLength: this.minlength, maxLength: this.maxlength, min: this.min, max: this.max, step: this.step, value: this.getValue(), autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, spellcheck: this.spellcheck, pattern: this.pattern, required: this.required, inputMode: this.inputmode, "aria-labelledby": this.labelId, "aria-describedby": this.helpTextId, "aria-invalid": this.invalid ? 'true' : 'false', onChange: this.handleChange, onInput: this.handleInput, onFocus: this.handleFocus, onBlur: this.handleBlur, onKeyDown: this.handleKeyDown, "data-testid": "input-control" }), this.clearable && (h("button", { part: "clear-button", class: "input__clear", type: "button", onClick: this.handleClearClick, tabindex: "-1", "data-testid": "input-clear-button" }, h("slot", { name: "clear-icon" }, h("six-icon", { size: ICON_SIZES[this.size] }, "clear")))), this.togglePassword && (h("button", { part: "password-toggle-button", class: "input__password-toggle", type: "button", onClick: this.handlePasswordToggle, tabindex: "-1" }, this.isPasswordVisible ? (h("slot", { name: "show-password-icon" }, h("six-icon", { size: ICON_SIZES[this.size] }, "visibility_off"))) : (h("slot", { name: "hide-password-icon" }, h("six-icon", { size: ICON_SIZES[this.size] }, "visibility"))))), h("span", { part: "suffix", class: "input__suffix" }, h("slot", { name: "suffix" })))));
251
192
  }
252
193
  get host() { return this; }
253
194
  static get watchers() { return {
@@ -263,9 +204,7 @@ const SixInput = /*@__PURE__*/ proxyCustomElement(class SixInput extends HTMLEle
263
204
  "name": [513],
264
205
  "value": [1537],
265
206
  "pill": [516],
266
- "label": [1],
267
207
  "helpText": [1, "help-text"],
268
- "errorText": [1, "error-text"],
269
208
  "placeholder": [1],
270
209
  "disabled": [516],
271
210
  "readonly": [516],
@@ -275,35 +214,28 @@ const SixInput = /*@__PURE__*/ proxyCustomElement(class SixInput extends HTMLEle
275
214
  "max": [514],
276
215
  "step": [514],
277
216
  "pattern": [513],
278
- "required": [516],
217
+ "required": [4],
279
218
  "autocapitalize": [1],
280
219
  "autocorrect": [1],
281
220
  "autocomplete": [1],
282
221
  "autofocus": [4],
283
222
  "spellcheck": [4],
284
- "invalid": [1540],
223
+ "label": [1],
224
+ "errorText": [1, "error-text"],
225
+ "invalid": [516],
285
226
  "clearable": [4],
286
227
  "togglePassword": [4, "toggle-password"],
287
228
  "inputmode": [1],
288
229
  "line": [4],
289
- "errorOnBlur": [4, "error-on-blur"],
290
230
  "hasFocus": [32],
291
231
  "hasHelpTextSlot": [32],
292
- "hasErrorTextSlot": [32],
293
232
  "hasLabelSlot": [32],
294
233
  "isPasswordVisible": [32],
295
234
  "setFocus": [64],
296
235
  "removeFocus": [64],
297
236
  "select": [64],
298
237
  "setSelectionRange": [64],
299
- "setRangeText": [64],
300
- "reportValidity": [64],
301
- "checkValidity": [64],
302
- "setCustomValidity": [64],
303
- "getValidity": [64],
304
- "isValid": [64],
305
- "getValidationMessage": [64],
306
- "reset": [64]
238
+ "setRangeText": [64]
307
239
  }]);
308
240
  function defineCustomElement() {
309
241
  if (typeof customElements === "undefined") {
@@ -1 +1 @@
1
- {"file":"six-input2.js","mappings":"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","names":[],"sources":["./src/components/six-input/six-input.scss?tag=six-input&encapsulation=shadow","./src/components/six-input/six-input.tsx"],"sourcesContent":["@import 'src/global/component';\n@import '../../functional-components/form-control/form-control';\n\n:host {\n display: block;\n}\n\n.input {\n display: inline-flex;\n align-items: stretch;\n justify-content: start;\n position: relative;\n width: 100%;\n font-family: var(--six-font-family);\n font-weight: var(--six-input-font-weight);\n letter-spacing: var(--six-input-letter-spacing);\n background-color: var(--six-input-background-color);\n border: solid var(--six-border-width) var(--six-input-border-color);\n vertical-align: middle;\n overflow: hidden;\n transition: var(--six-transition-fast) color, var(--six-transition-fast) border, var(--six-transition-fast) box-shadow;\n cursor: text;\n\n &--line {\n border: none;\n border-bottom: solid var(--six-border-width) var(--six-input-border-color);\n }\n\n &:hover:not(.input--disabled) {\n background-color: var(--six-input-background-color-hover);\n border-color: var(--six-input-border-color-hover);\n\n .input__control {\n color: var(--six-input-color-hover);\n }\n }\n\n &.input--focused:not(.input--disabled) {\n background-color: var(--six-input-background-color-focus);\n\n border-bottom-color: var(--six-input-border-color-focus);\n box-shadow: 0 1px 0 0 var(--six-input-border-color-focus);\n\n &:not(.input--line) {\n border-color: var(--six-input-border-color-focus);\n box-shadow: var(--six-input-focus-shadow);\n }\n\n .input__control {\n color: var(--six-input-color-focus);\n }\n }\n\n &.input--disabled {\n background-color: var(--six-input-background-color-disabled);\n border-color: var(--six-input-border-color-disabled);\n cursor: not-allowed;\n\n .input__control {\n color: var(--six-input-color-disabled);\n\n &::placeholder {\n color: var(--six-input-placeholder-color-disabled);\n }\n }\n }\n\n &.input--invalid:not(.input--disabled):not(.input--focused) {\n border-bottom-color: var(--six-input-border-color-danger);\n\n &:not(.input--line) {\n border-color: var(--six-input-border-color-danger);\n }\n }\n}\n\n.input__control {\n flex: 1 1 auto;\n font-family: inherit;\n font-size: var(--six-input-font-size-medium);\n font-weight: inherit;\n min-width: 0;\n color: var(--six-input-color);\n border: none;\n background: none;\n box-shadow: none;\n padding: 0;\n margin: 0;\n cursor: inherit;\n -webkit-appearance: none;\n\n &::-webkit-search-decoration,\n &::-webkit-search-cancel-button,\n &::-webkit-search-results-button,\n &::-webkit-search-results-decoration {\n -webkit-appearance: none;\n }\n\n &:-webkit-autofill,\n &:-webkit-autofill:hover,\n &:-webkit-autofill:focus,\n &:-webkit-autofill:active {\n box-shadow: 0 0 0 var(--six-height-large) var(--six-input-background-color-hover) inset !important;\n -webkit-text-fill-color: var(--six-color-primary-500);\n }\n\n &::placeholder {\n color: var(--six-input-placeholder-color);\n user-select: none;\n }\n\n &:focus {\n outline: none;\n }\n\n &::-ms-reveal {\n display: none;\n }\n}\n\n.input__prefix,\n.input__suffix {\n display: inline-flex;\n flex: 0 0 auto;\n align-items: center;\n cursor: default;\n\n ::slotted(six-icon) {\n color: var(--six-input-icon-color);\n }\n}\n\n.input {\n &.input--disabled {\n ::slotted(six-icon) {\n cursor: not-allowed;\n }\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Size modifiers\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.input--small {\n border-radius: var(--six-input-border-radius-small);\n font-size: var(--six-input-font-size-small);\n height: var(--six-height-small);\n\n .input__control {\n height: calc(var(--six-height-small) - var(--six-border-width) * 2);\n margin: 0 var(--six-input-spacing-small);\n }\n\n .input__control__prefix {\n margin: 0 var(--six-input-prefix-spacing-small);\n }\n\n .input__clear,\n .input__password-toggle {\n margin-right: var(--six-input-spacing-small);\n }\n\n .input__prefix ::slotted(*) {\n margin-left: var(--six-input-prefix-spacing-small);\n }\n\n .input__suffix ::slotted(*) {\n margin-right: var(--six-input-prefix-spacing-small);\n }\n}\n\n.input--medium {\n border-radius: var(--six-input-border-radius-medium);\n font-size: var(--six-input-font-size-medium);\n height: var(--six-height-medium);\n\n .input__control {\n height: calc(var(--six-height-medium) - var(--six-border-width) * 2);\n margin: 0 var(--six-input-spacing-medium);\n }\n\n .input__control__prefix {\n margin: 0 var(--six-input-prefix-spacing-medium);\n }\n\n .input__clear,\n .input__password-toggle {\n margin-right: var(--six-input-spacing-medium);\n }\n\n .input__prefix ::slotted(*) {\n margin-left: var(--six-input-prefix-spacing-medium);\n }\n\n .input__suffix ::slotted(*) {\n margin-right: var(--six-input-prefix-spacing-medium);\n }\n}\n\n.input--large {\n border-radius: var(--six-input-border-radius-large);\n font-size: var(--six-input-font-size-large);\n height: var(--six-height-large);\n\n .input__control {\n height: calc(var(--six-height-large) - var(--six-border-width) * 2);\n margin: 0 var(--six-input-spacing-large);\n }\n\n .input__control__prefix {\n margin: 0 var(--six-input-prefix-spacing-large);\n }\n\n .input__clear,\n .input__password-toggle {\n margin-right: var(--six-input-spacing-large);\n }\n\n .input__prefix ::slotted(*) {\n margin-left: var(--six-input-prefix-spacing-large);\n }\n\n .input__suffix ::slotted(*) {\n margin-right: var(--six-input-prefix-spacing-large);\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Pill modifier\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.input--pill {\n &.input--small {\n border-radius: var(--six-height-small);\n }\n\n &.input--medium {\n border-radius: var(--six-height-medium);\n }\n\n &.input--large {\n border-radius: var(--six-height-large);\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Clearable + Password Toggle\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.input__clear,\n.input__password-toggle {\n display: inline-flex;\n align-items: center;\n font-size: inherit;\n color: var(--six-input-icon-color);\n border: none;\n background: none;\n padding: 0;\n transition: var(--six-transition-fast) color;\n cursor: pointer;\n\n &:hover {\n color: var(--six-input-icon-color-hover);\n }\n\n &:focus {\n outline: none;\n }\n}\n\n.input--empty .input__clear {\n visibility: hidden;\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport FormControl from '../../functional-components/form-control/form-control';\nimport { hasSlot } from '../../utils/slot';\nimport { EmptyPayload } from '../../utils/types';\nimport { EventListeners } from '../../utils/event-listeners';\n\nconst ICON_SIZES: Record<'small' | 'medium' | 'large', 'xSmall' | 'small' | 'medium'> = {\n large: 'medium',\n medium: 'small',\n small: 'xSmall',\n};\n\nlet id = 0;\n\n/**\n * @since 1.0\n * @status stable\n *\n * Forked from https://github.com/shoelace-style/shoelace version v2.0.0-beta27.\n *\n * @slot label - The input's label. Alternatively, you can use the label prop.\n * @slot prefix - Used to prepend an icon or similar element to the input.\n * @slot suffix - Used to append an icon or similar element to the input.\n * @slot clear-icon - An icon to use in lieu of the default clear icon.\n * @slot show-password-icon - An icon to use in lieu of the default show password icon.\n * @slot hide-password-icon - An icon to use in lieu of the default hide password icon.\n * @slot help-text - Help text that describes how to use the input. Alternatively, you can use the help-text prop.\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, input, and help-text.\n * @part label - The input label.\n * @part input - The input control.\n * @part prefix - The input prefix container.\n * @part clear-button - The clear button.\n * @part password-toggle-button - The password toggle button.\n * @part suffix - The input suffix container.\n * @part help-text - The input help text.\n */\n\n@Component({\n tag: 'six-input',\n styleUrl: 'six-input.scss',\n shadow: true,\n})\nexport class SixInput {\n private inputId = `input-${++id}`;\n private labelId = `input-label-${id}`;\n private helpTextId = `input-help-text-${id}`;\n private errorTextId = `input-error-text-${id}`;\n private nativeInput?: HTMLInputElement;\n private customErrorText = '';\n private customValidation = false;\n private eventListeners = new EventListeners();\n\n @Element() host!: HTMLSixInputElement;\n\n @State() hasFocus = false;\n @State() hasHelpTextSlot = false;\n @State() hasErrorTextSlot = false;\n @State() hasLabelSlot = false;\n @State() isPasswordVisible = false;\n\n /** The input's type. */\n @Prop({ reflect: true }) type: 'email' | 'number' | 'password' | 'search' | 'tel' | 'text' | 'url' = 'text';\n\n /** The input's size. */\n @Prop({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n\n /** The input's name attribute. */\n @Prop({ reflect: true }) name = '';\n\n /** The input's value attribute. */\n @Prop({ mutable: true, reflect: true }) value = '';\n\n /** Set to true to draw a pill-style input with rounded edges. */\n @Prop({ reflect: true }) pill = false;\n\n /** The input's label. Alternatively, you can use the label slot. */\n @Prop() label = '';\n\n /** The input's help text. Alternatively, you can use the help-text slot. */\n @Prop() helpText = '';\n\n /** The input's error text. Alternatively, you can use the error-text slot. */\n @Prop() errorText = '';\n\n /** The input's placeholder text. */\n @Prop() placeholder?: string;\n\n /** Set to true to disable the input. */\n @Prop({ reflect: true }) disabled = false;\n\n /** Set to true to make the input readonly. */\n @Prop({ reflect: true }) readonly = false;\n\n /** The minimum length of input that will be considered valid. */\n @Prop({ reflect: true }) minlength?: number;\n\n /** The maximum length of input that will be considered valid. */\n @Prop({ reflect: true }) maxlength?: number;\n\n /** The input's minimum value. */\n @Prop({ reflect: true }) min?: number;\n\n /** The input's maximum value. */\n @Prop({ reflect: true }) max?: number;\n\n /** The input's step attribute. */\n @Prop({ reflect: true }) step?: number;\n\n /** A pattern to validate input against. */\n @Prop({ reflect: true }) pattern?: string;\n\n /** Set to true to make the input a required field. */\n @Prop({ reflect: true }) required = false;\n\n /** The input's autocaptialize attribute. */\n @Prop() autocapitalize = 'off';\n\n /** The input's autocorrect attribute. */\n @Prop() autocorrect: 'on' | 'off' = 'off';\n\n /** The input's autocomplete attribute. */\n @Prop() autocomplete = 'off';\n\n /** The input's autofocus attribute. */\n @Prop() autofocus = false;\n\n /** Enables spell checking on the input. */\n @Prop() spellcheck = false;\n\n /**\n * This will be true when the control is in an invalid state. Validity is determined by props such as `type`,\n * `required`, `minlength`, `maxlength`, and `pattern` using the browser's constraint validation API.\n */\n @Prop({ mutable: true, reflect: true }) invalid = false;\n\n /** Set to true to add a clear button when the input is populated. */\n @Prop() clearable = false;\n\n /** Set to true to add a password toggle button for password inputs. */\n @Prop() togglePassword = false;\n\n /** The input's inputmode attribute. */\n @Prop() inputmode?: 'none' | 'text' | 'decimal' | 'numeric' | 'tel' | 'search' | 'email' | 'url';\n\n /** Set to render as line */\n @Prop() line = false;\n\n /** Set to display the error text on blur and not when typing */\n @Prop() errorOnBlur = false;\n\n @Watch('helpText')\n @Watch('errorText')\n @Watch('label')\n handleLabelChange() {\n this.handleSlotChange();\n }\n\n @Watch('value')\n handleValueChange() {\n this.value = this.getValue();\n if (this.nativeInput != null) {\n if (this.nativeInput.value !== this.value) {\n this.nativeInput.value = this.value;\n }\n this.invalid = !this.nativeInput.checkValidity();\n }\n }\n\n /** Emitted when the control's value changes. Access the new value via event.target.value. */\n @Event({ eventName: 'six-input-change' }) sixChange!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the clear button is activated. */\n @Event({ eventName: 'six-input-clear' }) sixClear!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control receives input. Access the new value via event.target.value. */\n @Event({ eventName: 'six-input-input' }) sixInput!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control gains focus. */\n @Event({ eventName: 'six-input-focus' }) sixFocus!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control loses focus. Access the new value via event.target.value. */\n @Event({ eventName: 'six-input-blur' }) sixBlur!: EventEmitter<EmptyPayload>;\n\n /** defaultValue which the input will be reverted to when executing reset */\n private defaultValue = '';\n\n connectedCallback() {\n this.host.shadowRoot?.addEventListener('slotchange', this.handleSlotChange);\n }\n\n componentWillLoad() {\n this.defaultValue = this.getValue();\n this.handleSlotChange();\n }\n\n componentDidLoad() {\n const nativeInput = this.nativeInput;\n if (nativeInput == null) {\n return;\n }\n this.eventListeners.add(nativeInput, 'invalid', (event) => {\n this.invalid = true;\n if (this.customValidation || (!this.hasErrorTextSlot && this.errorText === '' && this.customErrorText === '')) {\n this.customErrorText = nativeInput.validationMessage;\n }\n event.preventDefault();\n });\n }\n\n disconnectedCallback() {\n this.host.shadowRoot?.removeEventListener('slotchange', this.handleSlotChange);\n this.eventListeners.removeAll();\n }\n\n /** Sets focus on the input. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.nativeInput?.focus(options);\n }\n\n /** Removes focus from the input. */\n @Method()\n async removeFocus() {\n this.nativeInput?.blur();\n }\n\n /** Selects all the text in the input. */\n @Method()\n async select() {\n return this.nativeInput?.select();\n }\n\n /** Sets the start and end positions of the text selection (0-based). */\n @Method()\n async setSelectionRange(\n selectionStart: number,\n selectionEnd: number,\n selectionDirection: 'forward' | 'backward' | 'none' = 'none'\n ) {\n return this.nativeInput?.setSelectionRange(selectionStart, selectionEnd, selectionDirection);\n }\n\n /** Replaces a range of text with a new string. */\n @Method()\n async setRangeText(\n replacement: string,\n start: number,\n end: number,\n selectMode: 'select' | 'start' | 'end' | 'preserve' = 'preserve'\n ) {\n if (this.nativeInput == null) {\n return;\n }\n this.nativeInput.setRangeText(replacement, start, end, selectMode);\n if (this.getValue() !== this.nativeInput.value) {\n this.value = this.nativeInput.value;\n this.sixChange.emit();\n this.sixInput.emit();\n }\n }\n\n /** Checks for validity and shows the browser's validation message if the control is invalid. */\n @Method()\n async reportValidity() {\n return this.nativeInput?.reportValidity();\n }\n\n /** Checks for validity. */\n @Method()\n async checkValidity(): Promise<boolean> {\n if (this.nativeInput == null) {\n return true;\n }\n return this.nativeInput.validity.valid;\n }\n\n /** Sets a custom validation message. If `message` is not empty, the field will be considered invalid. */\n @Method()\n async setCustomValidity(message: string) {\n this.customErrorText = '';\n this.customValidation = message !== '';\n if (this.nativeInput != null) {\n this.nativeInput.setCustomValidity(message);\n this.invalid = !this.nativeInput.checkValidity();\n }\n }\n\n /** Returns the native input's validity */\n @Method()\n async getValidity(): Promise<ValidityState | undefined> {\n return this?.nativeInput?.validity;\n }\n\n /** Returns the native input's validity */\n @Method()\n async isValid(): Promise<boolean> {\n if (this.nativeInput == null) {\n return true;\n }\n return this.nativeInput.validity.valid;\n }\n\n /** Returns the native input's validationMessage */\n @Method()\n async getValidationMessage() {\n if (this.nativeInput == null) {\n return '';\n }\n return this.nativeInput.validationMessage;\n }\n\n /** Resets the formcontrol */\n @Method()\n async reset() {\n this.value = this.defaultValue;\n this.customErrorText = '';\n this.customValidation = false;\n this.nativeInput?.setCustomValidity('');\n this.invalid = false;\n }\n\n private handleChange = () => {\n if (this.nativeInput != null) {\n this.value = this.nativeInput.value;\n this.sixChange.emit();\n }\n };\n\n private handleInput = () => {\n if (this.nativeInput != null) {\n this.value = this.nativeInput.value;\n this.sixInput.emit();\n }\n };\n\n private handleBlur = () => {\n this.hasFocus = false;\n this.sixBlur.emit();\n };\n\n private handleFocus = () => {\n this.hasFocus = true;\n this.sixFocus.emit();\n };\n\n private handleClearClick = (event: MouseEvent) => {\n this.value = '';\n this.sixClear.emit();\n this.sixInput.emit();\n this.sixChange.emit();\n if (this.nativeInput != null) {\n this.nativeInput.focus();\n }\n event.stopPropagation();\n };\n\n private handlePasswordToggle = () => {\n this.isPasswordVisible = !this.isPasswordVisible;\n };\n\n private handleSlotChange = () => {\n this.hasHelpTextSlot = hasSlot(this.host, 'help-text');\n this.hasErrorTextSlot = hasSlot(this.host, 'error-text');\n this.hasLabelSlot = hasSlot(this.host, 'label');\n };\n\n private displayError() {\n return this.invalid && (!this.errorOnBlur || !this.hasFocus);\n }\n\n private getValue(): string {\n return (this.value ?? '').toString();\n }\n\n render() {\n return (\n <FormControl\n inputId={this.inputId}\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 errorTextId={this.errorTextId}\n errorText={this.customErrorText !== '' ? this.customErrorText : this.errorText}\n hasErrorTextSlot={this.hasErrorTextSlot}\n size={this.size}\n disabled={this.disabled}\n required={this.required}\n displayError={this.displayError()}\n >\n <div\n part=\"base\"\n class={{\n input: true,\n\n // Sizes\n 'input--small': this.size === 'small',\n 'input--medium': this.size === 'medium',\n 'input--large': this.size === 'large',\n\n // States\n 'input--line': this.line,\n 'input--pill': this.pill,\n 'input--disabled': this.disabled,\n 'input--focused': this.hasFocus,\n 'input--empty': this.getValue().length === 0,\n 'input--invalid': this.invalid,\n }}\n >\n <span part=\"prefix\" class=\"input__prefix\">\n <slot name=\"prefix\" />\n </span>\n\n <input\n part=\"input\"\n ref={(el) => (this.nativeInput = el)}\n id={this.inputId}\n size={1} // needed for firefox to overrule the default of 20\n class={{\n input__control: true,\n input__control__prefix: hasSlot(this.host, 'prefix'),\n }}\n type={this.type === 'password' && this.isPasswordVisible ? 'text' : this.type}\n name={this.name}\n placeholder={this.placeholder}\n disabled={this.disabled}\n readonly={this.readonly}\n minLength={this.minlength}\n maxLength={this.maxlength}\n min={this.min}\n max={this.max}\n step={this.step}\n value={this.getValue()}\n autoCapitalize={this.autocapitalize}\n autoComplete={this.autocomplete}\n autoCorrect={this.autocorrect}\n autoFocus={this.autofocus}\n spellcheck={this.spellcheck}\n pattern={this.pattern}\n required={this.required}\n inputMode={this.inputmode}\n aria-labelledby={this.labelId}\n aria-describedby={this.helpTextId}\n aria-invalid={this.invalid ? 'true' : 'false'}\n onChange={this.handleChange}\n onInput={this.handleInput}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n data-testid=\"input-control\"\n />\n\n {this.clearable && (\n <button\n part=\"clear-button\"\n class=\"input__clear\"\n type=\"button\"\n onClick={this.handleClearClick}\n tabindex=\"-1\"\n data-testid=\"input-clear-button\"\n >\n <slot name=\"clear-icon\">\n <six-icon size={ICON_SIZES[this.size]}>clear</six-icon>\n </slot>\n </button>\n )}\n\n {this.togglePassword && (\n <button\n part=\"password-toggle-button\"\n class=\"input__password-toggle\"\n type=\"button\"\n onClick={this.handlePasswordToggle}\n tabindex=\"-1\"\n >\n {this.isPasswordVisible ? (\n <slot name=\"show-password-icon\">\n <six-icon size={ICON_SIZES[this.size]}>visibility_off</six-icon>\n </slot>\n ) : (\n <slot name=\"hide-password-icon\">\n <six-icon size={ICON_SIZES[this.size]}>visibility</six-icon>\n </slot>\n )}\n </button>\n )}\n\n <span part=\"suffix\" class=\"input__suffix\">\n <slot name=\"suffix\" />\n </span>\n </div>\n </FormControl>\n );\n }\n}\n"],"version":3}
1
+ {"file":"six-input2.js","mappings":"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","names":[],"sources":["src/components/six-input/six-input.scss?tag=six-input&encapsulation=shadow","src/components/six-input/six-input.tsx"],"sourcesContent":["@import 'src/global/component';\n@import '../../functional-components/form-control/form-control';\n\n:host {\n display: block;\n}\n\n.input {\n display: inline-flex;\n align-items: stretch;\n justify-content: start;\n position: relative;\n width: 100%;\n font-family: var(--six-font-family);\n font-weight: var(--six-input-font-weight);\n letter-spacing: var(--six-input-letter-spacing);\n background-color: var(--six-input-background-color);\n border: solid var(--six-border-width) var(--six-input-border-color);\n vertical-align: middle;\n overflow: hidden;\n transition: var(--six-transition-fast) color, var(--six-transition-fast) border, var(--six-transition-fast) box-shadow;\n cursor: text;\n\n &--line {\n border: none;\n border-bottom: solid var(--six-border-width) var(--six-input-border-color);\n }\n\n &:hover:not(.input--disabled) {\n background-color: var(--six-input-background-color-hover);\n border-color: var(--six-input-border-color-hover);\n\n .input__control {\n color: var(--six-input-color-hover);\n }\n }\n\n &.input--focused:not(.input--disabled) {\n background-color: var(--six-input-background-color-focus);\n\n border-bottom-color: var(--six-input-border-color-focus);\n box-shadow: 0 1px 0 0 var(--six-input-border-color-focus);\n\n &:not(.input--line) {\n border-color: var(--six-input-border-color-focus);\n box-shadow: var(--six-input-focus-shadow);\n }\n\n .input__control {\n color: var(--six-input-color-focus);\n }\n }\n\n &.input--disabled {\n background-color: var(--six-input-background-color-disabled);\n border-color: var(--six-input-border-color-disabled);\n cursor: not-allowed;\n\n .input__control {\n color: var(--six-input-color-disabled);\n\n &::placeholder {\n color: var(--six-input-placeholder-color-disabled);\n }\n }\n }\n\n &.input--invalid:not(.input--disabled):not(.input--focused) {\n border-bottom-color: var(--six-input-border-color-danger);\n\n &:not(.input--line) {\n border-color: var(--six-input-border-color-danger);\n }\n }\n}\n\n.input__control {\n flex: 1 1 auto;\n font-family: inherit;\n font-size: inherit;\n font-weight: inherit;\n min-width: 0;\n color: var(--six-input-color);\n border: none;\n background: none;\n box-shadow: none;\n padding: 0;\n margin: 0;\n cursor: inherit;\n -webkit-appearance: none;\n\n &::-webkit-search-decoration,\n &::-webkit-search-cancel-button,\n &::-webkit-search-results-button,\n &::-webkit-search-results-decoration {\n -webkit-appearance: none;\n }\n\n &:-webkit-autofill,\n &:-webkit-autofill:hover,\n &:-webkit-autofill:focus,\n &:-webkit-autofill:active {\n box-shadow: 0 0 0 var(--six-height-large) var(--six-input-background-color-hover) inset !important;\n -webkit-text-fill-color: var(--six-color-primary-500);\n }\n\n &::placeholder {\n color: var(--six-input-placeholder-color);\n user-select: none;\n }\n\n &:focus {\n outline: none;\n }\n\n &::-ms-reveal {\n display: none;\n }\n}\n\n.input__prefix,\n.input__suffix {\n display: inline-flex;\n flex: 0 0 auto;\n align-items: center;\n cursor: default;\n\n ::slotted(six-icon) {\n color: var(--six-input-icon-color);\n }\n}\n\n.input {\n &.input--disabled {\n ::slotted(six-icon) {\n cursor: not-allowed;\n }\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Size modifiers\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.input--small {\n border-radius: var(--six-input-border-radius-small);\n font-size: var(--six-input-font-size-small);\n height: var(--six-height-small);\n\n .input__control {\n height: calc(var(--six-height-small) - var(--six-border-width) * 2);\n margin: 0 var(--six-input-spacing-small);\n }\n\n .input__control__prefix {\n margin: 0 var(--six-input-prefix-spacing-small);\n }\n\n .input__clear,\n .input__password-toggle {\n margin-right: var(--six-input-spacing-small);\n }\n\n .input__prefix ::slotted(*) {\n margin-left: var(--six-input-prefix-spacing-small);\n }\n\n .input__suffix ::slotted(*) {\n margin-right: var(--six-input-prefix-spacing-small);\n }\n}\n\n.input--medium {\n border-radius: var(--six-input-border-radius-medium);\n font-size: var(--six-input-font-size-medium);\n height: var(--six-height-medium);\n\n .input__control {\n height: calc(var(--six-height-medium) - var(--six-border-width) * 2);\n margin: 0 var(--six-input-spacing-medium);\n }\n\n .input__control__prefix {\n margin: 0 var(--six-input-prefix-spacing-medium);\n }\n\n .input__clear,\n .input__password-toggle {\n margin-right: var(--six-input-spacing-medium);\n }\n\n .input__prefix ::slotted(*) {\n margin-left: var(--six-input-prefix-spacing-medium);\n }\n\n .input__suffix ::slotted(*) {\n margin-right: var(--six-input-prefix-spacing-medium);\n }\n}\n\n.input--large {\n border-radius: var(--six-input-border-radius-large);\n font-size: var(--six-input-font-size-large);\n height: var(--six-height-large);\n\n .input__control {\n height: calc(var(--six-height-large) - var(--six-border-width) * 2);\n margin: 0 var(--six-input-spacing-large);\n }\n\n .input__control__prefix {\n margin: 0 var(--six-input-prefix-spacing-large);\n }\n\n .input__clear,\n .input__password-toggle {\n margin-right: var(--six-input-spacing-large);\n }\n\n .input__prefix ::slotted(*) {\n margin-left: var(--six-input-prefix-spacing-large);\n }\n\n .input__suffix ::slotted(*) {\n margin-right: var(--six-input-prefix-spacing-large);\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Pill modifier\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.input--pill {\n &.input--small {\n border-radius: var(--six-height-small);\n }\n\n &.input--medium {\n border-radius: var(--six-height-medium);\n }\n\n &.input--large {\n border-radius: var(--six-height-large);\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Clearable + Password Toggle\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.input__clear,\n.input__password-toggle {\n display: inline-flex;\n align-items: center;\n font-size: inherit;\n color: var(--six-input-icon-color);\n border: none;\n background: none;\n padding: 0;\n transition: var(--six-transition-fast) color;\n cursor: pointer;\n\n &:hover {\n color: var(--six-input-icon-color-hover);\n }\n\n &:focus {\n outline: none;\n }\n}\n\n.input--empty .input__clear {\n visibility: hidden;\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport FormControl from '../../functional-components/form-control/form-control';\nimport { hasSlot } from '../../utils/slot';\nimport { EmptyPayload } from '../../utils/types';\nimport { EventListeners } from '../../utils/event-listeners';\nimport { submitForm } from '../../utils/form';\n\nconst ICON_SIZES: Record<'small' | 'medium' | 'large', 'xSmall' | 'small' | 'medium'> = {\n large: 'medium',\n medium: 'small',\n small: 'xSmall',\n};\n\nlet id = 0;\n\n/**\n * @since 1.0\n * @status stable\n *\n * Forked from https://github.com/shoelace-style/shoelace version v2.0.0-beta27.\n *\n * @slot label - The input's label. Alternatively, you can use the label prop.\n * @slot prefix - Used to prepend an icon or similar element to the input.\n * @slot suffix - Used to append an icon or similar element to the input.\n * @slot clear-icon - An icon to use in lieu of the default clear icon.\n * @slot show-password-icon - An icon to use in lieu of the default show password icon.\n * @slot hide-password-icon - An icon to use in lieu of the default hide password icon.\n * @slot help-text - Help text that describes how to use the input. Alternatively, you can use the help-text prop.\n *\n * @part base - The component's base wrapper.\n * @part form-control - The form control that wraps the label, input, and help-text.\n * @part label - The input label.\n * @part input - The input control.\n * @part prefix - The input prefix container.\n * @part clear-button - The clear button.\n * @part password-toggle-button - The password toggle button.\n * @part suffix - The input suffix container.\n * @part help-text - The input help text.\n */\n\n@Component({\n tag: 'six-input',\n styleUrl: 'six-input.scss',\n shadow: true,\n})\nexport class SixInput {\n private inputId = `input-${++id}`;\n private labelId = `input-label-${id}`;\n private helpTextId = `input-help-text-${id}`;\n private errorTextId = `input-error-text-${id}`;\n private nativeInput?: HTMLInputElement;\n private eventListeners = new EventListeners();\n\n @Element() host!: HTMLSixInputElement;\n\n @State() hasFocus = false;\n @State() hasHelpTextSlot = false;\n @State() hasLabelSlot = false;\n @State() isPasswordVisible = false;\n\n /** The input's type. */\n @Prop({ reflect: true }) type: 'email' | 'number' | 'password' | 'search' | 'tel' | 'text' | 'url' = 'text';\n\n /** The input's size. */\n @Prop({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n\n /** The input's name attribute. */\n @Prop({ reflect: true }) name = '';\n\n /** The input's value attribute. */\n @Prop({ mutable: true, reflect: true }) value = '';\n\n /** Set to true to draw a pill-style input with rounded edges. */\n @Prop({ reflect: true }) pill = false;\n\n /** The input's help text. Alternatively, you can use the help-text slot. */\n @Prop() helpText = '';\n\n /** The input's placeholder text. */\n @Prop() placeholder?: string;\n\n /** Set to true to disable the input. */\n @Prop({ reflect: true }) disabled = false;\n\n /** Set to true to make the input readonly. */\n @Prop({ reflect: true }) readonly = false;\n\n /** The minimum length of input that will be considered valid. */\n @Prop({ reflect: true }) minlength?: number;\n\n /** The maximum length of input that will be considered valid. */\n @Prop({ reflect: true }) maxlength?: number;\n\n /** The input's minimum value. */\n @Prop({ reflect: true }) min?: number;\n\n /** The input's maximum value. */\n @Prop({ reflect: true }) max?: number;\n\n /** The input's step attribute. */\n @Prop({ reflect: true }) step?: number;\n\n /** A pattern to validate input against. */\n @Prop({ reflect: true }) pattern?: string;\n\n /** Set to true to show an asterisk beneath the label. */\n @Prop() required = false;\n\n /** The input's autocaptialize attribute. */\n @Prop() autocapitalize = 'off';\n\n /** The input's autocorrect attribute. */\n @Prop() autocorrect: 'on' | 'off' = 'off';\n\n /** The input's autocomplete attribute. */\n @Prop() autocomplete = 'off';\n\n /** The input's autofocus attribute. */\n @Prop() autofocus = false;\n\n /** Enables spell checking on the input. */\n @Prop() spellcheck = false;\n\n /** The label text. */\n @Prop() label = '';\n\n /** The error message shown, if `invalid` is set to true. */\n @Prop() errorText = '';\n\n /** If this property is set to true and an error message is provided by `errorText`, the error message is displayed. */\n @Prop({ reflect: true }) invalid = false;\n\n /** Set to true to add a clear button when the input is populated. */\n @Prop() clearable = false;\n\n /** Set to true to add a password toggle button for password inputs. */\n @Prop() togglePassword = false;\n\n /** The input's inputmode attribute. */\n @Prop() inputmode?: 'none' | 'text' | 'decimal' | 'numeric' | 'tel' | 'search' | 'email' | 'url';\n\n /** Set to render as line */\n @Prop() line = false;\n\n @Watch('helpText')\n @Watch('errorText')\n @Watch('label')\n handleLabelChange() {\n this.handleSlotChange();\n }\n\n @Watch('value')\n handleValueChange() {\n this.value = this.getValue();\n if (this.nativeInput != null && this.nativeInput.value !== this.value) {\n this.nativeInput.value = this.value;\n }\n }\n\n /** Emitted when the control's value changes. Access the new value via event.target.value. */\n @Event({ eventName: 'six-input-change' }) sixChange!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the clear button is activated. */\n @Event({ eventName: 'six-input-clear' }) sixClear!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control receives input. Access the new value via event.target.value. */\n @Event({ eventName: 'six-input-input' }) sixInput!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control gains focus. */\n @Event({ eventName: 'six-input-focus' }) sixFocus!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control loses focus. Access the new value via event.target.value. */\n @Event({ eventName: 'six-input-blur' }) sixBlur!: EventEmitter<EmptyPayload>;\n\n connectedCallback() {\n this.host.shadowRoot?.addEventListener('slotchange', this.handleSlotChange);\n this.eventListeners.forward('six-input-input', 'input', this.host);\n this.eventListeners.forward('six-input-change', 'change', this.host);\n this.eventListeners.forward('six-input-focus', 'focus', this.host);\n this.eventListeners.forward('six-input-blur', 'blur', this.host);\n }\n\n componentWillLoad() {\n this.handleSlotChange();\n }\n\n disconnectedCallback() {\n this.host.shadowRoot?.removeEventListener('slotchange', this.handleSlotChange);\n this.eventListeners.removeAll();\n }\n\n /** Sets focus on the input. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.nativeInput?.focus(options);\n }\n\n /** Removes focus from the input. */\n @Method()\n async removeFocus() {\n this.nativeInput?.blur();\n }\n\n /** Selects all the text in the input. */\n @Method()\n async select() {\n return this.nativeInput?.select();\n }\n\n /** Sets the start and end positions of the text selection (0-based). */\n @Method()\n async setSelectionRange(\n selectionStart: number,\n selectionEnd: number,\n selectionDirection: 'forward' | 'backward' | 'none' = 'none'\n ) {\n return this.nativeInput?.setSelectionRange(selectionStart, selectionEnd, selectionDirection);\n }\n\n /** Replaces a range of text with a new string. */\n @Method()\n async setRangeText(\n replacement: string,\n start: number,\n end: number,\n selectMode: 'select' | 'start' | 'end' | 'preserve' = 'preserve'\n ) {\n if (this.nativeInput == null) {\n return;\n }\n this.nativeInput.setRangeText(replacement, start, end, selectMode);\n if (this.getValue() !== this.nativeInput.value) {\n this.value = this.nativeInput.value;\n this.sixChange.emit();\n this.sixInput.emit();\n }\n }\n\n private handleChange = (event: Event) => {\n event.stopPropagation();\n if (this.nativeInput != null) {\n this.value = this.nativeInput.value;\n this.sixChange.emit();\n }\n };\n\n private handleInput = (event: Event) => {\n event.stopPropagation();\n if (this.nativeInput != null) {\n this.value = this.nativeInput.value;\n this.sixInput.emit();\n }\n };\n\n private handleBlur = () => {\n this.hasFocus = false;\n this.sixBlur.emit();\n };\n\n private handleFocus = () => {\n this.hasFocus = true;\n this.sixFocus.emit();\n };\n\n private handleClearClick = (event: MouseEvent) => {\n this.value = '';\n this.sixClear.emit();\n this.sixInput.emit();\n this.sixChange.emit();\n if (this.nativeInput != null) {\n this.nativeInput.focus();\n }\n event.stopPropagation();\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n const hasModifier = event.metaKey || event.ctrlKey || event.shiftKey || event.altKey;\n if (event.key === 'Enter' && !hasModifier) {\n setTimeout(() => {\n if (!event.defaultPrevented && !event.isComposing) {\n submitForm(this.host);\n }\n });\n }\n };\n\n private handlePasswordToggle = () => {\n this.isPasswordVisible = !this.isPasswordVisible;\n };\n\n private handleSlotChange = () => {\n this.hasHelpTextSlot = hasSlot(this.host, 'help-text');\n this.hasLabelSlot = hasSlot(this.host, 'label');\n };\n\n private getValue(): string {\n return (this.value ?? '').toString();\n }\n\n render() {\n return (\n <FormControl\n inputId={this.inputId}\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 errorTextId={this.errorTextId}\n errorText={this.errorText}\n size={this.size}\n disabled={this.disabled}\n required={this.required}\n displayError={this.invalid}\n >\n <div\n part=\"base\"\n class={{\n input: true,\n\n // Sizes\n 'input--small': this.size === 'small',\n 'input--medium': this.size === 'medium',\n 'input--large': this.size === 'large',\n\n // States\n 'input--line': this.line,\n 'input--pill': this.pill,\n 'input--disabled': this.disabled,\n 'input--focused': this.hasFocus,\n 'input--empty': this.getValue().length === 0,\n 'input--invalid': this.invalid,\n }}\n >\n <span part=\"prefix\" class=\"input__prefix\">\n <slot name=\"prefix\" />\n </span>\n\n <input\n part=\"input\"\n ref={(el) => (this.nativeInput = el)}\n id={this.inputId}\n size={1} // needed for firefox to overrule the default of 20\n class={{\n input__control: true,\n input__control__prefix: hasSlot(this.host, 'prefix'),\n }}\n type={this.type === 'password' && this.isPasswordVisible ? 'text' : this.type}\n name={this.name}\n placeholder={this.placeholder}\n disabled={this.disabled}\n readonly={this.readonly}\n minLength={this.minlength}\n maxLength={this.maxlength}\n min={this.min}\n max={this.max}\n step={this.step}\n value={this.getValue()}\n autoCapitalize={this.autocapitalize}\n autoComplete={this.autocomplete}\n autoCorrect={this.autocorrect}\n autoFocus={this.autofocus}\n spellcheck={this.spellcheck}\n pattern={this.pattern}\n required={this.required}\n inputMode={this.inputmode}\n aria-labelledby={this.labelId}\n aria-describedby={this.helpTextId}\n aria-invalid={this.invalid ? 'true' : 'false'}\n onChange={this.handleChange}\n onInput={this.handleInput}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n onKeyDown={this.handleKeyDown}\n data-testid=\"input-control\"\n />\n\n {this.clearable && (\n <button\n part=\"clear-button\"\n class=\"input__clear\"\n type=\"button\"\n onClick={this.handleClearClick}\n tabindex=\"-1\"\n data-testid=\"input-clear-button\"\n >\n <slot name=\"clear-icon\">\n <six-icon size={ICON_SIZES[this.size]}>clear</six-icon>\n </slot>\n </button>\n )}\n\n {this.togglePassword && (\n <button\n part=\"password-toggle-button\"\n class=\"input__password-toggle\"\n type=\"button\"\n onClick={this.handlePasswordToggle}\n tabindex=\"-1\"\n >\n {this.isPasswordVisible ? (\n <slot name=\"show-password-icon\">\n <six-icon size={ICON_SIZES[this.size]}>visibility_off</six-icon>\n </slot>\n ) : (\n <slot name=\"hide-password-icon\">\n <six-icon size={ICON_SIZES[this.size]}>visibility</six-icon>\n </slot>\n )}\n </button>\n )}\n\n <span part=\"suffix\" class=\"input__suffix\">\n <slot name=\"suffix\" />\n </span>\n </div>\n </FormControl>\n );\n }\n}\n"],"version":3}