@sbb-esta/lyne-elements 4.10.0 → 4.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (576) hide show
  1. package/autocomplete/autocomplete-base-element.js +1 -1
  2. package/autocomplete/autocomplete.component.js +3 -2
  3. package/{autocomplete-base-element-DarHnnYC.js → autocomplete-base-element-De2O5Wx-.js} +14 -9
  4. package/autocomplete.js +1 -1
  5. package/autocomplete.pure.js +1 -1
  6. package/{block-link-common-DzGY49Xc.js → block-link-common-1kRa_czx.js} +1 -1
  7. package/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +1 -1
  8. package/breadcrumb/breadcrumb-group.js +1 -1
  9. package/{breadcrumb-group.component-Cc6CHbVy.js → breadcrumb-group.component-CKNsaUqs.js} +1 -1
  10. package/breadcrumb.js +1 -1
  11. package/breadcrumb.pure.js +1 -1
  12. package/button/common/button-common.js +1 -1
  13. package/button/common.js +1 -1
  14. package/button-common-BMEhm-dn.js +87 -0
  15. package/button.js +1 -1
  16. package/button.pure.js +1 -1
  17. package/calendar/calendar/calendar.component.js +1 -1
  18. package/calendar/calendar.js +1 -1
  19. package/{calendar.component-DhmaJt2k.js → calendar.component-C1jk_uE0.js} +5 -5
  20. package/calendar.js +1 -1
  21. package/calendar.pure.js +1 -1
  22. package/card/card-badge/card-badge.component.js +1 -1
  23. package/card/card-badge.js +1 -1
  24. package/{card-badge.component-BSOEYrN4.js → card-badge.component-D0r2iixU.js} +1 -1
  25. package/card.js +1 -1
  26. package/card.pure.js +1 -1
  27. package/checkbox/checkbox.component.js +1 -1
  28. package/checkbox/checkbox.js +1 -1
  29. package/checkbox/common/checkbox-common.js +1 -1
  30. package/checkbox/common.js +1 -1
  31. package/{checkbox-common-DdieysTG.js → checkbox-common-BpW4_bbi.js} +1 -1
  32. package/{checkbox.component-ROzxEnPh.js → checkbox.component-DS48CA_v.js} +1 -1
  33. package/checkbox.js +2 -2
  34. package/checkbox.pure.js +2 -2
  35. package/chip/chip-group/chip-group.component.js +1 -1
  36. package/chip/chip-group.js +1 -1
  37. package/{chip-group.component-DJzUToem.js → chip-group.component-BqBYzfXA.js} +1 -1
  38. package/chip.js +1 -1
  39. package/chip.pure.js +1 -1
  40. package/{compact-paginator.component-Cyi-t_YD.js → compact-paginator.component-BIAPutro.js} +1 -1
  41. package/core/base-elements/element.js +1 -1
  42. package/core/controllers/overlay-position-controller.js +4 -1
  43. package/core/mixins/named-slot-list-mixin.js +4 -1
  44. package/core/styles/core.scss +62 -77
  45. package/core/styles/mixins/helpers.scss +3 -3
  46. package/core/styles/mixins/overlay.scss +2 -2
  47. package/core/styles/mixins/table.scss +18 -19
  48. package/core/styles/mixins/typo.scss +2 -2
  49. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables-as-css.scss +8 -0
  50. package/core/styles/theme.scss +3 -1
  51. package/core.css +177 -73
  52. package/custom-elements.json +1387 -1092
  53. package/development/autocomplete/autocomplete-base-element.d.ts +8 -1
  54. package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -1
  55. package/development/autocomplete/autocomplete-base-element.js +1 -1
  56. package/development/autocomplete/autocomplete.component.js +4 -3
  57. package/development/autocomplete-base-element-BpCpYcX9.js +692 -0
  58. package/development/autocomplete.js +1 -1
  59. package/development/autocomplete.pure.js +1 -1
  60. package/development/{block-link-common-GckvjULA.js → block-link-common-COY1RI1I.js} +2 -2
  61. package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +1 -1
  62. package/development/breadcrumb/breadcrumb-group.js +1 -1
  63. package/development/breadcrumb-group.component-DZslNBlB.js +195 -0
  64. package/development/breadcrumb.js +1 -1
  65. package/development/breadcrumb.pure.js +1 -1
  66. package/development/button/common/button-common.js +1 -1
  67. package/development/button/common.js +1 -1
  68. package/development/{button-common-CAu09Yim.js → button-common-7dmrUx4A.js} +3 -3
  69. package/development/button.js +1 -1
  70. package/development/button.pure.js +1 -1
  71. package/development/calendar/calendar/calendar.component.js +1 -1
  72. package/development/calendar/calendar.js +1 -1
  73. package/development/calendar-cell-base-element-BXohfDSl.js +1 -1
  74. package/development/calendar.component-Dg3D2A7k.js +1453 -0
  75. package/development/calendar.js +1 -1
  76. package/development/calendar.pure.js +1 -1
  77. package/development/card/card-badge/card-badge.component.js +1 -1
  78. package/development/card/card-badge.js +1 -1
  79. package/development/card-action-common-1FDHbfeR.js +1 -1
  80. package/development/card-badge.component-CUZIoVbL.js +84 -0
  81. package/development/card.js +1 -1
  82. package/development/card.pure.js +1 -1
  83. package/development/carousel-list.component-L-nYpHcN.js +1 -1
  84. package/development/carousel.component-Dl48ROSf.js +1 -1
  85. package/development/checkbox/checkbox.component.js +1 -1
  86. package/development/checkbox/checkbox.js +1 -1
  87. package/development/checkbox/common/checkbox-common.js +1 -1
  88. package/development/checkbox/common.js +1 -1
  89. package/development/checkbox-common-Dd5uup8K.js +86 -0
  90. package/development/checkbox-group/checkbox-group.component.js +1 -1
  91. package/development/{checkbox.component-D3_FFSys.js → checkbox.component-CFZrwUTA.js} +2 -2
  92. package/development/checkbox.js +2 -2
  93. package/development/checkbox.pure.js +2 -2
  94. package/development/chip/chip-group/chip-group.component.js +1 -1
  95. package/development/chip/chip-group.js +1 -1
  96. package/development/chip-group.component-BVfHWX2-.js +409 -0
  97. package/development/chip.js +1 -1
  98. package/development/chip.pure.js +1 -1
  99. package/development/clock.component-CVPv4mCp.js +1 -1
  100. package/development/compact-paginator.component-5_Q2Reul.js +51 -0
  101. package/development/core/a11y/input-modality-detector.js +1 -1
  102. package/development/core/base-elements/element.d.ts.map +1 -1
  103. package/development/core/base-elements/element.js +2 -5
  104. package/development/core/controllers/media-matchers-controller.js +1 -1
  105. package/development/core/controllers/overlay-position-controller.js +3 -2
  106. package/development/core/datetime/date-adapter.js +1 -1
  107. package/development/core/datetime/native-date-adapter.js +1 -1
  108. package/development/core/datetime/temporal-date-adapter.js +1 -1
  109. package/development/core/eventing/throttle.d.ts +1 -0
  110. package/development/core/eventing/throttle.d.ts.map +1 -1
  111. package/development/core/eventing/throttle.js +2 -1
  112. package/development/core/mixins/disabled-mixin.js +1 -1
  113. package/development/core/mixins/form-associated-checkbox-mixin.js +1 -1
  114. package/development/core/mixins/form-associated-input-mixin.js +1 -1
  115. package/development/core/mixins/form-associated-mixin.js +1 -1
  116. package/development/core/mixins/form-associated-radio-button-mixin.js +1 -1
  117. package/development/core/mixins/named-slot-list-mixin.d.ts.map +1 -1
  118. package/development/core/mixins/named-slot-list-mixin.js +5 -2
  119. package/development/core/mixins/negative-mixin.js +1 -1
  120. package/development/core/mixins/readonly-mixin.js +1 -1
  121. package/development/core/mixins/required-mixin.js +1 -1
  122. package/development/core/testing/event-spy.js +1 -1
  123. package/development/datepicker/common/datepicker-button.d.ts +6 -0
  124. package/development/datepicker/common/datepicker-button.d.ts.map +1 -1
  125. package/development/datepicker/common/datepicker-button.js +1 -1
  126. package/development/datepicker/common.js +1 -1
  127. package/development/datepicker/datepicker/datepicker.component.d.ts +3 -0
  128. package/development/datepicker/datepicker/datepicker.component.d.ts.map +1 -1
  129. package/development/datepicker/datepicker/datepicker.component.js +1 -1
  130. package/development/datepicker/datepicker.js +1 -1
  131. package/development/datepicker-button-CUPeoQgH.js +169 -0
  132. package/development/datepicker.component-D2DxFng_.js +216 -0
  133. package/development/datepicker.js +2 -2
  134. package/development/datepicker.pure.js +2 -2
  135. package/development/dialog/dialog/dialog.component.js +1 -1
  136. package/development/dialog/dialog.js +1 -1
  137. package/development/{dialog.component-TBiL0Sdq.js → dialog.component-DKuR4u-y.js} +2 -2
  138. package/development/dialog.js +1 -1
  139. package/development/dialog.pure.js +1 -1
  140. package/development/error.component-OBpWoVRL.js +55 -0
  141. package/development/expansion-panel/expansion-panel/expansion-panel.component.js +1 -1
  142. package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +1 -1
  143. package/development/expansion-panel/expansion-panel-header.js +1 -1
  144. package/development/expansion-panel/expansion-panel.js +1 -1
  145. package/development/expansion-panel-header.component-BEAabEE0.js +85 -0
  146. package/development/{expansion-panel.component-PDUmZe7w.js → expansion-panel.component-CV_IuWZA.js} +2 -2
  147. package/development/expansion-panel.js +2 -2
  148. package/development/expansion-panel.pure.js +2 -2
  149. package/development/file-selector/common/file-selector-common.d.ts.map +1 -1
  150. package/development/file-selector/common/file-selector-common.js +1 -1
  151. package/development/file-selector/common.js +1 -1
  152. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts.map +1 -1
  153. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.js +1 -1
  154. package/development/file-selector/file-selector-dropzone.js +1 -1
  155. package/development/file-selector-common-C7xIEiV4.js +416 -0
  156. package/development/file-selector-dropzone.component-BAWMZW4F.js +111 -0
  157. package/development/file-selector.js +2 -2
  158. package/development/file-selector.pure.js +2 -2
  159. package/development/footer/footer.component.js +1 -1
  160. package/development/footer.component-BmDkxYW9.js +172 -0
  161. package/development/footer.js +1 -1
  162. package/development/footer.pure.js +1 -1
  163. package/development/form-field/error/error.component.js +1 -1
  164. package/development/form-field/error.js +1 -1
  165. package/development/form-field/form-field/form-field.component.d.ts +6 -0
  166. package/development/form-field/form-field/form-field.component.d.ts.map +1 -1
  167. package/development/form-field/form-field/form-field.component.js +1 -1
  168. package/development/form-field/form-field-clear/form-field-clear.component.d.ts +3 -0
  169. package/development/form-field/form-field-clear/form-field-clear.component.d.ts.map +1 -1
  170. package/development/form-field/form-field-clear/form-field-clear.component.js +4 -1
  171. package/development/form-field/form-field.js +1 -1
  172. package/development/form-field/hint/hint.component.js +1 -1
  173. package/development/form-field.component-BU3Sv2mD.js +707 -0
  174. package/development/form-field.js +3 -3
  175. package/development/form-field.pure.js +3 -3
  176. package/development/header/header/header.component.js +1 -1
  177. package/development/header/header.js +1 -1
  178. package/development/header-action-common-MTYV0dqA.js +1 -1
  179. package/development/header.component-CWJ36jF0.js +340 -0
  180. package/development/header.js +1 -1
  181. package/development/header.pure.js +1 -1
  182. package/development/hint.component-DUtL0RS3.js +38 -0
  183. package/development/icon/icon-name-mixin.js +1 -1
  184. package/development/image.component-BD0jc-u-.js +1 -1
  185. package/development/link/common/block-link-common.js +1 -1
  186. package/development/link/common.js +1 -1
  187. package/development/link-common-DJ2FfG_Q.js +1 -1
  188. package/development/link-list-base-CKMNz30d.js +1 -1
  189. package/development/link.js +1 -1
  190. package/development/link.pure.js +1 -1
  191. package/development/message/message.component.js +1 -1
  192. package/development/message.component-Dlf5V5ba.js +44 -0
  193. package/development/message.js +1 -1
  194. package/development/message.pure.js +1 -1
  195. package/development/mini-calendar.component-BufzKw74.js +1 -1
  196. package/development/navigation/common/navigation-action-common.js +1 -1
  197. package/development/navigation/common.js +1 -1
  198. package/development/navigation/navigation-marker/navigation-marker.component.js +1 -1
  199. package/development/navigation/navigation-marker.js +1 -1
  200. package/development/navigation/navigation-section/navigation-section.component.js +1 -1
  201. package/development/navigation/navigation-section.js +1 -1
  202. package/development/{navigation-action-common-DpBp7-eZ.js → navigation-action-common-Hjr4dI9J.js} +2 -2
  203. package/development/{navigation-marker.component-BpZdT4xz.js → navigation-marker.component-GOv42emC.js} +2 -2
  204. package/development/{navigation-section.component-CtZtuacK.js → navigation-section.component-CnVrRETN.js} +2 -2
  205. package/development/navigation.component-CTNQ1dix.js +1 -1
  206. package/development/navigation.js +3 -3
  207. package/development/navigation.pure.js +3 -3
  208. package/development/notification/notification.component.js +1 -1
  209. package/development/notification.component-Cvq_uViC.js +274 -0
  210. package/development/notification.js +1 -1
  211. package/development/notification.pure.js +1 -1
  212. package/development/option/option/option-base-element.d.ts.map +1 -1
  213. package/development/option/option/option-base-element.js +3 -1
  214. package/development/option/option/option.component.js +1 -1
  215. package/development/option/option.js +1 -1
  216. package/development/option.component-CRVr0PfV.js +130 -0
  217. package/development/option.js +1 -1
  218. package/development/option.pure.js +1 -1
  219. package/development/paginator/common/paginator-common.js +1 -1
  220. package/development/paginator/compact-paginator/compact-paginator.component.js +1 -1
  221. package/development/paginator/compact-paginator.js +1 -1
  222. package/development/paginator/paginator/paginator.component.js +1 -1
  223. package/development/paginator/paginator.js +1 -1
  224. package/development/paginator.component-Bn5tK0FK.js +259 -0
  225. package/development/paginator.js +2 -2
  226. package/development/paginator.pure.js +2 -2
  227. package/development/panel-mixin-Dj_rsgL9.js +1 -1
  228. package/development/popover/popover.component.d.ts +1 -0
  229. package/development/popover/popover.component.d.ts.map +1 -1
  230. package/development/popover/popover.component.js +1 -1
  231. package/development/popover.component-rZb6B9uW.js +546 -0
  232. package/development/popover.js +1 -1
  233. package/development/popover.pure.js +1 -1
  234. package/development/radio-button/common/radio-button-common.js +1 -1
  235. package/development/radio-button/common.js +1 -1
  236. package/development/radio-button/radio-button.component.js +1 -1
  237. package/development/radio-button/radio-button.js +1 -1
  238. package/development/radio-button-common--d3WX-ZM.js +126 -0
  239. package/development/radio-button-panel/radio-button-panel.component.js +1 -1
  240. package/development/{radio-button.component-BrQF2FfA.js → radio-button.component-BauLEeCV.js} +2 -2
  241. package/development/radio-button.js +2 -2
  242. package/development/radio-button.pure.js +2 -2
  243. package/development/select/select.component.d.ts.map +1 -1
  244. package/development/select/select.component.js +1 -1
  245. package/development/select.component-D9SFG7Lk.js +814 -0
  246. package/development/select.js +1 -1
  247. package/development/select.pure.js +1 -1
  248. package/development/sidebar/sidebar/sidebar.component.d.ts +1 -0
  249. package/development/sidebar/sidebar/sidebar.component.d.ts.map +1 -1
  250. package/development/sidebar/sidebar/sidebar.component.js +1 -1
  251. package/development/sidebar/sidebar.js +1 -1
  252. package/development/sidebar-container.component-BDSoDAym.js +1 -1
  253. package/development/{sidebar.component-DvRTyNry.js → sidebar.component-BLqO52nH.js} +8 -1
  254. package/development/sidebar.js +1 -1
  255. package/development/sidebar.pure.js +1 -1
  256. package/development/slider/slider.component.js +1 -1
  257. package/development/{slider.component-BjfLnUvP.js → slider.component-C3qZB6ar.js} +2 -2
  258. package/development/slider.js +1 -1
  259. package/development/slider.pure.js +1 -1
  260. package/development/status/status.component.js +1 -1
  261. package/development/status.component-CPi1cPN0.js +111 -0
  262. package/development/status.js +1 -1
  263. package/development/status.pure.js +1 -1
  264. package/development/step-label.component-BJ9eainz.js +131 -0
  265. package/development/stepper/step-label/step-label.component.js +1 -1
  266. package/development/stepper/step-label.js +1 -1
  267. package/development/stepper.component-CxOBayI1.js +1 -1
  268. package/development/stepper.js +1 -1
  269. package/development/stepper.pure.js +1 -1
  270. package/development/sticky-bar.component-Dzrdsnxu.js +1 -1
  271. package/development/styles-D8-q-irv.js +1 -1
  272. package/development/styles-Jlhoev1S.js +14 -0
  273. package/development/tab-group.component-DldBA45K.js +275 -0
  274. package/development/{tab-label.component-14j2eh4Z.js → tab-label.component-B9e9kgVf.js} +2 -2
  275. package/development/tabs/common/styles.js +1 -1
  276. package/development/tabs/common.js +1 -1
  277. package/development/tabs/tab-group/tab-group.component.d.ts +1 -0
  278. package/development/tabs/tab-group/tab-group.component.d.ts.map +1 -1
  279. package/development/tabs/tab-group/tab-group.component.js +1 -1
  280. package/development/tabs/tab-group.js +1 -1
  281. package/development/tabs/tab-label/tab-label.component.js +1 -1
  282. package/development/tabs/tab-label.js +1 -1
  283. package/development/tabs.js +3 -3
  284. package/development/tabs.pure.js +3 -3
  285. package/development/tag/tag/tag.component.js +1 -1
  286. package/development/tag/tag.js +1 -1
  287. package/development/tag.component-Bl1nlIXQ.js +245 -0
  288. package/development/tag.js +1 -1
  289. package/development/tag.pure.js +1 -1
  290. package/development/teaser-hero/teaser-hero.component.js +1 -1
  291. package/development/{teaser-hero.component-DNlc8Tbl.js → teaser-hero.component-BIOpoGME.js} +2 -2
  292. package/development/teaser-hero.js +1 -1
  293. package/development/teaser-hero.pure.js +1 -1
  294. package/development/teaser-product-common-DYX370pm.js +1 -1
  295. package/development/time-input.component-BtdSR8kB.js +1 -1
  296. package/development/timetable-form/timetable-form/timetable-form.component.js +1 -1
  297. package/development/timetable-form/timetable-form-details/timetable-form-details.component.js +1 -1
  298. package/development/timetable-form/timetable-form-details.js +1 -1
  299. package/development/timetable-form/timetable-form-field/timetable-form-field.component.js +1 -1
  300. package/development/timetable-form/timetable-form-field.js +1 -1
  301. package/development/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.d.ts +3 -0
  302. package/development/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.d.ts.map +1 -1
  303. package/development/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.js +1 -1
  304. package/development/timetable-form/timetable-form-swap-button.js +1 -1
  305. package/development/timetable-form/timetable-form.js +1 -1
  306. package/development/timetable-form-details.component-DJl5Qt9y.js +26 -0
  307. package/development/timetable-form-field.component-DQ_TzcF4.js +44 -0
  308. package/development/{timetable-form-swap-button.component-BUKUjrpl.js → timetable-form-swap-button.component-Bh9aPmdn.js} +4 -1
  309. package/development/timetable-form.component-N8h4JBlH.js +27 -0
  310. package/development/timetable-form.js +4 -4
  311. package/development/timetable-form.pure.js +4 -4
  312. package/development/timetable-occupancy/timetable-occupancy.component.js +1 -1
  313. package/development/timetable-occupancy.component-BBcznUh0.js +124 -0
  314. package/development/timetable-occupancy.js +1 -1
  315. package/development/timetable-occupancy.pure.js +1 -1
  316. package/development/title/title-base.js +1 -1
  317. package/development/title/title.component.js +1 -1
  318. package/development/{title-base-CBE_2Hkb.js → title-base-BdYKwj3-.js} +2 -2
  319. package/development/{title.component-Dk23JVct.js → title.component-DSXVkddh.js} +2 -2
  320. package/development/title.js +2 -2
  321. package/development/title.pure.js +2 -2
  322. package/development/toast/toast.component.js +1 -1
  323. package/development/toast.component-IhHx0Qt3.js +275 -0
  324. package/development/toast.js +1 -1
  325. package/development/toast.pure.js +1 -1
  326. package/development/toggle/toggle/toggle.component.d.ts.map +1 -1
  327. package/development/toggle/toggle/toggle.component.js +1 -1
  328. package/development/toggle/toggle-option/toggle-option.component.d.ts +1 -0
  329. package/development/toggle/toggle-option/toggle-option.component.d.ts.map +1 -1
  330. package/development/toggle/toggle-option/toggle-option.component.js +1 -1
  331. package/development/toggle/toggle-option.js +1 -1
  332. package/development/toggle/toggle.js +1 -1
  333. package/development/toggle-check/toggle-check.component.js +1 -1
  334. package/development/toggle-check.component-_fDAuLob.js +159 -0
  335. package/development/toggle-check.js +1 -1
  336. package/development/toggle-check.pure.js +1 -1
  337. package/development/toggle-option.component-DTS3a603.js +167 -0
  338. package/development/toggle.component-BJpD1b9H.js +249 -0
  339. package/development/toggle.js +2 -2
  340. package/development/toggle.pure.js +2 -2
  341. package/development/tooltip/tooltip.component.js +1 -1
  342. package/development/tooltip.component-YaUQA-Id.js +378 -0
  343. package/development/tooltip.js +1 -1
  344. package/development/tooltip.pure.js +1 -1
  345. package/development/train/train-wagon/train-wagon.component.js +1 -1
  346. package/development/train/train-wagon.js +1 -1
  347. package/development/{train-wagon.component-BzA8-S_6.js → train-wagon.component-CNxkffOO.js} +2 -2
  348. package/development/train.js +1 -1
  349. package/development/train.pure.js +1 -1
  350. package/dialog/dialog/dialog.component.js +1 -1
  351. package/dialog/dialog.js +1 -1
  352. package/{dialog.component-B3oQbMki.js → dialog.component-Dv5ch5mh.js} +1 -1
  353. package/dialog.js +1 -1
  354. package/dialog.pure.js +1 -1
  355. package/{error.component-B_D8WUP5.js → error.component-DH9Obd7a.js} +1 -1
  356. package/expansion-panel/expansion-panel/expansion-panel.component.js +1 -1
  357. package/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +1 -1
  358. package/expansion-panel/expansion-panel-header.js +1 -1
  359. package/expansion-panel/expansion-panel.js +1 -1
  360. package/{expansion-panel-header.component-B_dQ3ZWT.js → expansion-panel-header.component-FPoEEoZR.js} +1 -1
  361. package/{expansion-panel.component-BJCjwcoj.js → expansion-panel.component-DBnZ6IgB.js} +1 -1
  362. package/expansion-panel.js +2 -2
  363. package/expansion-panel.pure.js +2 -2
  364. package/file-selector/common/file-selector-common.js +1 -1
  365. package/file-selector/common.js +1 -1
  366. package/file-selector/file-selector-dropzone/file-selector-dropzone.component.js +1 -1
  367. package/file-selector/file-selector-dropzone.js +1 -1
  368. package/{file-selector-common-DN4vHMpP.js → file-selector-common-BL9mM4SZ.js} +38 -40
  369. package/{file-selector-dropzone.component-CBKsZsC2.js → file-selector-dropzone.component-Ctar2kEw.js} +3 -4
  370. package/file-selector.js +2 -2
  371. package/file-selector.pure.js +2 -2
  372. package/footer/footer.component.js +1 -1
  373. package/{footer.component-BM91Utiz.js → footer.component-b2docCY_.js} +1 -1
  374. package/footer.js +1 -1
  375. package/footer.pure.js +1 -1
  376. package/form-field/error/error.component.js +1 -1
  377. package/form-field/error.js +1 -1
  378. package/form-field/form-field/form-field.component.js +1 -1
  379. package/form-field/form-field.js +1 -1
  380. package/form-field/hint/hint.component.js +1 -1
  381. package/{form-field.component-D50q1wC0.js → form-field.component-BwZDRKbQ.js} +17 -16
  382. package/form-field.js +3 -3
  383. package/form-field.pure.js +3 -3
  384. package/header/header/header.component.js +1 -1
  385. package/header/header.js +1 -1
  386. package/{header.component-hZqs06Yh.js → header.component-UQUFcMOD.js} +1 -1
  387. package/header.js +1 -1
  388. package/header.pure.js +1 -1
  389. package/{hint.component-BVUUrSSu.js → hint.component-CE2D2TLU.js} +1 -1
  390. package/link/common/block-link-common.js +1 -1
  391. package/link/common.js +1 -1
  392. package/link.js +1 -1
  393. package/link.pure.js +1 -1
  394. package/message/message.component.js +1 -1
  395. package/message.component-DhN-aFms.js +27 -0
  396. package/message.js +1 -1
  397. package/message.pure.js +1 -1
  398. package/navigation/common/navigation-action-common.js +1 -1
  399. package/navigation/common.js +1 -1
  400. package/navigation/navigation-marker/navigation-marker.component.js +1 -1
  401. package/navigation/navigation-marker.js +1 -1
  402. package/navigation/navigation-section/navigation-section.component.js +1 -1
  403. package/navigation/navigation-section.js +1 -1
  404. package/{navigation-action-common-2ix0xrBs.js → navigation-action-common-AzRltwrb.js} +1 -1
  405. package/{navigation-marker.component-DKxK16IU.js → navigation-marker.component-BzbbKlfT.js} +1 -1
  406. package/{navigation-section.component-CvjXVn5r.js → navigation-section.component-DQxCi3O_.js} +1 -1
  407. package/navigation.js +3 -3
  408. package/navigation.pure.js +3 -3
  409. package/notification/notification.component.js +1 -1
  410. package/{notification.component-DjXJFh1G.js → notification.component-D80Wl5xM.js} +1 -1
  411. package/notification.js +1 -1
  412. package/notification.pure.js +1 -1
  413. package/off-brand-theme.css +209 -110
  414. package/option/option/option-base-element.js +1 -1
  415. package/option/option/option.component.js +1 -1
  416. package/option/option.js +1 -1
  417. package/{option.component-M-V_tdSC.js → option.component-2Xf1hz7y.js} +1 -1
  418. package/option.js +1 -1
  419. package/option.pure.js +1 -1
  420. package/package.json +1 -1
  421. package/paginator/compact-paginator/compact-paginator.component.js +1 -1
  422. package/paginator/compact-paginator.js +1 -1
  423. package/paginator/paginator/paginator.component.js +1 -1
  424. package/paginator/paginator.js +1 -1
  425. package/{paginator.component-CZt7Epaf.js → paginator.component-BEr0qU0m.js} +1 -1
  426. package/paginator.js +2 -2
  427. package/paginator.pure.js +2 -2
  428. package/popover/popover.component.js +1 -1
  429. package/{popover.component-DWNuW4wM.js → popover.component-DAgwBcBW.js} +32 -28
  430. package/popover.js +1 -1
  431. package/popover.pure.js +1 -1
  432. package/radio-button/common/radio-button-common.js +1 -1
  433. package/radio-button/common.js +1 -1
  434. package/radio-button/radio-button.component.js +1 -1
  435. package/radio-button/radio-button.js +1 -1
  436. package/{radio-button-common-DP4Izwwf.js → radio-button-common-C1mIf9KY.js} +1 -1
  437. package/{radio-button.component-BiGeOI5L.js → radio-button.component-Bae-yK_U.js} +1 -1
  438. package/radio-button.js +2 -2
  439. package/radio-button.pure.js +2 -2
  440. package/safety-theme.css +209 -110
  441. package/select/select.component.js +1 -1
  442. package/{select.component-DWLdApt_.js → select.component-BT6RbERH.js} +3 -3
  443. package/select.js +1 -1
  444. package/select.pure.js +1 -1
  445. package/sidebar/sidebar/sidebar.component.js +1 -1
  446. package/sidebar/sidebar.js +1 -1
  447. package/{sidebar.component-DxOx02l6.js → sidebar.component-Dsx1FAg0.js} +5 -3
  448. package/sidebar.js +1 -1
  449. package/sidebar.pure.js +1 -1
  450. package/slider/slider.component.js +1 -1
  451. package/{slider.component-CoqCppCq.js → slider.component-BlRVR6iU.js} +1 -1
  452. package/slider.js +1 -1
  453. package/slider.pure.js +1 -1
  454. package/standard-theme.css +209 -110
  455. package/status/status.component.js +1 -1
  456. package/{status.component-BFyXTFXH.js → status.component-lw_WDs7W.js} +1 -1
  457. package/status.js +1 -1
  458. package/status.pure.js +1 -1
  459. package/step-label.component-Dqis4FAN.js +80 -0
  460. package/stepper/step-label/step-label.component.js +1 -1
  461. package/stepper/step-label.js +1 -1
  462. package/stepper.js +1 -1
  463. package/stepper.pure.js +1 -1
  464. package/styles-BNu0Fjw5.js +5 -0
  465. package/{tab-group.component-Doy39cEh.js → tab-group.component-CHQlrhUy.js} +36 -33
  466. package/{tab-label.component-CD56RH1Z.js → tab-label.component-CpdUyfiq.js} +1 -1
  467. package/table.css +32 -37
  468. package/tabs/common/styles.js +1 -1
  469. package/tabs/common.js +1 -1
  470. package/tabs/tab-group/tab-group.component.js +1 -1
  471. package/tabs/tab-group.js +1 -1
  472. package/tabs/tab-label/tab-label.component.js +1 -1
  473. package/tabs/tab-label.js +1 -1
  474. package/tabs.js +3 -3
  475. package/tabs.pure.js +3 -3
  476. package/tag/tag/tag.component.js +1 -1
  477. package/tag/tag.js +1 -1
  478. package/{tag.component-CzYJZuFT.js → tag.component-CsNszQvB.js} +1 -1
  479. package/tag.js +1 -1
  480. package/tag.pure.js +1 -1
  481. package/teaser-hero/teaser-hero.component.js +1 -1
  482. package/{teaser-hero.component-CHy82SKQ.js → teaser-hero.component-D8yj-N5n.js} +1 -1
  483. package/teaser-hero.js +1 -1
  484. package/teaser-hero.pure.js +1 -1
  485. package/timetable-form/timetable-form/timetable-form.component.js +1 -1
  486. package/timetable-form/timetable-form-details/timetable-form-details.component.js +1 -1
  487. package/timetable-form/timetable-form-details.js +1 -1
  488. package/timetable-form/timetable-form-field/timetable-form-field.component.js +1 -1
  489. package/timetable-form/timetable-form-field.js +1 -1
  490. package/timetable-form/timetable-form.js +1 -1
  491. package/timetable-form-details.component-mWKaBW_9.js +16 -0
  492. package/timetable-form-field.component-Cv_lv8vf.js +32 -0
  493. package/{timetable-form.component-CU1FXAZH.js → timetable-form.component-YcvKAlfz.js} +1 -1
  494. package/timetable-form.js +3 -3
  495. package/timetable-form.pure.js +3 -3
  496. package/timetable-occupancy/timetable-occupancy.component.js +1 -1
  497. package/{timetable-occupancy.component-Db9SfiyD.js → timetable-occupancy.component-BCXPxz68.js} +1 -1
  498. package/timetable-occupancy.js +1 -1
  499. package/timetable-occupancy.pure.js +1 -1
  500. package/title/title-base.js +1 -1
  501. package/title/title.component.js +1 -1
  502. package/{title-base-D72Xo2SW.js → title-base-DV0qhfG9.js} +1 -1
  503. package/{title.component-CoMa84Sz.js → title.component-DAGyXwDm.js} +1 -1
  504. package/title.js +2 -2
  505. package/title.pure.js +2 -2
  506. package/toast/toast.component.js +1 -1
  507. package/{toast.component-BDE1vYLS.js → toast.component-CORnf2Tl.js} +3 -3
  508. package/toast.js +1 -1
  509. package/toast.pure.js +1 -1
  510. package/toggle/toggle/toggle.component.js +1 -1
  511. package/toggle/toggle-option/toggle-option.component.js +1 -1
  512. package/toggle/toggle-option.js +1 -1
  513. package/toggle/toggle.js +1 -1
  514. package/toggle-check/toggle-check.component.js +1 -1
  515. package/toggle-check.component-DvoslSRr.js +119 -0
  516. package/toggle-check.js +1 -1
  517. package/toggle-check.pure.js +1 -1
  518. package/{toggle-option.component-Bw-GXUQK.js → toggle-option.component-pX3tNwjE.js} +5 -7
  519. package/{toggle.component-BPpsMMPG.js → toggle.component-B20xAw1V.js} +6 -10
  520. package/toggle.js +2 -2
  521. package/toggle.pure.js +2 -2
  522. package/tooltip/tooltip.component.js +1 -1
  523. package/{tooltip.component-BY9mV5Sw.js → tooltip.component-ocVpJogs.js} +1 -1
  524. package/tooltip.js +1 -1
  525. package/tooltip.pure.js +1 -1
  526. package/train/train-wagon/train-wagon.component.js +1 -1
  527. package/train/train-wagon.js +1 -1
  528. package/{train-wagon.component-BwCcF4GD.js → train-wagon.component-BT4Xnzxr.js} +1 -1
  529. package/train.js +1 -1
  530. package/train.pure.js +1 -1
  531. package/button-common-yFVzAoGy.js +0 -87
  532. package/core/styles/table.scss +0 -156
  533. package/development/autocomplete-base-element-YwfObJzm.js +0 -678
  534. package/development/breadcrumb-group.component-B3Shlng3.js +0 -195
  535. package/development/calendar.component-6p9vsp-V.js +0 -1452
  536. package/development/card-badge.component-D4Mes-Gw.js +0 -84
  537. package/development/checkbox-common-DiTlHvFJ.js +0 -86
  538. package/development/chip-group.component-CvpUdzu1.js +0 -409
  539. package/development/compact-paginator.component-TfDVt_ST.js +0 -51
  540. package/development/datepicker-button-CANzGO5m.js +0 -163
  541. package/development/datepicker.component-C8XQVo45.js +0 -213
  542. package/development/error.component-xD_c9IBA.js +0 -55
  543. package/development/expansion-panel-header.component-Bw4uROTe.js +0 -85
  544. package/development/file-selector-common-C82QR3zb.js +0 -418
  545. package/development/file-selector-dropzone.component-B-cBO4bf.js +0 -112
  546. package/development/footer.component-BblB5218.js +0 -172
  547. package/development/form-field.component-BEXX0OcL.js +0 -702
  548. package/development/header.component-Cg0ZcA1s.js +0 -340
  549. package/development/hint.component-BsIzdUOV.js +0 -38
  550. package/development/message.component-CeJhYXSC.js +0 -44
  551. package/development/notification.component-Co9QChXc.js +0 -274
  552. package/development/option.component-CdL7fdzZ.js +0 -130
  553. package/development/paginator.component-DAdS2mMm.js +0 -259
  554. package/development/popover.component-BCMdJBUR.js +0 -537
  555. package/development/radio-button-common-C3-xuY78.js +0 -126
  556. package/development/select.component-CGNEhqzl.js +0 -812
  557. package/development/status.component-CHC2pBa-.js +0 -111
  558. package/development/step-label.component-CJFPHIZa.js +0 -131
  559. package/development/styles-DCQBzC2C.js +0 -14
  560. package/development/tab-group.component-DRipdAyc.js +0 -272
  561. package/development/tag.component-CnNPL6aI.js +0 -245
  562. package/development/timetable-form-details.component-C8awcdP5.js +0 -26
  563. package/development/timetable-form-field.component-BI24VjkC.js +0 -44
  564. package/development/timetable-form.component-CUG86CSN.js +0 -27
  565. package/development/timetable-occupancy.component-D_PXXvI9.js +0 -124
  566. package/development/toast.component-BnbpuU9L.js +0 -274
  567. package/development/toggle-check.component-BG4w_sE8.js +0 -159
  568. package/development/toggle-option.component-D-F7Fh7i.js +0 -168
  569. package/development/toggle.component-BFYLRN8o.js +0 -254
  570. package/development/tooltip.component-DzSd9VjW.js +0 -378
  571. package/message.component-BQjnZ5Z3.js +0 -27
  572. package/step-label.component-DnQBwnL8.js +0 -80
  573. package/styles-BUpK1iP2.js +0 -5
  574. package/timetable-form-details.component-CBZ7QSAx.js +0 -16
  575. package/timetable-form-field.component-BKxQQqt7.js +0 -32
  576. package/toggle-check.component-B6Ww5pLD.js +0 -119
