@six-group/ui-library 0.0.0-insider.b2db78f → 0.0.0-insider.b85326c

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 (1176) hide show
  1. package/dist/cjs/animation-ZgWV0fC6.js +54 -0
  2. package/dist/cjs/animation-ZgWV0fC6.js.map +1 -0
  3. package/dist/cjs/{form-control-BHd-Z4ot.js → form-control-Ditp8yHw.js} +5 -5
  4. package/dist/cjs/form-control-Ditp8yHw.js.map +1 -0
  5. package/dist/cjs/{index-B_stPhJp.js → index-BKTrCUjx.js} +38 -8
  6. package/dist/cjs/index-BKTrCUjx.js.map +1 -0
  7. package/dist/cjs/loader.cjs.js +2 -2
  8. package/dist/cjs/six-alert.cjs.entry.js +1 -1
  9. package/dist/cjs/six-alert.cjs.entry.js.map +1 -1
  10. package/dist/cjs/six-alert.entry.cjs.js.map +1 -1
  11. package/dist/cjs/six-avatar.cjs.entry.js +3 -3
  12. package/dist/cjs/six-badge.cjs.entry.js +3 -3
  13. package/dist/cjs/six-button.cjs.entry.js +3 -3
  14. package/dist/cjs/six-button.cjs.entry.js.map +1 -1
  15. package/dist/cjs/six-button.entry.cjs.js.map +1 -1
  16. package/dist/cjs/six-card.cjs.entry.js +2 -2
  17. package/dist/cjs/six-checkbox.six-menu-item.entry.cjs.js.map +1 -1
  18. package/dist/cjs/six-checkbox_2.cjs.entry.js +4 -4
  19. package/dist/cjs/six-checkbox_2.cjs.entry.js.map +1 -1
  20. package/dist/cjs/six-date.cjs.entry.js +24 -22
  21. package/dist/cjs/six-date.cjs.entry.js.map +1 -1
  22. package/dist/cjs/six-date.entry.cjs.js.map +1 -1
  23. package/dist/cjs/six-datepicker.cjs.entry.js +1 -1
  24. package/dist/cjs/six-datepicker.cjs.entry.js.map +1 -1
  25. package/dist/cjs/six-datepicker.entry.cjs.js.map +1 -1
  26. package/dist/cjs/six-details.cjs.entry.js +4 -4
  27. package/dist/cjs/six-dialog.cjs.entry.js +16 -10
  28. package/dist/cjs/six-dialog.cjs.entry.js.map +1 -1
  29. package/dist/cjs/six-dialog.entry.cjs.js.map +1 -1
  30. package/dist/cjs/six-drawer.cjs.entry.js +16 -10
  31. package/dist/cjs/six-drawer.cjs.entry.js.map +1 -1
  32. package/dist/cjs/six-drawer.entry.cjs.js.map +1 -1
  33. package/dist/cjs/six-dropdown.six-menu.entry.cjs.js.map +1 -1
  34. package/dist/cjs/six-dropdown_2.cjs.entry.js +8 -8
  35. package/dist/cjs/six-dropdown_2.cjs.entry.js.map +1 -1
  36. package/dist/cjs/six-error-page.cjs.entry.js +1 -1
  37. package/dist/cjs/six-error.cjs.entry.js +1 -1
  38. package/dist/cjs/six-file-list-item.cjs.entry.js +3 -3
  39. package/dist/cjs/six-file-list.cjs.entry.js +1 -1
  40. package/dist/cjs/six-file-upload.cjs.entry.js +14 -10
  41. package/dist/cjs/six-file-upload.cjs.entry.js.map +1 -1
  42. package/dist/cjs/six-file-upload.entry.cjs.js.map +1 -1
  43. package/dist/cjs/six-footer.cjs.entry.js +1 -1
  44. package/dist/cjs/six-group-label.cjs.entry.js +2 -2
  45. package/dist/cjs/six-header-dropdown-item.cjs.entry.js +1 -1
  46. package/dist/cjs/six-header-item.cjs.entry.js +1 -1
  47. package/dist/cjs/six-header-menu-button.cjs.entry.js +1 -1
  48. package/dist/cjs/six-header.cjs.entry.js +1 -1
  49. package/dist/cjs/six-header.cjs.entry.js.map +1 -1
  50. package/dist/cjs/six-header.entry.cjs.js.map +1 -1
  51. package/dist/cjs/six-icon-button.cjs.entry.js +1 -1
  52. package/dist/cjs/six-icon.cjs.entry.js +1 -1
  53. package/dist/cjs/six-input.cjs.entry.js +5 -5
  54. package/dist/cjs/six-input.cjs.entry.js.map +1 -1
  55. package/dist/cjs/six-input.entry.cjs.js.map +1 -1
  56. package/dist/cjs/six-item-picker.cjs.entry.js +1 -1
  57. package/dist/cjs/six-language-switcher.cjs.entry.js +2 -2
  58. package/dist/cjs/six-layout-grid.cjs.entry.js +1 -1
  59. package/dist/cjs/six-logo.cjs.entry.js +1 -1
  60. package/dist/cjs/six-main-container.cjs.entry.js +1 -1
  61. package/dist/cjs/six-menu-divider.cjs.entry.js +1 -1
  62. package/dist/cjs/six-menu-label.cjs.entry.js +1 -1
  63. package/dist/cjs/six-picto.cjs.entry.js +7 -23
  64. package/dist/cjs/six-picto.cjs.entry.js.map +1 -1
  65. package/dist/cjs/six-picto.entry.cjs.js.map +1 -1
  66. package/dist/cjs/six-progress-bar.cjs.entry.js +1 -1
  67. package/dist/cjs/six-progress-bar.cjs.entry.js.map +1 -1
  68. package/dist/cjs/six-progress-bar.entry.cjs.js.map +1 -1
  69. package/dist/cjs/six-progress-ring.cjs.entry.js +1 -1
  70. package/dist/cjs/six-progress-ring.cjs.entry.js.map +1 -1
  71. package/dist/cjs/six-progress-ring.entry.cjs.js.map +1 -1
  72. package/dist/cjs/six-radio.cjs.entry.js +1 -1
  73. package/dist/cjs/six-radio.cjs.entry.js.map +1 -1
  74. package/dist/cjs/six-radio.entry.cjs.js.map +1 -1
  75. package/dist/cjs/six-range.cjs.entry.js +2 -2
  76. package/dist/cjs/six-range.cjs.entry.js.map +1 -1
  77. package/dist/cjs/six-range.entry.cjs.js.map +1 -1
  78. package/dist/cjs/six-root.cjs.entry.js +1 -1
  79. package/dist/cjs/six-search-field.cjs.entry.js +2 -2
  80. package/dist/cjs/six-select.cjs.entry.js +17 -9
  81. package/dist/cjs/six-select.cjs.entry.js.map +1 -1
  82. package/dist/cjs/six-select.entry.cjs.js.map +1 -1
  83. package/dist/cjs/six-sidebar-item-group.cjs.entry.js +1 -1
  84. package/dist/cjs/six-sidebar-item.cjs.entry.js +1 -1
  85. package/dist/cjs/six-sidebar.cjs.entry.js +1 -1
  86. package/dist/cjs/six-spinner.cjs.entry.js +1 -1
  87. package/dist/cjs/six-stage-indicator.cjs.entry.js +1 -1
  88. package/dist/cjs/six-switch.cjs.entry.js +2 -2
  89. package/dist/cjs/six-switch.cjs.entry.js.map +1 -1
  90. package/dist/cjs/six-switch.entry.cjs.js.map +1 -1
  91. package/dist/cjs/six-tab-group.cjs.entry.js +5 -38
  92. package/dist/cjs/six-tab-group.cjs.entry.js.map +1 -1
  93. package/dist/cjs/six-tab-group.entry.cjs.js.map +1 -1
  94. package/dist/cjs/six-tab-panel.cjs.entry.js +1 -1
  95. package/dist/cjs/six-tab.cjs.entry.js +1 -1
  96. package/dist/cjs/six-tag.cjs.entry.js +1 -1
  97. package/dist/cjs/six-textarea.cjs.entry.js +2 -2
  98. package/dist/cjs/six-textarea.cjs.entry.js.map +1 -1
  99. package/dist/cjs/six-textarea.entry.cjs.js.map +1 -1
  100. package/dist/cjs/six-tile.cjs.entry.js +1 -1
  101. package/dist/cjs/six-timepicker.cjs.entry.js +1 -1
  102. package/dist/cjs/six-timepicker.cjs.entry.js.map +1 -1
  103. package/dist/cjs/six-timepicker.entry.cjs.js.map +1 -1
  104. package/dist/cjs/six-tooltip.cjs.entry.js +1 -1
  105. package/dist/cjs/ui-library.cjs.js +3 -3
  106. package/dist/cjs/ui-library.cjs.js.map +1 -1
  107. package/dist/collection/collection-manifest.json +3 -3
  108. package/dist/collection/components/six-alert/six-alert.js +4 -4
  109. package/dist/collection/components/six-avatar/six-avatar.js +6 -6
  110. package/dist/collection/components/six-badge/six-badge.js +5 -5
  111. package/dist/collection/components/six-button/six-button.js +16 -16
  112. package/dist/collection/components/six-card/six-card.js +1 -1
  113. package/dist/collection/components/six-checkbox/six-checkbox.js +12 -12
  114. package/dist/collection/components/six-date/iso-date.js +2 -2
  115. package/dist/collection/components/six-date/iso-date.js.map +1 -1
  116. package/dist/collection/components/six-date/six-date.js +42 -59
  117. package/dist/collection/components/six-date/six-date.js.map +1 -1
  118. package/dist/collection/components/six-datepicker/six-datepicker.js +27 -22
  119. package/dist/collection/components/six-datepicker/six-datepicker.js.map +1 -1
  120. package/dist/collection/components/six-details/six-details.js +11 -11
  121. package/dist/collection/components/six-dialog/six-dialog.js +26 -20
  122. package/dist/collection/components/six-dialog/six-dialog.js.map +1 -1
  123. package/dist/collection/components/six-drawer/six-drawer.js +28 -22
  124. package/dist/collection/components/six-drawer/six-drawer.js.map +1 -1
  125. package/dist/collection/components/six-dropdown/six-dropdown.js +21 -19
  126. package/dist/collection/components/six-dropdown/six-dropdown.js.map +1 -1
  127. package/dist/collection/components/six-error-page/six-error-page.js +5 -4
  128. package/dist/collection/components/six-error-page/six-error-page.js.map +1 -1
  129. package/dist/collection/components/six-file-list-item/six-file-list-item.js +8 -8
  130. package/dist/collection/components/six-file-upload/six-file-upload.js +23 -19
  131. package/dist/collection/components/six-file-upload/six-file-upload.js.map +1 -1
  132. package/dist/collection/components/six-group-label/six-group-label.js +5 -5
  133. package/dist/collection/components/six-header/six-header.js +2 -2
  134. package/dist/collection/components/six-header-dropdown-item/six-header-dropdown-item.js +2 -2
  135. package/dist/collection/components/six-header-item/six-header-item.js +1 -1
  136. package/dist/collection/components/six-header-menu-button/six-header-menu-button.js +5 -5
  137. package/dist/collection/components/six-icon/six-icon.js +2 -2
  138. package/dist/collection/components/six-icon-button/six-icon-button.js +8 -8
  139. package/dist/collection/components/six-input/six-input.js +33 -33
  140. package/dist/collection/components/six-item-picker/six-item-picker.js +14 -13
  141. package/dist/collection/components/six-item-picker/six-item-picker.js.map +1 -1
  142. package/dist/collection/components/six-language-switcher/six-language-switcher.js +3 -2
  143. package/dist/collection/components/six-language-switcher/six-language-switcher.js.map +1 -1
  144. package/dist/collection/components/six-layout-grid/six-layout-grid.js +1 -1
  145. package/dist/collection/components/six-logo/six-logo.js +1 -1
  146. package/dist/collection/components/six-main-container/six-main-container.js +1 -1
  147. package/dist/collection/components/six-menu/six-menu.js +9 -8
  148. package/dist/collection/components/six-menu/six-menu.js.map +1 -1
  149. package/dist/collection/components/six-menu-item/six-menu-item.js +4 -4
  150. package/dist/collection/components/six-picto/six-picto.css +1193 -0
  151. package/dist/collection/components/six-picto/six-picto.js +6 -27
  152. package/dist/collection/components/six-picto/six-picto.js.map +1 -1
  153. package/dist/collection/components/six-progress-bar/six-progress-bar.js +2 -2
  154. package/dist/collection/components/six-progress-ring/six-progress-ring.js +3 -3
  155. package/dist/collection/components/six-radio/six-radio.js +5 -5
  156. package/dist/collection/components/six-range/six-range.js +14 -13
  157. package/dist/collection/components/six-range/six-range.js.map +1 -1
  158. package/dist/collection/components/six-root/six-root.js +3 -3
  159. package/dist/collection/components/six-search-field/six-search-field.js +6 -6
  160. package/dist/collection/components/six-select/six-select.js +42 -33
  161. package/dist/collection/components/six-select/six-select.js.map +1 -1
  162. package/dist/collection/components/six-sidebar/six-sidebar.js +4 -4
  163. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js +5 -5
  164. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js +6 -6
  165. package/dist/collection/components/six-spinner/six-spinner.js +2 -2
  166. package/dist/collection/components/six-stage-indicator/six-stage-indicator.js +1 -1
  167. package/dist/collection/components/six-switch/six-switch.js +9 -9
  168. package/dist/collection/components/six-tab/six-tab.js +4 -4
  169. package/dist/collection/components/six-tab-group/six-tab-group.js +4 -4
  170. package/dist/collection/components/six-tab-group/six-tab-group.js.map +1 -1
  171. package/dist/collection/components/six-tab-panel/six-tab-panel.js +2 -2
  172. package/dist/collection/components/six-tag/six-tag.js +4 -4
  173. package/dist/collection/components/six-textarea/six-textarea.js +22 -22
  174. package/dist/collection/components/six-tile/six-tile.js +7 -7
  175. package/dist/collection/components/six-timepicker/six-timepicker.js +23 -23
  176. package/dist/collection/components/six-tooltip/six-tooltip.js +7 -7
  177. package/dist/collection/functional-components/form-control/form-control.js +2 -2
  178. package/dist/collection/functional-components/form-control/form-control.js.map +1 -1
  179. package/dist/collection/utils/animation.js +13 -0
  180. package/dist/collection/utils/animation.js.map +1 -1
  181. package/dist/components/index.js +1 -1
  182. package/dist/components/{p-C733XVqS.js → p-7eUoSVPj.js} +7 -7
  183. package/dist/components/{p-C733XVqS.js.map → p-7eUoSVPj.js.map} +1 -1
  184. package/dist/components/{p-DAOD-npI.js → p-B-XztaHV.js} +6 -6
  185. package/dist/components/{p-DAOD-npI.js.map → p-B-XztaHV.js.map} +1 -1
  186. package/dist/components/{p-C4Shm3wX.js → p-Bl7vxyI3.js} +7 -7
  187. package/dist/components/p-Bl7vxyI3.js.map +1 -0
  188. package/dist/components/{p-Cc_nfyAl.js → p-BmW8cpEG.js} +5 -5
  189. package/dist/components/p-BmW8cpEG.js.map +1 -0
  190. package/dist/components/{p-BAe7gBEi.js → p-BtF2Ym6T.js} +38 -8
  191. package/dist/components/p-BtF2Ym6T.js.map +1 -0
  192. package/dist/components/{p-ByetrMwd.js → p-BtNjuUha.js} +6 -6
  193. package/dist/components/p-BtNjuUha.js.map +1 -0
  194. package/dist/components/{p-BFrSuO7n.js → p-BxWEEwNO.js} +9 -9
  195. package/dist/components/p-BxWEEwNO.js.map +1 -0
  196. package/dist/components/{p-ltzGzaAu.js → p-CKhg9ibv.js} +3 -3
  197. package/dist/components/{p-ltzGzaAu.js.map → p-CKhg9ibv.js.map} +1 -1
  198. package/dist/components/{p-DYN2qwe6.js → p-CLtU4Br-.js} +4 -4
  199. package/dist/components/{p-DYN2qwe6.js.map → p-CLtU4Br-.js.map} +1 -1
  200. package/dist/components/{p-DwZ0ygip.js → p-CNVkBlqA.js} +16 -16
  201. package/dist/components/p-CNVkBlqA.js.map +1 -0
  202. package/dist/components/{p-g7aZB0FM.js → p-CYrYPnLQ.js} +3 -3
  203. package/dist/components/{p-g7aZB0FM.js.map → p-CYrYPnLQ.js.map} +1 -1
  204. package/dist/components/{p-B72cH-mu.js → p-CpcN3YG9.js} +5 -5
  205. package/dist/components/{p-B72cH-mu.js.map → p-CpcN3YG9.js.map} +1 -1
  206. package/dist/components/{p-su5lTFPV.js → p-Cr6sHYme.js} +3 -3
  207. package/dist/components/{p-su5lTFPV.js.map → p-Cr6sHYme.js.map} +1 -1
  208. package/dist/components/{p-Ce-a0l4Q.js → p-D0dsFLio.js} +8 -8
  209. package/dist/components/{p-Ce-a0l4Q.js.map → p-D0dsFLio.js.map} +1 -1
  210. package/dist/components/{p-BPj4WRz2.js → p-DV46ui1Q.js} +3 -3
  211. package/dist/components/{p-BPj4WRz2.js.map → p-DV46ui1Q.js.map} +1 -1
  212. package/dist/components/p-DXhOme6Y.js +45 -0
  213. package/dist/components/p-DXhOme6Y.js.map +1 -0
  214. package/dist/components/{p-Bga8smgq.js → p-Mse5vRUS.js} +3 -3
  215. package/dist/components/{p-Bga8smgq.js.map → p-Mse5vRUS.js.map} +1 -1
  216. package/dist/components/p-SLlDVtvF.js +51 -0
  217. package/dist/components/p-SLlDVtvF.js.map +1 -0
  218. package/dist/components/{p-CS9Rg27-.js → p-eW-dQ-wI.js} +4 -4
  219. package/dist/components/{p-CS9Rg27-.js.map → p-eW-dQ-wI.js.map} +1 -1
  220. package/dist/components/{p-BUw6MZZI.js → p-mLQ66WNK.js} +10 -10
  221. package/dist/components/{p-BUw6MZZI.js.map → p-mLQ66WNK.js.map} +1 -1
  222. package/dist/components/six-alert.js +3 -3
  223. package/dist/components/six-alert.js.map +1 -1
  224. package/dist/components/six-avatar.js +4 -4
  225. package/dist/components/six-badge.js +3 -3
  226. package/dist/components/six-button.js +1 -1
  227. package/dist/components/six-card.js +2 -2
  228. package/dist/components/six-checkbox.js +1 -1
  229. package/dist/components/six-date.js +29 -28
  230. package/dist/components/six-date.js.map +1 -1
  231. package/dist/components/six-datepicker.js +9 -9
  232. package/dist/components/six-datepicker.js.map +1 -1
  233. package/dist/components/six-details.js +1 -1
  234. package/dist/components/six-dialog.js +18 -12
  235. package/dist/components/six-dialog.js.map +1 -1
  236. package/dist/components/six-drawer.js +18 -12
  237. package/dist/components/six-drawer.js.map +1 -1
  238. package/dist/components/six-dropdown.js +1 -1
  239. package/dist/components/six-error-page.js +3 -3
  240. package/dist/components/six-error.js +1 -1
  241. package/dist/components/six-file-list-item.js +4 -4
  242. package/dist/components/six-file-list.js +1 -1
  243. package/dist/components/six-file-upload.js +17 -13
  244. package/dist/components/six-file-upload.js.map +1 -1
  245. package/dist/components/six-footer.js +1 -1
  246. package/dist/components/six-group-label.js +3 -3
  247. package/dist/components/six-header-dropdown-item.js +8 -8
  248. package/dist/components/six-header-item.js +1 -1
  249. package/dist/components/six-header-menu-button.js +3 -3
  250. package/dist/components/six-header.js +1 -1
  251. package/dist/components/six-header.js.map +1 -1
  252. package/dist/components/six-icon-button.js +1 -1
  253. package/dist/components/six-icon.js +1 -1
  254. package/dist/components/six-input.js +1 -1
  255. package/dist/components/six-item-picker.js +1 -1
  256. package/dist/components/six-language-switcher.js +2 -2
  257. package/dist/components/six-layout-grid.js +1 -1
  258. package/dist/components/six-logo.js +1 -1
  259. package/dist/components/six-main-container.js +1 -1
  260. package/dist/components/six-menu-divider.js +1 -1
  261. package/dist/components/six-menu-item.js +1 -1
  262. package/dist/components/six-menu-label.js +1 -1
  263. package/dist/components/six-menu.js +1 -1
  264. package/dist/components/six-picto.js +1 -1
  265. package/dist/components/six-progress-bar.js +1 -1
  266. package/dist/components/six-progress-bar.js.map +1 -1
  267. package/dist/components/six-progress-ring.js +1 -1
  268. package/dist/components/six-progress-ring.js.map +1 -1
  269. package/dist/components/six-radio.js +1 -1
  270. package/dist/components/six-radio.js.map +1 -1
  271. package/dist/components/six-range.js +4 -4
  272. package/dist/components/six-range.js.map +1 -1
  273. package/dist/components/six-root.js +3 -3
  274. package/dist/components/six-search-field.js +6 -6
  275. package/dist/components/six-select.js +29 -21
  276. package/dist/components/six-select.js.map +1 -1
  277. package/dist/components/six-sidebar-item-group.js +3 -3
  278. package/dist/components/six-sidebar-item.js +2 -2
  279. package/dist/components/six-sidebar.js +1 -1
  280. package/dist/components/six-spinner.js +1 -1
  281. package/dist/components/six-stage-indicator.js +1 -1
  282. package/dist/components/six-switch.js +3 -3
  283. package/dist/components/six-switch.js.map +1 -1
  284. package/dist/components/six-tab-group.js +6 -39
  285. package/dist/components/six-tab-group.js.map +1 -1
  286. package/dist/components/six-tab-panel.js +1 -1
  287. package/dist/components/six-tab.js +3 -3
  288. package/dist/components/six-tag.js +5 -5
  289. package/dist/components/six-textarea.js +3 -3
  290. package/dist/components/six-textarea.js.map +1 -1
  291. package/dist/components/six-tile.js +4 -4
  292. package/dist/components/six-timepicker.js +1 -1
  293. package/dist/components/six-tooltip.js +1 -1
  294. package/dist/components.json +50 -50
  295. package/dist/esm/animation-SLlDVtvF.js +51 -0
  296. package/dist/esm/animation-SLlDVtvF.js.map +1 -0
  297. package/dist/esm/{execution-control-ltzGzaAu.js → execution-control-CKhg9ibv.js} +3 -3
  298. package/dist/esm/{execution-control-ltzGzaAu.js.map → execution-control-CKhg9ibv.js.map} +1 -1
  299. package/dist/esm/{form-control-_dvMXnmg.js → form-control-D_uS8E6o.js} +5 -5
  300. package/dist/esm/form-control-D_uS8E6o.js.map +1 -0
  301. package/dist/esm/{index-BF09Gr5y.js → index-D0Go1Zjj.js} +38 -8
  302. package/dist/esm/index-D0Go1Zjj.js.map +1 -0
  303. package/dist/esm/loader.js +3 -3
  304. package/dist/esm/six-alert.entry.js +1 -1
  305. package/dist/esm/six-alert.entry.js.map +1 -1
  306. package/dist/esm/six-avatar.entry.js +3 -3
  307. package/dist/esm/six-badge.entry.js +3 -3
  308. package/dist/esm/six-button.entry.js +3 -3
  309. package/dist/esm/six-button.entry.js.map +1 -1
  310. package/dist/esm/six-card.entry.js +2 -2
  311. package/dist/esm/six-checkbox.six-menu-item.entry.js.map +1 -1
  312. package/dist/esm/six-checkbox_2.entry.js +4 -4
  313. package/dist/esm/six-checkbox_2.entry.js.map +1 -1
  314. package/dist/esm/six-date.entry.js +24 -22
  315. package/dist/esm/six-date.entry.js.map +1 -1
  316. package/dist/esm/six-datepicker.entry.js +2 -2
  317. package/dist/esm/six-datepicker.entry.js.map +1 -1
  318. package/dist/esm/six-details.entry.js +4 -4
  319. package/dist/esm/six-dialog.entry.js +16 -10
  320. package/dist/esm/six-dialog.entry.js.map +1 -1
  321. package/dist/esm/six-drawer.entry.js +16 -10
  322. package/dist/esm/six-drawer.entry.js.map +1 -1
  323. package/dist/esm/six-dropdown.six-menu.entry.js.map +1 -1
  324. package/dist/esm/six-dropdown_2.entry.js +9 -9
  325. package/dist/esm/six-dropdown_2.entry.js.map +1 -1
  326. package/dist/esm/six-error-page.entry.js +1 -1
  327. package/dist/esm/six-error.entry.js +1 -1
  328. package/dist/esm/six-file-list-item.entry.js +3 -3
  329. package/dist/esm/six-file-list.entry.js +1 -1
  330. package/dist/esm/six-file-upload.entry.js +14 -10
  331. package/dist/esm/six-file-upload.entry.js.map +1 -1
  332. package/dist/esm/six-footer.entry.js +1 -1
  333. package/dist/esm/six-group-label.entry.js +2 -2
  334. package/dist/esm/six-header-dropdown-item.entry.js +1 -1
  335. package/dist/esm/six-header-item.entry.js +1 -1
  336. package/dist/esm/six-header-menu-button.entry.js +1 -1
  337. package/dist/esm/six-header.entry.js +1 -1
  338. package/dist/esm/six-header.entry.js.map +1 -1
  339. package/dist/esm/six-icon-button.entry.js +1 -1
  340. package/dist/esm/six-icon.entry.js +1 -1
  341. package/dist/esm/six-input.entry.js +5 -5
  342. package/dist/esm/six-input.entry.js.map +1 -1
  343. package/dist/esm/six-item-picker.entry.js +2 -2
  344. package/dist/esm/six-language-switcher.entry.js +2 -2
  345. package/dist/esm/six-layout-grid.entry.js +1 -1
  346. package/dist/esm/six-logo.entry.js +1 -1
  347. package/dist/esm/six-main-container.entry.js +1 -1
  348. package/dist/esm/six-menu-divider.entry.js +1 -1
  349. package/dist/esm/six-menu-label.entry.js +1 -1
  350. package/dist/esm/six-picto.entry.js +7 -23
  351. package/dist/esm/six-picto.entry.js.map +1 -1
  352. package/dist/esm/six-progress-bar.entry.js +1 -1
  353. package/dist/esm/six-progress-bar.entry.js.map +1 -1
  354. package/dist/esm/six-progress-ring.entry.js +1 -1
  355. package/dist/esm/six-progress-ring.entry.js.map +1 -1
  356. package/dist/esm/six-radio.entry.js +1 -1
  357. package/dist/esm/six-radio.entry.js.map +1 -1
  358. package/dist/esm/six-range.entry.js +2 -2
  359. package/dist/esm/six-range.entry.js.map +1 -1
  360. package/dist/esm/six-root.entry.js +1 -1
  361. package/dist/esm/six-search-field.entry.js +3 -3
  362. package/dist/esm/six-select.entry.js +19 -11
  363. package/dist/esm/six-select.entry.js.map +1 -1
  364. package/dist/esm/six-sidebar-item-group.entry.js +1 -1
  365. package/dist/esm/six-sidebar-item.entry.js +1 -1
  366. package/dist/esm/six-sidebar.entry.js +1 -1
  367. package/dist/esm/six-spinner.entry.js +1 -1
  368. package/dist/esm/six-stage-indicator.entry.js +1 -1
  369. package/dist/esm/six-switch.entry.js +2 -2
  370. package/dist/esm/six-switch.entry.js.map +1 -1
  371. package/dist/esm/six-tab-group.entry.js +4 -37
  372. package/dist/esm/six-tab-group.entry.js.map +1 -1
  373. package/dist/esm/six-tab-panel.entry.js +1 -1
  374. package/dist/esm/six-tab.entry.js +1 -1
  375. package/dist/esm/six-tag.entry.js +2 -2
  376. package/dist/esm/six-textarea.entry.js +2 -2
  377. package/dist/esm/six-textarea.entry.js.map +1 -1
  378. package/dist/esm/six-tile.entry.js +1 -1
  379. package/dist/esm/six-timepicker.entry.js +2 -2
  380. package/dist/esm/six-timepicker.entry.js.map +1 -1
  381. package/dist/esm/six-tooltip.entry.js +1 -1
  382. package/dist/esm/ui-library.js +4 -4
  383. package/dist/esm/ui-library.js.map +1 -1
  384. package/dist/types/components/six-date/six-date.d.ts +9 -7
  385. package/dist/types/components/six-dialog/six-dialog.d.ts +10 -2
  386. package/dist/types/components/six-drawer/six-drawer.d.ts +10 -2
  387. package/dist/types/components/six-file-upload/six-file-upload.d.ts +2 -6
  388. package/dist/types/components/six-picto/six-picto.d.ts +0 -2
  389. package/dist/types/components/six-select/six-select.d.ts +1 -0
  390. package/dist/types/components.d.ts +16 -20
  391. package/dist/types/stencil-public-runtime.d.ts +2 -0
  392. package/dist/types/utils/animation.d.ts +4 -0
  393. package/dist/ui-library/{p-dfd0956a.entry.js → p-01306147.entry.js} +2 -2
  394. package/dist/ui-library/{p-2bac7418.entry.js → p-071ed780.entry.js} +2 -2
  395. package/dist/ui-library/p-071ed780.entry.js.map +1 -0
  396. package/dist/ui-library/{p-9656e941.entry.js → p-0d97e592.entry.js} +2 -2
  397. package/dist/ui-library/{p-e516182e.entry.js → p-16028bce.entry.js} +2 -2
  398. package/dist/ui-library/{p-041c4b5d.entry.js → p-19361e9b.entry.js} +2 -2
  399. package/dist/ui-library/{p-abe6f5c4.entry.js → p-1e4d1252.entry.js} +2 -2
  400. package/dist/ui-library/p-2992225b.entry.js +2 -0
  401. package/dist/ui-library/p-2992225b.entry.js.map +1 -0
  402. package/dist/ui-library/{p-33b2003b.entry.js → p-36a316e0.entry.js} +2 -2
  403. package/dist/ui-library/p-36a316e0.entry.js.map +1 -0
  404. package/dist/ui-library/{p-5003f61b.entry.js → p-394c1dc0.entry.js} +2 -2
  405. package/dist/ui-library/{p-d601b41b.entry.js → p-4a4a0751.entry.js} +2 -2
  406. package/dist/ui-library/{p-a4f39b82.entry.js → p-537a8953.entry.js} +2 -2
  407. package/dist/ui-library/p-5e5bd309.entry.js +2 -0
  408. package/dist/ui-library/p-5e5bd309.entry.js.map +1 -0
  409. package/dist/ui-library/{p-35ebd705.entry.js → p-5e70085d.entry.js} +2 -2
  410. package/dist/ui-library/{p-f1e48369.entry.js → p-5ed5842b.entry.js} +2 -2
  411. package/dist/ui-library/p-5ed5842b.entry.js.map +1 -0
  412. package/dist/ui-library/p-64377a4b.entry.js +2 -0
  413. package/dist/ui-library/p-64377a4b.entry.js.map +1 -0
  414. package/dist/ui-library/{p-fac22819.entry.js → p-679f1e08.entry.js} +2 -2
  415. package/dist/ui-library/p-679f1e08.entry.js.map +1 -0
  416. package/dist/ui-library/{p-7cdda567.entry.js → p-68c50fb7.entry.js} +2 -2
  417. package/dist/ui-library/p-68c50fb7.entry.js.map +1 -0
  418. package/dist/ui-library/{p-91511258.entry.js → p-695e450e.entry.js} +2 -2
  419. package/dist/ui-library/{p-bf10bd79.entry.js → p-6990e5ed.entry.js} +2 -2
  420. package/dist/ui-library/p-6a760300.entry.js +2 -0
  421. package/dist/ui-library/p-6a760300.entry.js.map +1 -0
  422. package/dist/ui-library/{p-4d714149.entry.js → p-6bb0b9e9.entry.js} +2 -2
  423. package/dist/ui-library/p-6bb0b9e9.entry.js.map +1 -0
  424. package/dist/ui-library/{p-8496e1cd.entry.js → p-6d212bc0.entry.js} +2 -2
  425. package/dist/ui-library/{p-eed32256.entry.js → p-73b64625.entry.js} +2 -2
  426. package/dist/ui-library/{p-220ffc25.entry.js → p-79a79513.entry.js} +2 -2
  427. package/dist/ui-library/p-79a79513.entry.js.map +1 -0
  428. package/dist/ui-library/p-7bdc9f95.entry.js +2 -0
  429. package/dist/ui-library/p-7bdc9f95.entry.js.map +1 -0
  430. package/dist/ui-library/{p-367d2873.entry.js → p-7c438e21.entry.js} +2 -2
  431. package/dist/ui-library/{p-c72c0d32.entry.js → p-7d2f5f44.entry.js} +2 -2
  432. package/dist/ui-library/{p-03ac847d.entry.js → p-81af96f2.entry.js} +2 -2
  433. package/dist/ui-library/{p-2db80aaf.entry.js → p-830ed202.entry.js} +2 -2
  434. package/dist/ui-library/{p-a747beba.entry.js → p-84964501.entry.js} +2 -2
  435. package/dist/ui-library/{p-4e183258.entry.js → p-85dbcfb5.entry.js} +2 -2
  436. package/dist/ui-library/p-85dbcfb5.entry.js.map +1 -0
  437. package/dist/ui-library/{p-9deb70a3.entry.js → p-868fab98.entry.js} +2 -2
  438. package/dist/ui-library/{p-07dbfe1d.entry.js → p-8fe7ecdd.entry.js} +2 -2
  439. package/dist/ui-library/{p-15d09aea.entry.js → p-95182417.entry.js} +2 -2
  440. package/dist/ui-library/p-95182417.entry.js.map +1 -0
  441. package/dist/ui-library/{p-8e5b7dbb.entry.js → p-9713ecff.entry.js} +2 -2
  442. package/dist/ui-library/p-9713ecff.entry.js.map +1 -0
  443. package/dist/ui-library/p-97b78889.entry.js +2 -0
  444. package/dist/ui-library/p-97b78889.entry.js.map +1 -0
  445. package/dist/ui-library/{p-d9224c76.entry.js → p-9b1c8a24.entry.js} +2 -2
  446. package/dist/ui-library/p-9b1c8a24.entry.js.map +1 -0
  447. package/dist/ui-library/p-9e8fdf44.entry.js +2 -0
  448. package/dist/ui-library/p-9e8fdf44.entry.js.map +1 -0
  449. package/dist/ui-library/{p-080bf19c.entry.js → p-9f0ed997.entry.js} +2 -2
  450. package/dist/ui-library/{p-696590b3.entry.js → p-9f77ae55.entry.js} +2 -2
  451. package/dist/ui-library/{p-ltzGzaAu.js → p-CKhg9ibv.js} +2 -2
  452. package/dist/ui-library/{p-ltzGzaAu.js.map → p-CKhg9ibv.js.map} +1 -1
  453. package/dist/ui-library/p-D0Go1Zjj.js +3 -0
  454. package/dist/ui-library/p-D0Go1Zjj.js.map +1 -0
  455. package/dist/ui-library/p-IBmarOIS.js +2 -0
  456. package/dist/ui-library/p-IBmarOIS.js.map +1 -0
  457. package/dist/ui-library/p-SLlDVtvF.js +2 -0
  458. package/dist/ui-library/p-SLlDVtvF.js.map +1 -0
  459. package/dist/ui-library/{p-0f7aff92.entry.js → p-a534a4bc.entry.js} +2 -2
  460. package/dist/ui-library/{p-7722c3c9.entry.js → p-b8db5638.entry.js} +2 -2
  461. package/dist/ui-library/{p-e2460554.entry.js → p-ba68b30c.entry.js} +2 -2
  462. package/dist/ui-library/{p-f22b0f49.entry.js → p-baf698e1.entry.js} +2 -2
  463. package/dist/ui-library/{p-6183f4c8.entry.js → p-c2ec443c.entry.js} +2 -2
  464. package/dist/ui-library/{p-894dd0f7.entry.js → p-cc44af70.entry.js} +2 -2
  465. package/dist/ui-library/p-cc44af70.entry.js.map +1 -0
  466. package/dist/ui-library/{p-3aeff13e.entry.js → p-d1bd67af.entry.js} +2 -2
  467. package/dist/ui-library/{p-83806640.entry.js → p-d7866617.entry.js} +2 -2
  468. package/dist/ui-library/p-d7866617.entry.js.map +1 -0
  469. package/dist/ui-library/p-d9640c45.entry.js +2 -0
  470. package/dist/ui-library/p-d9640c45.entry.js.map +1 -0
  471. package/dist/ui-library/{p-314df297.entry.js → p-df05b23b.entry.js} +2 -2
  472. package/dist/ui-library/{p-16fefaf7.entry.js → p-e91aa04b.entry.js} +2 -2
  473. package/dist/ui-library/{p-dc9badb8.entry.js → p-f0f73eef.entry.js} +2 -2
  474. package/dist/ui-library/p-f38c1d23.entry.js +2 -0
  475. package/dist/ui-library/{p-f8dccfa9.entry.js → p-f4e2ddfc.entry.js} +2 -2
  476. package/dist/ui-library/{p-9a7aa0d7.entry.js → p-f585a5ab.entry.js} +2 -2
  477. package/dist/ui-library/six-alert.entry.esm.js.map +1 -1
  478. package/dist/ui-library/six-button.entry.esm.js.map +1 -1
  479. package/dist/ui-library/six-checkbox.six-menu-item.entry.esm.js.map +1 -1
  480. package/dist/ui-library/six-date.entry.esm.js.map +1 -1
  481. package/dist/ui-library/six-datepicker.entry.esm.js.map +1 -1
  482. package/dist/ui-library/six-dialog.entry.esm.js.map +1 -1
  483. package/dist/ui-library/six-drawer.entry.esm.js.map +1 -1
  484. package/dist/ui-library/six-dropdown.six-menu.entry.esm.js.map +1 -1
  485. package/dist/ui-library/six-file-upload.entry.esm.js.map +1 -1
  486. package/dist/ui-library/six-header.entry.esm.js.map +1 -1
  487. package/dist/ui-library/six-input.entry.esm.js.map +1 -1
  488. package/dist/ui-library/six-picto.entry.esm.js.map +1 -1
  489. package/dist/ui-library/six-progress-bar.entry.esm.js.map +1 -1
  490. package/dist/ui-library/six-progress-ring.entry.esm.js.map +1 -1
  491. package/dist/ui-library/six-radio.entry.esm.js.map +1 -1
  492. package/dist/ui-library/six-range.entry.esm.js.map +1 -1
  493. package/dist/ui-library/six-select.entry.esm.js.map +1 -1
  494. package/dist/ui-library/six-switch.entry.esm.js.map +1 -1
  495. package/dist/ui-library/six-tab-group.entry.esm.js.map +1 -1
  496. package/dist/ui-library/six-textarea.entry.esm.js.map +1 -1
  497. package/dist/ui-library/six-timepicker.entry.esm.js.map +1 -1
  498. package/dist/ui-library/ui-library.esm.js +1 -1
  499. package/dist/ui-library/ui-library.esm.js.map +1 -1
  500. package/package.json +7 -6
  501. package/dist/cjs/form-control-BHd-Z4ot.js.map +0 -1
  502. package/dist/cjs/index-B_stPhJp.js.map +0 -1
  503. package/dist/collection/assets/pictograms/TPP.svg +0 -1
  504. package/dist/collection/assets/pictograms/agile.svg +0 -1
  505. package/dist/collection/assets/pictograms/ai.svg +0 -1
  506. package/dist/collection/assets/pictograms/airplane.svg +0 -1
  507. package/dist/collection/assets/pictograms/alert.svg +0 -1
  508. package/dist/collection/assets/pictograms/ambulance.svg +0 -1
  509. package/dist/collection/assets/pictograms/analyse.svg +0 -1
  510. package/dist/collection/assets/pictograms/anchor.svg +0 -1
  511. package/dist/collection/assets/pictograms/apple.svg +0 -1
  512. package/dist/collection/assets/pictograms/arrow-down.svg +0 -1
  513. package/dist/collection/assets/pictograms/arrow-right.svg +0 -1
  514. package/dist/collection/assets/pictograms/arrow-up.svg +0 -1
  515. package/dist/collection/assets/pictograms/astronaut-outline.svg +0 -1
  516. package/dist/collection/assets/pictograms/augmented-reality.svg +0 -1
  517. package/dist/collection/assets/pictograms/backoffice.svg +0 -1
  518. package/dist/collection/assets/pictograms/bank.svg +0 -1
  519. package/dist/collection/assets/pictograms/banknote.svg +0 -1
  520. package/dist/collection/assets/pictograms/barcode.svg +0 -1
  521. package/dist/collection/assets/pictograms/battery.svg +0 -1
  522. package/dist/collection/assets/pictograms/beacon.svg +0 -1
  523. package/dist/collection/assets/pictograms/beat.svg +0 -1
  524. package/dist/collection/assets/pictograms/bee.svg +0 -1
  525. package/dist/collection/assets/pictograms/bell.svg +0 -1
  526. package/dist/collection/assets/pictograms/berlin.svg +0 -1
  527. package/dist/collection/assets/pictograms/big-data.svg +0 -1
  528. package/dist/collection/assets/pictograms/bilateral.svg +0 -1
  529. package/dist/collection/assets/pictograms/bill.svg +0 -1
  530. package/dist/collection/assets/pictograms/binoculars.svg +0 -1
  531. package/dist/collection/assets/pictograms/block.svg +0 -1
  532. package/dist/collection/assets/pictograms/blockchain.svg +0 -1
  533. package/dist/collection/assets/pictograms/bluetooth.svg +0 -1
  534. package/dist/collection/assets/pictograms/bone.svg +0 -1
  535. package/dist/collection/assets/pictograms/book.svg +0 -1
  536. package/dist/collection/assets/pictograms/bottle.svg +0 -1
  537. package/dist/collection/assets/pictograms/buggy.svg +0 -1
  538. package/dist/collection/assets/pictograms/bull-bear.svg +0 -1
  539. package/dist/collection/assets/pictograms/business.svg +0 -1
  540. package/dist/collection/assets/pictograms/cake.svg +0 -1
  541. package/dist/collection/assets/pictograms/calculator.svg +0 -1
  542. package/dist/collection/assets/pictograms/calendar.svg +0 -1
  543. package/dist/collection/assets/pictograms/cam.svg +0 -1
  544. package/dist/collection/assets/pictograms/cap.svg +0 -1
  545. package/dist/collection/assets/pictograms/capsule.svg +0 -1
  546. package/dist/collection/assets/pictograms/car.svg +0 -1
  547. package/dist/collection/assets/pictograms/carabiner.svg +0 -1
  548. package/dist/collection/assets/pictograms/card.svg +0 -1
  549. package/dist/collection/assets/pictograms/cash-machine.svg +0 -1
  550. package/dist/collection/assets/pictograms/cash-register.svg +0 -1
  551. package/dist/collection/assets/pictograms/cash.svg +0 -1
  552. package/dist/collection/assets/pictograms/cashless.svg +0 -1
  553. package/dist/collection/assets/pictograms/check.svg +0 -1
  554. package/dist/collection/assets/pictograms/cheveron-right.svg +0 -1
  555. package/dist/collection/assets/pictograms/chf-eur.svg +0 -1
  556. package/dist/collection/assets/pictograms/cleaning.svg +0 -1
  557. package/dist/collection/assets/pictograms/click-collect.svg +0 -1
  558. package/dist/collection/assets/pictograms/click-return.svg +0 -1
  559. package/dist/collection/assets/pictograms/client-receipt.svg +0 -1
  560. package/dist/collection/assets/pictograms/clientesyusuarios.svg +0 -1
  561. package/dist/collection/assets/pictograms/clock.svg +0 -1
  562. package/dist/collection/assets/pictograms/cloud.svg +0 -1
  563. package/dist/collection/assets/pictograms/coffee.svg +0 -1
  564. package/dist/collection/assets/pictograms/coins.svg +0 -1
  565. package/dist/collection/assets/pictograms/configuracion-de-servicio.svg +0 -1
  566. package/dist/collection/assets/pictograms/connectivity.svg +0 -1
  567. package/dist/collection/assets/pictograms/contactless.svg +0 -1
  568. package/dist/collection/assets/pictograms/copy.svg +0 -1
  569. package/dist/collection/assets/pictograms/cornet.svg +0 -1
  570. package/dist/collection/assets/pictograms/cost-reduction.svg +0 -1
  571. package/dist/collection/assets/pictograms/coupon.svg +0 -1
  572. package/dist/collection/assets/pictograms/croissant.svg +0 -1
  573. package/dist/collection/assets/pictograms/crowdfunding.svg +0 -1
  574. package/dist/collection/assets/pictograms/crown.svg +0 -1
  575. package/dist/collection/assets/pictograms/cryptocurrency.svg +0 -1
  576. package/dist/collection/assets/pictograms/crystal-ball.svg +0 -1
  577. package/dist/collection/assets/pictograms/cup.svg +0 -1
  578. package/dist/collection/assets/pictograms/cupcake.svg +0 -1
  579. package/dist/collection/assets/pictograms/currency.svg +0 -1
  580. package/dist/collection/assets/pictograms/cyber-security.svg +0 -1
  581. package/dist/collection/assets/pictograms/data-mapping.svg +0 -1
  582. package/dist/collection/assets/pictograms/desktop.svg +0 -1
  583. package/dist/collection/assets/pictograms/diamond.svg +0 -1
  584. package/dist/collection/assets/pictograms/disc.svg +0 -1
  585. package/dist/collection/assets/pictograms/diversify.svg +0 -1
  586. package/dist/collection/assets/pictograms/dna.svg +0 -1
  587. package/dist/collection/assets/pictograms/dog.svg +0 -1
  588. package/dist/collection/assets/pictograms/download.svg +0 -1
  589. package/dist/collection/assets/pictograms/drop-zone.svg +0 -1
  590. package/dist/collection/assets/pictograms/drop.svg +0 -1
  591. package/dist/collection/assets/pictograms/dumbbell.svg +0 -1
  592. package/dist/collection/assets/pictograms/dws.svg +0 -1
  593. package/dist/collection/assets/pictograms/ear.svg +0 -1
  594. package/dist/collection/assets/pictograms/ecommerce.svg +0 -1
  595. package/dist/collection/assets/pictograms/ethernet.svg +0 -1
  596. package/dist/collection/assets/pictograms/eur-dollar.svg +0 -1
  597. package/dist/collection/assets/pictograms/exchange.svg +0 -1
  598. package/dist/collection/assets/pictograms/exclamation.svg +0 -1
  599. package/dist/collection/assets/pictograms/external-link.svg +0 -1
  600. package/dist/collection/assets/pictograms/extinguisher.svg +0 -1
  601. package/dist/collection/assets/pictograms/factory.svg +0 -1
  602. package/dist/collection/assets/pictograms/fax.svg +0 -1
  603. package/dist/collection/assets/pictograms/fence.svg +0 -1
  604. package/dist/collection/assets/pictograms/file-text.svg +0 -1
  605. package/dist/collection/assets/pictograms/file.svg +0 -1
  606. package/dist/collection/assets/pictograms/find-in-page.svg +0 -1
  607. package/dist/collection/assets/pictograms/fingerprint.svg +0 -1
  608. package/dist/collection/assets/pictograms/flag.svg +0 -1
  609. package/dist/collection/assets/pictograms/flash.svg +0 -1
  610. package/dist/collection/assets/pictograms/flexibility.svg +0 -1
  611. package/dist/collection/assets/pictograms/flipchart.svg +0 -1
  612. package/dist/collection/assets/pictograms/flower.svg +0 -1
  613. package/dist/collection/assets/pictograms/focus.svg +0 -1
  614. package/dist/collection/assets/pictograms/foreign-exchange.svg +0 -1
  615. package/dist/collection/assets/pictograms/fraud-free.svg +0 -1
  616. package/dist/collection/assets/pictograms/funnel.svg +0 -1
  617. package/dist/collection/assets/pictograms/gamepad.svg +0 -1
  618. package/dist/collection/assets/pictograms/gears.svg +0 -1
  619. package/dist/collection/assets/pictograms/generic.svg +0 -1
  620. package/dist/collection/assets/pictograms/genie.svg +0 -1
  621. package/dist/collection/assets/pictograms/gestion-de-fallidos.svg +0 -1
  622. package/dist/collection/assets/pictograms/gestion-de-instrucciones.svg +0 -1
  623. package/dist/collection/assets/pictograms/gestion-de-pago.svg +0 -1
  624. package/dist/collection/assets/pictograms/gift.svg +0 -1
  625. package/dist/collection/assets/pictograms/giftcard.svg +0 -1
  626. package/dist/collection/assets/pictograms/glass.svg +0 -1
  627. package/dist/collection/assets/pictograms/glasses.svg +0 -1
  628. package/dist/collection/assets/pictograms/global.svg +0 -1
  629. package/dist/collection/assets/pictograms/gprs-lan.svg +0 -1
  630. package/dist/collection/assets/pictograms/gprs.svg +0 -1
  631. package/dist/collection/assets/pictograms/guide.svg +0 -1
  632. package/dist/collection/assets/pictograms/hacker-security.svg +0 -1
  633. package/dist/collection/assets/pictograms/hand.svg +0 -1
  634. package/dist/collection/assets/pictograms/handshake.svg +0 -1
  635. package/dist/collection/assets/pictograms/happy.svg +0 -1
  636. package/dist/collection/assets/pictograms/hashtag.svg +0 -1
  637. package/dist/collection/assets/pictograms/headphones.svg +0 -1
  638. package/dist/collection/assets/pictograms/heart.svg +0 -1
  639. package/dist/collection/assets/pictograms/home.svg +0 -1
  640. package/dist/collection/assets/pictograms/identity-management.svg +0 -1
  641. package/dist/collection/assets/pictograms/info.svg +0 -1
  642. package/dist/collection/assets/pictograms/international-connectivity.svg +0 -1
  643. package/dist/collection/assets/pictograms/iot.svg +0 -1
  644. package/dist/collection/assets/pictograms/key.svg +0 -1
  645. package/dist/collection/assets/pictograms/lab.svg +0 -1
  646. package/dist/collection/assets/pictograms/labyrinth.svg +0 -1
  647. package/dist/collection/assets/pictograms/laptop-outline.svg +0 -1
  648. package/dist/collection/assets/pictograms/leaf.svg +0 -1
  649. package/dist/collection/assets/pictograms/lightbulb.svg +0 -1
  650. package/dist/collection/assets/pictograms/lighthouse.svg +0 -1
  651. package/dist/collection/assets/pictograms/like.svg +0 -1
  652. package/dist/collection/assets/pictograms/lines.svg +0 -1
  653. package/dist/collection/assets/pictograms/liquid.svg +0 -1
  654. package/dist/collection/assets/pictograms/lock.svg +0 -1
  655. package/dist/collection/assets/pictograms/london.svg +0 -1
  656. package/dist/collection/assets/pictograms/lounge.svg +0 -1
  657. package/dist/collection/assets/pictograms/lunch-learn.svg +0 -1
  658. package/dist/collection/assets/pictograms/machine-learning.svg +0 -1
  659. package/dist/collection/assets/pictograms/mail-copy.svg +0 -1
  660. package/dist/collection/assets/pictograms/mail.svg +0 -1
  661. package/dist/collection/assets/pictograms/map-marker.svg +0 -1
  662. package/dist/collection/assets/pictograms/map.svg +0 -1
  663. package/dist/collection/assets/pictograms/markets.svg +0 -1
  664. package/dist/collection/assets/pictograms/megaphone.svg +0 -1
  665. package/dist/collection/assets/pictograms/menu.svg +0 -1
  666. package/dist/collection/assets/pictograms/micro-payments.svg +0 -1
  667. package/dist/collection/assets/pictograms/microphone.svg +0 -1
  668. package/dist/collection/assets/pictograms/minus.svg +0 -1
  669. package/dist/collection/assets/pictograms/mobile-payment.svg +0 -1
  670. package/dist/collection/assets/pictograms/mobile-terminal.svg +0 -1
  671. package/dist/collection/assets/pictograms/monitoring.svg +0 -1
  672. package/dist/collection/assets/pictograms/more.svg +0 -1
  673. package/dist/collection/assets/pictograms/mountain.svg +0 -1
  674. package/dist/collection/assets/pictograms/movie-camera.svg +0 -1
  675. package/dist/collection/assets/pictograms/navigation.svg +0 -1
  676. package/dist/collection/assets/pictograms/no-smoking.svg +0 -1
  677. package/dist/collection/assets/pictograms/office.svg +0 -1
  678. package/dist/collection/assets/pictograms/outsorcing.svg +0 -1
  679. package/dist/collection/assets/pictograms/package.svg +0 -1
  680. package/dist/collection/assets/pictograms/paddle.svg +0 -1
  681. package/dist/collection/assets/pictograms/paninoteca.svg +0 -1
  682. package/dist/collection/assets/pictograms/paragraph.svg +0 -1
  683. package/dist/collection/assets/pictograms/paris.svg +0 -1
  684. package/dist/collection/assets/pictograms/parking.svg +0 -1
  685. package/dist/collection/assets/pictograms/pause.svg +0 -1
  686. package/dist/collection/assets/pictograms/pay-points.svg +0 -1
  687. package/dist/collection/assets/pictograms/pencil.svg +0 -1
  688. package/dist/collection/assets/pictograms/person-business.svg +0 -1
  689. package/dist/collection/assets/pictograms/person-callcenter.svg +0 -1
  690. package/dist/collection/assets/pictograms/person-client.svg +0 -1
  691. package/dist/collection/assets/pictograms/person-group.svg +0 -1
  692. package/dist/collection/assets/pictograms/person.svg +0 -1
  693. package/dist/collection/assets/pictograms/pet.svg +0 -1
  694. package/dist/collection/assets/pictograms/piechart.svg +0 -1
  695. package/dist/collection/assets/pictograms/pig.svg +0 -1
  696. package/dist/collection/assets/pictograms/piggy-bank.svg +0 -1
  697. package/dist/collection/assets/pictograms/planet.svg +0 -1
  698. package/dist/collection/assets/pictograms/play.svg +0 -1
  699. package/dist/collection/assets/pictograms/plus.svg +0 -1
  700. package/dist/collection/assets/pictograms/popsicle.svg +0 -1
  701. package/dist/collection/assets/pictograms/printer.svg +0 -1
  702. package/dist/collection/assets/pictograms/privacy.svg +0 -1
  703. package/dist/collection/assets/pictograms/process.svg +0 -1
  704. package/dist/collection/assets/pictograms/projector.svg +0 -1
  705. package/dist/collection/assets/pictograms/psp.svg +0 -1
  706. package/dist/collection/assets/pictograms/punch-card.svg +0 -1
  707. package/dist/collection/assets/pictograms/puzzle.svg +0 -1
  708. package/dist/collection/assets/pictograms/qr-scanner.svg +0 -1
  709. package/dist/collection/assets/pictograms/qr.svg +0 -1
  710. package/dist/collection/assets/pictograms/question.svg +0 -1
  711. package/dist/collection/assets/pictograms/rabbit.svg +0 -1
  712. package/dist/collection/assets/pictograms/rain.svg +0 -1
  713. package/dist/collection/assets/pictograms/realtime.svg +0 -1
  714. package/dist/collection/assets/pictograms/recurring-payments.svg +0 -1
  715. package/dist/collection/assets/pictograms/relaxing.svg +0 -1
  716. package/dist/collection/assets/pictograms/reporting.svg +0 -1
  717. package/dist/collection/assets/pictograms/responsive-design.svg +0 -1
  718. package/dist/collection/assets/pictograms/robo-advisor.svg +0 -1
  719. package/dist/collection/assets/pictograms/robotics.svg +0 -1
  720. package/dist/collection/assets/pictograms/rock.svg +0 -1
  721. package/dist/collection/assets/pictograms/rocket.svg +0 -1
  722. package/dist/collection/assets/pictograms/rss.svg +0 -1
  723. package/dist/collection/assets/pictograms/sad.svg +0 -1
  724. package/dist/collection/assets/pictograms/sailboat.svg +0 -1
  725. package/dist/collection/assets/pictograms/scales.svg +0 -1
  726. package/dist/collection/assets/pictograms/screen.svg +0 -1
  727. package/dist/collection/assets/pictograms/seal.svg +0 -1
  728. package/dist/collection/assets/pictograms/search.svg +0 -1
  729. package/dist/collection/assets/pictograms/sentiment-dissatisfied.svg +0 -1
  730. package/dist/collection/assets/pictograms/server.svg +0 -1
  731. package/dist/collection/assets/pictograms/service-center.svg +0 -1
  732. package/dist/collection/assets/pictograms/sextant.svg +0 -1
  733. package/dist/collection/assets/pictograms/share.svg +0 -1
  734. package/dist/collection/assets/pictograms/shield.svg +0 -1
  735. package/dist/collection/assets/pictograms/shop.svg +0 -1
  736. package/dist/collection/assets/pictograms/shopping-cart-chf.svg +0 -1
  737. package/dist/collection/assets/pictograms/shopping-cart-download.svg +0 -1
  738. package/dist/collection/assets/pictograms/shopping-cart.svg +0 -1
  739. package/dist/collection/assets/pictograms/signal.svg +0 -1
  740. package/dist/collection/assets/pictograms/simple-integration.svg +0 -1
  741. package/dist/collection/assets/pictograms/skull.svg +0 -1
  742. package/dist/collection/assets/pictograms/smoking.svg +0 -1
  743. package/dist/collection/assets/pictograms/snow.svg +0 -1
  744. package/dist/collection/assets/pictograms/snowflake.svg +0 -1
  745. package/dist/collection/assets/pictograms/snowman.svg +0 -1
  746. package/dist/collection/assets/pictograms/soc.svg +0 -1
  747. package/dist/collection/assets/pictograms/social-days.svg +0 -1
  748. package/dist/collection/assets/pictograms/social-trading.svg +0 -1
  749. package/dist/collection/assets/pictograms/softwarepackage.svg +0 -1
  750. package/dist/collection/assets/pictograms/sound.svg +0 -1
  751. package/dist/collection/assets/pictograms/speechbubble.svg +0 -1
  752. package/dist/collection/assets/pictograms/spirit.svg +0 -1
  753. package/dist/collection/assets/pictograms/split.svg +0 -1
  754. package/dist/collection/assets/pictograms/stability.svg +0 -1
  755. package/dist/collection/assets/pictograms/stairs.svg +0 -1
  756. package/dist/collection/assets/pictograms/star.svg +0 -1
  757. package/dist/collection/assets/pictograms/statistic.svg +0 -1
  758. package/dist/collection/assets/pictograms/stock.svg +0 -1
  759. package/dist/collection/assets/pictograms/stocks.svg +0 -1
  760. package/dist/collection/assets/pictograms/stop.svg +0 -1
  761. package/dist/collection/assets/pictograms/stopwatch.svg +0 -1
  762. package/dist/collection/assets/pictograms/storage.svg +0 -1
  763. package/dist/collection/assets/pictograms/success.svg +0 -1
  764. package/dist/collection/assets/pictograms/suitcase.svg +0 -1
  765. package/dist/collection/assets/pictograms/sun.svg +0 -1
  766. package/dist/collection/assets/pictograms/surveillance.svg +0 -1
  767. package/dist/collection/assets/pictograms/swiss.svg +0 -1
  768. package/dist/collection/assets/pictograms/tablet.svg +0 -1
  769. package/dist/collection/assets/pictograms/tachometer.svg +0 -1
  770. package/dist/collection/assets/pictograms/target.svg +0 -1
  771. package/dist/collection/assets/pictograms/telephone.svg +0 -1
  772. package/dist/collection/assets/pictograms/telescope.svg +0 -1
  773. package/dist/collection/assets/pictograms/temperature.svg +0 -1
  774. package/dist/collection/assets/pictograms/terminal.svg +0 -1
  775. package/dist/collection/assets/pictograms/ticket.svg +0 -1
  776. package/dist/collection/assets/pictograms/tin.svg +0 -1
  777. package/dist/collection/assets/pictograms/tokenization.svg +0 -1
  778. package/dist/collection/assets/pictograms/tool.svg +0 -1
  779. package/dist/collection/assets/pictograms/touch.svg +0 -1
  780. package/dist/collection/assets/pictograms/train.svg +0 -1
  781. package/dist/collection/assets/pictograms/trash.svg +0 -1
  782. package/dist/collection/assets/pictograms/umbrella.svg +0 -1
  783. package/dist/collection/assets/pictograms/unlock.svg +0 -1
  784. package/dist/collection/assets/pictograms/upload.svg +0 -1
  785. package/dist/collection/assets/pictograms/usb.svg +0 -1
  786. package/dist/collection/assets/pictograms/viena.svg +0 -1
  787. package/dist/collection/assets/pictograms/viking.svg +0 -1
  788. package/dist/collection/assets/pictograms/visibility.svg +0 -1
  789. package/dist/collection/assets/pictograms/wallet.svg +0 -1
  790. package/dist/collection/assets/pictograms/warning.svg +0 -1
  791. package/dist/collection/assets/pictograms/way-up.svg +0 -1
  792. package/dist/collection/assets/pictograms/wc-handicap.svg +0 -1
  793. package/dist/collection/assets/pictograms/wc-men.svg +0 -1
  794. package/dist/collection/assets/pictograms/wc-woman.svg +0 -1
  795. package/dist/collection/assets/pictograms/wearables.svg +0 -1
  796. package/dist/collection/assets/pictograms/webshop.svg +0 -1
  797. package/dist/collection/assets/pictograms/wlan-bluetooth.svg +0 -1
  798. package/dist/collection/assets/pictograms/wlan.svg +0 -1
  799. package/dist/collection/assets/pictograms/x.svg +0 -1
  800. package/dist/collection/assets/pictograms/zurich.svg +0 -1
  801. package/dist/components/p-BAe7gBEi.js.map +0 -1
  802. package/dist/components/p-BFrSuO7n.js.map +0 -1
  803. package/dist/components/p-ByetrMwd.js.map +0 -1
  804. package/dist/components/p-C4Shm3wX.js.map +0 -1
  805. package/dist/components/p-Cc_nfyAl.js.map +0 -1
  806. package/dist/components/p-DK3EH5_F.js +0 -62
  807. package/dist/components/p-DK3EH5_F.js.map +0 -1
  808. package/dist/components/p-DwZ0ygip.js.map +0 -1
  809. package/dist/esm/form-control-_dvMXnmg.js.map +0 -1
  810. package/dist/esm/index-BF09Gr5y.js.map +0 -1
  811. package/dist/ui-library/assets/pictograms/TPP.svg +0 -1
  812. package/dist/ui-library/assets/pictograms/agile.svg +0 -1
  813. package/dist/ui-library/assets/pictograms/ai.svg +0 -1
  814. package/dist/ui-library/assets/pictograms/airplane.svg +0 -1
  815. package/dist/ui-library/assets/pictograms/alert.svg +0 -1
  816. package/dist/ui-library/assets/pictograms/ambulance.svg +0 -1
  817. package/dist/ui-library/assets/pictograms/analyse.svg +0 -1
  818. package/dist/ui-library/assets/pictograms/anchor.svg +0 -1
  819. package/dist/ui-library/assets/pictograms/apple.svg +0 -1
  820. package/dist/ui-library/assets/pictograms/arrow-down.svg +0 -1
  821. package/dist/ui-library/assets/pictograms/arrow-right.svg +0 -1
  822. package/dist/ui-library/assets/pictograms/arrow-up.svg +0 -1
  823. package/dist/ui-library/assets/pictograms/astronaut-outline.svg +0 -1
  824. package/dist/ui-library/assets/pictograms/augmented-reality.svg +0 -1
  825. package/dist/ui-library/assets/pictograms/backoffice.svg +0 -1
  826. package/dist/ui-library/assets/pictograms/bank.svg +0 -1
  827. package/dist/ui-library/assets/pictograms/banknote.svg +0 -1
  828. package/dist/ui-library/assets/pictograms/barcode.svg +0 -1
  829. package/dist/ui-library/assets/pictograms/battery.svg +0 -1
  830. package/dist/ui-library/assets/pictograms/beacon.svg +0 -1
  831. package/dist/ui-library/assets/pictograms/beat.svg +0 -1
  832. package/dist/ui-library/assets/pictograms/bee.svg +0 -1
  833. package/dist/ui-library/assets/pictograms/bell.svg +0 -1
  834. package/dist/ui-library/assets/pictograms/berlin.svg +0 -1
  835. package/dist/ui-library/assets/pictograms/big-data.svg +0 -1
  836. package/dist/ui-library/assets/pictograms/bilateral.svg +0 -1
  837. package/dist/ui-library/assets/pictograms/bill.svg +0 -1
  838. package/dist/ui-library/assets/pictograms/binoculars.svg +0 -1
  839. package/dist/ui-library/assets/pictograms/block.svg +0 -1
  840. package/dist/ui-library/assets/pictograms/blockchain.svg +0 -1
  841. package/dist/ui-library/assets/pictograms/bluetooth.svg +0 -1
  842. package/dist/ui-library/assets/pictograms/bone.svg +0 -1
  843. package/dist/ui-library/assets/pictograms/book.svg +0 -1
  844. package/dist/ui-library/assets/pictograms/bottle.svg +0 -1
  845. package/dist/ui-library/assets/pictograms/buggy.svg +0 -1
  846. package/dist/ui-library/assets/pictograms/bull-bear.svg +0 -1
  847. package/dist/ui-library/assets/pictograms/business.svg +0 -1
  848. package/dist/ui-library/assets/pictograms/cake.svg +0 -1
  849. package/dist/ui-library/assets/pictograms/calculator.svg +0 -1
  850. package/dist/ui-library/assets/pictograms/calendar.svg +0 -1
  851. package/dist/ui-library/assets/pictograms/cam.svg +0 -1
  852. package/dist/ui-library/assets/pictograms/cap.svg +0 -1
  853. package/dist/ui-library/assets/pictograms/capsule.svg +0 -1
  854. package/dist/ui-library/assets/pictograms/car.svg +0 -1
  855. package/dist/ui-library/assets/pictograms/carabiner.svg +0 -1
  856. package/dist/ui-library/assets/pictograms/card.svg +0 -1
  857. package/dist/ui-library/assets/pictograms/cash-machine.svg +0 -1
  858. package/dist/ui-library/assets/pictograms/cash-register.svg +0 -1
  859. package/dist/ui-library/assets/pictograms/cash.svg +0 -1
  860. package/dist/ui-library/assets/pictograms/cashless.svg +0 -1
  861. package/dist/ui-library/assets/pictograms/check.svg +0 -1
  862. package/dist/ui-library/assets/pictograms/cheveron-right.svg +0 -1
  863. package/dist/ui-library/assets/pictograms/chf-eur.svg +0 -1
  864. package/dist/ui-library/assets/pictograms/cleaning.svg +0 -1
  865. package/dist/ui-library/assets/pictograms/click-collect.svg +0 -1
  866. package/dist/ui-library/assets/pictograms/click-return.svg +0 -1
  867. package/dist/ui-library/assets/pictograms/client-receipt.svg +0 -1
  868. package/dist/ui-library/assets/pictograms/clientesyusuarios.svg +0 -1
  869. package/dist/ui-library/assets/pictograms/clock.svg +0 -1
  870. package/dist/ui-library/assets/pictograms/cloud.svg +0 -1
  871. package/dist/ui-library/assets/pictograms/coffee.svg +0 -1
  872. package/dist/ui-library/assets/pictograms/coins.svg +0 -1
  873. package/dist/ui-library/assets/pictograms/configuracion-de-servicio.svg +0 -1
  874. package/dist/ui-library/assets/pictograms/connectivity.svg +0 -1
  875. package/dist/ui-library/assets/pictograms/contactless.svg +0 -1
  876. package/dist/ui-library/assets/pictograms/copy.svg +0 -1
  877. package/dist/ui-library/assets/pictograms/cornet.svg +0 -1
  878. package/dist/ui-library/assets/pictograms/cost-reduction.svg +0 -1
  879. package/dist/ui-library/assets/pictograms/coupon.svg +0 -1
  880. package/dist/ui-library/assets/pictograms/croissant.svg +0 -1
  881. package/dist/ui-library/assets/pictograms/crowdfunding.svg +0 -1
  882. package/dist/ui-library/assets/pictograms/crown.svg +0 -1
  883. package/dist/ui-library/assets/pictograms/cryptocurrency.svg +0 -1
  884. package/dist/ui-library/assets/pictograms/crystal-ball.svg +0 -1
  885. package/dist/ui-library/assets/pictograms/cup.svg +0 -1
  886. package/dist/ui-library/assets/pictograms/cupcake.svg +0 -1
  887. package/dist/ui-library/assets/pictograms/currency.svg +0 -1
  888. package/dist/ui-library/assets/pictograms/cyber-security.svg +0 -1
  889. package/dist/ui-library/assets/pictograms/data-mapping.svg +0 -1
  890. package/dist/ui-library/assets/pictograms/desktop.svg +0 -1
  891. package/dist/ui-library/assets/pictograms/diamond.svg +0 -1
  892. package/dist/ui-library/assets/pictograms/disc.svg +0 -1
  893. package/dist/ui-library/assets/pictograms/diversify.svg +0 -1
  894. package/dist/ui-library/assets/pictograms/dna.svg +0 -1
  895. package/dist/ui-library/assets/pictograms/dog.svg +0 -1
  896. package/dist/ui-library/assets/pictograms/download.svg +0 -1
  897. package/dist/ui-library/assets/pictograms/drop-zone.svg +0 -1
  898. package/dist/ui-library/assets/pictograms/drop.svg +0 -1
  899. package/dist/ui-library/assets/pictograms/dumbbell.svg +0 -1
  900. package/dist/ui-library/assets/pictograms/dws.svg +0 -1
  901. package/dist/ui-library/assets/pictograms/ear.svg +0 -1
  902. package/dist/ui-library/assets/pictograms/ecommerce.svg +0 -1
  903. package/dist/ui-library/assets/pictograms/ethernet.svg +0 -1
  904. package/dist/ui-library/assets/pictograms/eur-dollar.svg +0 -1
  905. package/dist/ui-library/assets/pictograms/exchange.svg +0 -1
  906. package/dist/ui-library/assets/pictograms/exclamation.svg +0 -1
  907. package/dist/ui-library/assets/pictograms/external-link.svg +0 -1
  908. package/dist/ui-library/assets/pictograms/extinguisher.svg +0 -1
  909. package/dist/ui-library/assets/pictograms/factory.svg +0 -1
  910. package/dist/ui-library/assets/pictograms/fax.svg +0 -1
  911. package/dist/ui-library/assets/pictograms/fence.svg +0 -1
  912. package/dist/ui-library/assets/pictograms/file-text.svg +0 -1
  913. package/dist/ui-library/assets/pictograms/file.svg +0 -1
  914. package/dist/ui-library/assets/pictograms/find-in-page.svg +0 -1
  915. package/dist/ui-library/assets/pictograms/fingerprint.svg +0 -1
  916. package/dist/ui-library/assets/pictograms/flag.svg +0 -1
  917. package/dist/ui-library/assets/pictograms/flash.svg +0 -1
  918. package/dist/ui-library/assets/pictograms/flexibility.svg +0 -1
  919. package/dist/ui-library/assets/pictograms/flipchart.svg +0 -1
  920. package/dist/ui-library/assets/pictograms/flower.svg +0 -1
  921. package/dist/ui-library/assets/pictograms/focus.svg +0 -1
  922. package/dist/ui-library/assets/pictograms/foreign-exchange.svg +0 -1
  923. package/dist/ui-library/assets/pictograms/fraud-free.svg +0 -1
  924. package/dist/ui-library/assets/pictograms/funnel.svg +0 -1
  925. package/dist/ui-library/assets/pictograms/gamepad.svg +0 -1
  926. package/dist/ui-library/assets/pictograms/gears.svg +0 -1
  927. package/dist/ui-library/assets/pictograms/generic.svg +0 -1
  928. package/dist/ui-library/assets/pictograms/genie.svg +0 -1
  929. package/dist/ui-library/assets/pictograms/gestion-de-fallidos.svg +0 -1
  930. package/dist/ui-library/assets/pictograms/gestion-de-instrucciones.svg +0 -1
  931. package/dist/ui-library/assets/pictograms/gestion-de-pago.svg +0 -1
  932. package/dist/ui-library/assets/pictograms/gift.svg +0 -1
  933. package/dist/ui-library/assets/pictograms/giftcard.svg +0 -1
  934. package/dist/ui-library/assets/pictograms/glass.svg +0 -1
  935. package/dist/ui-library/assets/pictograms/glasses.svg +0 -1
  936. package/dist/ui-library/assets/pictograms/global.svg +0 -1
  937. package/dist/ui-library/assets/pictograms/gprs-lan.svg +0 -1
  938. package/dist/ui-library/assets/pictograms/gprs.svg +0 -1
  939. package/dist/ui-library/assets/pictograms/guide.svg +0 -1
  940. package/dist/ui-library/assets/pictograms/hacker-security.svg +0 -1
  941. package/dist/ui-library/assets/pictograms/hand.svg +0 -1
  942. package/dist/ui-library/assets/pictograms/handshake.svg +0 -1
  943. package/dist/ui-library/assets/pictograms/happy.svg +0 -1
  944. package/dist/ui-library/assets/pictograms/hashtag.svg +0 -1
  945. package/dist/ui-library/assets/pictograms/headphones.svg +0 -1
  946. package/dist/ui-library/assets/pictograms/heart.svg +0 -1
  947. package/dist/ui-library/assets/pictograms/home.svg +0 -1
  948. package/dist/ui-library/assets/pictograms/identity-management.svg +0 -1
  949. package/dist/ui-library/assets/pictograms/info.svg +0 -1
  950. package/dist/ui-library/assets/pictograms/international-connectivity.svg +0 -1
  951. package/dist/ui-library/assets/pictograms/iot.svg +0 -1
  952. package/dist/ui-library/assets/pictograms/key.svg +0 -1
  953. package/dist/ui-library/assets/pictograms/lab.svg +0 -1
  954. package/dist/ui-library/assets/pictograms/labyrinth.svg +0 -1
  955. package/dist/ui-library/assets/pictograms/laptop-outline.svg +0 -1
  956. package/dist/ui-library/assets/pictograms/leaf.svg +0 -1
  957. package/dist/ui-library/assets/pictograms/lightbulb.svg +0 -1
  958. package/dist/ui-library/assets/pictograms/lighthouse.svg +0 -1
  959. package/dist/ui-library/assets/pictograms/like.svg +0 -1
  960. package/dist/ui-library/assets/pictograms/lines.svg +0 -1
  961. package/dist/ui-library/assets/pictograms/liquid.svg +0 -1
  962. package/dist/ui-library/assets/pictograms/lock.svg +0 -1
  963. package/dist/ui-library/assets/pictograms/london.svg +0 -1
  964. package/dist/ui-library/assets/pictograms/lounge.svg +0 -1
  965. package/dist/ui-library/assets/pictograms/lunch-learn.svg +0 -1
  966. package/dist/ui-library/assets/pictograms/machine-learning.svg +0 -1
  967. package/dist/ui-library/assets/pictograms/mail-copy.svg +0 -1
  968. package/dist/ui-library/assets/pictograms/mail.svg +0 -1
  969. package/dist/ui-library/assets/pictograms/map-marker.svg +0 -1
  970. package/dist/ui-library/assets/pictograms/map.svg +0 -1
  971. package/dist/ui-library/assets/pictograms/markets.svg +0 -1
  972. package/dist/ui-library/assets/pictograms/megaphone.svg +0 -1
  973. package/dist/ui-library/assets/pictograms/menu.svg +0 -1
  974. package/dist/ui-library/assets/pictograms/micro-payments.svg +0 -1
  975. package/dist/ui-library/assets/pictograms/microphone.svg +0 -1
  976. package/dist/ui-library/assets/pictograms/minus.svg +0 -1
  977. package/dist/ui-library/assets/pictograms/mobile-payment.svg +0 -1
  978. package/dist/ui-library/assets/pictograms/mobile-terminal.svg +0 -1
  979. package/dist/ui-library/assets/pictograms/monitoring.svg +0 -1
  980. package/dist/ui-library/assets/pictograms/more.svg +0 -1
  981. package/dist/ui-library/assets/pictograms/mountain.svg +0 -1
  982. package/dist/ui-library/assets/pictograms/movie-camera.svg +0 -1
  983. package/dist/ui-library/assets/pictograms/navigation.svg +0 -1
  984. package/dist/ui-library/assets/pictograms/no-smoking.svg +0 -1
  985. package/dist/ui-library/assets/pictograms/office.svg +0 -1
  986. package/dist/ui-library/assets/pictograms/outsorcing.svg +0 -1
  987. package/dist/ui-library/assets/pictograms/package.svg +0 -1
  988. package/dist/ui-library/assets/pictograms/paddle.svg +0 -1
  989. package/dist/ui-library/assets/pictograms/paninoteca.svg +0 -1
  990. package/dist/ui-library/assets/pictograms/paragraph.svg +0 -1
  991. package/dist/ui-library/assets/pictograms/paris.svg +0 -1
  992. package/dist/ui-library/assets/pictograms/parking.svg +0 -1
  993. package/dist/ui-library/assets/pictograms/pause.svg +0 -1
  994. package/dist/ui-library/assets/pictograms/pay-points.svg +0 -1
  995. package/dist/ui-library/assets/pictograms/pencil.svg +0 -1
  996. package/dist/ui-library/assets/pictograms/person-business.svg +0 -1
  997. package/dist/ui-library/assets/pictograms/person-callcenter.svg +0 -1
  998. package/dist/ui-library/assets/pictograms/person-client.svg +0 -1
  999. package/dist/ui-library/assets/pictograms/person-group.svg +0 -1
  1000. package/dist/ui-library/assets/pictograms/person.svg +0 -1
  1001. package/dist/ui-library/assets/pictograms/pet.svg +0 -1
  1002. package/dist/ui-library/assets/pictograms/piechart.svg +0 -1
  1003. package/dist/ui-library/assets/pictograms/pig.svg +0 -1
  1004. package/dist/ui-library/assets/pictograms/piggy-bank.svg +0 -1
  1005. package/dist/ui-library/assets/pictograms/planet.svg +0 -1
  1006. package/dist/ui-library/assets/pictograms/play.svg +0 -1
  1007. package/dist/ui-library/assets/pictograms/plus.svg +0 -1
  1008. package/dist/ui-library/assets/pictograms/popsicle.svg +0 -1
  1009. package/dist/ui-library/assets/pictograms/printer.svg +0 -1
  1010. package/dist/ui-library/assets/pictograms/privacy.svg +0 -1
  1011. package/dist/ui-library/assets/pictograms/process.svg +0 -1
  1012. package/dist/ui-library/assets/pictograms/projector.svg +0 -1
  1013. package/dist/ui-library/assets/pictograms/psp.svg +0 -1
  1014. package/dist/ui-library/assets/pictograms/punch-card.svg +0 -1
  1015. package/dist/ui-library/assets/pictograms/puzzle.svg +0 -1
  1016. package/dist/ui-library/assets/pictograms/qr-scanner.svg +0 -1
  1017. package/dist/ui-library/assets/pictograms/qr.svg +0 -1
  1018. package/dist/ui-library/assets/pictograms/question.svg +0 -1
  1019. package/dist/ui-library/assets/pictograms/rabbit.svg +0 -1
  1020. package/dist/ui-library/assets/pictograms/rain.svg +0 -1
  1021. package/dist/ui-library/assets/pictograms/realtime.svg +0 -1
  1022. package/dist/ui-library/assets/pictograms/recurring-payments.svg +0 -1
  1023. package/dist/ui-library/assets/pictograms/relaxing.svg +0 -1
  1024. package/dist/ui-library/assets/pictograms/reporting.svg +0 -1
  1025. package/dist/ui-library/assets/pictograms/responsive-design.svg +0 -1
  1026. package/dist/ui-library/assets/pictograms/robo-advisor.svg +0 -1
  1027. package/dist/ui-library/assets/pictograms/robotics.svg +0 -1
  1028. package/dist/ui-library/assets/pictograms/rock.svg +0 -1
  1029. package/dist/ui-library/assets/pictograms/rocket.svg +0 -1
  1030. package/dist/ui-library/assets/pictograms/rss.svg +0 -1
  1031. package/dist/ui-library/assets/pictograms/sad.svg +0 -1
  1032. package/dist/ui-library/assets/pictograms/sailboat.svg +0 -1
  1033. package/dist/ui-library/assets/pictograms/scales.svg +0 -1
  1034. package/dist/ui-library/assets/pictograms/screen.svg +0 -1
  1035. package/dist/ui-library/assets/pictograms/seal.svg +0 -1
  1036. package/dist/ui-library/assets/pictograms/search.svg +0 -1
  1037. package/dist/ui-library/assets/pictograms/sentiment-dissatisfied.svg +0 -1
  1038. package/dist/ui-library/assets/pictograms/server.svg +0 -1
  1039. package/dist/ui-library/assets/pictograms/service-center.svg +0 -1
  1040. package/dist/ui-library/assets/pictograms/sextant.svg +0 -1
  1041. package/dist/ui-library/assets/pictograms/share.svg +0 -1
  1042. package/dist/ui-library/assets/pictograms/shield.svg +0 -1
  1043. package/dist/ui-library/assets/pictograms/shop.svg +0 -1
  1044. package/dist/ui-library/assets/pictograms/shopping-cart-chf.svg +0 -1
  1045. package/dist/ui-library/assets/pictograms/shopping-cart-download.svg +0 -1
  1046. package/dist/ui-library/assets/pictograms/shopping-cart.svg +0 -1
  1047. package/dist/ui-library/assets/pictograms/signal.svg +0 -1
  1048. package/dist/ui-library/assets/pictograms/simple-integration.svg +0 -1
  1049. package/dist/ui-library/assets/pictograms/skull.svg +0 -1
  1050. package/dist/ui-library/assets/pictograms/smoking.svg +0 -1
  1051. package/dist/ui-library/assets/pictograms/snow.svg +0 -1
  1052. package/dist/ui-library/assets/pictograms/snowflake.svg +0 -1
  1053. package/dist/ui-library/assets/pictograms/snowman.svg +0 -1
  1054. package/dist/ui-library/assets/pictograms/soc.svg +0 -1
  1055. package/dist/ui-library/assets/pictograms/social-days.svg +0 -1
  1056. package/dist/ui-library/assets/pictograms/social-trading.svg +0 -1
  1057. package/dist/ui-library/assets/pictograms/softwarepackage.svg +0 -1
  1058. package/dist/ui-library/assets/pictograms/sound.svg +0 -1
  1059. package/dist/ui-library/assets/pictograms/speechbubble.svg +0 -1
  1060. package/dist/ui-library/assets/pictograms/spirit.svg +0 -1
  1061. package/dist/ui-library/assets/pictograms/split.svg +0 -1
  1062. package/dist/ui-library/assets/pictograms/stability.svg +0 -1
  1063. package/dist/ui-library/assets/pictograms/stairs.svg +0 -1
  1064. package/dist/ui-library/assets/pictograms/star.svg +0 -1
  1065. package/dist/ui-library/assets/pictograms/statistic.svg +0 -1
  1066. package/dist/ui-library/assets/pictograms/stock.svg +0 -1
  1067. package/dist/ui-library/assets/pictograms/stocks.svg +0 -1
  1068. package/dist/ui-library/assets/pictograms/stop.svg +0 -1
  1069. package/dist/ui-library/assets/pictograms/stopwatch.svg +0 -1
  1070. package/dist/ui-library/assets/pictograms/storage.svg +0 -1
  1071. package/dist/ui-library/assets/pictograms/success.svg +0 -1
  1072. package/dist/ui-library/assets/pictograms/suitcase.svg +0 -1
  1073. package/dist/ui-library/assets/pictograms/sun.svg +0 -1
  1074. package/dist/ui-library/assets/pictograms/surveillance.svg +0 -1
  1075. package/dist/ui-library/assets/pictograms/swiss.svg +0 -1
  1076. package/dist/ui-library/assets/pictograms/tablet.svg +0 -1
  1077. package/dist/ui-library/assets/pictograms/tachometer.svg +0 -1
  1078. package/dist/ui-library/assets/pictograms/target.svg +0 -1
  1079. package/dist/ui-library/assets/pictograms/telephone.svg +0 -1
  1080. package/dist/ui-library/assets/pictograms/telescope.svg +0 -1
  1081. package/dist/ui-library/assets/pictograms/temperature.svg +0 -1
  1082. package/dist/ui-library/assets/pictograms/terminal.svg +0 -1
  1083. package/dist/ui-library/assets/pictograms/ticket.svg +0 -1
  1084. package/dist/ui-library/assets/pictograms/tin.svg +0 -1
  1085. package/dist/ui-library/assets/pictograms/tokenization.svg +0 -1
  1086. package/dist/ui-library/assets/pictograms/tool.svg +0 -1
  1087. package/dist/ui-library/assets/pictograms/touch.svg +0 -1
  1088. package/dist/ui-library/assets/pictograms/train.svg +0 -1
  1089. package/dist/ui-library/assets/pictograms/trash.svg +0 -1
  1090. package/dist/ui-library/assets/pictograms/umbrella.svg +0 -1
  1091. package/dist/ui-library/assets/pictograms/unlock.svg +0 -1
  1092. package/dist/ui-library/assets/pictograms/upload.svg +0 -1
  1093. package/dist/ui-library/assets/pictograms/usb.svg +0 -1
  1094. package/dist/ui-library/assets/pictograms/viena.svg +0 -1
  1095. package/dist/ui-library/assets/pictograms/viking.svg +0 -1
  1096. package/dist/ui-library/assets/pictograms/visibility.svg +0 -1
  1097. package/dist/ui-library/assets/pictograms/wallet.svg +0 -1
  1098. package/dist/ui-library/assets/pictograms/warning.svg +0 -1
  1099. package/dist/ui-library/assets/pictograms/way-up.svg +0 -1
  1100. package/dist/ui-library/assets/pictograms/wc-handicap.svg +0 -1
  1101. package/dist/ui-library/assets/pictograms/wc-men.svg +0 -1
  1102. package/dist/ui-library/assets/pictograms/wc-woman.svg +0 -1
  1103. package/dist/ui-library/assets/pictograms/wearables.svg +0 -1
  1104. package/dist/ui-library/assets/pictograms/webshop.svg +0 -1
  1105. package/dist/ui-library/assets/pictograms/wlan-bluetooth.svg +0 -1
  1106. package/dist/ui-library/assets/pictograms/wlan.svg +0 -1
  1107. package/dist/ui-library/assets/pictograms/x.svg +0 -1
  1108. package/dist/ui-library/assets/pictograms/zurich.svg +0 -1
  1109. package/dist/ui-library/p-15d09aea.entry.js.map +0 -1
  1110. package/dist/ui-library/p-1dfee586.entry.js +0 -2
  1111. package/dist/ui-library/p-1dfee586.entry.js.map +0 -1
  1112. package/dist/ui-library/p-220ffc25.entry.js.map +0 -1
  1113. package/dist/ui-library/p-2bac7418.entry.js.map +0 -1
  1114. package/dist/ui-library/p-2f001f2b.entry.js +0 -2
  1115. package/dist/ui-library/p-2f001f2b.entry.js.map +0 -1
  1116. package/dist/ui-library/p-33b2003b.entry.js.map +0 -1
  1117. package/dist/ui-library/p-4d714149.entry.js.map +0 -1
  1118. package/dist/ui-library/p-4e183258.entry.js.map +0 -1
  1119. package/dist/ui-library/p-54c4de63.entry.js +0 -2
  1120. package/dist/ui-library/p-54c4de63.entry.js.map +0 -1
  1121. package/dist/ui-library/p-7b269878.entry.js +0 -2
  1122. package/dist/ui-library/p-7b269878.entry.js.map +0 -1
  1123. package/dist/ui-library/p-7b9de402.entry.js +0 -2
  1124. package/dist/ui-library/p-7cdda567.entry.js.map +0 -1
  1125. package/dist/ui-library/p-83806640.entry.js.map +0 -1
  1126. package/dist/ui-library/p-894dd0f7.entry.js.map +0 -1
  1127. package/dist/ui-library/p-8e5b7dbb.entry.js.map +0 -1
  1128. package/dist/ui-library/p-BF09Gr5y.js +0 -3
  1129. package/dist/ui-library/p-BF09Gr5y.js.map +0 -1
  1130. package/dist/ui-library/p-b45553e9.entry.js +0 -2
  1131. package/dist/ui-library/p-b45553e9.entry.js.map +0 -1
  1132. package/dist/ui-library/p-b4bb8b5d.entry.js +0 -2
  1133. package/dist/ui-library/p-b4bb8b5d.entry.js.map +0 -1
  1134. package/dist/ui-library/p-c32c5ff0.entry.js +0 -2
  1135. package/dist/ui-library/p-c32c5ff0.entry.js.map +0 -1
  1136. package/dist/ui-library/p-d9224c76.entry.js.map +0 -1
  1137. package/dist/ui-library/p-f1e48369.entry.js.map +0 -1
  1138. package/dist/ui-library/p-fac22819.entry.js.map +0 -1
  1139. package/dist/ui-library/p-fb60d596.entry.js +0 -2
  1140. package/dist/ui-library/p-fb60d596.entry.js.map +0 -1
  1141. package/dist/ui-library/p-tWZJdnMN.js +0 -2
  1142. package/dist/ui-library/p-tWZJdnMN.js.map +0 -1
  1143. /package/dist/ui-library/{p-dfd0956a.entry.js.map → p-01306147.entry.js.map} +0 -0
  1144. /package/dist/ui-library/{p-9656e941.entry.js.map → p-0d97e592.entry.js.map} +0 -0
  1145. /package/dist/ui-library/{p-e516182e.entry.js.map → p-16028bce.entry.js.map} +0 -0
  1146. /package/dist/ui-library/{p-041c4b5d.entry.js.map → p-19361e9b.entry.js.map} +0 -0
  1147. /package/dist/ui-library/{p-abe6f5c4.entry.js.map → p-1e4d1252.entry.js.map} +0 -0
  1148. /package/dist/ui-library/{p-5003f61b.entry.js.map → p-394c1dc0.entry.js.map} +0 -0
  1149. /package/dist/ui-library/{p-d601b41b.entry.js.map → p-4a4a0751.entry.js.map} +0 -0
  1150. /package/dist/ui-library/{p-a4f39b82.entry.js.map → p-537a8953.entry.js.map} +0 -0
  1151. /package/dist/ui-library/{p-35ebd705.entry.js.map → p-5e70085d.entry.js.map} +0 -0
  1152. /package/dist/ui-library/{p-91511258.entry.js.map → p-695e450e.entry.js.map} +0 -0
  1153. /package/dist/ui-library/{p-bf10bd79.entry.js.map → p-6990e5ed.entry.js.map} +0 -0
  1154. /package/dist/ui-library/{p-8496e1cd.entry.js.map → p-6d212bc0.entry.js.map} +0 -0
  1155. /package/dist/ui-library/{p-eed32256.entry.js.map → p-73b64625.entry.js.map} +0 -0
  1156. /package/dist/ui-library/{p-367d2873.entry.js.map → p-7c438e21.entry.js.map} +0 -0
  1157. /package/dist/ui-library/{p-c72c0d32.entry.js.map → p-7d2f5f44.entry.js.map} +0 -0
  1158. /package/dist/ui-library/{p-03ac847d.entry.js.map → p-81af96f2.entry.js.map} +0 -0
  1159. /package/dist/ui-library/{p-2db80aaf.entry.js.map → p-830ed202.entry.js.map} +0 -0
  1160. /package/dist/ui-library/{p-a747beba.entry.js.map → p-84964501.entry.js.map} +0 -0
  1161. /package/dist/ui-library/{p-9deb70a3.entry.js.map → p-868fab98.entry.js.map} +0 -0
  1162. /package/dist/ui-library/{p-07dbfe1d.entry.js.map → p-8fe7ecdd.entry.js.map} +0 -0
  1163. /package/dist/ui-library/{p-080bf19c.entry.js.map → p-9f0ed997.entry.js.map} +0 -0
  1164. /package/dist/ui-library/{p-696590b3.entry.js.map → p-9f77ae55.entry.js.map} +0 -0
  1165. /package/dist/ui-library/{p-0f7aff92.entry.js.map → p-a534a4bc.entry.js.map} +0 -0
  1166. /package/dist/ui-library/{p-7722c3c9.entry.js.map → p-b8db5638.entry.js.map} +0 -0
  1167. /package/dist/ui-library/{p-e2460554.entry.js.map → p-ba68b30c.entry.js.map} +0 -0
  1168. /package/dist/ui-library/{p-f22b0f49.entry.js.map → p-baf698e1.entry.js.map} +0 -0
  1169. /package/dist/ui-library/{p-6183f4c8.entry.js.map → p-c2ec443c.entry.js.map} +0 -0
  1170. /package/dist/ui-library/{p-3aeff13e.entry.js.map → p-d1bd67af.entry.js.map} +0 -0
  1171. /package/dist/ui-library/{p-314df297.entry.js.map → p-df05b23b.entry.js.map} +0 -0
  1172. /package/dist/ui-library/{p-16fefaf7.entry.js.map → p-e91aa04b.entry.js.map} +0 -0
  1173. /package/dist/ui-library/{p-dc9badb8.entry.js.map → p-f0f73eef.entry.js.map} +0 -0
  1174. /package/dist/ui-library/{p-7b9de402.entry.js.map → p-f38c1d23.entry.js.map} +0 -0
  1175. /package/dist/ui-library/{p-f8dccfa9.entry.js.map → p-f4e2ddfc.entry.js.map} +0 -0
  1176. /package/dist/ui-library/{p-9a7aa0d7.entry.js.map → p-f585a5ab.entry.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixFileUploadCss","SixFileUpload","constructor","hostRef","this","isOver","hasError","compact","disabled","multiple","uploading","errorText","invalid","handleSlotChange","validType","trim","length","hasSlot","host","handleFiles","files","failure","emit","reason","file","acceptedTypesList","accept","replace","split","indexOf","type","maxFileSize","size","eventPayload","success","onChange","_a","fileInput","value","dragenterHandler","dragoverHandler","dragleaveHandler","dropHandler","componentWillLoad","componentDidLoad","forEach","eventName","addEventListener","preventDefaults","document","body","shadowRoot","disconnectedCallback","removeEventListener","e","preventDefault","stopPropagation","renderLabel","label","h","class","render","Container","errorMessages","Array","isArray","filter","text","key","slot","name","ref","el","map"],"sources":["src/components/six-file-upload/six-file-upload.scss?tag=six-file-upload&encapsulation=scoped","src/components/six-file-upload/six-file-upload.tsx"],"sourcesContent":["@import 'src/global/component';\n\n$over-color: var(--six-color-action-light-to-be-defined);\n$disabled-color: var(--six-color-inactive);\n$transition: 0.3s;\n$margin: 1rem;\n\n:host {\n position: static;\n display: block;\n}\n\n.six-file-upload {\n six-card {\n box-shadow: none;\n padding: 0;\n width: 100%;\n }\n\n &__label {\n &--highlighted {\n color: var(--six-color-action-600);\n }\n }\n\n &__container {\n &--full {\n border: dashed 1px var(--six-color-web-rock-500);\n }\n }\n\n &__drop-zone {\n padding: 2rem 0;\n display: flex;\n justify-content: center;\n width: 100%;\n transition: background-color $transition;\n\n &__spinner-container {\n display: flex;\n align-items: center;\n\n six-spinner {\n margin-right: var(--six-spacing-x-small);\n }\n }\n\n &--compact {\n padding: 0;\n }\n }\n\n &__input {\n cursor: pointer;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n user-select: none;\n height: 100%;\n opacity: 0;\n outline: none;\n }\n\n &--disabled &__drop-zone {\n background-color: $disabled-color;\n cursor: not-allowed;\n }\n\n &:not(.six-file-upload--disabled) &__drop-zone:hover,\n &__drop-zone--hover {\n background-color: $over-color;\n\n &.six-file-upload__drop-zone--compact {\n background-color: inherit;\n }\n }\n\n &--disabled &__input {\n cursor: not-allowed;\n }\n\n &__error-text {\n font-size: var(--six-input-help-text-font-size-medium);\n }\n}\n","import { Component, Element, Event, EventEmitter, h, Listen, Prop, State } from '@stencil/core';\nimport { hasSlot } from '../../utils/slot';\n\ninterface ISingleFile {\n file: File;\n}\n\ninterface IMultipleFiles {\n files: FileList;\n}\n\nexport type SixFileUploadSuccessPayload = ISingleFile | IMultipleFiles;\n\nexport interface SixFileUploadFailurePayload {\n reason: string;\n}\n\n/**\n * @since 2.0.0\n * @status experimental\n *\n * @slot error-text - Error text that is shown when the status is set to invalid. Alternatively, you can use the error-text prop.\n */\n@Component({\n tag: 'six-file-upload',\n styleUrl: 'six-file-upload.scss',\n scoped: true,\n shadow: false,\n})\nexport class SixFileUpload {\n @Element() readonly host!: HTMLSixFileUploadElement;\n\n private fileInput?: HTMLInputElement;\n\n @State() isOver = false;\n @State() hasError = false;\n\n /** Set to true if file control should be small. */\n @Prop() readonly compact: boolean = false;\n\n /** Label of the drop area. */\n @Prop() readonly label?: string;\n\n /** Set when button is disabled. */\n @Prop() readonly disabled = false;\n\n /** Accepted MIME-Types. */\n @Prop() readonly accept?: string;\n\n /** More than one file allowed. */\n @Prop() readonly multiple = false;\n\n /** Allowed max file size in bytes. */\n @Prop() readonly maxFileSize?: number;\n\n /** Set to true to draw the control in a loading state. */\n @Prop({ reflect: true }) uploading = false;\n\n /** The error message shown, if `invalid` is set to true. */\n @Prop() errorText: string | string[] = '';\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 /** Triggers when a file is added. */\n @Event({ eventName: 'six-file-upload-success' }) success!: EventEmitter<SixFileUploadSuccessPayload>;\n\n /** Triggers when an uploaded file doesn't match MIME type or max file size. */\n @Event({ eventName: 'six-file-upload-failure' }) failure!: EventEmitter<SixFileUploadFailurePayload>;\n\n @Listen('dragenter', { capture: false })\n dragenterHandler() {\n if (!this.disabled) {\n this.isOver = true;\n }\n }\n\n @Listen('dragover', { capture: false })\n dragoverHandler() {\n if (!this.disabled) {\n this.isOver = true;\n }\n }\n\n @Listen('dragleave', { capture: false })\n dragleaveHandler() {\n if (!this.disabled) {\n this.isOver = false;\n }\n }\n\n @Listen('drop', { capture: false })\n dropHandler() {\n if (!this.disabled) {\n this.isOver = false;\n }\n }\n\n private handleSlotChange = () => {\n let validType = false;\n\n if (\n this.errorText != null &&\n ((typeof this.errorText == 'string' && this.errorText.trim().length > 0) ||\n (typeof this.errorText == 'object' && this.errorText.length > 0))\n ) {\n validType = true;\n }\n\n this.hasError = validType || hasSlot(this.host, 'error-text');\n };\n\n private handleFiles = (files: FileList) => {\n if (this.disabled || files.length === 0 || this.uploading) {\n return;\n }\n\n if (!this.multiple && files.length > 1) {\n return this.failure.emit({ reason: 'Only one file is allowed.' });\n }\n\n for (const file of files) {\n if (file == null) {\n return;\n }\n\n let acceptedTypesList: string[] = [];\n if (this.accept != null) {\n acceptedTypesList = this.accept.replace(/\\s/g, '').split(',');\n }\n\n if (acceptedTypesList.length > 0 && acceptedTypesList.indexOf(file.type) === -1) {\n const reason = files.length > 1 ? 'One or more files have invalid MIME type.' : 'File has invalid MIME type.';\n return this.failure.emit({ reason });\n }\n\n if (this.maxFileSize != null && file.size > this.maxFileSize) {\n const reason = files.length > 1 ? 'One or more files are too big' : 'File is too big.';\n return this.failure.emit({ reason });\n }\n }\n\n const eventPayload: SixFileUploadSuccessPayload = this.multiple ? { files } : { file: files[0] };\n this.success.emit(eventPayload);\n };\n\n componentWillLoad() {\n this.handleSlotChange();\n }\n\n componentDidLoad() {\n ['dragenter', 'dragover', 'dragleave', 'drop'].forEach((eventName) => {\n this.host.addEventListener(eventName, this.preventDefaults, false);\n document.body.addEventListener(eventName, this.preventDefaults, false);\n });\n this.host.shadowRoot?.addEventListener('slotchange', this.handleSlotChange);\n }\n\n disconnectedCallback() {\n ['dragenter', 'dragover', 'dragleave', 'drop'].forEach((eventName) => {\n this.host.removeEventListener(eventName, this.preventDefaults, false);\n document.body.removeEventListener(eventName, this.preventDefaults, false);\n });\n this.host.shadowRoot?.removeEventListener('slotchange', this.handleSlotChange);\n }\n\n private preventDefaults(e: Event) {\n e.preventDefault();\n e.stopPropagation();\n }\n\n private onChange = () => {\n if (this.fileInput?.files != null) {\n const files = this.fileInput.files;\n this.handleFiles(files);\n this.fileInput.value = '';\n }\n };\n\n private renderLabel() {\n return (\n this.label ??\n (this.compact ? (\n 'Upload'\n ) : (\n <span>\n Drop files to upload, or <span class=\"six-file-upload__label--highlighted\">browse</span>\n </span>\n ))\n );\n }\n\n render() {\n const Container = this.compact ? 'six-button' : 'six-card';\n\n const errorMessages = (Array.isArray(this.errorText) ? this.errorText : [this.errorText]).filter(\n (text) => text != null && text.trim() !== ''\n );\n\n return (\n <div\n class={{\n 'six-file-upload': true,\n 'six-file-upload--disabled': this.disabled || this.uploading,\n }}\n >\n <Container\n disabled={this.disabled || this.uploading}\n aria-invalid={this.invalid ? 'true' : 'false'}\n class={{\n 'six-file-upload__container--compact': this.compact,\n 'six-file-upload__container--full': !this.compact,\n }}\n >\n {this.compact && !this.uploading && <six-icon slot=\"prefix\">arrow_circle_up</six-icon>}\n <div\n class={{\n 'six-file-upload__drop-zone': true,\n 'six-file-upload__drop-zone--hover': this.isOver,\n 'six-file-upload__drop-zone--compact': this.compact,\n }}\n >\n {this.uploading ? (\n <span class=\"six-file-upload__drop-zone__spinner-container\">\n <six-spinner /> Uploading...\n </span>\n ) : (\n <div>\n <span>{this.renderLabel()}</span>\n <input\n class=\"six-file-upload__input\"\n type=\"file\"\n name=\"resume\"\n disabled={this.disabled}\n accept={this.accept}\n multiple={this.multiple}\n onChange={this.onChange}\n ref={(el) => (this.fileInput = el)}\n />\n </div>\n )}\n </div>\n </Container>\n <div aria-hidden={this.invalid ? 'false' : 'true'}>\n <slot name=\"error-text\">\n {errorMessages.map((text) => (\n <six-error>\n <div class=\"six-file-upload__error-text\">{text}</div>\n </six-error>\n ))}\n </slot>\n </div>\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,c as o,h as i,g as r}from"./p-BF09Gr5y.js";import{s}from"./p-BY6hIEFX.js";function e(t,o,i={duration:150,easing:"ease",fill:"both"}){const r=o.getBoundingClientRect();const s=t.getBoundingClientRect();const e=r.left-s.left;const a=r.top-s.top;const l=r.width/s.width;const n=r.height/s.height;t.animate([{transformOrigin:"top left",transform:`translate(${e}px, ${a}px) scale(${l}, ${n})`},{transformOrigin:"top left",transform:"none"}],i)}const a=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}:host{display:block}.tab-group{display:flex;border:solid 1px transparent;border-radius:0}.tab-group .tab-group__tabs{display:flex;position:relative}.tab-group--has-scroll-controls .tab-group__nav-container{position:relative;padding:0 var(--six-spacing-x-large)}.tab-group__scroll-button{display:flex;align-items:center;justify-content:center;position:absolute;top:0;bottom:0;width:var(--six-spacing-x-large)}.tab-group__scroll-button--left{left:0}.tab-group__scroll-button--right{right:0}.tab-group--top{flex-direction:column}.tab-group--top .tab-group__nav-container{order:1}.tab-group--top .tab-group__nav{display:flex;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.tab-group--top .tab-group__nav::-webkit-scrollbar{width:0;height:0}.tab-group--top .tab-group__tabs{flex:1 1 auto;position:relative;flex-direction:row}.tab-group--top .tab-group__body{order:2}.tab-group--bottom{flex-direction:column}.tab-group--bottom .tab-group__nav-container{order:2}.tab-group--bottom .tab-group__nav{display:flex;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.tab-group--bottom .tab-group__nav::-webkit-scrollbar{width:0;height:0}.tab-group--bottom .tab-group__tabs{flex:1 1 auto;position:relative;flex-direction:row}.tab-group--bottom .tab-group__body{order:1}.tab-group--left{flex-direction:row}.tab-group--left .tab-group__nav-container{order:1}.tab-group--left .tab-group__tabs{flex:0 0 auto;flex-direction:column}.tab-group--left .tab-group__body{flex:1 1 auto;order:2}.tab-group--right{flex-direction:row}.tab-group--right .tab-group__nav-container{order:2}.tab-group--right .tab-group__tabs{flex:0 0 auto;flex-direction:column}.tab-group--right .tab-group__body{flex:1 1 auto;order:1}";const l=class{constructor(i){t(this,i);this.sixTabShow=o(this,"six-tab-show");this.sixTabHide=o(this,"six-tab-hide");this.hasLeftControl=false;this.hasRightControl=false;this.placement="top";this.noScrollControls=false;this.handleClick=t=>{const o=t.target;const i=o.closest("six-tab");const r=i===null||i===void 0?void 0:i.closest("six-tab-group");if(r!==this.host){return false}if(i!=null){this.setActiveTab(i)}};this.handleKeyDown=t=>{if(this.nav==null)return;const o=t.target;const i=o.closest("six-tab");const r=i===null||i===void 0?void 0:i.closest("six-tab-group");if(r!==this.host){return false}if(["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End"].includes(t.key)){const o=document.activeElement;if(o&&o.tagName.toLowerCase()==="six-tab"){const i=this.getAllTabs();let r=i.indexOf(o);if(t.key==="Home"){r=0}else if(t.key==="End"){r=i.length-1}else if(t.key==="ArrowLeft"){r=Math.max(0,r-1)}else if(t.key==="ArrowRight"){r=Math.min(i.length-1,r+1)}i[r].setFocus({preventScroll:true});this.setActiveTab(i[r]);if(["top","bottom"].includes(this.placement)){s(i[r],this.nav,"horizontal")}t.preventDefault()}}};this.handleScrollLeft=()=>{if(this.nav==null)return;this.nav.scroll({left:this.nav.scrollLeft-this.nav.clientWidth,behavior:"smooth"})};this.handleScrollRight=()=>{if(this.nav==null)return;this.nav.scroll({left:this.nav.scrollLeft+this.nav.clientWidth,behavior:"smooth"})}}handleNoScrollControlsChange(){this.updateScrollControls()}componentDidLoad(){if(this.tabGroup==null||this.nav==null)return;const t=new IntersectionObserver(((t,o)=>{if(t[0].intersectionRatio>0){this.setAriaLabels();this.setActiveTab(this.getActiveTab()||this.getAllTabs()[0],false);o.unobserve(t[0].target)}}));t.observe(this.host);this.resizeObserver=new ResizeObserver((()=>this.updateScrollControls()));this.resizeObserver.observe(this.nav);requestAnimationFrame((()=>this.updateScrollControls()));this.nav.addEventListener("scroll",(()=>{if(this.nav==null){return}this.hasRightControl=this.calculateRightControlVisibility();this.hasLeftControl=this.calculateLeftControlVisibility()}));this.mutationObserver=new MutationObserver((t=>{if(t.some((t=>{var o;return!["aria-labelledby","aria-controls"].includes((o=t.attributeName)!==null&&o!==void 0?o:"")}))){setTimeout((()=>this.setAriaLabels()))}}));this.mutationObserver.observe(this.host,{attributes:true,childList:true,subtree:true})}disconnectedCallback(){if(this.mutationObserver==null||this.tabGroup==null||this.nav==null||this.resizeObserver==null){return}this.mutationObserver.disconnect();this.resizeObserver.unobserve(this.nav)}async show(t){const o=this.getAllTabs();const i=o.find((o=>o.panel===t));if(i!=null){this.setActiveTab(i)}}getAllTabs(t=false){var o;const i=(o=this.tabs)===null||o===void 0?void 0:o.querySelector("slot");if(i==null)return[];return[...i.assignedElements()].filter((o=>t?o.tagName.toLowerCase()==="six-tab":o.tagName.toLowerCase()==="six-tab"&&!o.disabled))}getAllPanels(){var t;const o=(t=this.body)===null||t===void 0?void 0:t.querySelector("slot");if(o==null)return[];return[...o.assignedElements()].filter((t=>t.tagName.toLowerCase()==="six-tab-panel"))}getActiveTab(){return this.getAllTabs().find((t=>t.active))}calculateRightControlVisibility(){var t,o,i;if(this.nav==null){return false}return Math.abs((t=this.nav)===null||t===void 0?void 0:t.scrollLeft)+((o=this.nav)===null||o===void 0?void 0:o.clientWidth)<((i=this.nav)===null||i===void 0?void 0:i.scrollWidth)-1}calculateLeftControlVisibility(){var t;if(this.nav==null){return false}return Math.abs((t=this.nav)===null||t===void 0?void 0:t.scrollLeft)>0}updateScrollControls(){if(this.nav==null)return;this.hasRightControl=this.noScrollControls?false:["top","bottom"].includes(this.placement)&&this.calculateRightControlVisibility();this.hasLeftControl=this.noScrollControls?false:["top","bottom"].includes(this.placement)&&this.calculateLeftControlVisibility()}setActiveTab(t,o=true){var i,r,a;if(this.nav==null)return;const l=(i=t===null||t===void 0?void 0:t.shadowRoot)===null||i===void 0?void 0:i.querySelector(".tab__indicator");const n=(a=(r=this.getActiveTab())===null||r===void 0?void 0:r.shadowRoot)===null||a===void 0?void 0:a.querySelector(".tab__indicator");if(n!=null&&l!=null){e(l,n)}if(t!==this.activeTab&&!t.disabled){const i=this.activeTab;this.activeTab=t;this.getAllTabs().map((t=>t.active=t===this.activeTab));this.getAllPanels().map((t=>{var o;return t.active=t.name===((o=this.activeTab)===null||o===void 0?void 0:o.panel)}));if(["top","bottom"].includes(this.placement)){s(this.activeTab,this.nav,"horizontal")}if(o){if(i!=null){this.sixTabHide.emit({name:i.panel})}this.sixTabShow.emit({name:this.activeTab.panel})}}}setAriaLabels(){const t=this.getAllTabs();const o=this.getAllPanels();t.map((t=>{var i,r;const s=o.find((o=>o.name===t.panel));if(s!=null){t.setAttribute("aria-controls",(i=s.getAttribute("id"))!==null&&i!==void 0?i:"");s.setAttribute("aria-labelledby",(r=t.getAttribute("id"))!==null&&r!==void 0?r:"")}}))}render(){return i("div",{key:"50cbef0781a3cb02c56dd3e912f82889b5da1937",part:"base",ref:t=>this.tabGroup=t,class:{"tab-group":true,"tab-group--top":this.placement==="top","tab-group--bottom":this.placement==="bottom","tab-group--left":this.placement==="left","tab-group--right":this.placement==="right","tab-group--has-scroll-controls":this.hasRightControl||this.hasLeftControl},onClick:this.handleClick,onKeyDown:this.handleKeyDown},i("div",{key:"6262c15276def35075129c8f1431094dbecc7ecf",class:"tab-group__nav-container"},this.hasLeftControl&&i("six-icon-button",{key:"9ca0654f604fd2c5c2a38fe3036d95746f7ec1e0",class:"tab-group__scroll-button tab-group__scroll-button--left",exportparts:"base:scroll-button",name:"chevron_left",onClick:this.handleScrollLeft}),i("div",{ref:t=>this.nav=t,key:"nav",part:"nav",class:"tab-group__nav"},i("div",{key:"288b14b0bbc790f1ae54e2a26693e9b103002715",ref:t=>this.tabs=t,part:"tabs",class:"tab-group__tabs",role:"tablist"},i("slot",{key:"249ef2f5d67dd3abf35b07028c9d2fe3798ef1ea",name:"nav"}))),this.hasRightControl&&i("six-icon-button",{key:"7cd9a161b9c5cfe8470c2c8311e1767b48ce61ed",class:"tab-group__scroll-button tab-group__scroll-button--right",exportparts:"base:scroll-button",name:"chevron_right",onClick:this.handleScrollRight})),i("div",{key:"f2f82d9a7730f577fe4ed4a77a98929487f88dec",ref:t=>this.body=t,part:"body",class:"tab-group__body"},i("slot",{key:"ca9dfe2b30a558eb1b95a20aee81978b00b9be2d"})))}get host(){return r(this)}static get watchers(){return{noScrollControls:["handleNoScrollControlsChange"]}}};l.style=a;export{l as six_tab_group};
2
- //# sourceMappingURL=p-b4bb8b5d.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["flipAnimate","element","fromElement","options","duration","easing","fill","dimensionsTo","getBoundingClientRect","dimensionsFrom","deltaX","left","deltaY","top","deltaW","width","deltaH","height","animate","transformOrigin","transform","sixTabGroupCss","SixTabGroup","constructor","hostRef","this","hasLeftControl","hasRightControl","placement","noScrollControls","handleClick","event","target","tab","closest","tabGroup","host","setActiveTab","handleKeyDown","nav","includes","key","activeEl","document","activeElement","tagName","toLowerCase","tabs","getAllTabs","index","indexOf","length","Math","max","min","setFocus","preventScroll","scrollIntoView","preventDefault","handleScrollLeft","scroll","scrollLeft","clientWidth","behavior","handleScrollRight","handleNoScrollControlsChange","updateScrollControls","componentDidLoad","observer","IntersectionObserver","entries","intersectionRatio","setAriaLabels","getActiveTab","unobserve","observe","resizeObserver","ResizeObserver","requestAnimationFrame","addEventListener","calculateRightControlVisibility","calculateLeftControlVisibility","mutationObserver","MutationObserver","mutations","some","mutation","_a","attributeName","setTimeout","attributes","childList","subtree","disconnectedCallback","disconnect","show","panel","find","el","includeDisabled","slot","querySelector","assignedElements","filter","disabled","getAllPanels","body","active","abs","_b","_c","scrollWidth","emitEvents","newIndicator","shadowRoot","oldIndicator","activeTab","previousTab","map","name","sixTabHide","emit","sixTabShow","panels","setAttribute","getAttribute","render","h","part","ref","class","onClick","onKeyDown","exportparts","role"],"sources":["src/utils/animation.ts","src/components/six-tab-group/six-tab-group.scss?tag=six-tab-group&encapsulation=shadow","src/components/six-tab-group/six-tab-group.tsx"],"sourcesContent":["/**\n * Animates a given `element` from the position and dimension of `fromElement` to\n * its current position and dimension. Can be useful to implement the FLIP animation technique.\n *\n * @see {@link https://css-tricks.com/animating-layouts-with-the-flip-technique/} for details on the FLIP technique.\n *\n * @param {Element} element - The element to animate.\n * @param {Element} fromElement - The element representing the initial position and dimensions.\n * @param {KeyframeAnimationOptions} [options={ duration: 150, easing: 'ease', fill: 'both' }] - Optional animation parameters.\n *\n */\nexport function flipAnimate(\n element: Element,\n fromElement: Element,\n options: KeyframeAnimationOptions = {\n duration: 150,\n easing: 'ease',\n fill: 'both',\n }\n) {\n const dimensionsTo = fromElement.getBoundingClientRect();\n const dimensionsFrom = element.getBoundingClientRect();\n\n const deltaX = dimensionsTo.left - dimensionsFrom.left;\n const deltaY = dimensionsTo.top - dimensionsFrom.top;\n const deltaW = dimensionsTo.width / dimensionsFrom.width;\n const deltaH = dimensionsTo.height / dimensionsFrom.height;\n\n element.animate(\n [\n {\n transformOrigin: 'top left',\n transform: `translate(${deltaX}px, ${deltaY}px) scale(${deltaW}, ${deltaH})`,\n },\n {\n transformOrigin: 'top left',\n transform: 'none',\n },\n ],\n options\n );\n}\n","@import 'src/global/component';\n@import 'src/global/mixins/hide-scrollbar';\n\n:host {\n display: block;\n}\n\n.tab-group {\n display: flex;\n border: solid 1px transparent;\n border-radius: 0;\n\n .tab-group__tabs {\n display: flex;\n position: relative;\n }\n}\n\n.tab-group--has-scroll-controls .tab-group__nav-container {\n position: relative;\n padding: 0 var(--six-spacing-x-large);\n}\n\n.tab-group__scroll-button {\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n top: 0;\n bottom: 0;\n width: var(--six-spacing-x-large);\n}\n\n.tab-group__scroll-button--left {\n left: 0;\n}\n\n.tab-group__scroll-button--right {\n right: 0;\n}\n\n// TOP\n.tab-group--top {\n flex-direction: column;\n\n .tab-group__nav-container {\n order: 1;\n }\n\n .tab-group__nav {\n display: flex;\n overflow-x: auto;\n @include hide-scrollbar();\n }\n\n .tab-group__tabs {\n flex: 1 1 auto;\n position: relative;\n flex-direction: row;\n }\n\n .tab-group__body {\n order: 2;\n }\n}\n\n// Bottom\n.tab-group--bottom {\n flex-direction: column;\n\n .tab-group__nav-container {\n order: 2;\n }\n\n .tab-group__nav {\n display: flex;\n overflow-x: auto;\n @include hide-scrollbar();\n }\n\n .tab-group__tabs {\n flex: 1 1 auto;\n position: relative;\n flex-direction: row;\n }\n\n .tab-group__body {\n order: 1;\n }\n}\n\n// Left\n\n.tab-group--left {\n flex-direction: row;\n\n .tab-group__nav-container {\n order: 1;\n }\n\n .tab-group__tabs {\n flex: 0 0 auto;\n flex-direction: column;\n }\n\n .tab-group__body {\n flex: 1 1 auto;\n order: 2;\n }\n}\n\n// Right\n.tab-group--right {\n flex-direction: row;\n\n .tab-group__nav-container {\n order: 2;\n }\n\n .tab-group__tabs {\n flex: 0 0 auto;\n flex-direction: column;\n }\n\n .tab-group__body {\n flex: 1 1 auto;\n order: 1;\n }\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport { scrollIntoView } from '../../utils/scroll';\nimport { flipAnimate } from '../../utils/animation';\n\nexport interface SixTabShowPayload {\n name: string;\n}\n\nexport interface SixTabHidePayload {\n name: string;\n}\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 nav - Used for grouping tabs in the tab group.\n * @slot - Used for grouping tab panels in the tab group.\n *\n * @part base - The component's base wrapper.\n * @part nav - The tab group navigation container.\n * @part tabs - The container that wraps the slotted tabs.\n * @part active-tab-indicator - An element that displays the currently selected tab. This is a child of the tab's container.\n * @part body - The tab group body where tab panels are slotted in.\n * @part scroll-button - The previous and next scroll buttons that appear when tabs are scrollable.\n */\n@Component({\n tag: 'six-tab-group',\n styleUrl: 'six-tab-group.scss',\n shadow: true,\n})\nexport class SixTabGroup {\n private activeTab?: HTMLSixTabElement;\n private body?: HTMLElement;\n private mutationObserver?: MutationObserver;\n private nav?: HTMLElement;\n private resizeObserver?: ResizeObserver;\n private tabGroup?: HTMLElement;\n private tabs?: HTMLElement;\n\n @Element() host!: HTMLSixTabGroupElement;\n\n @State() hasLeftControl = false;\n @State() hasRightControl = false;\n\n /** The placement of the tabs. */\n @Prop() placement: 'top' | 'bottom' | 'left' | 'right' = 'top';\n\n /** Disables the scroll arrows that appear when tabs overflow. */\n @Prop() noScrollControls = false;\n\n @Watch('noScrollControls')\n handleNoScrollControlsChange() {\n this.updateScrollControls();\n }\n\n /** Emitted when a tab is shown. */\n @Event({ eventName: 'six-tab-show' }) sixTabShow!: EventEmitter<SixTabShowPayload>;\n\n /** Emitted when a tab is hidden. */\n @Event({ eventName: 'six-tab-hide' }) sixTabHide!: EventEmitter<SixTabHidePayload>;\n\n componentDidLoad() {\n if (this.tabGroup == null || this.nav == null) return;\n\n // Set initial tab state when the tabs first become visible\n const observer = new IntersectionObserver((entries, observer) => {\n if (entries[0].intersectionRatio > 0) {\n this.setAriaLabels();\n this.setActiveTab(this.getActiveTab() || this.getAllTabs()[0], false);\n observer.unobserve(entries[0].target);\n }\n });\n observer.observe(this.host);\n this.resizeObserver = new ResizeObserver(() => this.updateScrollControls());\n this.resizeObserver.observe(this.nav);\n requestAnimationFrame(() => this.updateScrollControls());\n\n this.nav.addEventListener('scroll', () => {\n if (this.nav == null) {\n return;\n }\n this.hasRightControl = this.calculateRightControlVisibility();\n\n this.hasLeftControl = this.calculateLeftControlVisibility();\n });\n\n // Update aria labels if the DOM changes\n this.mutationObserver = new MutationObserver((mutations) => {\n if (\n mutations.some((mutation) => {\n return !['aria-labelledby', 'aria-controls'].includes(mutation.attributeName ?? '');\n })\n ) {\n setTimeout(() => this.setAriaLabels());\n }\n });\n this.mutationObserver.observe(this.host, { attributes: true, childList: true, subtree: true });\n }\n\n disconnectedCallback() {\n if (this.mutationObserver == null || this.tabGroup == null || this.nav == null || this.resizeObserver == null) {\n return;\n }\n this.mutationObserver.disconnect();\n this.resizeObserver.unobserve(this.nav);\n }\n\n /** Shows the specified tab panel. */\n @Method()\n async show(panel: string) {\n const tabs = this.getAllTabs();\n const tab = tabs.find((el) => el.panel === panel);\n\n if (tab != null) {\n this.setActiveTab(tab);\n }\n }\n\n private getAllTabs(includeDisabled = false): HTMLSixTabElement[] {\n const slot = this.tabs?.querySelector('slot');\n if (slot == null) return [];\n\n return [...slot.assignedElements()].filter((el: Element) => {\n return includeDisabled\n ? el.tagName.toLowerCase() === 'six-tab'\n : el.tagName.toLowerCase() === 'six-tab' && !(el as HTMLSixTabElement).disabled;\n }) as [HTMLSixTabElement];\n }\n\n private getAllPanels(): HTMLSixTabPanelElement[] {\n const slot = this.body?.querySelector('slot');\n if (slot == null) return [];\n return [...slot.assignedElements()].filter((el: Element) => el.tagName.toLowerCase() === 'six-tab-panel') as [\n HTMLSixTabPanelElement\n ];\n }\n\n private getActiveTab() {\n return this.getAllTabs().find((el) => el.active);\n }\n\n private handleClick = (event: MouseEvent) => {\n const target = event.target as HTMLElement;\n const tab = target.closest('six-tab');\n const tabGroup = tab?.closest('six-tab-group');\n\n // Ensure the target tab is in this tab group\n if (tabGroup !== this.host) {\n return false;\n }\n\n if (tab != null) {\n this.setActiveTab(tab);\n }\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if (this.nav == null) return;\n\n const target = event.target as HTMLElement;\n const tab = target.closest('six-tab');\n const tabGroup = tab?.closest('six-tab-group');\n\n // Ensure the target tab is in this tab group\n if (tabGroup !== this.host) {\n return false;\n }\n\n // Move focus left or right\n if (['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown', 'Home', 'End'].includes(event.key)) {\n const activeEl = document.activeElement as HTMLSixTabElement;\n\n if (activeEl && activeEl.tagName.toLowerCase() === 'six-tab') {\n const tabs = this.getAllTabs();\n let index = tabs.indexOf(activeEl);\n\n if (event.key === 'Home') {\n index = 0;\n } else if (event.key === 'End') {\n index = tabs.length - 1;\n } else if (event.key === 'ArrowLeft') {\n index = Math.max(0, index - 1);\n } else if (event.key === 'ArrowRight') {\n index = Math.min(tabs.length - 1, index + 1);\n }\n\n tabs[index].setFocus({ preventScroll: true });\n this.setActiveTab(tabs[index]);\n\n if (['top', 'bottom'].includes(this.placement)) {\n scrollIntoView(tabs[index], this.nav, 'horizontal');\n }\n\n event.preventDefault();\n }\n }\n };\n\n private handleScrollLeft = () => {\n if (this.nav == null) return;\n\n this.nav.scroll({\n left: this.nav.scrollLeft - this.nav.clientWidth,\n behavior: 'smooth',\n });\n };\n\n private handleScrollRight = () => {\n if (this.nav == null) return;\n\n this.nav.scroll({\n left: this.nav.scrollLeft + this.nav.clientWidth,\n behavior: 'smooth',\n });\n };\n\n private calculateRightControlVisibility() {\n if (this.nav == null) {\n return false;\n }\n return Math.abs(this.nav?.scrollLeft) + this.nav?.clientWidth < this.nav?.scrollWidth - 1;\n }\n\n private calculateLeftControlVisibility() {\n if (this.nav == null) {\n return false;\n }\n return Math.abs(this.nav?.scrollLeft) > 0;\n }\n\n private updateScrollControls() {\n if (this.nav == null) return;\n\n this.hasRightControl = this.noScrollControls\n ? false\n : ['top', 'bottom'].includes(this.placement) && this.calculateRightControlVisibility();\n\n this.hasLeftControl = this.noScrollControls\n ? false\n : ['top', 'bottom'].includes(this.placement) && this.calculateLeftControlVisibility();\n }\n\n private setActiveTab(tab: HTMLSixTabElement, emitEvents = true) {\n if (this.nav == null) return;\n\n const newIndicator = tab?.shadowRoot?.querySelector('.tab__indicator');\n const oldIndicator = this.getActiveTab()?.shadowRoot?.querySelector('.tab__indicator');\n\n if (oldIndicator != null && newIndicator != null) {\n flipAnimate(newIndicator, oldIndicator);\n }\n\n if (tab !== this.activeTab && !tab.disabled) {\n const previousTab = this.activeTab;\n this.activeTab = tab;\n\n // Sync tabs and panels\n this.getAllTabs().map((el) => (el.active = el === this.activeTab));\n this.getAllPanels().map((el) => (el.active = el.name === this.activeTab?.panel));\n\n if (['top', 'bottom'].includes(this.placement)) {\n scrollIntoView(this.activeTab, this.nav, 'horizontal');\n }\n\n // Emit events\n if (emitEvents) {\n if (previousTab != null) {\n this.sixTabHide.emit({ name: previousTab.panel });\n }\n\n this.sixTabShow.emit({ name: this.activeTab.panel });\n }\n }\n }\n\n private setAriaLabels() {\n const tabs = this.getAllTabs();\n const panels = this.getAllPanels();\n\n // Link each tab with its corresponding panel\n tabs.map((tab) => {\n const panel = panels.find((el) => el.name === tab.panel);\n if (panel != null) {\n tab.setAttribute('aria-controls', panel.getAttribute('id') ?? '');\n panel.setAttribute('aria-labelledby', tab.getAttribute('id') ?? '');\n }\n });\n }\n\n render() {\n return (\n <div\n part=\"base\"\n ref={(el) => (this.tabGroup = el)}\n class={{\n 'tab-group': true,\n\n // Placements\n 'tab-group--top': this.placement === 'top',\n 'tab-group--bottom': this.placement === 'bottom',\n 'tab-group--left': this.placement === 'left',\n 'tab-group--right': this.placement === 'right',\n\n 'tab-group--has-scroll-controls': this.hasRightControl || this.hasLeftControl,\n }}\n onClick={this.handleClick}\n onKeyDown={this.handleKeyDown}\n >\n <div class=\"tab-group__nav-container\">\n {this.hasLeftControl && (\n <six-icon-button\n class=\"tab-group__scroll-button tab-group__scroll-button--left\"\n exportparts=\"base:scroll-button\"\n name=\"chevron_left\"\n onClick={this.handleScrollLeft}\n />\n )}\n <div ref={(el) => (this.nav = el)} key=\"nav\" part=\"nav\" class=\"tab-group__nav\">\n <div ref={(el) => (this.tabs = el)} part=\"tabs\" class=\"tab-group__tabs\" role=\"tablist\">\n <slot name=\"nav\" />\n </div>\n </div>\n {this.hasRightControl && (\n <six-icon-button\n class=\"tab-group__scroll-button tab-group__scroll-button--right\"\n exportparts=\"base:scroll-button\"\n name=\"chevron_right\"\n onClick={this.handleScrollRight}\n />\n )}\n </div>\n\n <div ref={(el) => (this.body = el)} part=\"body\" class=\"tab-group__body\">\n <slot />\n </div>\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,c as e,h as i,g as r}from"./p-BF09Gr5y.js";import{u as a,l as s}from"./p-BY6hIEFX.js";import{h as o}from"./p-j3oIB5oT.js";import{M as n}from"./p-CfIoyvm-.js";const d=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}:host{--size:25rem;display:contents}.drawer{top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden}.drawer:not(.drawer--visible){position:absolute;width:1px;height:1px;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;pointer-events:none;visibility:hidden}.drawer--contained{position:absolute;z-index:initial}.drawer--fixed{position:fixed;z-index:var(--six-z-index-drawer)}.drawer__panel{position:absolute;display:flex;flex-direction:column;z-index:2;max-width:100%;max-height:100%;background-color:var(--six-drawer-background-color);color:var(--six-drawer-color);box-shadow:var(--six-shadow-large);transition:var(--six-transition-medium) transform;overflow:auto;pointer-events:all}.drawer__panel:focus{outline:none}.drawer--top .drawer__panel{top:0;right:auto;bottom:auto;left:0;width:100%;height:var(--size);transform:translate(0, -100%)}.drawer--right .drawer__panel{top:0;right:0;bottom:auto;left:auto;width:var(--size);height:100%;transform:translate(100%, 0)}.drawer--bottom .drawer__panel{top:auto;right:auto;bottom:0;left:0;width:100%;height:var(--size);transform:translate(0, 100%)}.drawer--left .drawer__panel{top:0;right:auto;bottom:auto;left:0;width:var(--size);height:100%;transform:translate(-100%, 0)}.drawer--open .drawer__panel{transform:none}.drawer__header{display:flex}.drawer__title{flex:1 1 auto;font-size:var(--six-font-size-large);line-height:var(--six-line-height-dense);padding:var(--six-spacing-large)}.drawer__close{flex:0 0 auto;display:flex;align-items:center;font-size:var(--six-font-size-x-large);padding:0 var(--six-spacing-large)}.drawer__body{flex:1 1 auto;padding:var(--six-spacing-large);overflow:auto;-webkit-overflow-scrolling:touch}.drawer__footer{text-align:right;padding:var(--six-spacing-large)}.drawer__footer ::slotted(six-button:not(:last-of-type)){margin-right:var(--six-spacing-x-small)}.drawer:not(.drawer--has-footer) .drawer__footer{display:none}.drawer__overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background-color:var(--six-overlay-background-color);opacity:0;transition:var(--six-transition-medium) opacity;pointer-events:all}.drawer--contained .drawer__overlay{position:absolute}.drawer--open .drawer__overlay{opacity:0.4}";let h=0;const l=class{constructor(i){t(this,i);this.sixShow=e(this,"six-drawer-show");this.sixAfterShow=e(this,"six-drawer-after-show");this.sixHide=e(this,"six-drawer-hide");this.sixAfterHide=e(this,"six-drawer-after-hide");this.sixInitialFocus=e(this,"six-drawer-initial-focus");this.sixOverlayDismiss=e(this,"six-drawer-overlay-dismiss");this.componentId=`drawer-${++h}`;this.willShow=false;this.willHide=false;this.hasFooter=false;this.isVisible=false;this.open=false;this.label="";this.placement="right";this.contained=false;this.noHeader=false;this.handleCloseClick=()=>{this.hide()};this.handleKeyDown=t=>{if(t.key==="Escape"){this.hide()}};this.handleOverlayClick=()=>{const t=this.sixOverlayDismiss.emit();if(!t.defaultPrevented){this.hide()}};this.handleSlotChange=()=>{this.hasFooter=o(this.host,"footer")};this.handleTransitionEnd=t=>{const e=t.target;if(t.propertyName==="transform"&&e.classList.contains("drawer__panel")){this.resetTransitionVariables()}}}handleOpenChange(){this.open?this.show():this.hide()}connectedCallback(){this.modal=new n(this.host,{onFocusOut:()=>{var t;return this.contained?null:(t=this.panel)===null||t===void 0?void 0:t.focus()}})}componentWillLoad(){this.handleSlotChange();if(this.open){this.show();this.resetTransitionVariables()}}disconnectedCallback(){a(this.host)}async show(){if(this.willShow||this.modal==null||this.panel==null||this.drawer==null){return}const t=this.panel;const e=this.sixShow.emit();if(e.defaultPrevented){this.open=false;return}this.willShow=true;this.isVisible=true;this.open=true;if(!this.contained){this.modal.activate();s(this.host)}if(this.open){requestAnimationFrame((()=>{const e=this.sixInitialFocus.emit();if(!e.defaultPrevented){t.focus({preventScroll:true})}}))}}async hide(){if(this.willHide||this.modal==null){return}const t=this.sixHide.emit();if(t.defaultPrevented){this.open=true;return}this.willHide=true;this.open=false;this.modal.deactivate();a(this.host)}resetTransitionVariables(){this.isVisible=this.open;this.willShow=false;this.willHide=false;this.open?this.sixAfterShow.emit():this.sixAfterHide.emit()}render(){return i("div",{key:"f35600ecd84f97b647ab9cc98d56c360f2f03408",ref:t=>this.drawer=t,part:"base",class:{drawer:true,"drawer--open":this.open,"drawer--visible":this.isVisible,"drawer--top":this.placement==="top","drawer--right":this.placement==="right","drawer--bottom":this.placement==="bottom","drawer--left":this.placement==="left","drawer--contained":this.contained,"drawer--fixed":!this.contained,"drawer--has-footer":this.hasFooter},onKeyDown:this.handleKeyDown,onTransitionEnd:this.handleTransitionEnd},i("div",{key:"178e61c83b4c635041c51c89553ed834f6424cd2",part:"overlay",class:"drawer__overlay",onClick:this.handleOverlayClick,tabIndex:-1}),i("div",{key:"71374a7cae137e002760f3ff5b5ee69ad4ac4675",ref:t=>this.panel=t,part:"panel",class:"drawer__panel",role:"dialog","aria-modal":"true","aria-hidden":this.open?"false":"true","aria-label":this.noHeader?this.label:null,"aria-labelledby":!this.noHeader?`${this.componentId}-title`:null,tabIndex:0},!this.noHeader&&i("header",{key:"3a66c231ad202b211c2df81b74a8a6e937be661b",part:"header",class:"drawer__header"},i("span",{key:"80205d6fccb2510b23473dba6098462221f9d43e",part:"title",class:"drawer__title",id:`${this.componentId}-title`},i("slot",{key:"13d986fb13c2cded9ce9980cf12da1b34de9ef28",name:"label"},this.label||String.fromCharCode(65279))),i("six-icon-button",{key:"d62b14dc24849d16f1dffbba0f98126fc95de336",exportparts:"base:close-button",class:"drawer__close",name:"close",onClick:this.handleCloseClick})),i("div",{key:"d0f5b6df5230e996d6b196095589a6629b271fab",part:"body",class:"drawer__body"},i("slot",{key:"6eda0430f1fe27d28a85a6e689fbb9025ee773e7"})),i("footer",{key:"8c71f25b2bbb980a7aabee038ea4d7a58f177970",part:"footer",class:"drawer__footer"},i("slot",{key:"e7dfb09c1cd30deccfd30ce28849e32cdaebe69f",name:"footer",onSlotchange:this.handleSlotChange}))))}get host(){return r(this)}static get watchers(){return{open:["handleOpenChange"]}}};l.style=d;export{l as six_drawer};
2
- //# sourceMappingURL=p-c32c5ff0.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixDrawerCss","id","SixDrawer","constructor","hostRef","this","componentId","willShow","willHide","hasFooter","isVisible","open","label","placement","contained","noHeader","handleCloseClick","hide","handleKeyDown","event","key","handleOverlayClick","sixOverlayDismiss","emit","defaultPrevented","handleSlotChange","hasSlot","host","handleTransitionEnd","target","propertyName","classList","contains","resetTransitionVariables","handleOpenChange","show","connectedCallback","modal","Modal","onFocusOut","_a","panel","focus","componentWillLoad","disconnectedCallback","unlockBodyScrolling","drawer","sixShow","activate","lockBodyScrolling","requestAnimationFrame","sixInitialFocus","preventScroll","sixHide","deactivate","sixAfterShow","sixAfterHide","render","h","ref","el","part","class","onKeyDown","onTransitionEnd","onClick","tabIndex","role","name","String","fromCharCode","exportparts","onSlotchange"],"sources":["src/components/six-drawer/six-drawer.scss?tag=six-drawer&encapsulation=shadow","src/components/six-drawer/six-drawer.tsx"],"sourcesContent":["@import 'src/global/component';\n@import 'src/global/mixins/hidden';\n\n/**\n * @prop --size: The preferred size of the drawer. This will be applied to the drawer's width or height depending on its\n * `placement`. Note that the drawer will shrink to accommodate smaller screens.\n */\n:host {\n --size: 25rem;\n\n display: contents;\n}\n\n.drawer {\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n overflow: hidden;\n\n &:not(.drawer--visible) {\n @include hidden;\n }\n}\n\n.drawer--contained {\n position: absolute;\n z-index: initial;\n}\n\n.drawer--fixed {\n position: fixed;\n z-index: var(--six-z-index-drawer);\n}\n\n.drawer__panel {\n position: absolute;\n display: flex;\n flex-direction: column;\n z-index: 2;\n max-width: 100%;\n max-height: 100%;\n background-color: var(--six-drawer-background-color);\n color: var(--six-drawer-color);\n box-shadow: var(--six-shadow-large);\n transition: var(--six-transition-medium) transform;\n overflow: auto;\n pointer-events: all;\n\n &:focus {\n outline: none;\n }\n}\n\n.drawer--top .drawer__panel {\n top: 0;\n right: auto;\n bottom: auto;\n left: 0;\n width: 100%;\n height: var(--size);\n transform: translate(0, -100%);\n}\n\n.drawer--right .drawer__panel {\n top: 0;\n right: 0;\n bottom: auto;\n left: auto;\n width: var(--size);\n height: 100%;\n transform: translate(100%, 0);\n}\n\n.drawer--bottom .drawer__panel {\n top: auto;\n right: auto;\n bottom: 0;\n left: 0;\n width: 100%;\n height: var(--size);\n transform: translate(0, 100%);\n}\n\n.drawer--left .drawer__panel {\n top: 0;\n right: auto;\n bottom: auto;\n left: 0;\n width: var(--size);\n height: 100%;\n transform: translate(-100%, 0);\n}\n\n.drawer--open .drawer__panel {\n // don't use translate here or it will cause problems with popovers inside the drawer e.g. dropdown, select etc.\n transform: none;\n}\n\n.drawer__header {\n display: flex;\n}\n\n.drawer__title {\n flex: 1 1 auto;\n font-size: var(--six-font-size-large);\n line-height: var(--six-line-height-dense);\n padding: var(--six-spacing-large);\n}\n\n.drawer__close {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n font-size: var(--six-font-size-x-large);\n padding: 0 var(--six-spacing-large);\n}\n\n.drawer__body {\n flex: 1 1 auto;\n padding: var(--six-spacing-large);\n overflow: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n.drawer__footer {\n text-align: right;\n padding: var(--six-spacing-large);\n\n ::slotted(six-button:not(:last-of-type)) {\n margin-right: var(--six-spacing-x-small);\n }\n}\n\n.drawer:not(.drawer--has-footer) .drawer__footer {\n display: none;\n}\n\n.drawer__overlay {\n display: block;\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background-color: var(--six-overlay-background-color);\n opacity: 0;\n transition: var(--six-transition-medium) opacity;\n pointer-events: all;\n}\n\n.drawer--contained .drawer__overlay {\n position: absolute;\n}\n\n.drawer--open .drawer__overlay {\n opacity: 0.4;\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport { lockBodyScrolling, unlockBodyScrolling } from '../../utils/scroll';\nimport { hasSlot } from '../../utils/slot';\nimport Modal from '../../utils/modal';\nimport { EmptyPayload } from '../../utils/types';\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 - The drawer's content.\n * @slot label - The drawer's label. Alternatively, you can use the label prop.\n * @slot footer - The drawer's footer, usually one or more buttons representing various options.\n *\n * @part base - The component's base wrapper.\n * @part overlay - The overlay.\n * @part panel - The drawer panel (where the drawer and its content is rendered).\n * @part header - The drawer header.\n * @part title - The drawer title.\n * @part close-button - The close button.\n * @part body - The drawer body.\n * @part footer - The drawer footer.\n */\n\n@Component({\n tag: 'six-drawer',\n styleUrl: 'six-drawer.scss',\n shadow: true,\n})\nexport class SixDrawer {\n private componentId = `drawer-${++id}`;\n private drawer?: HTMLElement;\n private modal?: Modal;\n private panel?: HTMLElement;\n private willShow = false;\n private willHide = false;\n\n @Element() host!: HTMLSixDrawerElement;\n\n @State() hasFooter = false;\n @State() isVisible = false;\n\n /** Indicates whether the drawer is open. You can use this in lieu of the show/hide methods. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /**\n * The drawer's label as displayed in the header. You should always include a relevant label even when using\n * `no-header`, as it is required for proper accessibility.\n */\n @Prop() label = '';\n\n /** The direction from which the drawer will open. */\n @Prop() placement: 'top' | 'right' | 'bottom' | 'left' = 'right';\n\n /**\n * By default, the drawer slides out of its containing block (usually the viewport). To make the drawer slide out of\n * its parent element, set this prop and add `position: relative` to the parent.\n */\n @Prop() contained = false;\n\n /**\n * Removes the header. This will also remove the default close button, so please ensure you provide an easy,\n * accessible way for users to dismiss the drawer.\n */\n @Prop() noHeader = false;\n\n @Watch('open')\n handleOpenChange() {\n this.open ? this.show() : this.hide();\n }\n\n /** Emitted when the drawer opens. Calling `event.preventDefault()` will prevent it from being opened. */\n @Event({ eventName: 'six-drawer-show' }) sixShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the drawer opens and all transitions are complete. */\n @Event({ eventName: 'six-drawer-after-show' }) sixAfterShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the drawer closes. Calling `event.preventDefault()` will prevent it from being closed. */\n @Event({ eventName: 'six-drawer-hide' }) sixHide!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the drawer closes and all transitions are complete. */\n @Event({ eventName: 'six-drawer-after-hide' }) sixAfterHide!: EventEmitter<EmptyPayload>;\n\n /**\n * Emitted when the drawer opens and the panel gains focus. Calling `event.preventDefault()` will prevent focus and\n * allow you to set it on a different element in the drawer, such as an input or button.\n */\n @Event({ eventName: 'six-drawer-initial-focus' }) sixInitialFocus!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the overlay is clicked. Calling `event.preventDefault()` will prevent the drawer from closing. */\n @Event({ eventName: 'six-drawer-overlay-dismiss' }) sixOverlayDismiss!: EventEmitter<EmptyPayload>;\n\n connectedCallback() {\n this.modal = new Modal(this.host, {\n onFocusOut: () => (this.contained ? null : this.panel?.focus()),\n });\n }\n\n componentWillLoad() {\n this.handleSlotChange();\n\n // Show on init if open\n if (this.open) {\n this.show();\n // if the sidebar is open by default we need to manually reset the\n // transition variables since there will be no transition event\n this.resetTransitionVariables();\n }\n }\n\n disconnectedCallback() {\n unlockBodyScrolling(this.host);\n }\n\n /** Shows the drawer */\n @Method()\n async show() {\n if (this.willShow || this.modal == null || this.panel == null || this.drawer == null) {\n return;\n }\n const panel = this.panel;\n\n const sixShow = this.sixShow.emit();\n if (sixShow.defaultPrevented) {\n this.open = false;\n return;\n }\n\n this.willShow = true;\n this.isVisible = true;\n this.open = true;\n\n // Lock body scrolling only if the drawer isn't contained\n if (!this.contained) {\n this.modal.activate();\n lockBodyScrolling(this.host);\n }\n\n if (this.open) {\n // Wait for the next frame before setting initial focus so the dialog is technically visible\n requestAnimationFrame(() => {\n const sixInitialFocus = this.sixInitialFocus.emit();\n if (!sixInitialFocus.defaultPrevented) {\n panel.focus({ preventScroll: true });\n }\n });\n }\n }\n\n /** Hides the drawer */\n @Method()\n async hide() {\n if (this.willHide || this.modal == null) {\n return;\n }\n\n const sixHide = this.sixHide.emit();\n if (sixHide.defaultPrevented) {\n this.open = true;\n return;\n }\n\n this.willHide = true;\n this.open = false;\n this.modal.deactivate();\n\n unlockBodyScrolling(this.host);\n }\n\n private handleCloseClick = () => {\n this.hide();\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === 'Escape') {\n this.hide();\n }\n };\n\n private handleOverlayClick = () => {\n const sixOverlayDismiss = this.sixOverlayDismiss.emit();\n\n if (!sixOverlayDismiss.defaultPrevented) {\n this.hide();\n }\n };\n\n private handleSlotChange = () => {\n this.hasFooter = hasSlot(this.host, 'footer');\n };\n\n private handleTransitionEnd = (event: TransitionEvent) => {\n const target = event.target as HTMLElement;\n\n // Ensure we only emit one event when the target element is no longer visible\n if (event.propertyName === 'transform' && target.classList.contains('drawer__panel')) {\n this.resetTransitionVariables();\n }\n };\n\n private resetTransitionVariables() {\n this.isVisible = this.open;\n this.willShow = false;\n this.willHide = false;\n this.open ? this.sixAfterShow.emit() : this.sixAfterHide.emit();\n }\n\n render() {\n return (\n <div\n ref={(el) => (this.drawer = el)}\n part=\"base\"\n class={{\n drawer: true,\n 'drawer--open': this.open,\n 'drawer--visible': this.isVisible,\n 'drawer--top': this.placement === 'top',\n 'drawer--right': this.placement === 'right',\n 'drawer--bottom': this.placement === 'bottom',\n 'drawer--left': this.placement === 'left',\n 'drawer--contained': this.contained,\n 'drawer--fixed': !this.contained,\n 'drawer--has-footer': this.hasFooter,\n }}\n onKeyDown={this.handleKeyDown}\n onTransitionEnd={this.handleTransitionEnd}\n >\n <div part=\"overlay\" class=\"drawer__overlay\" onClick={this.handleOverlayClick} tabIndex={-1} />\n\n <div\n ref={(el) => (this.panel = el)}\n part=\"panel\"\n class=\"drawer__panel\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-hidden={this.open ? 'false' : 'true'}\n aria-label={this.noHeader ? this.label : null}\n aria-labelledby={!this.noHeader ? `${this.componentId}-title` : null}\n tabIndex={0}\n >\n {!this.noHeader && (\n <header part=\"header\" class=\"drawer__header\">\n <span part=\"title\" class=\"drawer__title\" id={`${this.componentId}-title`}>\n <slot name=\"label\">\n {/* If there's no label, use an invisible character to prevent the heading from collapsing */}\n {this.label || String.fromCharCode(65279)}\n </slot>\n </span>\n <six-icon-button\n exportparts=\"base:close-button\"\n class=\"drawer__close\"\n name=\"close\"\n onClick={this.handleCloseClick}\n />\n </header>\n )}\n\n <div part=\"body\" class=\"drawer__body\">\n <slot />\n </div>\n\n <footer part=\"footer\" class=\"drawer__footer\">\n <slot name=\"footer\" onSlotchange={this.handleSlotChange} />\n </footer>\n </div>\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["getCurrentTimeIn24Hours","now","Date","hours","getHours","minutes","getMinutes","seconds","getSeconds","milliseconds","getMilliseconds","has24Hours","HOURS_IN_12_HOUR_CLOCK_FORMAT","getHoursIn12HourFormat","getCurrentTimeIn12Hours","period","getCurrentTime","isValidTimeString","timeStr","format","timeStringParts","split","timeFormatParts","length","parseTimeString","timeParts","formatParts","console","error","time","forEach","timeStringPart","i","formatStringPart","Number","toUpperCase","createTimeString","map","timeFormatPart","String","padStart","join","sixTimepickerCss","MIN_POPUP_HEIGHT","SixTimepicker","constructor","hostRef","this","eventListeners","EventListeners","separator","value","open","inline","readonly","disabled","size","required","errorText","label","invalid","name","clearable","iconPosition","hoist","timeout","DEFAULT_DEBOUNCE_FAST","interval","DEFAULT_DEBOUNCE_INSANELY_FAST","debounce","isPopupContentUp","isDropDownContentUp","popupValue","handlePickerChange","event","property","stopPropagation","detail","timeString","sixChange","emit","changedProperty","valueAsString","handleDocumentMouseDown","path","composedPath","includes","host","closePopup","handleClearClick","sixClear","resizeHandler","calcIsPopupContentUp","moveOpenHoistedPopup","scrollHandler","valueChanged","updateValue","setFocus","options","_a","inputElement","connectedCallback","forward","componentWillLoad","add","document","componentDidLoad","sixChangeDebounced","componentDidRender","adjustPopupForHoisting","popup","wrapper","isUp","disconnectedCallback","removeAll","defaultTime","is24HourClock","inputBoundingRect","getBoundingClientRect","wrapperBoundingRect","minPopupHeight","Math","max","height","moreSpaceInTop","y","window","innerHeight","bottom","movePopup","getSixTimeUnitPicker","params","h","class","padded","min","propertyName","items","type","ItemPickerType","NUMBER","paddingLength","getHour24Picker","getHour12Picker","is12HourClock","getAmPmPicker","CUSTOM","getMinutePicker","getSecondsPicker","getMillisecondsPicker","getSeparator","getContent","elementsInOrder","visibleElements","filter","el","undefined","idx","openPopup","remove","renderClearable","slot","timepicker_clear","onClick","tabindex","renderCustomIcon","icon","hasSlot","part","prefix","render","key","ref","placeholder","errorTextCount","timepicker__popup","placement"],"sources":["src/utils/time.util.ts","src/components/six-timepicker/six-timepicker.scss?tag=six-timepicker&encapsulation=shadow","src/components/six-timepicker/six-timepicker.tsx"],"sourcesContent":["export type TimePeriod = 'AM' | 'PM';\n\nexport interface Time {\n hours?: number;\n minutes?: number;\n seconds?: number;\n milliseconds?: number;\n has24Hours?: boolean; // true => 24h, false => 12h\n period?: TimePeriod; // only needed for 12-hour clock\n}\n\nexport type TimeProperties = keyof Time;\n\nexport type TimeFormatChar =\n | 'HH' // 24h\n | 'hh' // 12h\n | 'mm' // minutes\n | 'ss' // seconds\n | 'ms' // milliseconds\n | 'aa'; // period (AM/PM)\n\n/*\n * Supported time formats\n */\nexport type TimeFormat =\n | 'HH:mm:ss'\n | 'hh:mm:ss:aa'\n | 'HH:mm:ss:ms'\n | 'hh:mm:ss:ms:aa'\n | 'HH:mm'\n | 'hh:mm:aa'\n | 'HH'\n | 'hh:aa'\n | 'mm'\n | 'ss'\n | 'ms';\n\nexport const getCurrentTimeIn24Hours = (): Time => {\n const now = new Date();\n return {\n hours: now.getHours(),\n minutes: now.getMinutes(),\n seconds: now.getSeconds(),\n milliseconds: now.getMilliseconds(),\n has24Hours: true,\n };\n};\n\nconst HOURS_IN_12_HOUR_CLOCK_FORMAT = 12;\n\nexport const getHoursIn12HourFormat = (hours: number) =>\n hours > HOURS_IN_12_HOUR_CLOCK_FORMAT ? hours - HOURS_IN_12_HOUR_CLOCK_FORMAT : hours;\n\nexport const getCurrentTimeIn12Hours = (): Time => {\n const now = new Date();\n const hours = now.getHours();\n return {\n hours: getHoursIn12HourFormat(hours),\n minutes: now.getMinutes(),\n seconds: now.getSeconds(),\n milliseconds: now.getMilliseconds(),\n has24Hours: false,\n period: hours >= HOURS_IN_12_HOUR_CLOCK_FORMAT ? 'PM' : 'AM',\n };\n};\n\nexport const getCurrentTime = (has24Hours = true): Time => {\n return has24Hours ? getCurrentTimeIn24Hours() : getCurrentTimeIn12Hours();\n};\n\nexport const isValidTimeString = (timeStr: string, format: TimeFormat) => {\n const timeStringParts = timeStr.split(':');\n const timeFormatParts = format.split(':');\n return timeStringParts.length === timeFormatParts.length;\n};\n\nexport const parseTimeString = (timeStr: string, format: TimeFormat): Time => {\n const timeParts = timeStr.split(':');\n const formatParts = format.split(':') as TimeFormatChar[];\n\n if (!isValidTimeString(timeStr, format)) {\n console.error(\n `Timestring did not match expected format.\\nExpected format: ${format}\\nReceived timestring: ${timeStr}`\n );\n }\n\n const time: Time = {};\n\n timeParts.forEach((timeStringPart, i) => {\n const formatStringPart: TimeFormatChar = formatParts[i];\n switch (formatStringPart) {\n case 'HH':\n time.hours = Number(timeStringPart);\n time.has24Hours = true;\n break;\n case 'hh':\n time.hours = Number(timeStringPart);\n time.has24Hours = false;\n break;\n case 'mm':\n time.minutes = Number(timeStringPart);\n break;\n case 'ss':\n time.seconds = Number(timeStringPart);\n break;\n case 'ms':\n time.milliseconds = Number(timeStringPart);\n break;\n case 'aa':\n time.period = timeStringPart.toUpperCase() === 'PM' ? 'PM' : 'AM';\n }\n });\n return time;\n};\n\nexport const createTimeString = (time: Time | undefined, format: TimeFormat): string => {\n if (time == null) {\n return '';\n }\n\n const formatParts = format.split(':') as TimeFormatChar[];\n\n return formatParts\n .map((timeFormatPart) => {\n switch (timeFormatPart) {\n case 'HH':\n case 'hh':\n return String(time.hours).padStart(2, '0');\n case 'mm':\n return String(time.minutes).padStart(2, '0');\n case 'ss':\n return String(time.seconds).padStart(2, '0');\n case 'ms':\n return String(time.milliseconds).padStart(3, '0');\n case 'aa':\n return String(time.period);\n }\n })\n .join(':');\n};\n","@import 'src/global/component';\n\n:host {\n display: block;\n font-family: var(--six-font-family);\n}\n\n.timepicker {\n &_clear {\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 &--right {\n right: 0;\n position: absolute;\n }\n\n &--left {\n right: 35px;\n position: absolute;\n }\n }\n\n &__container {\n position: relative;\n }\n\n &__popup {\n display: flex;\n justify-content: center;\n min-width: min-content;\n background-color: white;\n padding: 0.5em;\n box-shadow: 0 2px 4px -1px rgb(0 0 0 / 20%), 0 4px 5px 0 rgb(0 0 0 / 14%), 0 1px 10px 0 rgb(0 0 0 / 12%);\n user-select: none;\n position: absolute;\n z-index: var(--six-z-index-dropdown);\n right: 0;\n left: 0;\n\n &--is-up {\n bottom: 100%;\n }\n\n &--is-inline {\n position: initial;\n box-shadow: none;\n border: 1px solid var(--six-color-web-rock-400);\n }\n }\n\n &__separator {\n display: flex;\n align-items: center;\n }\n\n &__item {\n &--wide {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n }\n }\n}\n\n.input--empty .timepicker_clear {\n visibility: hidden;\n}\n\n.input--hide {\n display: none;\n}\n\n// Icon position\n.prefix {\n cursor: pointer;\n\n &--right {\n right: 0;\n display: inline-flex;\n position: absolute;\n font-size: inherit;\n color: var(--six-input-icon-color);\n border: none;\n background: none;\n margin-right: var(--six-input-spacing-medium);\n transition: var(--six-transition-fast) color;\n }\n}\n","import { Component, Element, Event, EventEmitter, h, Listen, Method, Prop, State, Watch } from '@stencil/core';\nimport { ItemPickerType } from '../six-item-picker/types';\nimport {\n createTimeString,\n getCurrentTime,\n isValidTimeString,\n parseTimeString,\n Time,\n TimeFormat,\n TimeProperties,\n} from '../../utils/time.util';\nimport { debounce, DEFAULT_DEBOUNCE_FAST, DEFAULT_DEBOUNCE_INSANELY_FAST } from '../../utils/execution-control';\nimport { SixItemPickerChangePayload } from '../six-item-picker/six-item-picker';\nimport { EventListeners } from '../../utils/event-listeners';\nimport { hasSlot } from '../../utils/slot';\nimport { EmptyPayload } from '../../utils/types';\nimport { adjustPopupForHoisting, movePopup } from '../../utils/popup';\n\nexport interface SixTimepickerChange {\n value?: Time;\n valueAsString: string;\n changedProperty?: string;\n}\n\ninterface SixTimeUnitPickerParams {\n min?: number;\n max?: number;\n items?: string[];\n type?: ItemPickerType;\n class?: string;\n paddingLength?: number;\n propertyName: TimeProperties;\n}\n\nconst MIN_POPUP_HEIGHT = 145;\n\n/**\n * @since 2.0.0\n * @status experimental\n *\n * @slot error-text - Error text that is shown for validation errors. Alternatively, you can use the error-text prop.\n *\n * @part input - The input field\n * @part container - The container of whole component\n * @part popup - The popup of the timepicker component\n *\n */\n@Component({\n tag: 'six-timepicker',\n styleUrl: 'six-timepicker.scss',\n shadow: true,\n})\nexport class SixTimepicker {\n private eventListeners = new EventListeners();\n private popup?: HTMLElement;\n private wrapper?: HTMLElement;\n private inputElement?: HTMLSixInputElement;\n\n @Element() host!: HTMLSixTimepickerElement;\n\n /**\n * Define the time format. Valid formats are:\n *\n * HH:mm:ss\n * hh:mm:ss:aa\n * HH:mm:ss:ms\n * hh:mm:ss:ms:aa\n * HH:mm\n * hh:mm:aa\n * HH\n * hh:aa\n * mm\n * ss\n * ms\n *\n * where HH is the 24 hour format\n * and hh is the 12 hour format\n *\n * Please notice that when using the 12-hour-clock (hh)\n * you always need a period indicator (aa). So the time can be parsed as either am or pm\n * */\n @Prop() format: TimeFormat = 'HH:mm:ss';\n\n /**\n * Define the separator to be shown between the time unit pickers.\n * Please be aware that this property will modify the displayed separator only.\n * The separator for a timestring is always expected to be a colon (eg. '13:52:20')\n * */\n @Prop() separator = ':';\n\n /**\n * The value of the timepicker provided as a string. The string mast match the provided format (or default format)\n */\n @Prop({ mutable: true }) value = '';\n\n /** Indicates whether the timepicker dropdown is open on startup. You can use this in lieu of the show/hide methods. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /** Indicates whether the timepicker should be shown as an inline (always open) component */\n @Prop({ reflect: true }) inline = false;\n\n /**\n * If `true` the user can only select a time via the timepicker but not directly edit the input field.\n */\n @Prop() readonly = false;\n\n /**\n * If `true` the component is disabled.\n */\n @Prop() disabled = false;\n\n /**\n * The enforced placement of the dropdown panel.\n */\n @Prop() placement?: 'top' | 'bottom';\n\n /** Timepicker size. */\n @Prop() size: 'small' | 'medium' | 'large' = 'medium';\n\n /** Set to true to show an asterisk beneath the label. */\n @Prop() required = false;\n\n /**\n * The placeholder defines what text to be shown on the input element\n */\n @Prop() placeholder?: string;\n\n /** The input's error text. Alternatively, you can use the error-text slot. */\n @Prop() errorText: string | string[] = '';\n\n /** The number of error texts to be shown (if the error-text slot isn't used). Defaults to 1 */\n @Prop() errorTextCount?: number;\n\n /** The input's label. Alternatively, you can use the label slot. */\n @Prop() label = '';\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 /** The input's name attribute. */\n @Prop({ reflect: true }) name = '';\n\n /** Set to true to add a clear button when the input is populated. */\n @Prop() clearable = false;\n\n /** Set the position of the icon */\n @Prop() iconPosition: 'left' | 'right' = 'left';\n\n /**\n * Enable this option to prevent the panel from being clipped when the component is placed inside a container with\n * `overflow: auto|scroll`.\n */\n @Prop() hoist = false;\n\n /**\n * Set the amount of time, in milliseconds, to wait to trigger faster switching between timeunits (e.g. hours).\n */\n @Prop() timeout = DEFAULT_DEBOUNCE_FAST;\n\n /**\n * Set the amount of time, in milliseconds, to wait between switching to next timeunit (e.g. next hour) when mouse button is held pressed.\n */\n @Prop() interval = DEFAULT_DEBOUNCE_INSANELY_FAST;\n\n /**\n * The defaultTime defines the default setting for the timepicker when you open the popup. Default time must match the provided format.\n */\n @Prop() defaultTime?: string;\n\n /**\n * Set the amount of time, in milliseconds, to wait to trigger the `six-timepicker-change-debounced` event.\n * If you want your change debounce event to not trigger when keeping the nav button pressed before, make sure debounce\n * is a bit bigger than timeout, otherwise keeping the button pressed will trigger the event twice: once you click\n * (and keep pressed) and once you release\n */\n @Prop() debounce = DEFAULT_DEBOUNCE_FAST;\n\n /**\n * Emitted when the timepicker's value changes\n */\n @Event({ eventName: 'six-timepicker-change' }) sixChange!: EventEmitter<SixTimepickerChange>;\n\n /**\n * Emitted when the timepicker's value changes, but debounced\n */\n @Event({ eventName: 'six-timepicker-change-debounced' }) sixChangeDebounced!: EventEmitter<SixTimepickerChange>;\n\n /**\n * Emitted when the clear button is activated.\n */\n @Event({ eventName: 'six-timepicker-clear' }) sixClear!: EventEmitter<EmptyPayload>;\n\n @State() isPopupContentUp = false;\n\n @State() isDropDownContentUp = false;\n\n @Listen('resize', { target: 'window' })\n async resizeHandler() {\n this.calcIsPopupContentUp();\n this.moveOpenHoistedPopup();\n }\n\n @Listen('scroll', { target: 'window' })\n async scrollHandler() {\n this.calcIsPopupContentUp();\n this.moveOpenHoistedPopup();\n }\n\n /**\n * Update the native input element when the value changes\n */\n @Watch('value')\n protected valueChanged() {\n this.updateValue();\n }\n\n /** Sets focus on the datepickers input. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.inputElement?.setFocus(options);\n }\n\n /*\n * Internally the six-timepicker uses a standardized representation of time, so we don't have a mess,\n * when switching between formats\n */\n @State() private popupValue: Time = {};\n\n connectedCallback() {\n this.eventListeners.forward('six-timepicker-change', 'change', this.host);\n }\n\n componentWillLoad() {\n this.updateValue();\n\n if (this.inline) {\n this.open = true;\n }\n\n if (this.open) {\n this.eventListeners.add(document, 'mousedown', this.handleDocumentMouseDown);\n }\n }\n\n componentDidLoad() {\n if (this.inputElement == null) return;\n const inputElement = this.inputElement;\n\n // emit debounced change event\n this.eventListeners.add(\n this.host,\n 'six-timepicker-change',\n debounce((event: Event) => this.sixChangeDebounced.emit((event as CustomEvent).detail), this.debounce)\n );\n\n // update value and popup value based on input-element value\n this.eventListeners.add(\n inputElement,\n 'six-input-input',\n debounce((event: Event) => {\n event.stopPropagation();\n\n // emit empty event if time string is invalid\n if (!isValidTimeString(inputElement.value, this.format)) {\n this.value = inputElement.value;\n this.sixChange.emit({\n value: {},\n valueAsString: '',\n });\n return;\n }\n\n // update value and popup value, and emit the new value\n this.value = inputElement.value;\n this.popupValue = parseTimeString(inputElement.value, this.format);\n this.sixChange.emit({\n value: this.popupValue,\n valueAsString: createTimeString(this.popupValue, this.format),\n });\n }, this.debounce)\n );\n }\n\n componentDidRender() {\n adjustPopupForHoisting(\n this.hoist,\n this.popup,\n this.inputElement,\n this.wrapper,\n MIN_POPUP_HEIGHT,\n (isUp) => (this.isDropDownContentUp = isUp)\n );\n }\n\n disconnectedCallback() {\n this.eventListeners.removeAll();\n }\n private updateValue() {\n // normalize value\n if (typeof this.value !== 'string' || !isValidTimeString(this.value, this.format)) {\n this.value = '';\n }\n\n // update popup value\n if (this.value === '') {\n if (this.defaultTime == null) {\n this.popupValue = getCurrentTime(this.is24HourClock());\n } else {\n this.popupValue = parseTimeString(this.defaultTime, this.format);\n }\n } else {\n this.popupValue = parseTimeString(this.value, this.format);\n }\n }\n\n private calcIsPopupContentUp() {\n if (this.inputElement == null || this.wrapper == null) {\n return;\n }\n\n const inputBoundingRect = this.inputElement.getBoundingClientRect();\n const wrapperBoundingRect = this.wrapper.getBoundingClientRect();\n const minPopupHeight = Math.max(wrapperBoundingRect.height, MIN_POPUP_HEIGHT);\n\n const moreSpaceInTop = inputBoundingRect.y > window.innerHeight / 2;\n this.isPopupContentUp = moreSpaceInTop && window.innerHeight < inputBoundingRect.bottom + minPopupHeight;\n }\n\n private moveOpenHoistedPopup() {\n movePopup(this.hoist, this.open, this.popup, this.inputElement, this.wrapper, MIN_POPUP_HEIGHT);\n }\n\n private handlePickerChange = (event: CustomEvent<SixItemPickerChangePayload>, property: TimeProperties) => {\n // stop propagation, since the timepicker should not expose the events of the underlying item-picker\n event.stopPropagation();\n if (this.popupValue == null) {\n return;\n }\n\n // update the internal state\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n this.popupValue[property] = event.detail;\n\n const timeString = createTimeString(this.popupValue, this.format);\n\n // update the input value\n this.value = timeString;\n\n // emit change event\n this.sixChange.emit({\n changedProperty: property,\n value: this.popupValue,\n valueAsString: timeString,\n });\n };\n\n private getSixTimeUnitPicker(params: SixTimeUnitPickerParams) {\n return (\n <six-item-picker\n class={params.class}\n timeout={this.timeout}\n interval={this.interval}\n padded\n min={params.min}\n max={params.max}\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n value={this.popupValue[params.propertyName]}\n items={params.items}\n type={params.type || ItemPickerType.NUMBER}\n padding-length={params.paddingLength}\n onSix-item-picker-change={(event) => this.handlePickerChange(event, params.propertyName)}\n ></six-item-picker>\n );\n }\n\n private getHour24Picker() {\n if (!this.is24HourClock()) {\n return;\n }\n return this.getSixTimeUnitPicker({ min: 0, max: 23, propertyName: 'hours' });\n }\n\n private is24HourClock() {\n return this.format.includes('HH');\n }\n\n private getHour12Picker() {\n if (!this.is12HourClock()) {\n return;\n }\n return this.getSixTimeUnitPicker({ min: 0, max: 11, propertyName: 'hours' });\n }\n\n private is12HourClock() {\n return this.format.includes('hh');\n }\n\n private getAmPmPicker() {\n if (!this.is12HourClock()) {\n return;\n }\n const items = ['AM', 'PM'];\n return this.getSixTimeUnitPicker({\n items,\n type: ItemPickerType.CUSTOM,\n propertyName: 'period',\n });\n }\n\n private getMinutePicker() {\n if (!this.format.includes('mm')) {\n return;\n }\n\n return this.getSixTimeUnitPicker({ min: 0, max: 59, propertyName: 'minutes' });\n }\n\n private getSecondsPicker() {\n if (!this.format.includes('ss')) {\n return;\n }\n\n return this.getSixTimeUnitPicker({ min: 0, max: 59, propertyName: 'seconds' });\n }\n\n private getMillisecondsPicker() {\n if (!this.format.includes('ms')) {\n return;\n }\n\n return this.getSixTimeUnitPicker({\n min: 0,\n max: 999,\n class: 'timepicker__item--wide',\n paddingLength: 3,\n propertyName: 'milliseconds',\n });\n }\n\n private getSeparator() {\n return (\n <div class=\"timepicker__separator\">\n <span>{this.separator}</span>\n </div>\n );\n }\n\n private getContent() {\n const elementsInOrder = [\n this.getHour24Picker(),\n this.getHour12Picker(),\n this.getMinutePicker(),\n this.getSecondsPicker(),\n this.getMillisecondsPicker(),\n ];\n\n const visibleElements = elementsInOrder.filter((el) => el !== undefined);\n\n return visibleElements.map((el, idx) => {\n if (idx === visibleElements.length - 1) {\n return [el];\n }\n\n return [el, this.getSeparator()];\n });\n }\n\n private openPopup() {\n if (!this.open && !this.disabled) {\n this.open = true;\n this.eventListeners.add(document, 'mousedown', this.handleDocumentMouseDown);\n }\n }\n\n private closePopup() {\n if (this.inline) {\n return;\n }\n\n this.open = false;\n this.eventListeners.remove(document, 'mousedown', this.handleDocumentMouseDown);\n }\n\n private handleDocumentMouseDown = (event: Event) => {\n // Close when clicking outside the containing element\n const path = event.composedPath() as EventTarget[];\n if (!path.includes(this.host)) {\n this.closePopup();\n return;\n }\n };\n\n private handleClearClick = (event: MouseEvent) => {\n event.stopPropagation();\n this.value = '';\n this.sixClear.emit();\n this.sixChange.emit({\n value: {},\n valueAsString: '',\n });\n };\n\n private renderClearable() {\n return (\n this.clearable && (\n <button\n slot=\"suffix\"\n class={{\n timepicker_clear: true,\n 'timepicker_clear--right': this.iconPosition === 'left',\n 'timepicker_clear--left': this.iconPosition === 'right',\n }}\n type=\"button\"\n onClick={this.handleClearClick}\n tabindex=\"-1\"\n >\n <six-icon size=\"small\">clear</six-icon>\n </button>\n )\n );\n }\n\n private renderCustomIcon() {\n const icon = hasSlot(this.host, 'custom-icon') ? (\n <slot name=\"custom-icon\"></slot>\n ) : (\n <six-icon size={this.size === 'large' ? 'medium' : this.size}>watch_later</six-icon>\n );\n\n return (\n <span\n slot=\"prefix\"\n part=\"icon\"\n class={{\n prefix: true,\n 'prefix--right': this.iconPosition === 'right',\n }}\n >\n {icon}\n </span>\n );\n }\n\n render() {\n return (\n <div part=\"container\" ref={(el) => (this.wrapper = el)} class=\"timepicker__container\">\n <six-input\n ref={(el) => (this.inputElement = el)}\n part=\"input\"\n onClick={() => this.openPopup()}\n value={this.value}\n placeholder={this.placeholder}\n readonly={this.readonly}\n disabled={this.disabled}\n errorTextCount={this.errorTextCount}\n errorText={this.errorText}\n invalid={this.invalid}\n size={this.size}\n name={this.name}\n label={this.label}\n required={this.required}\n class={{\n 'input--empty': this.value === '',\n 'input--hide': this.inline,\n }}\n >\n {this.renderCustomIcon()}\n {this.renderClearable()}\n {hasSlot(this.host, 'label') ? (\n <span slot=\"label\">\n <slot name=\"label\" />\n </span>\n ) : null}\n {hasSlot(this.host, 'error-text') ? (\n <span slot=\"error-text\">\n <slot name=\"error-text\" />\n </span>\n ) : null}\n </six-input>\n {this.open && (\n <div\n ref={(el) => (this.popup = el)}\n part=\"popup\"\n class={{\n timepicker__popup: true,\n 'timepicker__popup--is-up': this.placement == null ? this.placement === 'top' : this.isPopupContentUp,\n 'timepicker__popup--is-inline': this.inline,\n }}\n >\n {...this.getContent()}\n {this.getAmPmPicker()}\n </div>\n )}\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixRadioCss","id","SixRadio","constructor","hostRef","this","inputId","labelId","eventListeners","EventListeners","hasFocus","name","value","disabled","checked","invalid","handleClick","nativeInput","sixChange","emit","handleBlur","sixBlur","handleFocus","sixFocus","handleKeyDown","keyboardEvent","includes","key","radios","getAllRadios","filter","radio","incr","index","indexOf","host","length","forEach","setFocus","dispatchEvent","CustomEvent","bubbles","cancelable","preventDefault","handleMouseDown","event","_a","focus","handleCheckedChange","getSiblingRadios","handleNameChange","connectedCallback","forward","disconnectedCallback","removeAll","options","removeFocus","blur","form","closest","document","body","querySelectorAll","render","h","part","class","htmlFor","onKeyDown","onMouseDown","viewBox","stroke","fill","cx","cy","r","ref","el","type","role","onClick","onBlur","onFocus"],"sources":["src/components/six-radio/six-radio.scss?tag=six-radio&encapsulation=shadow","src/components/six-radio/six-radio.tsx"],"sourcesContent":["@import 'src/global/component';\n\n:host {\n display: inline-block;\n}\n\n.radio {\n display: inline-flex;\n align-items: center;\n font-family: var(--six-font-family);\n font-size: var(--six-input-font-size-medium);\n font-weight: var(--six-input-font-weight);\n color: var(--six-input-color);\n vertical-align: middle;\n cursor: pointer;\n}\n\n.radio__icon {\n display: inline-flex;\n width: var(--six-selection-control-toggle-size);\n height: var(--six-selection-control-toggle-size);\n\n svg {\n width: 100%;\n height: 100%;\n }\n}\n\n.radio__control {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--six-selection-control-toggle-size);\n height: var(--six-selection-control-toggle-size);\n border: solid var(--six-border-width) var(--six-input-border-color);\n border-radius: 50%;\n background-color: var(--six-input-background-color);\n color: transparent;\n transition: var(--six-transition-fast) border-color, var(--six-transition-fast) background-color,\n var(--six-transition-fast) color, var(--six-transition-fast) box-shadow;\n\n input[type='radio'] {\n position: absolute;\n opacity: 0;\n padding: 0;\n margin: 0;\n pointer-events: none;\n }\n}\n\n// Hover\n.radio:not(.radio--checked):not(.radio--disabled) .radio__control:hover {\n border-color: var(--six-input-border-color-hover);\n}\n\n// Checked\n.radio--checked .radio__control {\n color: var(--six-selection-control-color);\n border-color: var(--six-selection-control-color);\n}\n\n// Checked + hover\n.radio.radio--checked:not(.radio--disabled) .radio__control:hover {\n color: var(--six-input-border-color-focus);\n border-color: var(--six-input-border-color-focus);\n}\n\n// Disabled\n.radio--disabled {\n cursor: not-allowed;\n color: var(--six-input-color-disabled);\n\n .radio__control {\n border-color: var(--six-input-border-color-disabled);\n }\n\n &.radio--checked .radio__control {\n color: var(--six-selection-control-color-disabled);\n }\n}\n\n.radio__label {\n line-height: var(--six-selection-control-toggle-size);\n margin-left: 0.5em;\n user-select: none;\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport { EmptyPayload } from '../../utils/types';\nimport { EventListeners } from '../../utils/event-listeners';\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 - The radio's label.\n *\n * @part base - The component's base wrapper.\n * @part control - The radio control.\n * @part checked-icon - The container the wraps the checked icon.\n * @part label - The radio label.\n */\n\n@Component({\n tag: 'six-radio',\n styleUrl: 'six-radio.scss',\n shadow: true,\n})\nexport class SixRadio {\n private inputId = `radio-${++id}`;\n private labelId = `radio-label-${id}`;\n private nativeInput?: HTMLInputElement;\n private eventListeners = new EventListeners();\n\n @Element() host!: HTMLSixRadioElement;\n\n @State() hasFocus = false;\n\n /** The radio's name attribute. */\n @Prop() name = '';\n\n /** The radio's value attribute. */\n @Prop({ reflect: true }) value = 'on';\n\n /** Set to true to disable the radio. */\n @Prop() disabled = false;\n\n /** Set to true to draw the radio in a checked state. */\n @Prop({ mutable: true, reflect: true }) checked = false;\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 @Watch('checked')\n handleCheckedChange() {\n if (this.checked) {\n this.getSiblingRadios().forEach((radio) => (radio.checked = false));\n }\n if (this.nativeInput != null) {\n this.nativeInput.checked = this.checked;\n }\n }\n\n @Watch('name')\n handleNameChange(name: string) {\n if (this.nativeInput != null) {\n this.nativeInput.name = name;\n }\n }\n\n /** Emitted when the control loses focus. */\n @Event({ eventName: 'six-radio-blur' }) sixBlur!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control's checked state changes. */\n @Event({ eventName: 'six-radio-change' }) sixChange!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control gains focus. */\n @Event({ eventName: 'six-radio-focus' }) sixFocus!: EventEmitter<EmptyPayload>;\n\n connectedCallback() {\n this.eventListeners.forward('six-radio-change', 'change', this.host);\n this.eventListeners.forward('six-radio-blur', 'blur', this.host);\n this.eventListeners.forward('six-radio-focus', 'focus', this.host);\n }\n\n disconnectedCallback() {\n this.eventListeners.removeAll();\n }\n\n /** Sets focus on the radio. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.nativeInput?.focus(options);\n }\n\n /** Removes focus from the radio. */\n @Method()\n async removeFocus() {\n this.nativeInput?.blur();\n }\n\n private getAllRadios() {\n const form = this.host.closest('form') || document.body;\n\n if (this.name === '') return [];\n\n return [...form.querySelectorAll('six-radio')].filter(\n (radio: HTMLSixRadioElement) => radio.name === this.name\n ) as HTMLSixRadioElement[];\n }\n\n private getSiblingRadios() {\n return this.getAllRadios().filter((radio) => radio !== this.host) as HTMLSixRadioElement[];\n }\n\n private handleClick = () => {\n if (this.nativeInput != null) {\n this.checked = this.nativeInput.checked;\n this.sixChange.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 handleKeyDown = (keyboardEvent: KeyboardEvent) => {\n if (['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight'].includes(keyboardEvent.key)) {\n const radios = this.getAllRadios().filter((radio) => !radio.disabled);\n const incr = ['ArrowUp', 'ArrowLeft'].includes(keyboardEvent.key) ? -1 : 1;\n let index = radios.indexOf(this.host) + incr;\n if (index < 0) index = radios.length - 1;\n if (index > radios.length - 1) index = 0;\n\n this.getAllRadios().forEach((radio) => (radio.checked = false));\n radios[index].setFocus();\n radios[index].checked = true;\n radios[index].dispatchEvent(new CustomEvent('six-radio-change', { bubbles: true, cancelable: true }));\n keyboardEvent.preventDefault();\n }\n };\n\n private handleMouseDown = (event: MouseEvent) => {\n // Prevent clicks on the label from briefly blurring the input\n event.preventDefault();\n this.nativeInput?.focus();\n };\n\n render() {\n return (\n <label\n part=\"base\"\n class={{\n radio: true,\n 'radio--checked': this.checked,\n 'radio--disabled': this.disabled,\n 'radio--focused': this.hasFocus,\n }}\n htmlFor={this.inputId}\n onKeyDown={this.handleKeyDown}\n onMouseDown={this.handleMouseDown}\n >\n <span part=\"control\" class=\"radio__control\">\n <span part=\"checked-icon\" class=\"radio__icon\">\n <svg viewBox=\"0 0 16 16\">\n <g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g fill=\"currentColor\">\n <circle cx=\"8\" cy=\"8\" r=\"5\"></circle>\n </g>\n </g>\n </svg>\n </span>\n\n <input\n ref={(el) => (this.nativeInput = el)}\n id={this.inputId}\n type=\"radio\"\n name={this.name}\n value={this.value}\n checked={this.checked}\n disabled={this.disabled}\n role=\"radio\"\n aria-checked={this.checked ? 'true' : 'false'}\n aria-labelledby={this.labelId}\n onClick={this.handleClick}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n />\n </span>\n\n <span part=\"label\" id={this.labelId} class=\"radio__label\">\n <slot />\n </span>\n </label>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixTextareaCss","id","SixTextarea","constructor","hostRef","this","inputId","labelId","helpTextId","errorTextId","eventListeners","EventListeners","resizeObserver","ResizeObserver","setTextareaHeight","hasFocus","hasHelpTextSlot","hasLabelSlot","hasErrorTextSlot","size","name","value","helpText","rows","resize","disabled","readonly","required","label","errorText","invalid","autocapitalize","autocorrect","autocomplete","autofocus","spellcheck","handleChange","nativeTextarea","sixChange","emit","handleInput","sixInput","handleBlur","sixBlur","handleFocus","sixFocus","handleSlotChange","hasSlot","host","handleLabelChange","handleRowsChange","handleValueChange","getValue","connectedCallback","_a","shadowRoot","addEventListener","forward","componentWillLoad","componentDidLoad","observe","disconnectedCallback","unobserve","removeEventListener","removeAll","setFocus","options","focus","removeFocus","blur","select","setSelectionRange","selectionStart","selectionEnd","selectionDirection","setRangeText","replacement","start","end","selectMode","style","height","scrollHeight","undefined","toString","render","h","FormControl","key","errorTextCount","displayError","part","class","textarea","length","ref","el","placeholder","readOnly","minLength","minlength","maxLength","maxlength","autoCapitalize","autoCorrect","autoFocus","inputMode","inputmode","onChange","onInput","onFocus","onBlur"],"sources":["src/components/six-textarea/six-textarea.scss?tag=six-textarea&encapsulation=shadow","src/components/six-textarea/six-textarea.tsx"],"sourcesContent":["@import 'src/global/component';\n@import '../../functional-components/form-control/form-control';\n\n/**\n * @prop --height: The textarea height.\n */\n:host {\n --height: 100%;\n display: block;\n}\n\n.textarea {\n display: flex;\n align-items: center;\n position: relative;\n width: 100%;\n font-family: var(--six-font-family);\n font-weight: var(--six-input-font-weight);\n line-height: var(--six-line-height-normal);\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 transition: var(--six-transition-fast) color, var(--six-transition-fast) border, var(--six-transition-fast) box-shadow;\n cursor: text;\n\n &:hover:not(.textarea--disabled) {\n background-color: var(--six-input-background-color-hover);\n border-color: var(--six-input-border-color-hover);\n\n .textarea__control {\n color: var(--six-input-color-hover);\n }\n }\n\n &.textarea--focused:not(.textarea--disabled) {\n background-color: var(--six-input-background-color-focus);\n box-shadow: var(--six-input-focus-shadow);\n border-color: var(--six-input-border-color-focus);\n color: var(--six-input-color-focus);\n\n .textarea__control {\n color: var(--six-input-color-focus);\n }\n }\n\n &.textarea--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 .textarea__control {\n color: var(--six-input-color-disabled);\n\n &::placeholder {\n color: var(--six-input-placeholder-color-disabled);\n }\n }\n }\n}\n\n.textarea__control {\n flex: 1 1 auto;\n height: calc(var(--height) - 2 * var(--six-border-width));\n font-family: inherit;\n font-size: inherit;\n font-weight: inherit;\n line-height: 1.4;\n color: var(--sl-input-color);\n border: none;\n background: none;\n box-shadow: none;\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 &::placeholder {\n color: var(--six-input-placeholder-color);\n user-select: none;\n }\n\n &:focus {\n outline: none;\n }\n}\n\n.textarea--invalid:not(.textarea--disabled):not(.textarea--focused) {\n border-color: var(--six-input-border-color-danger);\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Size modifiers\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.textarea--small {\n border-radius: var(--six-input-border-radius-small);\n font-size: var(--six-input-font-size-small);\n\n .textarea__control {\n padding: 0.5em var(--six-input-spacing-small);\n }\n}\n\n.textarea--medium {\n border-radius: var(--six-input-border-radius-medium);\n font-size: var(--six-input-font-size-medium);\n\n .textarea__control {\n padding: 0.5em var(--six-input-spacing-medium);\n }\n}\n\n.textarea--large {\n border-radius: var(--six-input-border-radius-large);\n font-size: var(--six-input-font-size-large);\n\n .textarea__control {\n padding: 0.5em var(--six-input-spacing-large);\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Resize types\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.textarea--resize-none .textarea__control {\n resize: none;\n}\n\n.textarea--resize-vertical .textarea__control {\n resize: vertical;\n}\n\n.textarea--resize-auto .textarea__control {\n height: auto;\n resize: none;\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 { EventListeners } from '../../utils/event-listeners';\nimport { EmptyPayload } from '../../utils/types';\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 textarea's label. Alternatively, you can use the label prop.\n * @slot help-text - Help text that describes how to use the input.\n * @slot error-text - Error text that is shown for validation errors. Alternatively, you can use the error-text prop.\n *\n * @part base - The component's base wrapper.\n * @part form-control - The form control that wraps the label, textarea, and help text.\n * @part label - The textarea label.\n * @part textarea - The textarea control.\n * @part help-text - The textarea help text.\n */\n@Component({\n tag: 'six-textarea',\n styleUrl: 'six-textarea.scss',\n shadow: true,\n})\nexport class SixTextarea {\n private inputId = `textarea-${++id}`;\n private labelId = `textarea-label-${id}`;\n private helpTextId = `textarea-help-text-${id}`;\n private errorTextId = `input-error-text-${id}`;\n private nativeTextarea?: HTMLTextAreaElement;\n private eventListeners = new EventListeners();\n private resizeObserver = new ResizeObserver(() => this.setTextareaHeight());\n\n @Element() host!: HTMLSixTextareaElement;\n\n @State() hasFocus = false;\n @State() hasHelpTextSlot = false;\n @State() hasLabelSlot = false;\n @State() hasErrorTextSlot = false;\n\n /** The textarea's size. */\n @Prop({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n\n /** The textarea's name attribute. */\n @Prop({ reflect: true }) name = '';\n\n /** The textarea's value attribute. */\n @Prop({ mutable: true, reflect: true }) value = '';\n\n /** The textarea's help text. Alternatively, you can use the help-text slot. */\n @Prop() helpText = '';\n\n /** The textarea's placeholder text. */\n @Prop() placeholder?: string;\n\n /** The number of rows to display by default. */\n @Prop() rows = 4;\n\n /** Controls how the textarea can be resized. */\n @Prop() resize: 'none' | 'vertical' | 'auto' = 'vertical';\n\n /** Set to true to disable the textarea. */\n @Prop({ reflect: true }) disabled = false;\n\n /** Set to true for a readonly textarea. */\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 /** Set to true to show an asterisk beneath the label. */\n @Prop() required = false;\n\n /** The label text. */\n @Prop() label = '';\n\n /** The error message shown, if `invalid` is set to true. */\n @Prop() errorText: string | string[] = '';\n\n /** The number of error texts to be shown (if the error-text slot isn't used). Defaults to 1 */\n @Prop() errorTextCount?: number;\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 /** The textarea's autocaptialize attribute. */\n @Prop() autocapitalize = 'off';\n\n /** The textarea's autocorrect attribute. */\n @Prop() autocorrect: 'on' | 'off' = 'off';\n\n /** The textarea's autocomplete attribute. */\n @Prop() autocomplete = 'off';\n\n /** The textarea's autofocus attribute. */\n @Prop() autofocus = false;\n\n /** The textarea's spellcheck attribute. */\n @Prop() spellcheck = false;\n\n /** The textarea's inputmode attribute. */\n @Prop() inputmode?: 'none' | 'text' | 'decimal' | 'numeric' | 'tel' | 'search' | 'email' | 'url';\n\n /** Emitted when the control's value changes. Access the new value via event.target.value. */\n @Event({ eventName: 'six-textarea-change' }) sixChange!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control receives input. Access the new value via event.target.value. */\n @Event({ eventName: 'six-textarea-input' }) sixInput!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control gains focus. */\n @Event({ eventName: 'six-textarea-focus' }) sixFocus!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control loses focus. Access the new value via event.target.value. */\n @Event({ eventName: 'six-textarea-blur' }) sixBlur!: EventEmitter<EmptyPayload>;\n\n @Watch('helpText')\n @Watch('errorText')\n @Watch('label')\n handleLabelChange() {\n this.handleSlotChange();\n }\n\n @Watch('rows')\n handleRowsChange() {\n this.setTextareaHeight();\n }\n\n @Watch('value')\n handleValueChange() {\n this.value = this.getValue();\n if (this.nativeTextarea != null) {\n if (this.nativeTextarea.value !== this.value) {\n this.nativeTextarea.value = this.value;\n }\n }\n }\n\n connectedCallback() {\n this.host.shadowRoot?.addEventListener('slotchange', this.handleSlotChange);\n this.eventListeners.forward('six-textarea-input', 'input', this.host);\n this.eventListeners.forward('six-textarea-change', 'change', this.host);\n this.eventListeners.forward('six-textarea-focus', 'focus', this.host);\n this.eventListeners.forward('six-textarea-blur', 'blur', this.host);\n }\n\n componentWillLoad() {\n this.handleSlotChange();\n }\n\n componentDidLoad() {\n this.setTextareaHeight();\n if (this.nativeTextarea != null) {\n this.resizeObserver.observe(this.nativeTextarea);\n }\n }\n\n disconnectedCallback() {\n if (this.nativeTextarea != null) {\n this.resizeObserver.unobserve(this.nativeTextarea);\n }\n this.host.shadowRoot?.removeEventListener('slotchange', this.handleSlotChange);\n this.eventListeners.removeAll();\n }\n\n /** Sets focus on the textarea. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.nativeTextarea?.focus(options);\n }\n\n /** Removes focus fromt the textarea. */\n @Method()\n async removeFocus() {\n this.nativeTextarea?.blur();\n }\n\n /** Selects all the text in the input. */\n @Method()\n async select() {\n return this.nativeTextarea?.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.nativeTextarea?.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.nativeTextarea == null) return;\n\n this.nativeTextarea.setRangeText(replacement, start, end, selectMode);\n if (this.getValue() !== this.nativeTextarea.value) {\n this.value = this.nativeTextarea.value;\n this.setTextareaHeight();\n this.sixChange.emit();\n this.sixInput.emit();\n }\n }\n\n private handleChange = () => {\n if (this.nativeTextarea != null) {\n this.value = this.nativeTextarea.value;\n this.sixChange.emit();\n }\n };\n\n private handleInput = () => {\n if (this.nativeTextarea != null) {\n this.value = this.nativeTextarea.value;\n this.setTextareaHeight();\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 handleSlotChange = () => {\n this.hasLabelSlot = hasSlot(this.host, 'label');\n this.hasHelpTextSlot = hasSlot(this.host, 'help-text');\n this.hasErrorTextSlot = hasSlot(this.host, 'error-text');\n };\n\n private setTextareaHeight() {\n if (this.nativeTextarea == null) return;\n\n if (this.resize === 'auto') {\n this.nativeTextarea.style.height = 'auto';\n this.nativeTextarea.style.height = this.nativeTextarea.scrollHeight + 'px';\n } else {\n (this.nativeTextarea.style.height as string | undefined) = undefined;\n }\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 errorTextCount={this.errorTextCount}\n hasErrorTextSlot={this.hasErrorTextSlot}\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 textarea: true,\n\n // Sizes\n 'textarea--small': this.size === 'small',\n 'textarea--medium': this.size === 'medium',\n 'textarea--large': this.size === 'large',\n\n // States\n 'textarea--disabled': this.disabled,\n 'textarea--focused': this.hasFocus,\n 'textarea--empty': this.getValue().length === 0,\n 'textarea--invalid': this.invalid,\n\n // Modifiers\n 'textarea--resize-none': this.resize === 'none',\n 'textarea--resize-vertical': this.resize === 'vertical',\n 'textarea--resize-auto': this.resize === 'auto',\n }}\n >\n <textarea\n part=\"textarea\"\n ref={(el) => (this.nativeTextarea = el)}\n id={this.inputId}\n class=\"textarea__control\"\n name={this.name}\n placeholder={this.placeholder}\n disabled={this.disabled}\n readOnly={this.readonly}\n rows={this.rows}\n minLength={this.minlength}\n maxLength={this.maxlength}\n value={this.getValue()}\n autoCapitalize={this.autocapitalize}\n autoCorrect={this.autocorrect}\n autoFocus={this.autofocus}\n spellcheck={this.spellcheck}\n required={this.required}\n inputMode={this.inputmode}\n aria-labelledby={this.labelId}\n onChange={this.handleChange}\n onInput={this.handleInput}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n </div>\n </FormControl>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as e,c as t,h as s,g as i}from"./p-BF09Gr5y.js";import{h as o,a as l}from"./p-j3oIB5oT.js";import{F as r}from"./p-tWZJdnMN.js";import{E as a}from"./p-C4h4qpGl.js";import{D as n,d as c}from"./p-ltzGzaAu.js";import{a as h}from"./p-1oJarDAY.js";function d(e,t){if(t){if(Array.isArray(e)){return e.filter((e=>typeof e==="string"))}else if(typeof e==="string"&&e.length>0){return[e]}else{return[]}}else{if(typeof e==="string"){return e}else{return""}}}function u(e){return d(e,true)}function f(e,t){if(Array.isArray(e)&&Array.isArray(t)){return e.length===t.length&&e.every(((e,s)=>e===t[s]))}else if(typeof e==="string"&&typeof t==="string"){return e===t}return false}const p=':host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.form-control .form-control__label{display:none}.form-control .form-control__help-text{display:none}.form-control .form-control__error-text{display:none;text-align:left}.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:"*";transform:scale(1.1);margin-left:var(--six-spacing-xxx-small);position:absolute}.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;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,.select{display:block}.select__box{display:inline-flex;align-items:center;justify-content:start;position:relative;width:100%;font-family:var(--six-font-family);font-weight:var(--six-input-font-weight);font-size:var(--six-input-font-size-medium);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;transition:var(--six-transition-fast) color, var(--six-transition-fast) border, var(--six-transition-fast) box-shadow;cursor:pointer}.select__box--line{border:none;border-bottom:solid var(--six-border-width) var(--six-input-border-color)}.select__box--autocomplete{border:none;overflow:initial}.select:not(.select--disabled) .select__box:hover{background-color:var(--six-input-background-color-hover);color:var(--six-input-color-hover);border-bottom-color:var(--six-input-border-color-hover)}.select:not(.select--disabled) .select__box:hover:not(.select__box--line){border-color:var(--six-input-border-color-hover)}.select:not(.select--disabled) .select__box:focus{background-color:var(--six-input-background-color-focus);outline:none;color:var(--six-input-color-focus);border-bottom-color:var(--six-input-border-color-focus);box-shadow:0 1px 0 0 var(--six-input-border-color-focus)}.select:not(.select--disabled) .select__box:focus:not(.select__box--line){border-color:var(--six-input-border-color-focus);box-shadow:var(--six-input-focus-shadow)}.select--disabled .select__box{background-color:var(--six-input-background-color-disabled);color:var(--six-input-color-disabled);cursor:not-allowed;outline:none}.select--disabled .select__box:not(.select__box--line){border-color:var(--six-input-border-color-disabled)}.select--disabled .select__clear{pointer-events:none}.select--invalid:not(.select--disabled):not(.select--focused) .select__box{border-bottom-color:var(--six-input-border-color-danger)}.select--invalid:not(.select--disabled):not(.select--focused) .select__box:not(.input--line){border-color:var(--six-input-border-color-danger)}.display__values{display:flex;flex:1 1 auto;align-items:center;user-select:none;overflow:hidden;scrollbar-width:none;-ms-overflow-style:none}.display__values::-webkit-scrollbar{width:0;height:0}.display__values-values{flex:0 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.display__values-and-counter{display:flex;overflow:hidden}.select__clear{flex-shrink:0;flex-grow:0;display:inline}.select__icon{flex-shrink:0;flex-grow:0;display:inline;transition:var(--six-transition-medium) transform ease}.select--open .select__icon{transform:rotate(-180deg)}.placeholder{color:var(--six-input-placeholder-color)}.select--disabled .placeholder{color:var(--six-input-placeholder-color-disabled)}.select__input{position:absolute;top:0;left:0;width:100%;height:100%}.select--small .select__box{border-radius:var(--six-input-border-radius-small);font-size:var(--six-input-font-size-small);min-height:var(--six-height-small)}.select--small .select__box--line{border:none;border-bottom:solid var(--six-border-width) var(--six-input-border-color)}.select--small .display__values{margin:0 0 0 var(--six-input-spacing-small)}.select--small .select__clear{margin-right:var(--six-spacing-xxx-small)}.select--small .select__icon{margin-right:var(--six-spacing-x-small)}.select--medium .select__box{border-radius:var(--six-input-border-radius-medium);font-size:var(--six-input-font-size-medium);min-height:var(--six-height-medium)}.select--medium .select__box--line{border:none;border-bottom:solid var(--six-border-width) var(--six-input-border-color)}.select--medium .display__values{margin:0 0 0 var(--six-input-spacing-medium)}.select--medium .select__clear{margin-right:var(--six-spacing-xxx-small)}.select--medium .select__icon{margin-right:var(--six-spacing-x-small)}.select--large .select__box{border-radius:var(--six-input-border-radius-large);font-size:var(--six-input-font-size-large);min-height:var(--six-height-large)}.select--large .select__box--line{border:none;border-bottom:solid var(--six-border-width) var(--six-input-border-color)}.select--large .display__values{margin:0 0 0 var(--six-input-spacing-large)}.select--large .select__clear{margin-right:var(--six-spacing-xxx-small)}.select--large .select__icon{margin-right:var(--six-spacing-x-small)}.select--pill.select--small .select__box{border-radius:var(--six-height-small)}.select--pill.select--medium .select__box{border-radius:var(--six-height-medium)}.select--pill.select--large .select__box{border-radius:var(--six-height-large)}.select__menu{width:100%}.select__menu--hidden{display:none}six-icon-button::part(base){padding-top:0;padding-bottom:0}.selection-container--border{border-bottom:solid var(--six-border-width) var(--six-menu-divider-color);padding-top:var(--six-spacing-xx-small);padding-bottom:var(--six-spacing-xx-small)}.display-value--hidden{display:none}.overflow-count{color:var(--six-color-web-rock-600);padding-left:var(--six-spacing-x-small)}.overflow-count-hidden{display:none}.separator--hidden{display:none}.select-all{border-top:1px solid var(--six-color-web-rock-300);display:flex;justify-content:end}';let x=0;const b=class{constructor(i){e(this,i);this.sixChange=t(this,"six-select-change");this.sixFocus=t(this,"six-select-focus");this.sixBlur=t(this,"six-select-blur");this.inputId=`select-${++x}`;this.labelId=`select-label-${x}`;this.helpTextId=`select-help-text-${x}`;this.errorTextId=`select-error-text-${x}`;this.eventListeners=new a;this.activeItemIndex=-1;this.resizeObserver=new ResizeObserver((()=>this.updateDisplayedValues()));this.hasFocus=false;this.hasHelpTextSlot=false;this.hasLabelSlot=false;this.hasErrorTextSlot=false;this.isOpen=false;this.displayedValues=[];this.selectionContainerItems=[];this.multiple=false;this.selectAllButton=false;this.disabled=false;this.name="";this.placeholder="";this.size="medium";this.hoist=false;this.value="";this.pill=false;this.helpText="";this.required=false;this.clearable=false;this.label="";this.errorText="";this.invalid=false;this.line=false;this.filter=false;this.asyncFilter=false;this.autocomplete=false;this.inputDebounce=n;this.options=null;this.virtualScroll=false;this.handleBlur=()=>{this.hasFocus=false;this.sixBlur.emit()};this.handleFocus=()=>{this.hasFocus=true;this.sixFocus.emit()};this.handleClearClick=async e=>{var t;e.stopPropagation();await this.clearValues();await((t=this.dropdown)===null||t===void 0?void 0:t.show());await this.setFocus();this.sixChange.emit({value:this.value,isSelected:true})};this.handleKeyDown=e=>{var t,s,i,o;if(this.virtualScroll||this.autocomplete){return}if(["Control","Escape"].includes(e.key)){return}const l=this.getVisibleItems();if(this.isOpen&&this.multiple&&e.code==="KeyA"&&e.ctrlKey){e.preventDefault();this.selectAll();return}if(e.key==="Tab"){if(this.isOpen){(t=this.dropdown)===null||t===void 0?void 0:t.hide()}return}if(e.key===" "&&!this.multiple){return}if(this.activeItemIndex>=0&&["Enter"," "].includes(e.key)){const t=l.at(this.activeItemIndex);e.preventDefault();t===null||t===void 0?void 0:t.click();return}if(["ArrowDown","ArrowUp","Home","End"].includes(e.key)){if(!this.isOpen){(s=this.dropdown)===null||s===void 0?void 0:s.show()}if(l.length>0){e.preventDefault();if(e.key==="ArrowDown"){this.activeItemIndex++}else if(e.key==="ArrowUp"){this.activeItemIndex--}else if(e.key==="Home"){this.activeItemIndex=0}else if(e.key==="End"){this.activeItemIndex=l.length-1}if(this.activeItemIndex<0)this.activeItemIndex=0;if(this.activeItemIndex>l.length-1)this.activeItemIndex=l.length-1;(i=l.at(this.activeItemIndex))===null||i===void 0?void 0:i.setFocus()}}if(!this.isOpen){e.stopPropagation();e.preventDefault();(o=this.dropdown)===null||o===void 0?void 0:o.show()}};this.handleLabelClick=()=>{var e;(e=this.box)===null||e===void 0?void 0:e.focus()};this.handleMenuSelect=e=>{const t=e.detail.item;if(this.multiple){t.checked=!t.checked}else{this.getItems().forEach((e=>e.checked=false));t.checked=true}this.syncValueFromItems();this.sixChange.emit({value:this.value,isSelected:true})};this.handleMenuShow=e=>{if(this.disabled){e.preventDefault();return}this.activeItemIndex=-1;if(!this.virtualScroll&&this.multiple){const e=this.getItems();e.forEach((e=>e.style.display="unset"));const t=m(u(this.value),e);t.forEach((e=>e.style.display="none"));this.selectionContainerItems=t.map((e=>s("six-menu-item",{key:e.value,checked:true,value:e.value,checkType:this.multiple?"checkbox":"check",onClick:t=>{t.stopPropagation();if(!this.disabled){const s=t.target;const i=s.checked;s.checked=!i;e.checked=!i;this.syncValueFromItems();this.sixChange.emit({value:this.value,isSelected:true})}}},this.getItemLabel(e))))}this.isOpen=true};this.handleMenuHide=()=>{this.isOpen=false;if(this.multiple){this.handleBlur()}};this.handleSlotChange=()=>{this.hasHelpTextSlot=o(this.host,"help-text");this.hasLabelSlot=o(this.host,"label");this.hasErrorTextSlot=o(this.host,"error-text");this.syncItemsFromValue()}}handleDisabledChange(){var e;if(this.disabled&&this.isOpen){(e=this.dropdown)===null||e===void 0?void 0:e.hide()}}handleLabelChange(){this.handleSlotChange()}handleMultipleChange(){this.value=d(this.value,this.multiple);this.syncItemsFromValue()}async handleValueChange(){const e=d(this.value,this.multiple);if(!f(this.value,e)){this.value=e}await this.syncItemsFromValue()}connectedCallback(){var e;if(this.virtualScroll&&this.options===null){console.error("Options must be defined when using virtual scrolling")}(e=this.host.shadowRoot)===null||e===void 0?void 0:e.addEventListener("slotchange",this.handleSlotChange);this.eventListeners.forward("six-select-change","change",this.host);this.eventListeners.forward("six-select-blur","blur",this.host);this.eventListeners.forward("six-select-focus","focus",this.host);if(this.displayValuesContainer){this.resizeObserver.observe(this.displayValuesContainer)}}componentWillLoad(){this.value=d(this.value,this.multiple);this.handleSlotChange()}componentDidLoad(){if(this.displayValuesContainer){this.resizeObserver.observe(this.displayValuesContainer)}requestAnimationFrame((()=>this.syncItemsFromValue()));if(this.autocomplete&&this.autocompleteInput!=null){const e=this.autocompleteInput;this.eventListeners.add(e,"six-input-input",c((t=>{var s;this.value=e.value;this.sixChange.emit({value:this.value,isSelected:false});t.stopPropagation();if(this.virtualScroll||this.value.length>0){(s=this.dropdown)===null||s===void 0?void 0:s.show()}}),this.inputDebounce));const t=this.displayedValues.join(", ");e.value=t}}disconnectedCallback(){var e;this.resizeObserver.disconnect();(e=this.host.shadowRoot)===null||e===void 0?void 0:e.removeEventListener("slotchange",this.handleSlotChange);this.eventListeners.removeAll()}async setFocus(e){var t;this.hasFocus=true;(t=this.box)===null||t===void 0?void 0:t.focus(e)}getItemLabel(e){var t,s;const i=(t=e.shadowRoot)===null||t===void 0?void 0:t.querySelector("slot:not([name])");if(i!=null){return l(i)}else{return(s=e.textContent)!==null&&s!==void 0?s:""}}getItems(){if(this.options!==null&&this.menu!=null&&this.menu.shadowRoot!=null){return[...this.menu.shadowRoot.querySelectorAll("six-menu-item")]}return[...this.host.querySelectorAll("six-menu-item")]}getVisibleItems(){const e=this.getSelectionContainerItems();const t=this.getItems();return[...e,...t].filter((e=>e.style.display!=="none"))}getSelectionContainerItems(){var e;return[...((e=this.host.shadowRoot)===null||e===void 0?void 0:e.querySelectorAll("six-menu-item"))||[]]}async clearValues(){this.value=this.multiple?[]:"";this.selectionContainerItems=[];await this.syncItemsFromValue()}selectAll(){const e=this.getVisibleItems();const t=this.hasDeselectedOptions();e.filter((e=>!e.disabled)).forEach((e=>e.checked=t));const s=e.filter((e=>e.checked)).map((e=>e.value));this.value=t?s:[];this.sixChange.emit({value:this.value,isSelected:true})}async syncItemsFromValue(){const e=this.getSelectionContainerItems();const t=this.getItems();const s=d(this.value,this.multiple);e.forEach((e=>{e.checkType=this.multiple?"checkbox":"check";if(Array.isArray(s)){e.checked=s.some((t=>t===e.value))}else{e.checked=s===e.value}}));t.forEach((e=>{e.checkType=this.multiple?"checkbox":"check";if(Array.isArray(s)){e.checked=s.some((t=>t===e.value))}else{e.checked=s===e.value}}));const i=m(u(this.value),t);this.displayedValues=i.map((e=>this.getItemLabel(e)));if(this.autocomplete&&this.autocompleteInput!=null&&!this.hasFocus){const e=this.displayedValues.join(", ");this.autocompleteInput.value=e}requestAnimationFrame((()=>{this.updateDisplayedValues()}))}syncValueFromItems(){const e=this.getItems();const t=e.filter((e=>e.checked)).map((e=>e.value));if(this.multiple){this.value=t}else{this.value=t.length>0?t[0]:""}}updateDisplayedValues(){var e,t;const s=[...(t=(e=this.displayValuesContainer)===null||e===void 0?void 0:e.querySelectorAll(".display-value"))!==null&&t!==void 0?t:[]];if(this.displayValuesContainer==null||s.length===0||this.overflowCount==null){return}s.forEach((e=>{k(e);w(e)}));const i=s[s.length-1].querySelector(".separator");if(i==null)return;let o=v(this.displayValuesContainer)+v(i);let{fitCount:l,overflowCount:r}=_(s,o);if(r===0){A(this.overflowCount);g(s,l)}else{C(this.overflowCount,r+1);S(this.overflowCount);o=o-v(this.overflowCount);({fitCount:l,overflowCount:r}=_(s,o));C(this.overflowCount,r);g(s,l)}}render(){var e;const t=this.hasSelection();const i=this.getItems();const o=i.length>0;const l=this.hasDeselectedOptions();let a=false;let n=o;if(this.clearable&&t){a=true;n=false}return s(r,{key:"f9827d54da20b0c36de14650fb04d3a3a97f2918",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,errorTextCount:this.errorTextCount,hasErrorTextSlot:this.hasErrorTextSlot,size:this.size,onLabelClick:this.handleLabelClick,disabled:this.disabled,required:this.required,displayError:this.invalid},s("six-dropdown",{key:"e53e3d25e2c9244625522f94d5b36105e5d987f3",part:"base",ref:e=>this.dropdown=e,hoist:this.hoist,matchTriggerWidth:true,closeOnSelect:!this.multiple,containingElement:this.host,disableHideOnEnterAndSpace:this.autocomplete,class:{select:true,"select--open":this.isOpen,"select--empty":((e=this.value)===null||e===void 0?void 0:e.length)===0,"select--focused":this.hasFocus,"select--clearable":this.clearable,"select--disabled":this.disabled,"select--multiple":this.multiple,"select--has-tags":this.multiple&&t,"select--placeholder-visible":this.displayedValues.length===0,"select--small":this.size==="small","select--medium":this.size==="medium","select--large":this.size==="large","select--pill":this.pill,"select--invalid":this.invalid},onKeyDown:this.handleKeyDown,"onSix-dropdown-show":this.handleMenuShow,"onSix-dropdown-hide":this.handleMenuHide,filterPlaceholder:this.filterPlaceholder,filterDebounce:this.filterDebounce,filter:this.filter,asyncFilter:this.asyncFilter,virtualScroll:this.virtualScroll},s("div",{key:"553accc8bd6c4be66593b5f8ac96f485d3e2a8cb",slot:"trigger",ref:e=>this.box=e,id:this.inputId,class:{select__box:true,"select__box--line":this.line,"select__box--autocomplete":this.autocomplete},role:"combobox","aria-labelledby":this.labelId,"aria-describedby":this.helpTextId,"aria-haspopup":"true","aria-expanded":this.isOpen?"true":"false",tabIndex:this.disabled?-1:0,onBlur:this.handleBlur,onFocus:this.handleFocus},s("div",{key:"f2201e36050a8127d7a173b0c9b39a92b2eb8563",class:"display__values",ref:e=>this.displayValuesContainer=e},this.displayedValues.length>0?s("span",{class:"display__values-and-counter"},s("span",{class:"display__values-values"},this.displayedValues.map((e=>s("span",{key:e,class:"display-value"},e,s("span",{class:{separator:true}},", "))))),s("span",{ref:e=>this.overflowCount=e,class:"overflow-count"},"+10")):s("span",{class:"placeholder"},this.placeholder)),a&&s("six-icon-button",{key:"3f2d238e44f27d9790b316256717f6f673d31a69",exportparts:"base:clear-button",class:"select__clear",name:"clear",size:"small",onClick:this.handleClearClick,tabindex:"-1"}),n&&s("span",{key:"3f7dfa9c4a8f598e91869665c2249b990ac44351",part:"icon",class:"select__icon"},s("six-icon",{key:"3fa185567fdf0974f630951667c3af1981122064",size:"medium"},"expand_more")),s("six-input",{key:"021f19d93247a0cadf811a24580dc8f46ed5004f",ref:e=>this.autocompleteInput=e,class:{select__input:true,"sr-only":!this.autocomplete},"aria-hidden":"true",required:this.required,onFocus:this.handleFocus,clearable:this.clearable,placeholder:this.placeholder,pill:this.pill,disabled:this.disabled,size:this.size,tabIndex:-1})),s("div",{key:"24abda79d4b024a062c604ca7a02f3e1f51159cb",class:{"selection-container":true,"selection-container--border":this.selectionContainerItems.length>0&&i.length!==this.selectionContainerItems.length}},this.selectionContainerItems),s("six-menu",{key:"ffd8ebfed22f01708bbb08d81c15341341e7727a",ref:e=>this.menu=e,part:"menu",class:{select__menu:true,"select__menu--hidden":!o},"onSix-menu-item-selected":this.handleMenuSelect,items:this.options,virtualScroll:this.virtualScroll,"remove-box-shadow":true,"disable-keyboard-handling":true},s("slot",{key:"fb614513d6f9477cdfa7e4a13ac503fea2d76a82",onSlotchange:this.handleSlotChange})),this.multiple&&this.selectAllButton&&s("div",{key:"14a20b465530efeb97e140d26d73698d00ac55ce",class:"select-all",slot:"dropdown-footer"},s("six-button",{key:"8ece78f471f1d5fb8efa5a16b084987c86dac13c",type:"link",onClick:()=>this.selectAll()},this.selectAllText==null?T(l):this.selectAllText))))}hasSelection(){return this.multiple?this.value.length>0:this.value!==""}hasDeselectedOptions(){return this.getVisibleItems().some((e=>!e.disabled&&!e.checked))}get host(){return i(this)}static get watchers(){return{disabled:["handleDisabledChange"],helpText:["handleLabelChange"],errorText:["handleLabelChange"],label:["handleLabelChange"],multiple:["handleMultipleChange"],value:["handleValueChange"]}}};function m(e,t){return t.filter((t=>e.includes(t.value)))}function v(e){return e.getBoundingClientRect().width}function _(e,t){let s=0;let i=0;for(let o=0;o<e.length;o++){const l=e[o];const r=v(l);if(o===0&&r>t){i=1;break}s+=r;if(s>t){break}else{i+=1}}const o=e.length-i;return{fitCount:i,overflowCount:o}}function g(e,t){if(e.length>0){e.slice(0,t).forEach(((e,t,s)=>{k(e);const i=t===s.length-1;if(i){y(e)}else{w(e)}}));e.slice(t).forEach((e=>{z(e);w(e)}))}}function y(e){var t;(t=e.querySelector(".separator"))===null||t===void 0?void 0:t.classList.add("separator--hidden")}function w(e){var t;(t=e.querySelector(".separator"))===null||t===void 0?void 0:t.classList.remove("separator--hidden")}function k(e){e.classList.remove("display-value--hidden")}function z(e){e.classList.add("display-value--hidden")}function C(e,t){e.textContent=`+${t}`}function S(e){e.classList.remove("overflow-count-hidden")}function A(e){e.classList.add("overflow-count-hidden")}function T(e){const t=h();switch(t){case"de":return e?"Alle auswählen":"Alle abwählen";case"fr":return e?"Tout sélectionner":"Tout désélectionner";case"it":return e?"Seleziona tutto":"Deseleziona tutto";case"en":return e?"Select all":"Deselect all";case"es":return e?"Seleccionar todo":"Deseleccionar todo"}}b.style=p;export{b as six_select};
2
- //# sourceMappingURL=p-fb60d596.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["convertToValidValue","value","multiple","Array","isArray","filter","element","length","convertToValidArrayValue","valueEquals","a","b","every","index","sixSelectCss","id","SixSelect","constructor","hostRef","this","inputId","labelId","helpTextId","errorTextId","eventListeners","EventListeners","activeItemIndex","resizeObserver","ResizeObserver","updateDisplayedValues","hasFocus","hasHelpTextSlot","hasLabelSlot","hasErrorTextSlot","isOpen","displayedValues","selectionContainerItems","selectAllButton","disabled","name","placeholder","size","hoist","pill","helpText","required","clearable","label","errorText","invalid","line","asyncFilter","autocomplete","inputDebounce","DEFAULT_DEBOUNCE_FAST","options","virtualScroll","handleBlur","sixBlur","emit","handleFocus","sixFocus","handleClearClick","async","event","stopPropagation","clearValues","_a","dropdown","show","setFocus","sixChange","isSelected","handleKeyDown","includes","key","items","getVisibleItems","code","ctrlKey","preventDefault","selectAll","hide","activeItem","at","click","_b","_c","_d","handleLabelClick","box","focus","handleMenuSelect","currentItem","detail","item","checked","getItems","forEach","i","syncValueFromItems","handleMenuShow","mainItems","style","display","checkedItems","getCheckedItems","map","h","checkType","onClick","menuItem","target","isChecked","getItemLabel","handleMenuHide","handleSlotChange","hasSlot","host","syncItemsFromValue","handleDisabledChange","handleLabelChange","handleMultipleChange","handleValueChange","newValue","connectedCallback","console","error","shadowRoot","addEventListener","forward","displayValuesContainer","observe","componentWillLoad","componentDidLoad","requestAnimationFrame","autocompleteInput","add","debounce","selectedLabel","join","disconnectedCallback","disconnect","removeEventListener","removeAll","slot","querySelector","getTextContent","textContent","menu","querySelectorAll","getSelectionContainerItems","visibleItems","hasDeselectedOptions","option","some","val","checkedValues","displayValueOptions","overflowCount","d","showDisplayValue","showSeparator","separator","availableWidth","getWidth","fitCount","computeFitCount","hideOverflowCount","showFittingValues","setOverflowCount","showOverflowCount","render","hasSelection","hasMenuItems","showClear","showExpand","FormControl","errorTextCount","onLabelClick","displayError","part","ref","el","matchTriggerWidth","closeOnSelect","containingElement","disableHideOnEnterAndSpace","class","select","onKeyDown","filterPlaceholder","filterDebounce","select__box","role","tabIndex","onBlur","onFocus","exportparts","tabindex","select__input","select__menu","onSlotchange","type","selectAllText","selectAllDefaultText","opt","getBoundingClientRect","width","accumulatedWidth","displayOption","slice","displayValue","list","isLast","hideSeparator","hideDisplayValue","displayValueOption","classList","remove","count","lang","getLanguage"],"sources":["src/components/six-select/util.ts","src/components/six-select/six-select.scss?tag=six-select&encapsulation=shadow","src/components/six-select/six-select.tsx"],"sourcesContent":["export interface MenuItem {\n value: string;\n}\n\nexport function getValue(value: unknown, multiple: boolean, menuItems: MenuItem[]): string | string[] {\n if (multiple) {\n if (Array.isArray(value)) {\n return getSelectedValues(value, menuItems);\n } else {\n return getSelectedValuesFromString(value, menuItems);\n }\n }\n\n return getSelectedMenuItem(value, menuItems)?.value ?? '';\n}\n\nexport function isValidValue(value: unknown, multiple: boolean, menuItems: MenuItem[]): boolean {\n if (value === '') {\n return true;\n }\n\n if (multiple) {\n if (Array.isArray(value)) {\n if (value.length === 0) {\n return true;\n }\n return getSelectedValues(value, menuItems).length === value.length;\n }\n return getSelectedValuesFromString(value, menuItems).length > 0;\n }\n\n return getSelectedMenuItem(value, menuItems) != null;\n}\n\nexport function convertToValidValue(value: unknown, multiple: boolean): string | string[] {\n if (multiple) {\n if (Array.isArray(value)) {\n return value.filter((element) => typeof element === 'string');\n } else if (typeof value === 'string' && value.length > 0) {\n return [value];\n } else {\n return [];\n }\n } else {\n if (typeof value === 'string') {\n return value;\n } else {\n return '';\n }\n }\n}\n\nexport function convertToValidArrayValue(value: unknown): string[] {\n return convertToValidValue(value, true) as string[];\n}\n\nexport function valueEquals(a: string | string[], b: string | string[]): boolean {\n if (Array.isArray(a) && Array.isArray(b)) {\n return a.length === b.length && a.every((element, index) => element === b[index]);\n } else if (typeof a === 'string' && typeof b === 'string') {\n return a === b;\n }\n return false;\n}\n\nexport function isValueEmpty(value: string | string[]): boolean {\n if (Array.isArray(value)) {\n return value.length === 0;\n }\n return value === '';\n}\n\nfunction getSelectedValues(values: unknown[], menuItems: MenuItem[]): string[] {\n return menuItems.filter((menuItem) => values.includes(menuItem.value)).map((menuItem) => menuItem.value);\n}\n\nfunction getSelectedValuesFromString(value: unknown, menuItems: MenuItem[]): string[] {\n return menuItems.filter((menuItem) => value === menuItem.value).map((menuItem) => menuItem.value);\n}\n\nfunction getSelectedMenuItem(value: unknown, menuItems: MenuItem[]): MenuItem | undefined {\n return menuItems.find((item) => value === item.value);\n}\n","@import 'src/global/component';\n@import '../../functional-components/form-control/form-control';\n@import 'src/global/mixins/hidden';\n@import 'src/global/mixins/hide-scrollbar';\n\n:host,\n.select {\n display: block;\n}\n\n.select__box {\n display: inline-flex;\n align-items: center;\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 font-size: var(--six-input-font-size-medium);\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 transition: var(--six-transition-fast) color, var(--six-transition-fast) border, var(--six-transition-fast) box-shadow;\n cursor: pointer;\n\n &--line {\n border: none;\n border-bottom: solid var(--six-border-width) var(--six-input-border-color);\n }\n\n &--autocomplete {\n border: none;\n overflow: initial;\n }\n}\n\n.select:not(.select--disabled) .select__box:hover {\n background-color: var(--six-input-background-color-hover);\n color: var(--six-input-color-hover);\n\n border-bottom-color: var(--six-input-border-color-hover);\n\n &:not(.select__box--line) {\n border-color: var(--six-input-border-color-hover);\n }\n}\n\n.select:not(.select--disabled) .select__box:focus {\n background-color: var(--six-input-background-color-focus);\n outline: none;\n color: var(--six-input-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(.select__box--line) {\n border-color: var(--six-input-border-color-focus);\n box-shadow: var(--six-input-focus-shadow);\n }\n}\n\n.select--disabled {\n .select__box {\n background-color: var(--six-input-background-color-disabled);\n color: var(--six-input-color-disabled);\n cursor: not-allowed;\n outline: none;\n\n &:not(.select__box--line) {\n border-color: var(--six-input-border-color-disabled);\n }\n }\n\n .select__clear {\n pointer-events: none;\n }\n}\n\n.select--invalid:not(.select--disabled):not(.select--focused) {\n .select__box {\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.display__values {\n display: flex;\n flex: 1 1 auto;\n align-items: center;\n user-select: none;\n overflow: hidden;\n @include hide-scrollbar;\n}\n\n.display__values-values {\n flex: 0 1 auto;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.display__values-and-counter {\n display: flex;\n overflow: hidden;\n}\n\n.select__clear {\n flex-shrink: 0;\n flex-grow: 0;\n display: inline;\n}\n\n.select__icon {\n flex-shrink: 0;\n flex-grow: 0;\n display: inline;\n transition: var(--six-transition-medium) transform ease;\n}\n\n.select--open .select__icon {\n transform: rotate(-180deg);\n}\n\n// Placeholder\n.placeholder {\n color: var(--six-input-placeholder-color);\n}\n\n.select--disabled .placeholder {\n color: var(--six-input-placeholder-color-disabled);\n}\n\n.select__input {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Size modifiers\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.select--small {\n .select__box {\n border-radius: var(--six-input-border-radius-small);\n font-size: var(--six-input-font-size-small);\n min-height: var(--six-height-small);\n\n &--line {\n border: none;\n border-bottom: solid var(--six-border-width) var(--six-input-border-color);\n }\n }\n\n .display__values {\n margin: 0 0 0 var(--six-input-spacing-small);\n }\n\n .select__clear {\n margin-right: var(--six-spacing-xxx-small);\n }\n\n .select__icon {\n margin-right: var(--six-spacing-x-small);\n }\n}\n\n.select--medium {\n .select__box {\n border-radius: var(--six-input-border-radius-medium);\n font-size: var(--six-input-font-size-medium);\n min-height: var(--six-height-medium);\n\n &--line {\n border: none;\n border-bottom: solid var(--six-border-width) var(--six-input-border-color);\n }\n }\n\n .display__values {\n margin: 0 0 0 var(--six-input-spacing-medium);\n }\n\n .select__clear {\n margin-right: var(--six-spacing-xxx-small);\n }\n\n .select__icon {\n margin-right: var(--six-spacing-x-small);\n }\n}\n\n.select--large {\n .select__box {\n border-radius: var(--six-input-border-radius-large);\n font-size: var(--six-input-font-size-large);\n min-height: var(--six-height-large);\n\n &--line {\n border: none;\n border-bottom: solid var(--six-border-width) var(--six-input-border-color);\n }\n }\n\n .display__values {\n margin: 0 0 0 var(--six-input-spacing-large);\n }\n\n .select__clear {\n margin-right: var(--six-spacing-xxx-small);\n }\n\n .select__icon {\n margin-right: var(--six-spacing-x-small);\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Pill modifier\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.select--pill {\n &.select--small .select__box {\n border-radius: var(--six-height-small);\n }\n\n &.select--medium .select__box {\n border-radius: var(--six-height-medium);\n }\n\n &.select--large .select__box {\n border-radius: var(--six-height-large);\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Menu\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n.select {\n &__menu {\n width: 100%;\n\n &--hidden {\n // hide the menu panel if there are no menu items\n display: none;\n }\n }\n}\n\n// fixes problem where six-select height changes when size=\"small\" and clearing button is visible\nsix-icon-button::part(base) {\n padding-top: 0;\n padding-bottom: 0;\n}\n\n.selection-container--border {\n border-bottom: solid var(--six-border-width) var(--six-menu-divider-color);\n padding-top: var(--six-spacing-xx-small);\n padding-bottom: var(--six-spacing-xx-small);\n}\n\n.display-value--hidden {\n display: none;\n}\n\n.overflow-count {\n color: var(--six-color-web-rock-600);\n padding-left: var(--six-spacing-x-small);\n}\n\n.overflow-count-hidden {\n display: none;\n}\n\n.separator--hidden {\n display: none;\n}\n\n.select-all {\n border-top: 1px solid var(--six-color-web-rock-300);\n display: flex;\n justify-content: end;\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport { getTextContent, hasSlot } from '../../utils/slot';\nimport FormControl from '../../functional-components/form-control/form-control';\nimport { EmptyPayload } from '../../utils/types';\nimport { EventListeners } from '../../utils/event-listeners';\nimport { debounce, DEFAULT_DEBOUNCE_FAST } from '../../utils/execution-control';\nimport { SixMenuItemData } from '../six-menu/six-menu';\nimport { getLanguage } from '../../utils/error-messages';\nimport { convertToValidArrayValue, convertToValidValue, valueEquals } from './util';\n\nexport interface SixSelectChangePayload {\n value: string | string[];\n isSelected: boolean;\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 - The select's options in the form of menu items.\n * @slot label - The select's label. Alternatively, you can use the label prop.\n * @slot help-text - Help text that describes how to use the select.\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 clear-button - The input's clear button, exported from six-input.\n * @part form-control - The form control that wraps the label, input, and help text.\n * @part help-text - The select's help text.\n * @part icon - The select's icon.\n * @part label - The select's label.\n * @part menu - The select menu, a six-menu element.\n * @part tag - The multiselect option, a six-tag element.\n * @part tags - The container in which multiselect options are rendered.\n */\n\n@Component({\n tag: 'six-select',\n styleUrl: 'six-select.scss',\n shadow: true,\n})\nexport class SixSelect {\n private box?: HTMLElement;\n private menu?: HTMLElement;\n private dropdown?: HTMLSixDropdownElement;\n private displayValuesContainer?: HTMLElement;\n private overflowCount?: HTMLElement;\n private autocompleteInput?: HTMLSixInputElement;\n private inputId = `select-${++id}`;\n private labelId = `select-label-${id}`;\n private helpTextId = `select-help-text-${id}`;\n private errorTextId = `select-error-text-${id}`;\n private eventListeners = new EventListeners();\n private activeItemIndex = -1;\n private resizeObserver = new ResizeObserver(() => this.updateDisplayedValues());\n\n @Element() host!: HTMLSixSelectElement;\n\n @State() hasFocus = false;\n @State() hasHelpTextSlot = false;\n @State() hasLabelSlot = false;\n @State() hasErrorTextSlot = false;\n @State() isOpen = false;\n @State() displayedValues: string[] = [];\n\n /** Menu items shown in the selection container. */\n @State() selectionContainerItems: HTMLSixMenuItemElement[] = [];\n\n /** Set to true to enable multiselect. */\n @Prop() multiple = false;\n\n /** Enables the select all button. */\n @Prop() selectAllButton = false;\n\n /**\n * Custom text for the \"select all\" button. Defaults to \"Select all\" and equivalents in supported languages.\n */\n @Prop() selectAllText?: string;\n\n /** Set to true to disable the select control. */\n @Prop() disabled = false;\n\n /** The select's name. */\n @Prop() name = '';\n\n /** The select's placeholder text. */\n @Prop() placeholder = '';\n\n /** The filter's placeholder text. */\n @Prop() filterPlaceholder?: string;\n\n /** The debounce for the filter callbacks. */\n @Prop() filterDebounce?: number;\n\n /** The select's size. */\n @Prop() size: 'small' | 'medium' | 'large' = 'medium';\n\n /**\n * Enable this option to prevent the panel from being clipped when the component is placed inside a container with\n * `overflow: auto|scroll`.\n */\n @Prop() hoist = false;\n\n /** The value of the control. This will be a string or an array depending on `multiple`. */\n @Prop({ mutable: true }) value: string | string[] = '';\n\n /** Set to true to draw a pill-style select with rounded edges. */\n @Prop() pill = false;\n\n /** The select's help text. Alternatively, you can use the help-text slot. */\n @Prop() helpText = '';\n\n /** Set to true to show an asterisk beneath the label. */\n @Prop() required = false;\n\n /** Set to true to add a clear button when the select is populated. */\n @Prop() clearable = false;\n\n /** The label text. */\n @Prop() label = '';\n\n /** The error message shown, if `invalid` is set to true. */\n @Prop() errorText: string | string[] = '';\n\n /** The number of error texts to be shown (if the error-text slot isn't used). Defaults to 1 */\n @Prop() errorTextCount?: number;\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 render as line */\n @Prop() line = false;\n\n /** Set to true to allow filtering for entries in the dropdown */\n @Prop() filter = false;\n\n /**\n * Set to true to allow async filtering.\n * When you enter something in the search field the component will only emit an event but not filter any elements itself.\n * You can then simply listen to the 'six-async-filter-fired' event to manage the shown menu-items yourself\n */\n @Prop() asyncFilter = false;\n\n /**\n * Set to true to turn the six-select into an autocomplete.\n */\n @Prop() autocomplete = false;\n\n /** The debounce for when the input changes for autocompletes should be emitted */\n @Prop() inputDebounce = DEFAULT_DEBOUNCE_FAST;\n\n /** Set the options to be shown in the dropdown (alternative to setting the elements via html) */\n @Prop() options: SixMenuItemData[] | null = null;\n\n /** Defines whether the menu list will be rendered virtually i.e. only the elements actually shown (and a couple around)\n * are actually rendered in the DOM. If you use virtual scrolling pass the elements via prop instead of via slot. */\n @Prop() virtualScroll = false;\n\n @Watch('disabled')\n handleDisabledChange() {\n if (this.disabled && this.isOpen) {\n this.dropdown?.hide();\n }\n }\n\n @Watch('helpText')\n @Watch('errorText')\n @Watch('label')\n handleLabelChange() {\n this.handleSlotChange();\n }\n\n @Watch('multiple')\n handleMultipleChange() {\n this.value = convertToValidValue(this.value, this.multiple);\n this.syncItemsFromValue();\n }\n\n @Watch('value')\n async handleValueChange() {\n const newValue = convertToValidValue(this.value, this.multiple);\n if (!valueEquals(this.value, newValue)) {\n this.value = newValue;\n }\n await this.syncItemsFromValue();\n }\n\n /** Emitted when the control's value changes. */\n @Event({ eventName: 'six-select-change' }) sixChange!: EventEmitter<SixSelectChangePayload>;\n\n /** Emitted when the control gains focus. */\n @Event({ eventName: 'six-select-focus' }) sixFocus!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control loses focus. */\n @Event({ eventName: 'six-select-blur' }) sixBlur!: EventEmitter<EmptyPayload>;\n\n connectedCallback() {\n if (this.virtualScroll && this.options === null) {\n console.error('Options must be defined when using virtual scrolling');\n }\n\n this.host.shadowRoot?.addEventListener('slotchange', this.handleSlotChange);\n this.eventListeners.forward('six-select-change', 'change', this.host);\n this.eventListeners.forward('six-select-blur', 'blur', this.host);\n this.eventListeners.forward('six-select-focus', 'focus', this.host);\n if (this.displayValuesContainer) {\n this.resizeObserver.observe(this.displayValuesContainer);\n }\n }\n\n componentWillLoad() {\n this.value = convertToValidValue(this.value, this.multiple);\n this.handleSlotChange();\n }\n\n componentDidLoad() {\n if (this.displayValuesContainer) {\n this.resizeObserver.observe(this.displayValuesContainer);\n }\n\n // We need to do an initial sync after the component has rendered, so this will suppress the re-render warning\n requestAnimationFrame(() => this.syncItemsFromValue());\n\n if (this.autocomplete && this.autocompleteInput != null) {\n const autocompleteInput = this.autocompleteInput;\n this.eventListeners.add(\n autocompleteInput,\n 'six-input-input',\n debounce((event) => {\n this.value = autocompleteInput.value;\n this.sixChange.emit({ value: this.value, isSelected: false });\n event.stopPropagation();\n\n if (this.virtualScroll || this.value.length > 0) {\n this.dropdown?.show();\n }\n }, this.inputDebounce)\n );\n\n const selectedLabel = this.displayedValues.join(', ');\n autocompleteInput.value = selectedLabel;\n }\n }\n\n disconnectedCallback() {\n this.resizeObserver.disconnect();\n this.host.shadowRoot?.removeEventListener('slotchange', this.handleSlotChange);\n this.eventListeners.removeAll();\n }\n\n /** Sets focus on the select. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.hasFocus = true;\n this.box?.focus(options);\n }\n\n private getItemLabel(item: HTMLSixMenuItemElement): string {\n const slot = item.shadowRoot?.querySelector('slot:not([name])') as HTMLSlotElement;\n if (slot != null) {\n return getTextContent(slot);\n } else {\n // bugfix/COMSLI-203-six-select-value-is-not-updated-if-the-slot-is-changed\n return item.textContent ?? '';\n }\n }\n\n private getItems(): HTMLSixMenuItemElement[] {\n if (this.options !== null && this.menu != null && this.menu.shadowRoot != null) {\n return [...this.menu.shadowRoot.querySelectorAll('six-menu-item')];\n }\n\n return [...this.host.querySelectorAll('six-menu-item')];\n }\n\n private getVisibleItems(): HTMLSixMenuItemElement[] {\n const selectionContainerItems = this.getSelectionContainerItems();\n const mainItems = this.getItems();\n return [...selectionContainerItems, ...mainItems].filter((i) => i.style.display !== 'none');\n }\n\n private getSelectionContainerItems() {\n return [...(this.host.shadowRoot?.querySelectorAll('six-menu-item') || [])];\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 = async (event: MouseEvent) => {\n event.stopPropagation();\n await this.clearValues();\n await this.dropdown?.show();\n await this.setFocus();\n this.sixChange.emit({ value: this.value, isSelected: true });\n };\n\n private async clearValues() {\n this.value = this.multiple ? [] : '';\n this.selectionContainerItems = [];\n await this.syncItemsFromValue();\n }\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if (this.virtualScroll || this.autocomplete) {\n return;\n }\n\n if (['Control', 'Escape'].includes(event.key)) {\n return;\n }\n\n const items = this.getVisibleItems();\n\n // Ctrl-A selects all items\n if (this.isOpen && this.multiple && event.code === 'KeyA' && event.ctrlKey) {\n event.preventDefault();\n this.selectAll();\n return;\n }\n\n // Tabbing out of the control closes it\n if (event.key === 'Tab') {\n if (this.isOpen) {\n this.dropdown?.hide();\n }\n return;\n }\n\n if (event.key === ' ' && !this.multiple) {\n return;\n }\n\n // Enter and Space selects the active item\n if (this.activeItemIndex >= 0 && ['Enter', ' '].includes(event.key)) {\n const activeItem = items.at(this.activeItemIndex);\n event.preventDefault();\n activeItem?.click();\n return;\n }\n\n // Move the selection when pressing up or down\n if (['ArrowDown', 'ArrowUp', 'Home', 'End'].includes(event.key)) {\n // Show the menu if it's not already open\n if (!this.isOpen) {\n this.dropdown?.show();\n }\n\n if (items.length > 0) {\n event.preventDefault();\n\n if (event.key === 'ArrowDown') {\n this.activeItemIndex++;\n } else if (event.key === 'ArrowUp') {\n this.activeItemIndex--;\n } else if (event.key === 'Home') {\n this.activeItemIndex = 0;\n } else if (event.key === 'End') {\n this.activeItemIndex = items.length - 1;\n }\n\n if (this.activeItemIndex < 0) this.activeItemIndex = 0;\n if (this.activeItemIndex > items.length - 1) this.activeItemIndex = items.length - 1;\n\n items.at(this.activeItemIndex)?.setFocus();\n }\n }\n\n // All other keys open the menu\n if (!this.isOpen) {\n event.stopPropagation();\n event.preventDefault();\n this.dropdown?.show();\n }\n };\n\n private selectAll() {\n const visibleItems = this.getVisibleItems();\n const hasDeselectedOptions = this.hasDeselectedOptions();\n visibleItems.filter((option) => !option.disabled).forEach((option) => (option.checked = hasDeselectedOptions));\n const checkedItems = visibleItems.filter((option) => option.checked).map((option) => option.value);\n this.value = hasDeselectedOptions ? checkedItems : [];\n this.sixChange.emit({ value: this.value, isSelected: true });\n }\n\n private handleLabelClick = () => {\n this.box?.focus();\n };\n\n private handleMenuSelect = (event: CustomEvent) => {\n const currentItem = event.detail.item as HTMLSixMenuItemElement;\n if (this.multiple) {\n currentItem.checked = !currentItem.checked;\n } else {\n this.getItems().forEach((i) => (i.checked = false));\n currentItem.checked = true;\n }\n this.syncValueFromItems();\n this.sixChange.emit({ value: this.value, isSelected: true });\n };\n\n private handleMenuShow = (event: CustomEvent) => {\n if (this.disabled) {\n event.preventDefault();\n return;\n }\n this.activeItemIndex = -1;\n\n if (!this.virtualScroll && this.multiple) {\n // reset display style of main items\n const mainItems = this.getItems();\n mainItems.forEach((item) => (item.style.display = 'unset'));\n\n // show selected menu items in the selection container and hide them in the main container\n const checkedItems = getCheckedItems(convertToValidArrayValue(this.value), mainItems);\n checkedItems.forEach((i) => (i.style.display = 'none'));\n this.selectionContainerItems = checkedItems.map((item) => {\n return (\n <six-menu-item\n key={item.value} // key makes sure the node is not re-used: https://stenciljs.com/docs/templating-jsx#conditionals\n checked={true}\n value={item.value}\n checkType={this.multiple ? 'checkbox' : 'check'}\n onClick={(event) => {\n event.stopPropagation();\n if (!this.disabled) {\n const menuItem = event.target as HTMLSixMenuItemElement;\n const isChecked = menuItem.checked;\n menuItem.checked = !isChecked;\n item.checked = !isChecked;\n this.syncValueFromItems();\n this.sixChange.emit({ value: this.value, isSelected: true });\n }\n }}\n >\n {this.getItemLabel(item)}\n </six-menu-item>\n );\n });\n }\n\n this.isOpen = true;\n };\n\n private handleMenuHide = () => {\n this.isOpen = false;\n if (this.multiple) {\n this.handleBlur();\n }\n };\n\n private handleSlotChange = () => {\n this.hasHelpTextSlot = hasSlot(this.host, 'help-text');\n this.hasLabelSlot = hasSlot(this.host, 'label');\n this.hasErrorTextSlot = hasSlot(this.host, 'error-text');\n this.syncItemsFromValue();\n };\n\n /**\n * Sets the checked state of menu items and renders the displayed values.\n */\n private async syncItemsFromValue() {\n const selectionContainerItems = this.getSelectionContainerItems();\n const mainItems = this.getItems();\n const value = convertToValidValue(this.value, this.multiple);\n\n selectionContainerItems.forEach((item) => {\n item.checkType = this.multiple ? 'checkbox' : 'check';\n if (Array.isArray(value)) {\n item.checked = value.some((val) => val === item.value);\n } else {\n item.checked = value === item.value;\n }\n });\n\n mainItems.forEach((item) => {\n item.checkType = this.multiple ? 'checkbox' : 'check';\n if (Array.isArray(value)) {\n item.checked = value.some((val) => val === item.value);\n } else {\n item.checked = value === item.value;\n }\n });\n\n const checkedItems = getCheckedItems(convertToValidArrayValue(this.value), mainItems);\n this.displayedValues = checkedItems.map((i) => this.getItemLabel(i));\n\n if (this.autocomplete && this.autocompleteInput != null && !this.hasFocus) {\n const selectedLabel = this.displayedValues.join(', ');\n this.autocompleteInput.value = selectedLabel;\n }\n\n requestAnimationFrame(() => {\n this.updateDisplayedValues();\n });\n }\n\n private syncValueFromItems() {\n const items = this.getItems();\n const checkedValues = items.filter((item) => item.checked).map((item) => item.value);\n if (this.multiple) {\n this.value = checkedValues;\n } else {\n this.value = checkedValues.length > 0 ? checkedValues[0] : '';\n }\n }\n\n private updateDisplayedValues() {\n const displayValueOptions = [...(this.displayValuesContainer?.querySelectorAll('.display-value') ?? [])];\n if (this.displayValuesContainer == null || displayValueOptions.length === 0 || this.overflowCount == null) {\n return;\n }\n\n // Show all options and separators to properly measure all widths.\n displayValueOptions.forEach((d) => {\n showDisplayValue(d);\n showSeparator(d);\n });\n\n // Measure available width. The last separator is added to the available width, because it will be hidden later on.\n const separator = displayValueOptions[displayValueOptions.length - 1].querySelector('.separator');\n if (separator == null) return;\n let availableWidth = getWidth(this.displayValuesContainer) + getWidth(separator);\n\n // Compute how many display value elements fit in the available width\n let { fitCount, overflowCount } = computeFitCount(displayValueOptions, availableWidth);\n\n if (overflowCount === 0) {\n // All items fit, hide overflow count and show all values.\n hideOverflowCount(this.overflowCount);\n showFittingValues(displayValueOptions, fitCount);\n } else {\n // Not all items fit in the available width. Recompute the available width with the overflow-count visible.\n\n // Increment overflow count by one to make sure the elements fit, even if the overflow count increases to the\n // next higher power of ten, e.g. from 9 to 10 or 99 to 100.\n setOverflowCount(this.overflowCount, overflowCount + 1);\n showOverflowCount(this.overflowCount);\n\n // Subtract the overflow count from the available width\n availableWidth = availableWidth - getWidth(this.overflowCount);\n\n // Compute how many display value elements fit in the new available width\n ({ fitCount, overflowCount } = computeFitCount(displayValueOptions, availableWidth));\n\n // Show overflow count and items that fit.\n setOverflowCount(this.overflowCount, overflowCount);\n showFittingValues(displayValueOptions, fitCount);\n }\n }\n\n render() {\n const hasSelection = this.hasSelection();\n const items = this.getItems();\n const hasMenuItems = items.length > 0;\n const hasDeselectedOptions = this.hasDeselectedOptions();\n let showClear = false;\n let showExpand = hasMenuItems;\n if (this.clearable && hasSelection) {\n showClear = true;\n showExpand = false;\n }\n\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 errorTextCount={this.errorTextCount}\n hasErrorTextSlot={this.hasErrorTextSlot}\n size={this.size}\n onLabelClick={this.handleLabelClick}\n disabled={this.disabled}\n required={this.required}\n displayError={this.invalid}\n >\n <six-dropdown\n part=\"base\"\n ref={(el) => (this.dropdown = el)}\n hoist={this.hoist}\n matchTriggerWidth={true}\n closeOnSelect={!this.multiple}\n containingElement={this.host}\n disableHideOnEnterAndSpace={this.autocomplete}\n class={{\n select: true,\n 'select--open': this.isOpen,\n 'select--empty': this.value?.length === 0,\n 'select--focused': this.hasFocus,\n 'select--clearable': this.clearable,\n 'select--disabled': this.disabled,\n 'select--multiple': this.multiple,\n 'select--has-tags': this.multiple && hasSelection,\n 'select--placeholder-visible': this.displayedValues.length === 0,\n 'select--small': this.size === 'small',\n 'select--medium': this.size === 'medium',\n 'select--large': this.size === 'large',\n 'select--pill': this.pill,\n 'select--invalid': this.invalid,\n }}\n onKeyDown={this.handleKeyDown}\n onSix-dropdown-show={this.handleMenuShow}\n onSix-dropdown-hide={this.handleMenuHide}\n filterPlaceholder={this.filterPlaceholder}\n filterDebounce={this.filterDebounce}\n filter={this.filter}\n asyncFilter={this.asyncFilter}\n virtualScroll={this.virtualScroll}\n >\n {/* Trigger */}\n <div\n slot=\"trigger\"\n ref={(el) => (this.box = el)}\n id={this.inputId}\n class={{\n select__box: true,\n 'select__box--line': this.line,\n 'select__box--autocomplete': this.autocomplete,\n }}\n role=\"combobox\"\n aria-labelledby={this.labelId}\n aria-describedby={this.helpTextId}\n aria-haspopup=\"true\"\n aria-expanded={this.isOpen ? 'true' : 'false'}\n tabIndex={this.disabled ? -1 : 0}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n >\n {/* Display values */}\n <div class=\"display__values\" ref={(el) => (this.displayValuesContainer = el)}>\n {this.displayedValues.length > 0 ? (\n <span class=\"display__values-and-counter\">\n <span class=\"display__values-values\">\n {this.displayedValues.map((value) => (\n <span key={value} class=\"display-value\">\n {value}\n <span class={{ separator: true }}>, </span>\n </span>\n ))}\n </span>\n <span ref={(el) => (this.overflowCount = el)} class=\"overflow-count\">\n +10\n </span>\n </span>\n ) : (\n <span class=\"placeholder\">{this.placeholder}</span>\n )}\n </div>\n\n {/* Clear */}\n {showClear && (\n <six-icon-button\n exportparts=\"base:clear-button\"\n class=\"select__clear\"\n name=\"clear\"\n size=\"small\"\n onClick={this.handleClearClick}\n tabindex=\"-1\"\n />\n )}\n\n {/* Expand */}\n {showExpand && (\n <span part=\"icon\" class=\"select__icon\">\n <six-icon size=\"medium\">expand_more</six-icon>\n </span>\n )}\n\n {/* Autocomplete */}\n <six-input\n ref={(el) => (this.autocompleteInput = el)}\n class={{\n select__input: true,\n 'sr-only': !this.autocomplete,\n }}\n aria-hidden=\"true\"\n required={this.required}\n onFocus={this.handleFocus}\n clearable={this.clearable}\n placeholder={this.placeholder}\n pill={this.pill}\n disabled={this.disabled}\n size={this.size}\n tabIndex={-1}\n />\n </div>\n\n {/* Selection container */}\n <div\n class={{\n 'selection-container': true,\n 'selection-container--border':\n this.selectionContainerItems.length > 0 && items.length !== this.selectionContainerItems.length,\n }}\n >\n {this.selectionContainerItems}\n </div>\n\n {/* Menu */}\n <six-menu\n ref={(el) => (this.menu = el)}\n part=\"menu\"\n class={{\n select__menu: true,\n 'select__menu--hidden': !hasMenuItems,\n }}\n onSix-menu-item-selected={this.handleMenuSelect}\n items={this.options}\n virtualScroll={this.virtualScroll}\n remove-box-shadow={true}\n disable-keyboard-handling={true}\n >\n <slot onSlotchange={this.handleSlotChange} />\n </six-menu>\n\n {/* Select all */}\n {this.multiple && this.selectAllButton && (\n <div class=\"select-all\" slot=\"dropdown-footer\">\n <six-button type=\"link\" onClick={() => this.selectAll()}>\n {this.selectAllText == null ? selectAllDefaultText(hasDeselectedOptions) : this.selectAllText}\n </six-button>\n </div>\n )}\n </six-dropdown>\n </FormControl>\n );\n }\n\n private hasSelection() {\n return this.multiple ? this.value.length > 0 : this.value !== '';\n }\n\n private hasDeselectedOptions() {\n return this.getVisibleItems().some((opt) => !opt.disabled && !opt.checked);\n }\n}\n\nfunction getCheckedItems(value: string[], items: HTMLSixMenuItemElement[]): HTMLSixMenuItemElement[] {\n return items.filter((item) => value.includes(item.value));\n}\n\nfunction getWidth(element: Element) {\n return element.getBoundingClientRect().width;\n}\n\nfunction computeFitCount(options: Element[], availableWidth: number): { fitCount: number; overflowCount: number } {\n let accumulatedWidth = 0;\n let fitCount = 0;\n\n for (let i = 0; i < options.length; i++) {\n const displayOption = options[i];\n const width = getWidth(displayOption);\n if (i === 0 && width > availableWidth) {\n fitCount = 1;\n break;\n }\n accumulatedWidth += width;\n if (accumulatedWidth > availableWidth) {\n break;\n } else {\n fitCount += 1;\n }\n }\n const overflowCount = options.length - fitCount;\n return { fitCount, overflowCount };\n}\n\nfunction showFittingValues(displayValueOptions: Element[], fitCount: number) {\n if (displayValueOptions.length > 0) {\n // show items that fit\n displayValueOptions.slice(0, fitCount).forEach((displayValue, index, list) => {\n showDisplayValue(displayValue);\n const isLast = index === list.length - 1;\n if (isLast) {\n hideSeparator(displayValue);\n } else {\n showSeparator(displayValue);\n }\n });\n\n // hide the rest\n displayValueOptions.slice(fitCount).forEach((displayValue) => {\n hideDisplayValue(displayValue);\n showSeparator(displayValue);\n });\n }\n}\n\nfunction hideSeparator(displayValueOption: Element) {\n displayValueOption.querySelector('.separator')?.classList.add('separator--hidden');\n}\n\nfunction showSeparator(displayValueOption: Element) {\n displayValueOption.querySelector('.separator')?.classList.remove('separator--hidden');\n}\n\nfunction showDisplayValue(displayValueOption: Element) {\n displayValueOption.classList.remove('display-value--hidden');\n}\n\nfunction hideDisplayValue(displayValueOption: Element) {\n displayValueOption.classList.add('display-value--hidden');\n}\n\nfunction setOverflowCount(overflowCount: Element, count: number) {\n overflowCount.textContent = `+${count}`;\n}\n\nfunction showOverflowCount(overflowCount: Element) {\n overflowCount.classList.remove('overflow-count-hidden');\n}\n\nfunction hideOverflowCount(overflowCount: Element) {\n overflowCount.classList.add('overflow-count-hidden');\n}\n\nfunction selectAllDefaultText(hasDeselectedOptions: boolean) {\n const lang = getLanguage();\n switch (lang) {\n case 'de':\n return hasDeselectedOptions ? 'Alle auswählen' : 'Alle abwählen';\n case 'fr':\n return hasDeselectedOptions ? 'Tout sélectionner' : 'Tout désélectionner';\n case 'it':\n return hasDeselectedOptions ? 'Seleziona tutto' : 'Deseleziona tutto';\n case 'en':\n return hasDeselectedOptions ? 'Select all' : 'Deselect all';\n case 'es':\n return hasDeselectedOptions ? 'Seleccionar todo' : 'Deseleccionar todo';\n }\n}\n"],"mappings":"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","ignoreList":[]}