@@ -1,168 +0,0 @@
1
- import { __esDecorate, __runInitializers } from "tslib";
2
- import { html, unsafeCSS } from "lit";
3
- import { property } from "lit/decorators.js";
4
- import { SbbElement } from "./core/base-elements.js";
5
- import { forceType } from "./core/decorators.js";
6
- import { SbbDisabledMixin } from "./core/mixins.js";
7
- import { boxSizingStyles } from "./core/styles.js";
8
- import { SbbIconNameMixin } from "./icon.js";
9
- import { ResizeController } from "@lit-labs/observers/resize-controller.js";
10
- //#region src/elements/toggle/toggle-option/toggle-option.scss?inline
11
- var toggle_option_default = ":host {\n --sbb-toggle-option-cursor: var(--sbb-cursor-pointer);\n --sbb-toggle-option-color: var(--sbb-color-anthracite);\n --sbb-toggle-option-color: light-dark(var(--sbb-color-anthracite), var(--sbb-color-cloud));\n --sbb-toggle-option-icon-min-size: var(--sbb-size-icon-ui-small);\n display: inline-block;\n overflow: hidden;\n outline: none !important;\n}\n\n:host([checked]) {\n --sbb-toggle-option-color: var(--sbb-color-2);\n}\n\n:host([disabled]) {\n --sbb-toggle-option-cursor: unset;\n --sbb-toggle-option-color: var(--sbb-color-anthracite);\n --sbb-toggle-option-color: light-dark(var(--sbb-color-anthracite), var(--sbb-color-cloud));\n}\n\n.sbb-toggle-option {\n --sbb-text-font-size: var(--sbb-text-font-size-xs);\n font-family: var(--sbb-typo-font-family);\n font-weight: normal;\n line-height: var(--sbb-typo-line-height-text);\n letter-spacing: var(--sbb-typo-letter-spacing-text);\n font-size: var(--sbb-text-font-size);\n font-weight: bold;\n display: flex;\n justify-content: center;\n align-items: center;\n gap: var(--sbb-spacing-fixed-1x);\n height: var(--sbb-toggle-height);\n padding-inline: var(--sbb-toggle-padding-inline);\n color: var(--sbb-toggle-option-color);\n cursor: var(--sbb-toggle-option-cursor);\n}\n\n.sbb-toggle-option__label {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n\nsbb-icon,\n::slotted(sbb-icon) {\n min-width: var(--sbb-toggle-option-icon-min-size);\n min-height: var(--sbb-toggle-option-icon-min-size);\n}";
12
- //#endregion
13
- //#region src/elements/toggle/toggle-option/toggle-option.component.ts
14
- /**
15
- * It displays a toggle option within a `sbb-toggle`.
16
- *
17
- * @slot - Use the unnamed slot to add content to the label of the toggle option.
18
- * @slot icon - Slot used to render the `sbb-icon`.
19
- * @overrideType value - (T = string) | null
20
- */
21
- var SbbToggleOptionElement = (() => {
22
- let _classSuper = SbbDisabledMixin(SbbIconNameMixin(SbbElement));
23
- let _checked_decorators;
24
- let _checked_initializers = [];
25
- let _checked_extraInitializers = [];
26
- let _value_decorators;
27
- let _value_initializers = [];
28
- let _value_extraInitializers = [];
29
- return class SbbToggleOptionElement extends _classSuper {
30
- static {
31
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
32
- _checked_decorators = [forceType(), property({
33
- reflect: true,
34
- type: Boolean
35
- })];
36
- _value_decorators = [property()];
37
- __esDecorate(this, null, _checked_decorators, {
38
- kind: "accessor",
39
- name: "checked",
40
- static: false,
41
- private: false,
42
- access: {
43
- has: (obj) => "checked" in obj,
44
- get: (obj) => obj.checked,
45
- set: (obj, value) => {
46
- obj.checked = value;
47
- }
48
- },
49
- metadata: _metadata
50
- }, _checked_initializers, _checked_extraInitializers);
51
- __esDecorate(this, null, _value_decorators, {
52
- kind: "accessor",
53
- name: "value",
54
- static: false,
55
- private: false,
56
- access: {
57
- has: (obj) => "value" in obj,
58
- get: (obj) => obj.value,
59
- set: (obj, value) => {
60
- obj.value = value;
61
- }
62
- },
63
- metadata: _metadata
64
- }, _value_initializers, _value_extraInitializers);
65
- if (_metadata) Object.defineProperty(this, Symbol.metadata, {
66
- enumerable: true,
67
- configurable: true,
68
- writable: true,
69
- value: _metadata
70
- });
71
- }
72
- static {
73
- this.elementName = "sbb-toggle-option";
74
- }
75
- static {
76
- this.role = "radio";
77
- }
78
- static {
79
- this.styles = [boxSizingStyles, unsafeCSS(toggle_option_default)];
80
- }
81
- #checked_accessor_storage;
82
- /** Whether the toggle-option is checked. */
83
- get checked() {
84
- return this.#checked_accessor_storage;
85
- }
86
- set checked(value) {
87
- this.#checked_accessor_storage = value;
88
- }
89
- #value_accessor_storage;
90
- /** Value of toggle-option. */
91
- get value() {
92
- return this.#value_accessor_storage;
93
- }
94
- set value(value) {
95
- this.#value_accessor_storage = value;
96
- }
97
- constructor() {
98
- super();
99
- this.#checked_accessor_storage = __runInitializers(this, _checked_initializers, false);
100
- this.#value_accessor_storage = (__runInitializers(this, _checked_extraInitializers), __runInitializers(this, _value_initializers, null));
101
- this._toggle = (__runInitializers(this, _value_extraInitializers), null);
102
- this.addEventListener?.("input", () => this._handleInput());
103
- this.addEventListener?.("click", () => {
104
- if (!this.disabled && !this.checked) this.dispatchEvent(new InputEvent("input", {
105
- bubbles: true,
106
- composed: true
107
- }));
108
- });
109
- this.addController(new ResizeController(this, {
110
- skipInitial: true,
111
- callback: () => this._toggle?.updatePillPosition?.(true)
112
- }));
113
- }
114
- connectedCallback() {
115
- super.connectedCallback();
116
- this._toggle = this.closest?.("sbb-toggle") ?? null;
117
- this._verifyTabindex();
118
- this._toggle?.updatePillPosition?.(true);
119
- }
120
- disconnectedCallback() {
121
- super.disconnectedCallback();
122
- this._toggle = null;
123
- }
124
- firstUpdated(changedProperties) {
125
- super.firstUpdated(changedProperties);
126
- this._toggle?.updatePillPosition?.(true);
127
- }
128
- willUpdate(changedProperties) {
129
- super.willUpdate(changedProperties);
130
- if (changedProperties.has("checked")) {
131
- this.internals.ariaChecked = `${this.checked}`;
132
- this._verifyTabindex();
133
- if (this.checked) this._uncheckOtherOptions();
134
- }
135
- if (changedProperties.has("disabled")) this._handleDisabledChange();
136
- }
137
- _uncheckOtherOptions() {
138
- this._toggle?.options.filter((o) => o !== this).forEach((o) => o.checked = false);
139
- this._toggle?.statusChanged();
140
- }
141
- _handleDisabledChange() {
142
- this.internals.ariaDisabled = this.disabled ? "true" : null;
143
- this._verifyTabindex();
144
- }
145
- _handleInput() {
146
- if (this.disabled) return;
147
- this.checked = true;
148
- this._uncheckOtherOptions();
149
- }
150
- _verifyTabindex() {
151
- this.tabIndex = this.checked && !this.disabled ? 0 : -1;
152
- }
153
- render() {
154
- return html`
155
- <div class="sbb-toggle-option">
156
- ${this.renderIconSlot()}
157
- <span class="sbb-toggle-option__label">
158
- <slot></slot>
159
- </span>
160
- </div>
161
- `;
162
- }
163
- };
164
- })();
165
- //#endregion
166
- export { SbbToggleOptionElement as t };
167
-
168
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLW9wdGlvbi5jb21wb25lbnQtRC1GN0ZoN2kuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL3RvZ2dsZS90b2dnbGUtb3B0aW9uL3RvZ2dsZS1vcHRpb24uc2Nzcz9pbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdG9nZ2xlL3RvZ2dsZS1vcHRpb24vdG9nZ2xlLW9wdGlvbi5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiQHVzZSAnLi4vLi4vY29yZS9zdHlsZXMnIGFzIHNiYjtcblxuOmhvc3Qge1xuICAtLXNiYi10b2dnbGUtb3B0aW9uLWN1cnNvcjogdmFyKC0tc2JiLWN1cnNvci1wb2ludGVyKTtcbiAgLS1zYmItdG9nZ2xlLW9wdGlvbi1jb2xvcjogbGlnaHQtZGFyayh2YXIoLS1zYmItY29sb3ItYW50aHJhY2l0ZSksIHZhcigtLXNiYi1jb2xvci1jbG91ZCkpO1xuICAtLXNiYi10b2dnbGUtb3B0aW9uLWljb24tbWluLXNpemU6IHZhcigtLXNiYi1zaXplLWljb24tdWktc21hbGwpO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAvLyBVc2UgIWltcG9ydGFudCBoZXJlIHRvIG5vdCBpbnRlcmZlcmUgd2l0aCBGaXJlZm94IGZvY3VzIHJpbmcgZGVmaW5pdGlvblxuICAvLyB3aGljaCBhcHBlYXJzIGluIG5vcm1hbGl6ZSBDU1Mgb2Ygc2V2ZXJhbCBmcmFtZXdvcmtzLlxuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbjpob3N0KFtjaGVja2VkXSkge1xuICAtLXNiYi10b2dnbGUtb3B0aW9uLWNvbG9yOiB2YXIoLS1zYmItY29sb3ItMik7XG59XG5cbjpob3N0KFtkaXNhYmxlZF0pIHtcbiAgLS1zYmItdG9nZ2xlLW9wdGlvbi1jdXJzb3I6IHVuc2V0O1xuICAtLXNiYi10b2dnbGUtb3B0aW9uLWNvbG9yOiBsaWdodC1kYXJrKHZhcigtLXNiYi1jb2xvci1hbnRocmFjaXRlKSwgdmFyKC0tc2JiLWNvbG9yLWNsb3VkKSk7XG59XG5cbi5zYmItdG9nZ2xlLW9wdGlvbiB7XG4gIEBpbmNsdWRlIHNiYi50ZXh0LXhzLS1ib2xkO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTF4KTtcbiAgaGVpZ2h0OiB2YXIoLS1zYmItdG9nZ2xlLWhlaWdodCk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zYmItdG9nZ2xlLXBhZGRpbmctaW5saW5lKTtcbiAgY29sb3I6IHZhcigtLXNiYi10b2dnbGUtb3B0aW9uLWNvbG9yKTtcbiAgY3Vyc29yOiB2YXIoLS1zYmItdG9nZ2xlLW9wdGlvbi1jdXJzb3IpO1xufVxuXG4uc2JiLXRvZ2dsZS1vcHRpb25fX2xhYmVsIHtcbiAgQGluY2x1ZGUgc2JiLmVsbGlwc2lzO1xufVxuXG5zYmItaWNvbixcbjo6c2xvdHRlZChzYmItaWNvbikge1xuICBtaW4td2lkdGg6IHZhcigtLXNiYi10b2dnbGUtb3B0aW9uLWljb24tbWluLXNpemUpO1xuICBtaW4taGVpZ2h0OiB2YXIoLS1zYmItdG9nZ2xlLW9wdGlvbi1pY29uLW1pbi1zaXplKTtcbn1cbiIsImltcG9ydCB7IFJlc2l6ZUNvbnRyb2xsZXIgfSBmcm9tICdAbGl0LWxhYnMvb2JzZXJ2ZXJzL3Jlc2l6ZS1jb250cm9sbGVyLmpzJztcbmltcG9ydCB7XG4gIGh0bWwsXG4gIHVuc2FmZUNTUyxcbiAgdHlwZSBDU1NSZXN1bHRHcm91cCxcbiAgdHlwZSBQcm9wZXJ0eVZhbHVlcyxcbiAgdHlwZSBUZW1wbGF0ZVJlc3VsdCxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBTYmJFbGVtZW50IH0gZnJvbSAnLi4vLi4vY29yZS9iYXNlLWVsZW1lbnRzLnRzJztcbmltcG9ydCB7IGZvcmNlVHlwZSB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy50cyc7XG5pbXBvcnQgeyBTYmJEaXNhYmxlZE1peGluIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMudHMnO1xuaW1wb3J0IHsgYm94U2l6aW5nU3R5bGVzIH0gZnJvbSAnLi4vLi4vY29yZS9zdHlsZXMudHMnO1xuaW1wb3J0IHsgU2JiSWNvbk5hbWVNaXhpbiB9IGZyb20gJy4uLy4uL2ljb24udHMnO1xuaW1wb3J0IHR5cGUgeyBTYmJUb2dnbGVFbGVtZW50IH0gZnJvbSAnLi4vdG9nZ2xlL3RvZ2dsZS5jb21wb25lbnQudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90b2dnbGUtb3B0aW9uLnNjc3M/aW5saW5lJztcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBhIHRvZ2dsZSBvcHRpb24gd2l0aGluIGEgYHNiYi10b2dnbGVgLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIGxhYmVsIG9mIHRoZSB0b2dnbGUgb3B0aW9uLlxuICogQHNsb3QgaWNvbiAtIFNsb3QgdXNlZCB0byByZW5kZXIgdGhlIGBzYmItaWNvbmAuXG4gKiBAb3ZlcnJpZGVUeXBlIHZhbHVlIC0gKFQgPSBzdHJpbmcpIHwgbnVsbFxuICovXG5leHBvcnQgY2xhc3MgU2JiVG9nZ2xlT3B0aW9uRWxlbWVudDxUID0gc3RyaW5nPiBleHRlbmRzIFNiYkRpc2FibGVkTWl4aW4oXG4gIFNiYkljb25OYW1lTWl4aW4oU2JiRWxlbWVudCksXG4pIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSBlbGVtZW50TmFtZTogc3RyaW5nID0gJ3NiYi10b2dnbGUtb3B0aW9uJztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSByb2xlID0gJ3JhZGlvJztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW2JveFNpemluZ1N0eWxlcywgdW5zYWZlQ1NTKHN0eWxlKV07XG5cbiAgLyoqIFdoZXRoZXIgdGhlIHRvZ2dsZS1vcHRpb24gaXMgY2hlY2tlZC4gKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUsIHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIGNoZWNrZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKiogVmFsdWUgb2YgdG9nZ2xlLW9wdGlvbi4gKi9cbiAgQHByb3BlcnR5KClcbiAgcHVibGljIGFjY2Vzc29yIHZhbHVlOiBUIHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSBfdG9nZ2xlOiBTYmJUb2dnbGVFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgLy8gV2UgbmVlZCB0byBsaXN0ZW4gaW5wdXQgZXZlbnQgb24gaG9zdCBhcyB3aXRoIGtleWJvYXJkIG5hdmlnYXRpb25cbiAgICAvLyB0aGUgSW5wdXQgRXZlbnQgaXMgdHJpZ2dlcmVkIGZyb20gc2JiLXRvZ2dsZS5cbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/LignaW5wdXQnLCAoKSA9PiB0aGlzLl9oYW5kbGVJbnB1dCgpKTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/LignY2xpY2snLCAoKSA9PiB7XG4gICAgICBpZiAoIXRoaXMuZGlzYWJsZWQgJiYgIXRoaXMuY2hlY2tlZCkge1xuICAgICAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IElucHV0RXZlbnQoJ2lucHV0JywgeyBidWJibGVzOiB0cnVlLCBjb21wb3NlZDogdHJ1ZSB9KSk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLmFkZENvbnRyb2xsZXIoXG4gICAgICBuZXcgUmVzaXplQ29udHJvbGxlcih0aGlzLCB7XG4gICAgICAgIHNraXBJbml0aWFsOiB0cnVlLFxuICAgICAgICBjYWxsYmFjazogKCkgPT4gdGhpcy5fdG9nZ2xlPy51cGRhdGVQaWxsUG9zaXRpb24/Lih0cnVlKSxcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcblxuICAgIC8vIFdlIGNhbiB1c2UgY2xvc2VzdCBoZXJlLCBhcyB3ZSBleHBlY3QgdGhlIHBhcmVudCBzYmItdG9nZ2xlIHRvIGJlIGluIGxpZ2h0IERPTS5cbiAgICB0aGlzLl90b2dnbGUgPSB0aGlzLmNsb3Nlc3Q/Lignc2JiLXRvZ2dsZScpID8/IG51bGw7XG4gICAgdGhpcy5fdmVyaWZ5VGFiaW5kZXgoKTtcbiAgICB0aGlzLl90b2dnbGU/LnVwZGF0ZVBpbGxQb3NpdGlvbj8uKHRydWUpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fdG9nZ2xlID0gbnVsbDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIHRoaXMuX3RvZ2dsZT8udXBkYXRlUGlsbFBvc2l0aW9uPy4odHJ1ZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2NoZWNrZWQnKSkge1xuICAgICAgdGhpcy5pbnRlcm5hbHMuYXJpYUNoZWNrZWQgPSBgJHt0aGlzLmNoZWNrZWR9YDtcbiAgICAgIHRoaXMuX3ZlcmlmeVRhYmluZGV4KCk7XG4gICAgICBpZiAodGhpcy5jaGVja2VkKSB7XG4gICAgICAgIHRoaXMuX3VuY2hlY2tPdGhlck9wdGlvbnMoKTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnZGlzYWJsZWQnKSkge1xuICAgICAgdGhpcy5faGFuZGxlRGlzYWJsZWRDaGFuZ2UoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF91bmNoZWNrT3RoZXJPcHRpb25zKCk6IHZvaWQge1xuICAgIHRoaXMuX3RvZ2dsZT8ub3B0aW9ucy5maWx0ZXIoKG8pID0+IG8gIT09IHRoaXMpLmZvckVhY2goKG8pID0+IChvLmNoZWNrZWQgPSBmYWxzZSkpO1xuICAgIHRoaXMuX3RvZ2dsZT8uc3RhdHVzQ2hhbmdlZCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlRGlzYWJsZWRDaGFuZ2UoKTogdm9pZCB7XG4gICAgdGhpcy5pbnRlcm5hbHMuYXJpYURpc2FibGVkID0gdGhpcy5kaXNhYmxlZCA/ICd0cnVlJyA6IG51bGw7XG4gICAgdGhpcy5fdmVyaWZ5VGFiaW5kZXgoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZUlucHV0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuY2hlY2tlZCA9IHRydWU7XG4gICAgdGhpcy5fdW5jaGVja090aGVyT3B0aW9ucygpO1xuICB9XG5cbiAgcHJpdmF0ZSBfdmVyaWZ5VGFiaW5kZXgoKTogdm9pZCB7XG4gICAgdGhpcy50YWJJbmRleCA9IHRoaXMuY2hlY2tlZCAmJiAhdGhpcy5kaXNhYmxlZCA/IDAgOiAtMTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi10b2dnbGUtb3B0aW9uXCI+XG4gICAgICAgICR7dGhpcy5yZW5kZXJJY29uU2xvdCgpfVxuICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi10b2dnbGUtb3B0aW9uX19sYWJlbFwiPlxuICAgICAgICAgIDxzbG90Pjwvc2xvdD5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXRvZ2dsZS1vcHRpb24nOiBTYmJUb2dnbGVPcHRpb25FbGVtZW50O1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lDMEJhLGdDQUFzQjttQkFBcUIsaUJBQ3RELGlCQUFpQixXQUFXLENBQzdCOzs7Ozs7O2NBRlksK0JBQTJDLFlBRXZEOzs7MEJBTUUsV0FBVyxFQUNYLFNBQVM7SUFBRSxTQUFTO0lBQU0sTUFBTTtJQUFTLENBQUMsQ0FBQTt3QkFJMUMsVUFBVSxDQUFBO0FBSFgsZ0JBQUEsTUFBQSxNQUFBLHFCQUFBO0lBQUEsTUFBQTtJQUFBLE1BQUE7SUFBQSxRQUFBO0lBQUEsU0FBQTtJQUFBLFFBQUE7S0FBQSxNQUFBLFFBQUEsYUFBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFPLE1BQUEsS0FBQSxVQUFBO0FBQUEsVUFBUCxVQUFPOztLQUFBO0lBQUEsVUFBQTtJQUFBLEVBQUEsdUJBQUEsMkJBQUE7QUFJdkIsZ0JBQUEsTUFBQSxNQUFBLG1CQUFBO0lBQUEsTUFBQTtJQUFBLE1BQUE7SUFBQSxRQUFBO0lBQUEsU0FBQTtJQUFBLFFBQUE7S0FBQSxNQUFBLFFBQUEsV0FBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFLLE1BQUEsS0FBQSxVQUFBO0FBQUEsVUFBTCxRQUFLOztLQUFBO0lBQUEsVUFBQTtJQUFBLEVBQUEscUJBQUEseUJBQUE7Ozs7Ozs7OztBQVhXLFFBQUEsY0FBc0I7OztBQUN0QixRQUFBLE9BQU87OztBQUNoQixRQUFBLFNBQXlCLENBQUMsaUJBQWlCLFVBQVUsc0JBQU0sQ0FBQzs7RUFLbkY7O0VBQUEsSUFBZ0IsVUFBTztBQUFBLFVBQUEsTUFBQTs7RUFBdkIsSUFBZ0IsUUFBTyxPQUFBO0FBQUEsU0FBQSwyQkFBQTs7RUFJdkI7O0VBQUEsSUFBZ0IsUUFBSztBQUFBLFVBQUEsTUFBQTs7RUFBckIsSUFBZ0IsTUFBSyxPQUFBO0FBQUEsU0FBQSx5QkFBQTs7RUFJckIsY0FBQTtBQUNFLFVBQU87QUFUTyxTQUFBLDJCQUFBLGtCQUFBLE1BQUEsdUJBQW1CLE1BQUs7QUFJeEIsU0FBQSwwQkFBQSxrQkFBQSxNQUFBLDJCQUFBLEVBQUEsa0JBQUEsTUFBQSxxQkFBa0IsS0FBSTtBQUU5QixRQUFBLFdBQU8sa0JBQUEsTUFBQSx5QkFBQSxFQUE0QjtBQU16QyxRQUFLLG1CQUFtQixlQUFlLEtBQUssY0FBYyxDQUFDO0FBQzNELFFBQUssbUJBQW1CLGVBQWM7QUFDcEMsUUFBSSxDQUFDLEtBQUssWUFBWSxDQUFDLEtBQUssUUFDMUIsTUFBSyxjQUFjLElBQUksV0FBVyxTQUFTO0tBQUUsU0FBUztLQUFNLFVBQVU7S0FBTSxDQUFDLENBQUM7S0FFaEY7QUFFRixRQUFLLGNBQ0gsSUFBSSxpQkFBaUIsTUFBTTtJQUN6QixhQUFhO0lBQ2IsZ0JBQWdCLEtBQUssU0FBUyxxQkFBcUIsS0FBQTtJQUNwRCxDQUFDLENBQ0g7O0VBR2Esb0JBQWlCO0FBQy9CLFNBQU0sbUJBQW1CO0FBR3pCLFFBQUssVUFBVSxLQUFLLFVBQVUsYUFBYSxJQUFJO0FBQy9DLFFBQUssaUJBQWlCO0FBQ3RCLFFBQUssU0FBUyxxQkFBcUIsS0FBSzs7RUFHMUIsdUJBQW9CO0FBQ2xDLFNBQU0sc0JBQXNCO0FBQzVCLFFBQUssVUFBVTs7RUFHRSxhQUFhLG1CQUF1QztBQUNyRSxTQUFNLGFBQWEsa0JBQWtCO0FBRXJDLFFBQUssU0FBUyxxQkFBcUIsS0FBSzs7RUFHdkIsV0FBVyxtQkFBdUM7QUFDbkUsU0FBTSxXQUFXLGtCQUFrQjtBQUVuQyxPQUFJLGtCQUFrQixJQUFJLFVBQVUsRUFBRTtBQUNwQyxTQUFLLFVBQVUsY0FBYyxHQUFHLEtBQUs7QUFDckMsU0FBSyxpQkFBaUI7QUFDdEIsUUFBSSxLQUFLLFFBQ1AsTUFBSyxzQkFBc0I7O0FBRy9CLE9BQUksa0JBQWtCLElBQUksV0FBVyxDQUNuQyxNQUFLLHVCQUF1Qjs7RUFJeEIsdUJBQW9CO0FBQzFCLFFBQUssU0FBUyxRQUFRLFFBQVEsTUFBTSxNQUFNLEtBQUssQ0FBQyxTQUFTLE1BQU8sRUFBRSxVQUFVLE1BQU87QUFDbkYsUUFBSyxTQUFTLGVBQWU7O0VBR3ZCLHdCQUFxQjtBQUMzQixRQUFLLFVBQVUsZUFBZSxLQUFLLFdBQVcsU0FBUztBQUN2RCxRQUFLLGlCQUFpQjs7RUFHaEIsZUFBWTtBQUNsQixPQUFJLEtBQUssU0FDUDtBQUVGLFFBQUssVUFBVTtBQUNmLFFBQUssc0JBQXNCOztFQUdyQixrQkFBZTtBQUNyQixRQUFLLFdBQVcsS0FBSyxXQUFXLENBQUMsS0FBSyxXQUFXLElBQUk7O0VBR3BDLFNBQU07QUFDdkIsVUFBTyxJQUFJOztVQUVMLEtBQUssZ0JBQWdCLENBQUEifQ==
@@ -1,254 +0,0 @@
1
- import { __esDecorate, __runInitializers } from "tslib";
2
- import { html, isServer, unsafeCSS } from "lit";
3
- import { property } from "lit/decorators.js";
4
- import { SbbElement } from "./core/base-elements.js";
5
- import { forceType } from "./core/decorators.js";
6
- import { isLean } from "./core/dom.js";
7
- import { SbbDisabledMixin, SbbFormAssociatedMixin } from "./core/mixins.js";
8
- import { boxSizingStyles } from "./core/styles.js";
9
- import { interactivityChecker } from "./core/a11y.js";
10
- //#region src/elements/toggle/toggle/toggle.scss?inline
11
- var toggle_default = ":host {\n display: block;\n width: fit-content;\n border-radius: var(--sbb-toggle-border-radius);\n --sbb-toggle-width: fit-content;\n --sbb-toggle-min-width: calc(\n var(--sbb-toggle-padding-inline) * 4 + var(--sbb-size-icon-ui-small)\n );\n --sbb-toggle-selected-option-border-width: var(--sbb-border-width-1x);\n --sbb-toggle-selected-option-border-style: solid;\n --sbb-toggle-selected-option-border-color: var(--sbb-border-color-5);\n --sbb-toggle-selected-option-background-color: var(--sbb-background-color-1);\n --sbb-toggle-background-inset: 0.125rem;\n --sbb-toggle-padding-inline: var(--sbb-spacing-responsive-xs);\n --sbb-toggle-animation-duration: var(\n --sbb-disable-animation-duration,\n var(--sbb-animation-duration-6x)\n );\n --sbb-toggle-height: var(--sbb-size-element-m);\n --sbb-toggle-border-radius: var(--sbb-border-radius-infinity);\n --sbb-toggle-grid-template-columns: auto auto;\n}\n@media (forced-colors: active) {\n :host {\n --sbb-toggle-selected-option-border-color: Highlight;\n --sbb-toggle-selected-option-border-width: var(--sbb-border-width-2x);\n }\n}\n\n:host([even]) {\n width: 100%;\n --sbb-toggle-width: 100%;\n --sbb-toggle-grid-template-columns: 50% 50%;\n}\n\n:host(:disabled) {\n --sbb-toggle-selected-option-border-color: var(--sbb-color-graphite);\n --sbb-toggle-selected-option-border-color: light-dark(\n var(--sbb-color-graphite),\n var(--sbb-color-smoke)\n );\n --sbb-toggle-selected-option-border-style: dashed;\n}\n@media (forced-colors: active) {\n :host(:disabled) {\n --sbb-toggle-selected-option-border-style: solid;\n --sbb-toggle-selected-option-border-color: GrayText;\n }\n}\n\n:host([size=s]) {\n --sbb-toggle-padding-inline: var(--sbb-spacing-responsive-xxxs);\n --sbb-toggle-height: var(--sbb-size-element-xxs);\n}\n\n:host(:is(:not(:is(:state(initialized),[state--initialized])), :is(:state(disable-animation-on-resizing),[state--disable-animation-on-resizing]))) {\n --sbb-disable-animation-duration: 0s;\n}\n\n.sbb-toggle {\n --sbb-text-font-size: var(--sbb-text-font-size-m);\n font-family: var(--sbb-typo-font-family);\n font-weight: normal;\n line-height: var(--sbb-typo-line-height-text);\n letter-spacing: var(--sbb-typo-letter-spacing-text);\n font-size: var(--sbb-text-font-size);\n display: grid;\n grid-template-columns: var(--sbb-toggle-grid-template-columns);\n grid-template-areas: \"start end\";\n align-items: center;\n min-width: var(--sbb-toggle-min-width);\n width: var(--sbb-toggle-width);\n height: var(--sbb-toggle-height);\n max-width: 100%;\n user-select: none;\n -webkit-tap-highlight-color: transparent;\n border-radius: var(--sbb-toggle-border-radius);\n}\n.sbb-toggle::before {\n content: \"\";\n display: block;\n grid-area: start/start/end/end;\n margin-inline: var(--sbb-toggle-option-left, 0) var(--sbb-toggle-option-right, 0);\n background-color: var(--sbb-toggle-selected-option-background-color);\n border-radius: var(--sbb-toggle-border-radius);\n max-width: 100%;\n height: 100%;\n border: var(--sbb-toggle-selected-option-border-width) var(--sbb-toggle-selected-option-border-style) var(--sbb-toggle-selected-option-border-color);\n transition-duration: var(--sbb-toggle-animation-duration);\n transition-timing-function: ease;\n transition-property: margin-inline-start, margin-inline-end;\n}\n.sbb-toggle::after {\n content: \"\";\n grid-area: start/start/end/end;\n order: -1;\n background: var(--sbb-background-color-4);\n margin-inline: var(--sbb-toggle-background-inset);\n height: calc(100% - 2 * var(--sbb-toggle-background-inset));\n border-radius: var(--sbb-toggle-border-radius);\n}\n@media (forced-colors: active) {\n .sbb-toggle::after {\n border: var(--sbb-border-width-1x) solid CanvasText;\n }\n}\n\n::slotted(sbb-toggle-option:first-of-type) {\n grid-area: start;\n}\n\n::slotted(sbb-toggle-option:last-of-type) {\n grid-area: end;\n}";
12
- //#endregion
13
- //#region src/elements/toggle/toggle/toggle.component.ts
14
- /**
15
- * It can be used as a container for two `sbb-toggle-option`, acting as a toggle button.
16
- *
17
- * @slot - Use the unnamed slot to add `<sbb-toggle-option>` elements to the toggle.
18
- * @overrideType value - (T = string) | null
19
- */
20
- var SbbToggleElement = (() => {
21
- let _classSuper = SbbDisabledMixin(SbbFormAssociatedMixin(SbbElement));
22
- let _instanceExtraInitializers = [];
23
- let _even_decorators;
24
- let _even_initializers = [];
25
- let _even_extraInitializers = [];
26
- let _size_decorators;
27
- let _size_initializers = [];
28
- let _size_extraInitializers = [];
29
- let _set_value_decorators;
30
- return class SbbToggleElement extends _classSuper {
31
- static {
32
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
33
- _even_decorators = [forceType(), property({
34
- reflect: true,
35
- type: Boolean
36
- })];
37
- _size_decorators = [property({ reflect: true })];
38
- _set_value_decorators = [property()];
39
- __esDecorate(this, null, _even_decorators, {
40
- kind: "accessor",
41
- name: "even",
42
- static: false,
43
- private: false,
44
- access: {
45
- has: (obj) => "even" in obj,
46
- get: (obj) => obj.even,
47
- set: (obj, value) => {
48
- obj.even = value;
49
- }
50
- },
51
- metadata: _metadata
52
- }, _even_initializers, _even_extraInitializers);
53
- __esDecorate(this, null, _size_decorators, {
54
- kind: "accessor",
55
- name: "size",
56
- static: false,
57
- private: false,
58
- access: {
59
- has: (obj) => "size" in obj,
60
- get: (obj) => obj.size,
61
- set: (obj, value) => {
62
- obj.size = value;
63
- }
64
- },
65
- metadata: _metadata
66
- }, _size_initializers, _size_extraInitializers);
67
- __esDecorate(this, null, _set_value_decorators, {
68
- kind: "setter",
69
- name: "value",
70
- static: false,
71
- private: false,
72
- access: {
73
- has: (obj) => "value" in obj,
74
- set: (obj, value) => {
75
- obj.value = value;
76
- }
77
- },
78
- metadata: _metadata
79
- }, null, _instanceExtraInitializers);
80
- if (_metadata) Object.defineProperty(this, Symbol.metadata, {
81
- enumerable: true,
82
- configurable: true,
83
- writable: true,
84
- value: _metadata
85
- });
86
- }
87
- static {
88
- this.elementName = "sbb-toggle";
89
- }
90
- static {
91
- this.role = "radiogroup";
92
- }
93
- static {
94
- this.styles = [boxSizingStyles, unsafeCSS(toggle_default)];
95
- }
96
- static {
97
- this.events = { change: "change" };
98
- }
99
- #even_accessor_storage;
100
- /**
101
- * If true, set the width of the component fixed; if false,
102
- * the width is dynamic based on the label of the sbb-toggle-option.
103
- */
104
- get even() {
105
- return this.#even_accessor_storage;
106
- }
107
- set even(value) {
108
- this.#even_accessor_storage = value;
109
- }
110
- #size_accessor_storage;
111
- /**
112
- * Size variant, either m or s.
113
- * @default 'm' / 's' (lean)
114
- */
115
- get size() {
116
- return this.#size_accessor_storage;
117
- }
118
- set size(value) {
119
- this.#size_accessor_storage = value;
120
- }
121
- /**
122
- * The value of the toggle. It needs to be mutable since it is updated whenever
123
- * a new option is selected (see the `onToggleOptionSelect()` method).
124
- */
125
- set value(value) {
126
- if (isServer || !this.hasUpdated) this._fallbackValue = value;
127
- else this._valueChanged(value);
128
- }
129
- get value() {
130
- return isServer ? this._fallbackValue ?? null : this.options.find((o) => o.checked)?.value ?? this.options[0]?.value ?? null;
131
- }
132
- /** The child instances of sbb-toggle-option as an array. */
133
- get options() {
134
- return Array.from(this.querySelectorAll?.("sbb-toggle-option") ?? []);
135
- }
136
- constructor() {
137
- super();
138
- this.#even_accessor_storage = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _even_initializers, false));
139
- this.#size_accessor_storage = (__runInitializers(this, _even_extraInitializers), __runInitializers(this, _size_initializers, isLean() ? "s" : "m"));
140
- this._fallbackValue = (__runInitializers(this, _size_extraInitializers), null);
141
- this.addEventListener?.("input", () => this._handleInput(), { passive: true });
142
- this.addEventListener?.("keydown", (e) => this._handleKeyDown(e));
143
- }
144
- willUpdate(changedProperties) {
145
- super.willUpdate(changedProperties);
146
- if (changedProperties.has("disabled") || changedProperties.has("formDisabled")) this._updateDisabled();
147
- if (!this.hasUpdated) this._valueChanged(this._fallbackValue);
148
- }
149
- /**
150
- * Called whenever the value changes, both programmatically or by user interaction.
151
- * @internal
152
- */
153
- statusChanged() {
154
- this.updateFormValue();
155
- this.updatePillPosition();
156
- }
157
- /**
158
- * Reset to the init value if present. Select the first option, otherwise.
159
- * @internal
160
- */
161
- formResetCallback() {
162
- this.value = this.hasAttribute("value") ? this.getAttribute("value") : null;
163
- }
164
- /**
165
- * @internal
166
- */
167
- formStateRestoreCallback(state, _reason) {
168
- if (typeof state === "string" || state == null) this.value = state ?? null;
169
- else if (state instanceof FormData) this._readFormData(state).then((data) => {
170
- this.value = data;
171
- });
172
- }
173
- async _readFormData(formData) {
174
- const data = formData.get(this.name);
175
- return data instanceof Blob ? JSON.parse(await data.text()) : data;
176
- }
177
- /** @internal */
178
- updatePillPosition(resizing = false) {
179
- const options = this.options;
180
- const toggleElement = this.shadowRoot?.querySelector(".sbb-toggle");
181
- if (options.length < 2 || !toggleElement || options.every((o) => !o.checked) || options.every((o) => !o.clientWidth)) return;
182
- this.toggleState("disable-animation-on-resizing", resizing);
183
- const firstOption = options[0];
184
- const isFirstChecked = firstOption.checked;
185
- const pillLeft = isFirstChecked ? "0px" : `${firstOption.clientWidth}px`;
186
- const pillRight = isFirstChecked ? `${toggleElement.clientWidth - firstOption.clientWidth}px` : "0px";
187
- if (pillRight === "0px" && pillLeft === "0px") return;
188
- this.style?.setProperty("--sbb-toggle-option-left", pillLeft);
189
- this.style?.setProperty("--sbb-toggle-option-right", pillRight);
190
- this.offsetWidth;
191
- this.internals.states.add("initialized");
192
- }
193
- _updateToggle() {
194
- this._valueChanged(this.value);
195
- this._updateDisabled();
196
- }
197
- _valueChanged(value) {
198
- const options = this.options;
199
- const selectedOption = options.find((o) => value === o.value) ?? options.find((o) => o.checked) ?? options[0];
200
- if (!selectedOption) return;
201
- selectedOption.checked = true;
202
- this.statusChanged();
203
- }
204
- _updateDisabled() {
205
- for (const toggleOption of this.options) toggleOption.disabled = this.disabled || this.formDisabled;
206
- }
207
- /**
208
- * Called on user interaction (click or keyboard)
209
- */
210
- _handleInput() {
211
- this.statusChanged();
212
- /**
213
- * The change event is fired when the user modifies the element's value.
214
- * Unlike the input event, the change event is not necessarily fired
215
- * for each alteration to an element's value.
216
- */
217
- this.dispatchEvent(new Event("change", { bubbles: true }));
218
- }
219
- _handleKeyDown(evt) {
220
- if (!this.options.filter((t) => !t.disabled && interactivityChecker.isVisible(t)) || evt.target !== this && evt.target.parentElement !== this) return;
221
- const options = this.options;
222
- const isRtl = this.matches(":dir(rtl)");
223
- const currentIndex = options.findIndex((option) => option.checked) ?? options[0];
224
- const availableOptions = options.slice(currentIndex + 1).concat(options.slice(0, currentIndex)).filter((o) => !o.disabled && interactivityChecker.isVisible(o));
225
- if (!isRtl ? evt.key === " " || evt.key === "ArrowRight" : evt.key === "ArrowLeft") {
226
- this._selectAndFocusOption(availableOptions[0]);
227
- evt.preventDefault();
228
- } else if (isRtl ? evt.key === " " || evt.key === "ArrowRight" : evt.key === "ArrowLeft") {
229
- this._selectAndFocusOption(availableOptions.at(-1));
230
- evt.preventDefault();
231
- }
232
- }
233
- _selectAndFocusOption(option) {
234
- if (!option || option.disabled || option.checked) return;
235
- option.checked = true;
236
- option.focus();
237
- option.dispatchEvent(new InputEvent("input", {
238
- bubbles: true,
239
- composed: true
240
- }));
241
- }
242
- render() {
243
- return html`
244
- <div class="sbb-toggle">
245
- <slot @slotchange=${this._updateToggle}></slot>
246
- </div>
247
- `;
248
- }
249
- };
250
- })();
251
- //#endregion
252
- export { SbbToggleElement as t };
253
-
254
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLmNvbXBvbmVudC1CRllMUk44by5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdG9nZ2xlL3RvZ2dsZS90b2dnbGUuc2Nzcz9pbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdG9nZ2xlL3RvZ2dsZS90b2dnbGUuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uLy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbjpob3N0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcblxuICAvLyBCb3JkZXItcmFkaXVzIGlzIHVzZWQgZm9yIHRoZSBmb2N1cyBvdXRsaW5lIHdoaWNoIGlzIHRvZ2dsZWQgaW4gY29yZS5zY3NzLlxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1zYmItdG9nZ2xlLWJvcmRlci1yYWRpdXMpO1xuXG4gIC0tc2JiLXRvZ2dsZS13aWR0aDogZml0LWNvbnRlbnQ7XG4gIC0tc2JiLXRvZ2dsZS1taW4td2lkdGg6IGNhbGMoXG4gICAgdmFyKC0tc2JiLXRvZ2dsZS1wYWRkaW5nLWlubGluZSkgKiA0ICsgdmFyKC0tc2JiLXNpemUtaWNvbi11aS1zbWFsbClcbiAgKTtcbiAgLS1zYmItdG9nZ2xlLXNlbGVjdGVkLW9wdGlvbi1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMXgpO1xuICAtLXNiYi10b2dnbGUtc2VsZWN0ZWQtb3B0aW9uLWJvcmRlci1zdHlsZTogc29saWQ7XG4gIC0tc2JiLXRvZ2dsZS1zZWxlY3RlZC1vcHRpb24tYm9yZGVyLWNvbG9yOiB2YXIoLS1zYmItYm9yZGVyLWNvbG9yLTUpO1xuICAtLXNiYi10b2dnbGUtc2VsZWN0ZWQtb3B0aW9uLWJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTEpO1xuICAtLXNiYi10b2dnbGUtYmFja2dyb3VuZC1pbnNldDogI3tzYmIucHgtdG8tcmVtLWJ1aWxkKDIpfTtcbiAgLS1zYmItdG9nZ2xlLXBhZGRpbmctaW5saW5lOiB2YXIoLS1zYmItc3BhY2luZy1yZXNwb25zaXZlLXhzKTtcbiAgLS1zYmItdG9nZ2xlLWFuaW1hdGlvbi1kdXJhdGlvbjogdmFyKFxuICAgIC0tc2JiLWRpc2FibGUtYW5pbWF0aW9uLWR1cmF0aW9uLFxuICAgIHZhcigtLXNiYi1hbmltYXRpb24tZHVyYXRpb24tNngpXG4gICk7XG4gIC0tc2JiLXRvZ2dsZS1oZWlnaHQ6IHZhcigtLXNiYi1zaXplLWVsZW1lbnQtbSk7XG4gIC0tc2JiLXRvZ2dsZS1ib3JkZXItcmFkaXVzOiB2YXIoLS1zYmItYm9yZGVyLXJhZGl1cy1pbmZpbml0eSk7XG4gIC0tc2JiLXRvZ2dsZS1ncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bztcblxuICBAaW5jbHVkZSBzYmIuaWYtZm9yY2VkLWNvbG9ycyB7XG4gICAgLS1zYmItdG9nZ2xlLXNlbGVjdGVkLW9wdGlvbi1ib3JkZXItY29sb3I6IEhpZ2hsaWdodDtcbiAgICAtLXNiYi10b2dnbGUtc2VsZWN0ZWQtb3B0aW9uLWJvcmRlci13aWR0aDogdmFyKC0tc2JiLWJvcmRlci13aWR0aC0yeCk7XG4gIH1cbn1cblxuOmhvc3QoW2V2ZW5dKSB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC0tc2JiLXRvZ2dsZS13aWR0aDogMTAwJTtcbiAgLS1zYmItdG9nZ2xlLWdyaWQtdGVtcGxhdGUtY29sdW1uczogNTAlIDUwJTtcbn1cblxuOmhvc3QoOmRpc2FibGVkKSB7XG4gIC0tc2JiLXRvZ2dsZS1zZWxlY3RlZC1vcHRpb24tYm9yZGVyLWNvbG9yOiBsaWdodC1kYXJrKFxuICAgIHZhcigtLXNiYi1jb2xvci1ncmFwaGl0ZSksXG4gICAgdmFyKC0tc2JiLWNvbG9yLXNtb2tlKVxuICApO1xuICAtLXNiYi10b2dnbGUtc2VsZWN0ZWQtb3B0aW9uLWJvcmRlci1zdHlsZTogZGFzaGVkO1xuXG4gIEBpbmNsdWRlIHNiYi5pZi1mb3JjZWQtY29sb3JzIHtcbiAgICAtLXNiYi10b2dnbGUtc2VsZWN0ZWQtb3B0aW9uLWJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgLS1zYmItdG9nZ2xlLXNlbGVjdGVkLW9wdGlvbi1ib3JkZXItY29sb3I6IEdyYXlUZXh0O1xuICB9XG59XG5cbjpob3N0KFtzaXplPSdzJ10pIHtcbiAgLS1zYmItdG9nZ2xlLXBhZGRpbmctaW5saW5lOiB2YXIoLS1zYmItc3BhY2luZy1yZXNwb25zaXZlLXh4eHMpO1xuICAtLXNiYi10b2dnbGUtaGVpZ2h0OiB2YXIoLS1zYmItc2l6ZS1lbGVtZW50LXh4cyk7XG59XG5cbjpob3N0KDppcyg6bm90KDpzdGF0ZShpbml0aWFsaXplZCkpLCA6c3RhdGUoZGlzYWJsZS1hbmltYXRpb24tb24tcmVzaXppbmcpKSkge1xuICBAaW5jbHVkZSBzYmIuZGlzYWJsZS1hbmltYXRpb247XG59XG5cbi5zYmItdG9nZ2xlIHtcbiAgQGluY2x1ZGUgc2JiLnRleHQtbS0tcmVndWxhcjtcblxuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHZhcigtLXNiYi10b2dnbGUtZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zKTtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogJ3N0YXJ0IGVuZCc7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi13aWR0aDogdmFyKC0tc2JiLXRvZ2dsZS1taW4td2lkdGgpO1xuICB3aWR0aDogdmFyKC0tc2JiLXRvZ2dsZS13aWR0aCk7XG4gIGhlaWdodDogdmFyKC0tc2JiLXRvZ2dsZS1oZWlnaHQpO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1zYmItdG9nZ2xlLWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIFdoaXRlIHBpbGwgb2Ygc2VsZWN0ZWQgdG9nZ2xlIG9wdGlvblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGdyaWQtYXJlYTogc3RhcnQgLyBzdGFydCAvIGVuZCAvIGVuZDtcbiAgICBtYXJnaW4taW5saW5lOiB2YXIoLS1zYmItdG9nZ2xlLW9wdGlvbi1sZWZ0LCAwKSB2YXIoLS1zYmItdG9nZ2xlLW9wdGlvbi1yaWdodCwgMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLXRvZ2dsZS1zZWxlY3RlZC1vcHRpb24tYmFja2dyb3VuZC1jb2xvcik7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLXRvZ2dsZS1ib3JkZXItcmFkaXVzKTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogdmFyKC0tc2JiLXRvZ2dsZS1zZWxlY3RlZC1vcHRpb24tYm9yZGVyLXdpZHRoKVxuICAgICAgdmFyKC0tc2JiLXRvZ2dsZS1zZWxlY3RlZC1vcHRpb24tYm9yZGVyLXN0eWxlKSB2YXIoLS1zYmItdG9nZ2xlLXNlbGVjdGVkLW9wdGlvbi1ib3JkZXItY29sb3IpO1xuXG4gICAgdHJhbnNpdGlvbjoge1xuICAgICAgZHVyYXRpb246IHZhcigtLXNiYi10b2dnbGUtYW5pbWF0aW9uLWR1cmF0aW9uKTtcbiAgICAgIHRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgICAgIHByb3BlcnR5OiBtYXJnaW4taW5saW5lLXN0YXJ0LCBtYXJnaW4taW5saW5lLWVuZDtcbiAgICB9XG4gIH1cblxuICAvLyBCYWNrZ3JvdW5kXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBncmlkLWFyZWE6IHN0YXJ0IC8gc3RhcnQgLyBlbmQgLyBlbmQ7XG4gICAgb3JkZXI6IC0xO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTQpO1xuICAgIG1hcmdpbi1pbmxpbmU6IHZhcigtLXNiYi10b2dnbGUtYmFja2dyb3VuZC1pbnNldCk7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyICogdmFyKC0tc2JiLXRvZ2dsZS1iYWNrZ3JvdW5kLWluc2V0KSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLXRvZ2dsZS1ib3JkZXItcmFkaXVzKTtcblxuICAgIEBpbmNsdWRlIHNiYi5pZi1mb3JjZWQtY29sb3JzIHtcbiAgICAgIGJvcmRlcjogdmFyKC0tc2JiLWJvcmRlci13aWR0aC0xeCkgc29saWQgQ2FudmFzVGV4dDtcbiAgICB9XG4gIH1cbn1cblxuOjpzbG90dGVkKHNiYi10b2dnbGUtb3B0aW9uOmZpcnN0LW9mLXR5cGUpIHtcbiAgZ3JpZC1hcmVhOiBzdGFydDtcbn1cblxuOjpzbG90dGVkKHNiYi10b2dnbGUtb3B0aW9uOmxhc3Qtb2YtdHlwZSkge1xuICBncmlkLWFyZWE6IGVuZDtcbn1cbiIsImltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIGlzU2VydmVyLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxuICB1bnNhZmVDU1MsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgaW50ZXJhY3Rpdml0eUNoZWNrZXIgfSBmcm9tICcuLi8uLi9jb3JlL2ExMXkudHMnO1xuaW1wb3J0IHsgU2JiRWxlbWVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS1lbGVtZW50cy50cyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUgfSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvcnMudHMnO1xuaW1wb3J0IHsgaXNMZWFuIH0gZnJvbSAnLi4vLi4vY29yZS9kb20udHMnO1xuaW1wb3J0IHtcbiAgdHlwZSBGb3JtUmVzdG9yZVJlYXNvbixcbiAgdHlwZSBGb3JtUmVzdG9yZVN0YXRlLFxuICBTYmJEaXNhYmxlZE1peGluLFxuICBTYmJGb3JtQXNzb2NpYXRlZE1peGluLFxufSBmcm9tICcuLi8uLi9jb3JlL21peGlucy50cyc7XG5pbXBvcnQgeyBib3hTaXppbmdTdHlsZXMgfSBmcm9tICcuLi8uLi9jb3JlL3N0eWxlcy50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYlRvZ2dsZU9wdGlvbkVsZW1lbnQgfSBmcm9tICcuLi90b2dnbGUtb3B0aW9uL3RvZ2dsZS1vcHRpb24uY29tcG9uZW50LnRzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vdG9nZ2xlLnNjc3M/aW5saW5lJztcblxuLyoqXG4gKiBJdCBjYW4gYmUgdXNlZCBhcyBhIGNvbnRhaW5lciBmb3IgdHdvIGBzYmItdG9nZ2xlLW9wdGlvbmAsIGFjdGluZyBhcyBhIHRvZ2dsZSBidXR0b24uXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgYDxzYmItdG9nZ2xlLW9wdGlvbj5gIGVsZW1lbnRzIHRvIHRoZSB0b2dnbGUuXG4gKiBAb3ZlcnJpZGVUeXBlIHZhbHVlIC0gKFQgPSBzdHJpbmcpIHwgbnVsbFxuICovXG5leHBvcnQgY2xhc3MgU2JiVG9nZ2xlRWxlbWVudDxUID0gc3RyaW5nPiBleHRlbmRzIFNiYkRpc2FibGVkTWl4aW4oXG4gIFNiYkZvcm1Bc3NvY2lhdGVkTWl4aW4oU2JiRWxlbWVudCksXG4pIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSBlbGVtZW50TmFtZTogc3RyaW5nID0gJ3NiYi10b2dnbGUnO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHJlYWRvbmx5IHJvbGUgPSAncmFkaW9ncm91cCc7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtib3hTaXppbmdTdHlsZXMsIHVuc2FmZUNTUyhzdHlsZSldO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50cyA9IHtcbiAgICBjaGFuZ2U6ICdjaGFuZ2UnLFxuICB9IGFzIGNvbnN0O1xuXG4gIC8qKlxuICAgKiBJZiB0cnVlLCBzZXQgdGhlIHdpZHRoIG9mIHRoZSBjb21wb25lbnQgZml4ZWQ7IGlmIGZhbHNlLFxuICAgKiB0aGUgd2lkdGggaXMgZHluYW1pYyBiYXNlZCBvbiB0aGUgbGFiZWwgb2YgdGhlIHNiYi10b2dnbGUtb3B0aW9uLlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUsIHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIGV2ZW46IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogU2l6ZSB2YXJpYW50LCBlaXRoZXIgbSBvciBzLlxuICAgKiBAZGVmYXVsdCAnbScgLyAncycgKGxlYW4pXG4gICAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBhY2Nlc3NvciBzaXplOiAncycgfCAnbScgPSBpc0xlYW4oKSA/ICdzJyA6ICdtJztcblxuICAvKipcbiAgICogVGhlIHZhbHVlIG9mIHRoZSB0b2dnbGUuIEl0IG5lZWRzIHRvIGJlIG11dGFibGUgc2luY2UgaXQgaXMgdXBkYXRlZCB3aGVuZXZlclxuICAgKiBhIG5ldyBvcHRpb24gaXMgc2VsZWN0ZWQgKHNlZSB0aGUgYG9uVG9nZ2xlT3B0aW9uU2VsZWN0KClgIG1ldGhvZCkuXG4gICAqL1xuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgc2V0IHZhbHVlKHZhbHVlOiBUIHwgbnVsbCkge1xuICAgIGlmIChpc1NlcnZlciB8fCAhdGhpcy5oYXNVcGRhdGVkKSB7XG4gICAgICB0aGlzLl9mYWxsYmFja1ZhbHVlID0gdmFsdWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX3ZhbHVlQ2hhbmdlZCh2YWx1ZSk7XG4gICAgfVxuICB9XG4gIHB1YmxpYyBnZXQgdmFsdWUoKTogVCB8IG51bGwge1xuICAgIHJldHVybiBpc1NlcnZlclxuICAgICAgPyAodGhpcy5fZmFsbGJhY2tWYWx1ZSA/PyBudWxsKVxuICAgICAgOiAodGhpcy5vcHRpb25zLmZpbmQoKG8pID0+IG8uY2hlY2tlZCk/LnZhbHVlID8/IHRoaXMub3B0aW9uc1swXT8udmFsdWUgPz8gbnVsbCk7XG4gIH1cbiAgcHJpdmF0ZSBfZmFsbGJhY2tWYWx1ZTogVCB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBUaGUgY2hpbGQgaW5zdGFuY2VzIG9mIHNiYi10b2dnbGUtb3B0aW9uIGFzIGFuIGFycmF5LiAqL1xuICBwdWJsaWMgZ2V0IG9wdGlvbnMoKTogU2JiVG9nZ2xlT3B0aW9uRWxlbWVudDxUPltdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbShcbiAgICAgIHRoaXMucXVlcnlTZWxlY3RvckFsbD8uPFNiYlRvZ2dsZU9wdGlvbkVsZW1lbnQ8VD4+KCdzYmItdG9nZ2xlLW9wdGlvbicpID8/IFtdLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/LignaW5wdXQnLCAoKSA9PiB0aGlzLl9oYW5kbGVJbnB1dCgpLCB7IHBhc3NpdmU6IHRydWUgfSk7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyPy4oJ2tleWRvd24nLCAoZSkgPT4gdGhpcy5faGFuZGxlS2V5RG93bihlKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXMpOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdkaXNhYmxlZCcpIHx8IGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnZm9ybURpc2FibGVkJykpIHtcbiAgICAgIHRoaXMuX3VwZGF0ZURpc2FibGVkKCk7XG4gICAgfVxuXG4gICAgLy8gQmVmb3JlIHRoZSBmaXJzdCB1cGRhdGUsIGluaXQgd2l0aCB0aGUgZmFsbGJhY2sgdmFsdWUuXG4gICAgLy8gVGhlIHdpbGxVcGRhdGUgaG9vayBpcyBzYWZlciB0aGFuIHRoZSAndmFsdWUnIHNldHRlci5cbiAgICBpZiAoIXRoaXMuaGFzVXBkYXRlZCkge1xuICAgICAgdGhpcy5fdmFsdWVDaGFuZ2VkKHRoaXMuX2ZhbGxiYWNrVmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbmV2ZXIgdGhlIHZhbHVlIGNoYW5nZXMsIGJvdGggcHJvZ3JhbW1hdGljYWxseSBvciBieSB1c2VyIGludGVyYWN0aW9uLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBzdGF0dXNDaGFuZ2VkKCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlRm9ybVZhbHVlKCk7XG4gICAgdGhpcy51cGRhdGVQaWxsUG9zaXRpb24oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNldCB0byB0aGUgaW5pdCB2YWx1ZSBpZiBwcmVzZW50LiBTZWxlY3QgdGhlIGZpcnN0IG9wdGlvbiwgb3RoZXJ3aXNlLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBmb3JtUmVzZXRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gKHRoaXMuaGFzQXR0cmlidXRlKCd2YWx1ZScpID8gdGhpcy5nZXRBdHRyaWJ1dGUoJ3ZhbHVlJykgOiBudWxsKSBhcyBUO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGZvcm1TdGF0ZVJlc3RvcmVDYWxsYmFjayhcbiAgICBzdGF0ZTogRm9ybVJlc3RvcmVTdGF0ZSB8IG51bGwsXG4gICAgX3JlYXNvbjogRm9ybVJlc3RvcmVSZWFzb24sXG4gICk6IHZvaWQge1xuICAgIGlmICh0eXBlb2Ygc3RhdGUgPT09ICdzdHJpbmcnIHx8IHN0YXRlID09IG51bGwpIHtcbiAgICAgIHRoaXMudmFsdWUgPSAoc3RhdGUgYXMgVCkgPz8gbnVsbDtcbiAgICB9IGVsc2UgaWYgKHN0YXRlIGluc3RhbmNlb2YgRm9ybURhdGEpIHtcbiAgICAgIHRoaXMuX3JlYWRGb3JtRGF0YShzdGF0ZSkudGhlbigoZGF0YSkgPT4ge1xuICAgICAgICB0aGlzLnZhbHVlID0gZGF0YTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgX3JlYWRGb3JtRGF0YShmb3JtRGF0YTogRm9ybURhdGEpOiBQcm9taXNlPFQ+IHtcbiAgICBjb25zdCBkYXRhID0gZm9ybURhdGEuZ2V0KHRoaXMubmFtZSk7XG4gICAgcmV0dXJuIGRhdGEgaW5zdGFuY2VvZiBCbG9iID8gSlNPTi5wYXJzZShhd2FpdCBkYXRhLnRleHQoKSkgOiAoZGF0YSBhcyBUKTtcbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgcHVibGljIHVwZGF0ZVBpbGxQb3NpdGlvbihyZXNpemluZyA9IGZhbHNlKTogdm9pZCB7XG4gICAgY29uc3Qgb3B0aW9ucyA9IHRoaXMub3B0aW9ucztcbiAgICBjb25zdCB0b2dnbGVFbGVtZW50ID0gdGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yPEhUTUxEaXZFbGVtZW50PignLnNiYi10b2dnbGUnKTtcblxuICAgIGlmIChcbiAgICAgIG9wdGlvbnMubGVuZ3RoIDwgMiB8fFxuICAgICAgIXRvZ2dsZUVsZW1lbnQgfHxcbiAgICAgIG9wdGlvbnMuZXZlcnkoKG8pID0+ICFvLmNoZWNrZWQpIHx8XG4gICAgICBvcHRpb25zLmV2ZXJ5KChvKSA9PiAhby5jbGllbnRXaWR0aClcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnRvZ2dsZVN0YXRlKCdkaXNhYmxlLWFuaW1hdGlvbi1vbi1yZXNpemluZycsIHJlc2l6aW5nKTtcblxuICAgIGNvbnN0IGZpcnN0T3B0aW9uID0gb3B0aW9uc1swXTtcbiAgICBjb25zdCBpc0ZpcnN0Q2hlY2tlZCA9IGZpcnN0T3B0aW9uLmNoZWNrZWQ7XG4gICAgY29uc3QgcGlsbExlZnQgPSBpc0ZpcnN0Q2hlY2tlZCA/ICcwcHgnIDogYCR7Zmlyc3RPcHRpb24uY2xpZW50V2lkdGh9cHhgO1xuICAgIGNvbnN0IHBpbGxSaWdodCA9IGlzRmlyc3RDaGVja2VkXG4gICAgICA/IGAke3RvZ2dsZUVsZW1lbnQuY2xpZW50V2lkdGggLSBmaXJzdE9wdGlvbi5jbGllbnRXaWR0aH1weGBcbiAgICAgIDogJzBweCc7XG5cbiAgICBpZiAocGlsbFJpZ2h0ID09PSAnMHB4JyAmJiBwaWxsTGVmdCA9PT0gJzBweCcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnN0eWxlPy5zZXRQcm9wZXJ0eSgnLS1zYmItdG9nZ2xlLW9wdGlvbi1sZWZ0JywgcGlsbExlZnQpO1xuICAgIHRoaXMuc3R5bGU/LnNldFByb3BlcnR5KCctLXNiYi10b2dnbGUtb3B0aW9uLXJpZ2h0JywgcGlsbFJpZ2h0KTtcblxuICAgIC8vIFRyaWdnZXJzIGEgbGF5b3V0IHJlZmxvdyB3aGljaCBpcyBuZWVkZWQgdG8gYXZvaWQgYW5pbWF0aW9uIGdsaXRjaGVzLlxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLWV4cHJlc3Npb25zXG4gICAgdGhpcy5vZmZzZXRXaWR0aDtcblxuICAgIC8vIEluIG9yZGVyIHRvIGF2b2lkIGEgdHJhbnNpdGlvbiBnbGl0Y2gsIHdlIGhhdmUgdG8ga25vdyB3aGVuIHRoZSBmaXJzdCB2YWx1ZXMgd2VyZSBzZXQuXG4gICAgdGhpcy5pbnRlcm5hbHMuc3RhdGVzLmFkZCgnaW5pdGlhbGl6ZWQnKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZVRvZ2dsZSgpOiB2b2lkIHtcbiAgICB0aGlzLl92YWx1ZUNoYW5nZWQodGhpcy52YWx1ZSk7XG4gICAgdGhpcy5fdXBkYXRlRGlzYWJsZWQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3ZhbHVlQ2hhbmdlZCh2YWx1ZTogVCB8IG51bGwpOiB2b2lkIHtcbiAgICBjb25zdCBvcHRpb25zID0gdGhpcy5vcHRpb25zO1xuXG4gICAgY29uc3Qgc2VsZWN0ZWRPcHRpb24gPVxuICAgICAgb3B0aW9ucy5maW5kKChvKSA9PiB2YWx1ZSA9PT0gby52YWx1ZSkgPz8gb3B0aW9ucy5maW5kKChvKSA9PiBvLmNoZWNrZWQpID8/IG9wdGlvbnNbMF07XG5cbiAgICBpZiAoIXNlbGVjdGVkT3B0aW9uKSB7XG4gICAgICBpZiAoaW1wb3J0Lm1ldGEuZW52LkRFViAmJiAhaXNTZXJ2ZXIpIHtcbiAgICAgICAgY29uc29sZS53YXJuKGBzYmItdG9nZ2xlOiBObyBhdmFpbGFibGUgb3B0aW9ucyEgKCR7dGhpcy5pZCB8fCAnTm8gaWQnfSlgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgc2VsZWN0ZWRPcHRpb24uY2hlY2tlZCA9IHRydWU7XG4gICAgdGhpcy5zdGF0dXNDaGFuZ2VkKCk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVEaXNhYmxlZCgpOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IHRvZ2dsZU9wdGlvbiBvZiB0aGlzLm9wdGlvbnMpIHtcbiAgICAgIHRvZ2dsZU9wdGlvbi5kaXNhYmxlZCA9IHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5mb3JtRGlzYWJsZWQ7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENhbGxlZCBvbiB1c2VyIGludGVyYWN0aW9uIChjbGljayBvciBrZXlib2FyZClcbiAgICovXG4gIHByaXZhdGUgX2hhbmRsZUlucHV0KCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdHVzQ2hhbmdlZCgpO1xuICAgIC8qKlxuICAgICAqIFRoZSBjaGFuZ2UgZXZlbnQgaXMgZmlyZWQgd2hlbiB0aGUgdXNlciBtb2RpZmllcyB0aGUgZWxlbWVudCdzIHZhbHVlLlxuICAgICAqIFVubGlrZSB0aGUgaW5wdXQgZXZlbnQsIHRoZSBjaGFuZ2UgZXZlbnQgaXMgbm90IG5lY2Vzc2FyaWx5IGZpcmVkXG4gICAgICogZm9yIGVhY2ggYWx0ZXJhdGlvbiB0byBhbiBlbGVtZW50J3MgdmFsdWUuXG4gICAgICovXG4gICAgdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnY2hhbmdlJywgeyBidWJibGVzOiB0cnVlIH0pKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZUtleURvd24oZXZ0OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgZW5hYmxlZFRvZ2dsZU9wdGlvbnMgPSB0aGlzLm9wdGlvbnMuZmlsdGVyKFxuICAgICAgKHQpID0+ICF0LmRpc2FibGVkICYmIGludGVyYWN0aXZpdHlDaGVja2VyLmlzVmlzaWJsZSh0KSxcbiAgICApO1xuXG4gICAgaWYgKFxuICAgICAgIWVuYWJsZWRUb2dnbGVPcHRpb25zIHx8XG4gICAgICAvLyBkb24ndCB0cmFwIG5lc3RlZCBoYW5kbGluZ1xuICAgICAgKChldnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KSAhPT0gdGhpcyAmJiAoZXZ0LnRhcmdldCBhcyBIVE1MRWxlbWVudCkucGFyZW50RWxlbWVudCAhPT0gdGhpcylcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBvcHRpb25zID0gdGhpcy5vcHRpb25zO1xuICAgIGNvbnN0IGlzUnRsID0gdGhpcy5tYXRjaGVzKCc6ZGlyKHJ0bCknKTtcbiAgICBjb25zdCBjdXJyZW50SW5kZXggPSBvcHRpb25zLmZpbmRJbmRleCgob3B0aW9uKSA9PiBvcHRpb24uY2hlY2tlZCkgPz8gb3B0aW9uc1swXTtcbiAgICBjb25zdCBhdmFpbGFibGVPcHRpb25zID0gb3B0aW9uc1xuICAgICAgLnNsaWNlKGN1cnJlbnRJbmRleCArIDEpXG4gICAgICAuY29uY2F0KG9wdGlvbnMuc2xpY2UoMCwgY3VycmVudEluZGV4KSlcbiAgICAgIC5maWx0ZXIoKG8pID0+ICFvLmRpc2FibGVkICYmIGludGVyYWN0aXZpdHlDaGVja2VyLmlzVmlzaWJsZShvKSk7XG4gICAgaWYgKCFpc1J0bCA/IGV2dC5rZXkgPT09ICcgJyB8fCBldnQua2V5ID09PSAnQXJyb3dSaWdodCcgOiBldnQua2V5ID09PSAnQXJyb3dMZWZ0Jykge1xuICAgICAgdGhpcy5fc2VsZWN0QW5kRm9jdXNPcHRpb24oYXZhaWxhYmxlT3B0aW9uc1swXSk7XG4gICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9IGVsc2UgaWYgKGlzUnRsID8gZXZ0LmtleSA9PT0gJyAnIHx8IGV2dC5rZXkgPT09ICdBcnJvd1JpZ2h0JyA6IGV2dC5rZXkgPT09ICdBcnJvd0xlZnQnKSB7XG4gICAgICB0aGlzLl9zZWxlY3RBbmRGb2N1c09wdGlvbihhdmFpbGFibGVPcHRpb25zLmF0KC0xKSk7XG4gICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9zZWxlY3RBbmRGb2N1c09wdGlvbihvcHRpb246IFNiYlRvZ2dsZU9wdGlvbkVsZW1lbnQ8VD4gfCB1bmRlZmluZWQpOiB2b2lkIHtcbiAgICBpZiAoIW9wdGlvbiB8fCBvcHRpb24uZGlzYWJsZWQgfHwgb3B0aW9uLmNoZWNrZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgb3B0aW9uLmNoZWNrZWQgPSB0cnVlO1xuICAgIG9wdGlvbi5mb2N1cygpO1xuICAgIG9wdGlvbi5kaXNwYXRjaEV2ZW50KG5ldyBJbnB1dEV2ZW50KCdpbnB1dCcsIHsgYnViYmxlczogdHJ1ZSwgY29tcG9zZWQ6IHRydWUgfSkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXRvZ2dsZVwiPlxuICAgICAgICA8c2xvdCBAc2xvdGNoYW5nZT0ke3RoaXMuX3VwZGF0ZVRvZ2dsZX0+PC9zbG90PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXRvZ2dsZSc6IFNiYlRvZ2dsZUVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJt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