@sbb-esta/lyne-elements 1.16.0 → 2.0.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 (677) hide show
  1. package/accordion/accordion.d.ts +4 -1
  2. package/accordion/accordion.d.ts.map +1 -1
  3. package/accordion.js +31 -22
  4. package/action-group/action-group.d.ts +6 -4
  5. package/action-group/action-group.d.ts.map +1 -1
  6. package/action-group.js +20 -17
  7. package/alert/alert/alert.d.ts +7 -23
  8. package/alert/alert/alert.d.ts.map +1 -1
  9. package/alert/alert-group/alert-group.d.ts +0 -4
  10. package/alert/alert-group/alert-group.d.ts.map +1 -1
  11. package/alert/alert-group.js +46 -47
  12. package/alert/alert.js +74 -132
  13. package/animation.css +4 -8
  14. package/autocomplete/autocomplete-base-element.d.ts +7 -6
  15. package/autocomplete/autocomplete-base-element.d.ts.map +1 -1
  16. package/autocomplete/autocomplete.d.ts +0 -1
  17. package/autocomplete/autocomplete.d.ts.map +1 -1
  18. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.d.ts +0 -1
  19. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.d.ts.map +1 -1
  20. package/autocomplete-grid/autocomplete-grid-button.js +11 -11
  21. package/autocomplete-grid/autocomplete-grid.js +0 -3
  22. package/autocomplete.js +68 -67
  23. package/button/accent-button/accent-button.d.ts +19 -0
  24. package/button/accent-button/accent-button.d.ts.map +1 -0
  25. package/button/accent-button-link/accent-button-link.d.ts +19 -0
  26. package/button/accent-button-link/accent-button-link.d.ts.map +1 -0
  27. package/button/accent-button-link.d.ts +2 -0
  28. package/button/accent-button-link.d.ts.map +1 -0
  29. package/button/accent-button-link.js +17 -0
  30. package/button/accent-button-static/accent-button-static.d.ts +19 -0
  31. package/button/accent-button-static/accent-button-static.d.ts.map +1 -0
  32. package/button/accent-button-static.d.ts +2 -0
  33. package/button/accent-button-static.d.ts.map +1 -0
  34. package/button/accent-button-static.js +17 -0
  35. package/button/accent-button.d.ts +2 -0
  36. package/button/accent-button.d.ts.map +1 -0
  37. package/button/accent-button.js +17 -0
  38. package/button/common/button-common.d.ts.map +1 -1
  39. package/button/common.d.ts.map +1 -1
  40. package/button/common.js +20 -16
  41. package/button/mini-button/mini-button.d.ts +4 -3
  42. package/button/mini-button/mini-button.d.ts.map +1 -1
  43. package/button/mini-button-group/mini-button-group.d.ts +4 -1
  44. package/button/mini-button-group/mini-button-group.d.ts.map +1 -1
  45. package/button/mini-button-group.js +12 -8
  46. package/button/mini-button.d.ts +0 -1
  47. package/button/mini-button.d.ts.map +1 -1
  48. package/button/mini-button.js +10 -20
  49. package/button.d.ts +3 -3
  50. package/button.d.ts.map +1 -1
  51. package/button.js +3 -3
  52. package/calendar.js +25 -25
  53. package/card/card/card.d.ts +4 -1
  54. package/card/card/card.d.ts.map +1 -1
  55. package/card/card.js +10 -6
  56. package/checkbox/checkbox/checkbox.d.ts +4 -6
  57. package/checkbox/checkbox/checkbox.d.ts.map +1 -1
  58. package/checkbox/checkbox-group/checkbox-group.d.ts +4 -1
  59. package/checkbox/checkbox-group/checkbox-group.d.ts.map +1 -1
  60. package/checkbox/checkbox-group.js +14 -10
  61. package/checkbox/checkbox-panel/checkbox-panel.d.ts +4 -4
  62. package/checkbox/checkbox-panel/checkbox-panel.d.ts.map +1 -1
  63. package/checkbox/checkbox-panel.js +21 -18
  64. package/checkbox/checkbox.js +28 -26
  65. package/{chip/chip.d.ts → chip-label/chip-label.d.ts} +4 -4
  66. package/chip-label/chip-label.d.ts.map +1 -0
  67. package/chip-label.d.ts +2 -0
  68. package/chip-label.d.ts.map +1 -0
  69. package/chip-label.js +54 -0
  70. package/clock.js +1 -1
  71. package/container/container.js +21 -21
  72. package/container/sticky-bar/sticky-bar.d.ts +1 -0
  73. package/container/sticky-bar/sticky-bar.d.ts.map +1 -1
  74. package/container/sticky-bar.js +20 -12
  75. package/core/base-elements/button-base-element.d.ts +27 -18
  76. package/core/base-elements/button-base-element.d.ts.map +1 -1
  77. package/core/base-elements/open-close-base-element.d.ts.map +1 -1
  78. package/core/base-elements.js +135 -138
  79. package/core/datetime/date-adapter.d.ts +2 -1
  80. package/core/datetime/date-adapter.d.ts.map +1 -1
  81. package/core/datetime/native-date-adapter.d.ts +1 -1
  82. package/core/datetime/native-date-adapter.d.ts.map +1 -1
  83. package/core/datetime.js +29 -28
  84. package/core/dom/animation.d.ts +2 -0
  85. package/core/dom/animation.d.ts.map +1 -0
  86. package/core/dom/lean-context.d.ts +5 -0
  87. package/core/dom/lean-context.d.ts.map +1 -0
  88. package/core/dom.d.ts +2 -2
  89. package/core/dom.d.ts.map +1 -1
  90. package/core/dom.js +50 -55
  91. package/core/eventing/form-element-handlers.d.ts +0 -7
  92. package/core/eventing/form-element-handlers.d.ts.map +1 -1
  93. package/core/eventing.d.ts +0 -1
  94. package/core/eventing.d.ts.map +1 -1
  95. package/core/eventing.js +28 -49
  96. package/core/i18n/i18n.d.ts +4 -2
  97. package/core/i18n/i18n.d.ts.map +1 -1
  98. package/core/i18n.js +147 -140
  99. package/core/mixins/disabled-mixin.d.ts +2 -7
  100. package/core/mixins/disabled-mixin.d.ts.map +1 -1
  101. package/core/mixins/form-associated-checkbox-mixin.d.ts.map +1 -1
  102. package/core/mixins/form-associated-mixin.d.ts +1 -1
  103. package/core/mixins/form-associated-mixin.d.ts.map +1 -1
  104. package/core/mixins/form-associated-radio-button-mixin.d.ts +35 -0
  105. package/core/mixins/form-associated-radio-button-mixin.d.ts.map +1 -0
  106. package/core/mixins.d.ts +1 -0
  107. package/core/mixins.d.ts.map +1 -1
  108. package/core/mixins.js +347 -220
  109. package/core/styles/_index.scss +1 -0
  110. package/core/styles/core.scss +148 -0
  111. package/core/styles/image.scss +66 -0
  112. package/core/styles/mixins/animation.scss +2 -4
  113. package/core/styles/mixins/buttons.scss +7 -4
  114. package/core/styles/mixins/card.scss +1 -1
  115. package/core/styles/mixins/chip.scss +35 -35
  116. package/core/styles/mixins/image.scss +34 -0
  117. package/core/styles/mixins/overlay.scss +1 -1
  118. package/core/styles/mixins/panel.scss +1 -1
  119. package/core/styles/standard-theme.scss +1 -0
  120. package/core/styles/table.scss +4 -0
  121. package/core/testing/event-spy.d.ts +2 -1
  122. package/core/testing/event-spy.d.ts.map +1 -1
  123. package/core/testing.d.ts +0 -1
  124. package/core/testing.d.ts.map +1 -1
  125. package/core/testing.js +48 -57
  126. package/core.css +112 -0
  127. package/custom-elements.json +25950 -21681
  128. package/datepicker/common/datepicker-button.d.ts +3 -5
  129. package/datepicker/common/datepicker-button.d.ts.map +1 -1
  130. package/datepicker/common.js +30 -29
  131. package/datepicker/datepicker/datepicker.d.ts +25 -72
  132. package/datepicker/datepicker/datepicker.d.ts.map +1 -1
  133. package/datepicker/datepicker-next-day/datepicker-next-day.d.ts +1 -3
  134. package/datepicker/datepicker-next-day/datepicker-next-day.d.ts.map +1 -1
  135. package/datepicker/datepicker-next-day.js +10 -12
  136. package/datepicker/datepicker-previous-day/datepicker-previous-day.d.ts +1 -3
  137. package/datepicker/datepicker-previous-day/datepicker-previous-day.d.ts.map +1 -1
  138. package/datepicker/datepicker-previous-day.js +11 -13
  139. package/datepicker/datepicker.js +129 -157
  140. package/development/accordion/accordion.d.ts +4 -1
  141. package/development/accordion/accordion.d.ts.map +1 -1
  142. package/development/accordion.js +16 -5
  143. package/development/action-group/action-group.d.ts +6 -4
  144. package/development/action-group/action-group.d.ts.map +1 -1
  145. package/development/action-group.js +10 -7
  146. package/development/alert/alert/alert.d.ts +7 -23
  147. package/development/alert/alert/alert.d.ts.map +1 -1
  148. package/development/alert/alert-group/alert-group.d.ts +0 -4
  149. package/development/alert/alert-group/alert-group.d.ts.map +1 -1
  150. package/development/alert/alert-group.js +10 -12
  151. package/development/alert/alert.js +38 -122
  152. package/development/autocomplete/autocomplete-base-element.d.ts +7 -6
  153. package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -1
  154. package/development/autocomplete/autocomplete.d.ts +0 -1
  155. package/development/autocomplete/autocomplete.d.ts.map +1 -1
  156. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.d.ts +0 -1
  157. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.d.ts.map +1 -1
  158. package/development/autocomplete-grid/autocomplete-grid-button.js +6 -6
  159. package/development/autocomplete-grid/autocomplete-grid.js +1 -7
  160. package/development/autocomplete.js +23 -19
  161. package/development/button/accent-button/accent-button.d.ts +19 -0
  162. package/development/button/accent-button/accent-button.d.ts.map +1 -0
  163. package/development/button/accent-button-link/accent-button-link.d.ts +19 -0
  164. package/development/button/accent-button-link/accent-button-link.d.ts.map +1 -0
  165. package/development/button/accent-button-link.d.ts +2 -0
  166. package/development/button/accent-button-link.d.ts.map +1 -0
  167. package/development/button/accent-button-link.js +25 -0
  168. package/development/button/accent-button-static/accent-button-static.d.ts +19 -0
  169. package/development/button/accent-button-static/accent-button-static.d.ts.map +1 -0
  170. package/development/button/accent-button-static.d.ts +2 -0
  171. package/development/button/accent-button-static.d.ts.map +1 -0
  172. package/development/button/accent-button-static.js +25 -0
  173. package/development/button/accent-button.d.ts +2 -0
  174. package/development/button/accent-button.d.ts.map +1 -0
  175. package/development/button/accent-button.js +25 -0
  176. package/development/button/common/button-common.d.ts.map +1 -1
  177. package/development/button/common.d.ts.map +1 -1
  178. package/development/button/common.js +20 -16
  179. package/development/button/mini-button/mini-button.d.ts +4 -3
  180. package/development/button/mini-button/mini-button.d.ts.map +1 -1
  181. package/development/button/mini-button-group/mini-button-group.d.ts +4 -1
  182. package/development/button/mini-button-group/mini-button-group.d.ts.map +1 -1
  183. package/development/button/mini-button-group.js +7 -3
  184. package/development/button/mini-button.d.ts +0 -1
  185. package/development/button/mini-button.d.ts.map +1 -1
  186. package/development/button/mini-button.js +14 -32
  187. package/development/button.d.ts +3 -3
  188. package/development/button.d.ts.map +1 -1
  189. package/development/button.js +3 -3
  190. package/development/calendar.js +1 -1
  191. package/development/card/card/card.d.ts +4 -1
  192. package/development/card/card/card.d.ts.map +1 -1
  193. package/development/card/card.js +8 -4
  194. package/development/checkbox/checkbox/checkbox.d.ts +4 -6
  195. package/development/checkbox/checkbox/checkbox.d.ts.map +1 -1
  196. package/development/checkbox/checkbox-group/checkbox-group.d.ts +4 -1
  197. package/development/checkbox/checkbox-group/checkbox-group.d.ts.map +1 -1
  198. package/development/checkbox/checkbox-group.js +7 -3
  199. package/development/checkbox/checkbox-panel/checkbox-panel.d.ts +4 -4
  200. package/development/checkbox/checkbox-panel/checkbox-panel.d.ts.map +1 -1
  201. package/development/checkbox/checkbox-panel.js +7 -4
  202. package/development/checkbox/checkbox.js +8 -6
  203. package/development/{chip/chip.d.ts → chip-label/chip-label.d.ts} +4 -4
  204. package/development/chip-label/chip-label.d.ts.map +1 -0
  205. package/development/chip-label.d.ts +2 -0
  206. package/development/chip-label.d.ts.map +1 -0
  207. package/development/{chip.js → chip-label.js} +26 -26
  208. package/development/clock.js +1 -1
  209. package/development/container/container.js +8 -12
  210. package/development/container/sticky-bar/sticky-bar.d.ts +1 -0
  211. package/development/container/sticky-bar/sticky-bar.d.ts.map +1 -1
  212. package/development/container/sticky-bar.js +18 -10
  213. package/development/core/base-elements/button-base-element.d.ts +27 -18
  214. package/development/core/base-elements/button-base-element.d.ts.map +1 -1
  215. package/development/core/base-elements/open-close-base-element.d.ts.map +1 -1
  216. package/development/core/base-elements.js +66 -74
  217. package/development/core/datetime/date-adapter.d.ts +2 -1
  218. package/development/core/datetime/date-adapter.d.ts.map +1 -1
  219. package/development/core/datetime/native-date-adapter.d.ts +1 -1
  220. package/development/core/datetime/native-date-adapter.d.ts.map +1 -1
  221. package/development/core/datetime.js +4 -3
  222. package/development/core/dom/animation.d.ts +2 -0
  223. package/development/core/dom/animation.d.ts.map +1 -0
  224. package/development/core/dom/lean-context.d.ts +5 -0
  225. package/development/core/dom/lean-context.d.ts.map +1 -0
  226. package/development/core/dom.d.ts +2 -2
  227. package/development/core/dom.d.ts.map +1 -1
  228. package/development/core/dom.js +13 -21
  229. package/development/core/eventing/form-element-handlers.d.ts +0 -7
  230. package/development/core/eventing/form-element-handlers.d.ts.map +1 -1
  231. package/development/core/eventing.d.ts +0 -1
  232. package/development/core/eventing.d.ts.map +1 -1
  233. package/development/core/eventing.js +1 -25
  234. package/development/core/i18n/i18n.d.ts +4 -2
  235. package/development/core/i18n/i18n.d.ts.map +1 -1
  236. package/development/core/i18n.js +27 -23
  237. package/development/core/mixins/disabled-mixin.d.ts +2 -7
  238. package/development/core/mixins/disabled-mixin.d.ts.map +1 -1
  239. package/development/core/mixins/form-associated-checkbox-mixin.d.ts.map +1 -1
  240. package/development/core/mixins/form-associated-mixin.d.ts +1 -1
  241. package/development/core/mixins/form-associated-mixin.d.ts.map +1 -1
  242. package/development/core/mixins/form-associated-radio-button-mixin.d.ts +35 -0
  243. package/development/core/mixins/form-associated-radio-button-mixin.d.ts.map +1 -0
  244. package/development/core/mixins.d.ts +1 -0
  245. package/development/core/mixins.d.ts.map +1 -1
  246. package/development/core/mixins.js +221 -30
  247. package/development/core/testing/event-spy.d.ts +2 -1
  248. package/development/core/testing/event-spy.d.ts.map +1 -1
  249. package/development/core/testing.d.ts +0 -1
  250. package/development/core/testing.d.ts.map +1 -1
  251. package/development/core/testing.js +4 -15
  252. package/development/datepicker/common/datepicker-button.d.ts +3 -5
  253. package/development/datepicker/common/datepicker-button.d.ts.map +1 -1
  254. package/development/datepicker/common.js +13 -12
  255. package/development/datepicker/datepicker/datepicker.d.ts +25 -72
  256. package/development/datepicker/datepicker/datepicker.d.ts.map +1 -1
  257. package/development/datepicker/datepicker-next-day/datepicker-next-day.d.ts +1 -3
  258. package/development/datepicker/datepicker-next-day/datepicker-next-day.d.ts.map +1 -1
  259. package/development/datepicker/datepicker-next-day.js +9 -15
  260. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.d.ts +1 -3
  261. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.d.ts.map +1 -1
  262. package/development/datepicker/datepicker-previous-day.js +9 -15
  263. package/development/datepicker/datepicker.js +74 -115
  264. package/development/dialog/dialog/dialog.d.ts +3 -0
  265. package/development/dialog/dialog/dialog.d.ts.map +1 -1
  266. package/development/dialog/dialog-title.js +2 -1
  267. package/development/dialog/dialog.js +46 -39
  268. package/development/expansion-panel/expansion-panel/expansion-panel.d.ts +7 -1
  269. package/development/expansion-panel/expansion-panel/expansion-panel.d.ts.map +1 -1
  270. package/development/expansion-panel/expansion-panel-header.js +3 -3
  271. package/development/expansion-panel/expansion-panel.js +32 -17
  272. package/development/file-selector/common/file-selector-common.d.ts +23 -0
  273. package/development/file-selector/common/file-selector-common.d.ts.map +1 -0
  274. package/development/file-selector/common.d.ts +2 -0
  275. package/development/file-selector/common.d.ts.map +1 -0
  276. package/development/file-selector/common.js +382 -0
  277. package/development/file-selector/file-selector/file-selector.d.ts +24 -0
  278. package/development/file-selector/file-selector/file-selector.d.ts.map +1 -0
  279. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.d.ts +33 -0
  280. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.d.ts.map +1 -0
  281. package/development/file-selector/file-selector-dropzone.d.ts +2 -0
  282. package/development/file-selector/file-selector-dropzone.d.ts.map +1 -0
  283. package/development/file-selector/file-selector-dropzone.js +181 -0
  284. package/development/file-selector/file-selector.d.ts +1 -87
  285. package/development/file-selector/file-selector.d.ts.map +1 -1
  286. package/development/file-selector/file-selector.js +52 -0
  287. package/development/file-selector.d.ts +2 -0
  288. package/development/file-selector.d.ts.map +1 -1
  289. package/development/file-selector.js +4 -552
  290. package/development/flip-card/flip-card-details.js +1 -1
  291. package/development/flip-card/flip-card-summary.js +3 -11
  292. package/development/flip-card/flip-card.js +6 -6
  293. package/development/form-field/form-field/form-field.d.ts +5 -10
  294. package/development/form-field/form-field/form-field.d.ts.map +1 -1
  295. package/development/form-field/form-field-clear.js +6 -6
  296. package/development/form-field/form-field.js +32 -40
  297. package/development/header/common.js +2 -2
  298. package/development/header/header/header.d.ts +5 -3
  299. package/development/header/header/header.d.ts.map +1 -1
  300. package/development/header/header.js +15 -20
  301. package/development/image/image.d.ts +0 -30
  302. package/development/image/image.d.ts.map +1 -1
  303. package/development/image.js +62 -273
  304. package/development/journey-header/journey-header.d.ts +4 -1
  305. package/development/journey-header/journey-header.d.ts.map +1 -1
  306. package/development/journey-header.js +7 -3
  307. package/development/lead-container.js +2 -10
  308. package/development/link/common/link-common.d.ts.map +1 -1
  309. package/development/link/common.js +9 -8
  310. package/development/link-list/common/link-list-base.d.ts +1 -0
  311. package/development/link-list/common/link-list-base.d.ts.map +1 -1
  312. package/development/link-list/common.js +4 -2
  313. package/development/link-list/link-list-anchor.js +4 -4
  314. package/development/loading-indicator/loading-indicator.d.ts +1 -3
  315. package/development/loading-indicator/loading-indicator.d.ts.map +1 -1
  316. package/development/loading-indicator-circle/loading-indicator-circle.d.ts +16 -0
  317. package/development/loading-indicator-circle/loading-indicator-circle.d.ts.map +1 -0
  318. package/development/loading-indicator-circle.d.ts +2 -0
  319. package/development/loading-indicator-circle.d.ts.map +1 -0
  320. package/development/loading-indicator-circle.js +146 -0
  321. package/development/loading-indicator.js +81 -182
  322. package/development/map-container/map-container.d.ts.map +1 -1
  323. package/development/map-container.js +5 -5
  324. package/development/menu/common.js +5 -5
  325. package/development/menu/menu/menu.d.ts +3 -0
  326. package/development/menu/menu/menu.d.ts.map +1 -1
  327. package/development/menu/menu.js +39 -24
  328. package/development/navigation/common/navigation-action-common.d.ts.map +1 -1
  329. package/development/navigation/common.js +9 -5
  330. package/development/navigation/navigation/navigation.d.ts +3 -0
  331. package/development/navigation/navigation/navigation.d.ts.map +1 -1
  332. package/development/navigation/navigation-list/navigation-list.d.ts.map +1 -1
  333. package/development/navigation/navigation-list.js +3 -2
  334. package/development/navigation/navigation-marker/navigation-marker.d.ts +2 -1
  335. package/development/navigation/navigation-marker/navigation-marker.d.ts.map +1 -1
  336. package/development/navigation/navigation-marker.js +6 -4
  337. package/development/navigation/navigation-section/navigation-section.d.ts +3 -0
  338. package/development/navigation/navigation-section/navigation-section.d.ts.map +1 -1
  339. package/development/navigation/navigation-section.js +38 -22
  340. package/development/navigation/navigation.js +42 -27
  341. package/development/notification/notification.d.ts +6 -2
  342. package/development/notification/notification.d.ts.map +1 -1
  343. package/development/notification.js +27 -21
  344. package/development/option/option/option-base-element.d.ts +0 -7
  345. package/development/option/option/option-base-element.d.ts.map +1 -1
  346. package/development/option/option.js +5 -26
  347. package/development/overlay/overlay-base-element.d.ts +2 -0
  348. package/development/overlay/overlay-base-element.d.ts.map +1 -1
  349. package/development/overlay/overlay.d.ts +3 -0
  350. package/development/overlay/overlay.d.ts.map +1 -1
  351. package/development/overlay.js +43 -31
  352. package/development/paginator/common/paginator-common.d.ts.map +1 -1
  353. package/development/paginator/common.js +7 -3
  354. package/development/paginator/paginator.js +1 -1
  355. package/development/popover/popover/popover.d.ts +3 -0
  356. package/development/popover/popover/popover.d.ts.map +1 -1
  357. package/development/popover/popover-trigger.js +9 -9
  358. package/development/popover/popover.js +41 -26
  359. package/development/radio-button/common/radio-button-common.d.ts +3 -10
  360. package/development/radio-button/common/radio-button-common.d.ts.map +1 -1
  361. package/development/radio-button/common.js +44 -121
  362. package/development/radio-button/radio-button/radio-button.d.ts +9 -1
  363. package/development/radio-button/radio-button/radio-button.d.ts.map +1 -1
  364. package/development/radio-button/radio-button-group/radio-button-group.d.ts +19 -26
  365. package/development/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
  366. package/development/radio-button/radio-button-group.js +87 -123
  367. package/development/radio-button/radio-button-panel/radio-button-panel.d.ts +20 -2
  368. package/development/radio-button/radio-button-panel/radio-button-panel.d.ts.map +1 -1
  369. package/development/radio-button/radio-button-panel.js +35 -15
  370. package/development/radio-button/radio-button.js +11 -15
  371. package/development/select/select.d.ts +3 -9
  372. package/development/select/select.d.ts.map +1 -1
  373. package/development/select.js +27 -25
  374. package/development/selection-expansion-panel/selection-expansion-panel.d.ts +4 -1
  375. package/development/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -1
  376. package/development/selection-expansion-panel.js +28 -16
  377. package/development/skiplink-list/skiplink-list.d.ts.map +1 -1
  378. package/development/skiplink-list.js +3 -2
  379. package/development/slider/slider.d.ts +0 -1
  380. package/development/slider/slider.d.ts.map +1 -1
  381. package/development/slider.js +2 -2
  382. package/development/stepper/step-label/step-label.d.ts +0 -2
  383. package/development/stepper/step-label/step-label.d.ts.map +1 -1
  384. package/development/stepper/step-label.js +10 -11
  385. package/development/stepper/step.js +1 -1
  386. package/development/stepper/stepper/stepper.d.ts +4 -1
  387. package/development/stepper/stepper/stepper.d.ts.map +1 -1
  388. package/development/stepper/stepper.js +9 -7
  389. package/development/tabs/tab-group/tab-group.d.ts +4 -1
  390. package/development/tabs/tab-group/tab-group.d.ts.map +1 -1
  391. package/development/tabs/tab-group.js +8 -4
  392. package/development/tabs/tab-label.js +1 -1
  393. package/development/tag/tag/tag.d.ts +4 -1
  394. package/development/tag/tag/tag.d.ts.map +1 -1
  395. package/development/tag/tag-group/tag-group.d.ts +5 -2
  396. package/development/tag/tag-group/tag-group.d.ts.map +1 -1
  397. package/development/tag/tag-group.js +7 -4
  398. package/development/tag/tag.js +16 -12
  399. package/development/teaser/teaser.d.ts +2 -2
  400. package/development/teaser/teaser.d.ts.map +1 -1
  401. package/development/teaser-hero/teaser-hero.d.ts +2 -6
  402. package/development/teaser-hero/teaser-hero.d.ts.map +1 -1
  403. package/development/teaser-hero.js +9 -60
  404. package/development/teaser-product/common.js +7 -14
  405. package/development/teaser-product/teaser-product.js +1 -21
  406. package/development/teaser.js +12 -31
  407. package/development/time-input/time-input.d.ts +3 -6
  408. package/development/time-input/time-input.d.ts.map +1 -1
  409. package/development/time-input.js +33 -27
  410. package/development/toast/toast.d.ts +3 -0
  411. package/development/toast/toast.d.ts.map +1 -1
  412. package/development/toast.js +27 -13
  413. package/development/toggle/toggle/toggle.d.ts +4 -8
  414. package/development/toggle/toggle/toggle.d.ts.map +1 -1
  415. package/development/toggle/toggle.js +9 -12
  416. package/development/toggle-check/toggle-check.d.ts +4 -6
  417. package/development/toggle-check/toggle-check.d.ts.map +1 -1
  418. package/development/toggle-check.js +9 -7
  419. package/development/train/train/train.d.ts.map +1 -1
  420. package/development/train/train-blocked-passage.js +2 -2
  421. package/development/train/train-formation/train-formation.d.ts +3 -11
  422. package/development/train/train-formation/train-formation.d.ts.map +1 -1
  423. package/development/train/train-formation.js +43 -74
  424. package/development/train/train-wagon/train-wagon.d.ts +11 -8
  425. package/development/train/train-wagon/train-wagon.d.ts.map +1 -1
  426. package/development/train/train-wagon.js +149 -124
  427. package/development/train/train.js +35 -112
  428. package/development/visual-checkbox/visual-checkbox.d.ts +4 -1
  429. package/development/visual-checkbox/visual-checkbox.d.ts.map +1 -1
  430. package/development/visual-checkbox.js +7 -3
  431. package/dialog/dialog/dialog.d.ts +3 -0
  432. package/dialog/dialog/dialog.d.ts.map +1 -1
  433. package/dialog/dialog-title.js +9 -9
  434. package/dialog/dialog.js +56 -51
  435. package/expansion-panel/expansion-panel/expansion-panel.d.ts +7 -1
  436. package/expansion-panel/expansion-panel/expansion-panel.d.ts.map +1 -1
  437. package/expansion-panel/expansion-panel-header.js +1 -1
  438. package/expansion-panel/expansion-panel.js +41 -28
  439. package/file-selector/common/file-selector-common.d.ts +23 -0
  440. package/file-selector/common/file-selector-common.d.ts.map +1 -0
  441. package/file-selector/common.d.ts +2 -0
  442. package/file-selector/common.d.ts.map +1 -0
  443. package/file-selector/common.js +210 -0
  444. package/file-selector/file-selector/file-selector.d.ts +24 -0
  445. package/file-selector/file-selector/file-selector.d.ts.map +1 -0
  446. package/file-selector/file-selector-dropzone/file-selector-dropzone.d.ts +33 -0
  447. package/file-selector/file-selector-dropzone/file-selector-dropzone.d.ts.map +1 -0
  448. package/file-selector/file-selector-dropzone.d.ts +2 -0
  449. package/file-selector/file-selector-dropzone.d.ts.map +1 -0
  450. package/file-selector/file-selector-dropzone.js +97 -0
  451. package/file-selector/file-selector.d.ts +1 -87
  452. package/file-selector/file-selector.d.ts.map +1 -1
  453. package/file-selector/file-selector.js +44 -0
  454. package/file-selector.d.ts +2 -0
  455. package/file-selector.d.ts.map +1 -1
  456. package/file-selector.js +3 -301
  457. package/flip-card/flip-card-details.js +5 -5
  458. package/flip-card/flip-card-summary.js +7 -7
  459. package/flip-card/flip-card.js +9 -9
  460. package/form-field/form-field/form-field.d.ts +5 -10
  461. package/form-field/form-field/form-field.d.ts.map +1 -1
  462. package/form-field/form-field-clear.js +12 -12
  463. package/form-field/form-field.js +143 -141
  464. package/header/common.js +10 -10
  465. package/header/header/header.d.ts +5 -3
  466. package/header/header/header.d.ts.map +1 -1
  467. package/header/header.js +28 -31
  468. package/image/image.d.ts +0 -30
  469. package/image/image.d.ts.map +1 -1
  470. package/image.js +187 -281
  471. package/index.d.ts +13 -9
  472. package/index.js +13 -9
  473. package/journey-header/journey-header.d.ts +4 -1
  474. package/journey-header/journey-header.d.ts.map +1 -1
  475. package/journey-header.js +29 -25
  476. package/lead-container.js +5 -5
  477. package/link/common/link-common.d.ts.map +1 -1
  478. package/link/common.js +18 -16
  479. package/link-list/common/link-list-base.d.ts +1 -0
  480. package/link-list/common/link-list-base.d.ts.map +1 -1
  481. package/link-list/common.js +11 -9
  482. package/link-list/link-list-anchor.js +8 -8
  483. package/loading-indicator/loading-indicator.d.ts +1 -3
  484. package/loading-indicator/loading-indicator.d.ts.map +1 -1
  485. package/loading-indicator-circle/loading-indicator-circle.d.ts +16 -0
  486. package/loading-indicator-circle/loading-indicator-circle.d.ts.map +1 -0
  487. package/loading-indicator-circle.d.ts +2 -0
  488. package/loading-indicator-circle.d.ts.map +1 -0
  489. package/loading-indicator-circle.js +46 -0
  490. package/loading-indicator.js +41 -51
  491. package/map-container/map-container.d.ts.map +1 -1
  492. package/map-container.js +7 -7
  493. package/menu/common.js +8 -8
  494. package/menu/menu/menu.d.ts +3 -0
  495. package/menu/menu/menu.d.ts.map +1 -1
  496. package/menu/menu.js +52 -43
  497. package/navigation/common/navigation-action-common.d.ts.map +1 -1
  498. package/navigation/common.js +10 -6
  499. package/navigation/navigation/navigation.d.ts +3 -0
  500. package/navigation/navigation/navigation.d.ts.map +1 -1
  501. package/navigation/navigation-list/navigation-list.d.ts.map +1 -1
  502. package/navigation/navigation-list.js +17 -16
  503. package/navigation/navigation-marker/navigation-marker.d.ts +2 -1
  504. package/navigation/navigation-marker/navigation-marker.d.ts.map +1 -1
  505. package/navigation/navigation-marker.js +12 -10
  506. package/navigation/navigation-section/navigation-section.d.ts +3 -0
  507. package/navigation/navigation-section/navigation-section.d.ts.map +1 -1
  508. package/navigation/navigation-section.js +46 -37
  509. package/navigation/navigation.js +30 -21
  510. package/notification/notification.d.ts +6 -2
  511. package/notification/notification.d.ts.map +1 -1
  512. package/notification.js +55 -51
  513. package/option/option/option-base-element.d.ts +0 -7
  514. package/option/option/option-base-element.d.ts.map +1 -1
  515. package/option/option.js +110 -125
  516. package/overlay/overlay-base-element.d.ts +2 -0
  517. package/overlay/overlay-base-element.d.ts.map +1 -1
  518. package/overlay/overlay.d.ts +3 -0
  519. package/overlay/overlay.d.ts.map +1 -1
  520. package/overlay.js +83 -77
  521. package/package.json +40 -25
  522. package/paginator/common/paginator-common.d.ts.map +1 -1
  523. package/paginator/common.js +21 -17
  524. package/paginator/paginator.js +1 -1
  525. package/popover/popover/popover.d.ts +3 -0
  526. package/popover/popover/popover.d.ts.map +1 -1
  527. package/popover/popover-trigger.js +6 -6
  528. package/popover/popover.js +114 -109
  529. package/radio-button/common/radio-button-common.d.ts +3 -10
  530. package/radio-button/common/radio-button-common.d.ts.map +1 -1
  531. package/radio-button/common.js +43 -90
  532. package/radio-button/radio-button/radio-button.d.ts +9 -1
  533. package/radio-button/radio-button/radio-button.d.ts.map +1 -1
  534. package/radio-button/radio-button-group/radio-button-group.d.ts +19 -26
  535. package/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
  536. package/radio-button/radio-button-group.js +112 -131
  537. package/radio-button/radio-button-panel/radio-button-panel.d.ts +20 -2
  538. package/radio-button/radio-button-panel/radio-button-panel.d.ts.map +1 -1
  539. package/radio-button/radio-button-panel.js +56 -44
  540. package/radio-button/radio-button.js +34 -38
  541. package/select/select.d.ts +3 -9
  542. package/select/select.d.ts.map +1 -1
  543. package/select.js +65 -66
  544. package/selection-expansion-panel/selection-expansion-panel.d.ts +4 -1
  545. package/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -1
  546. package/selection-expansion-panel.js +41 -31
  547. package/skiplink-list/skiplink-list.d.ts.map +1 -1
  548. package/skiplink-list.js +14 -13
  549. package/slider/slider.d.ts +0 -1
  550. package/slider/slider.d.ts.map +1 -1
  551. package/slider.js +1 -1
  552. package/standard-theme.css +237 -8
  553. package/stepper/step-label/step-label.d.ts +0 -2
  554. package/stepper/step-label/step-label.d.ts.map +1 -1
  555. package/stepper/step-label.js +6 -6
  556. package/stepper/step.js +4 -4
  557. package/stepper/stepper/stepper.d.ts +4 -1
  558. package/stepper/stepper/stepper.d.ts.map +1 -1
  559. package/stepper/stepper.js +22 -19
  560. package/table.css +15 -0
  561. package/tabs/tab-group/tab-group.d.ts +4 -1
  562. package/tabs/tab-group/tab-group.d.ts.map +1 -1
  563. package/tabs/tab-group.js +24 -20
  564. package/tabs/tab-label.js +1 -1
  565. package/tag/tag/tag.d.ts +4 -1
  566. package/tag/tag/tag.d.ts.map +1 -1
  567. package/tag/tag-group/tag-group.d.ts +5 -2
  568. package/tag/tag-group/tag-group.d.ts.map +1 -1
  569. package/tag/tag-group.js +13 -10
  570. package/tag/tag.js +25 -21
  571. package/teaser/teaser.d.ts +2 -2
  572. package/teaser/teaser.d.ts.map +1 -1
  573. package/teaser-hero/teaser-hero.d.ts +2 -6
  574. package/teaser-hero/teaser-hero.d.ts.map +1 -1
  575. package/teaser-hero.js +32 -57
  576. package/teaser-product/common.js +1 -1
  577. package/teaser-product/teaser-product.js +13 -13
  578. package/teaser.js +28 -28
  579. package/time-input/time-input.d.ts +3 -6
  580. package/time-input/time-input.d.ts.map +1 -1
  581. package/time-input.js +56 -55
  582. package/toast/toast.d.ts +3 -0
  583. package/toast/toast.d.ts.map +1 -1
  584. package/toast.js +51 -42
  585. package/toggle/toggle/toggle.d.ts +4 -8
  586. package/toggle/toggle/toggle.d.ts.map +1 -1
  587. package/toggle/toggle.js +48 -48
  588. package/toggle-check/toggle-check.d.ts +4 -6
  589. package/toggle-check/toggle-check.d.ts.map +1 -1
  590. package/toggle-check.js +23 -21
  591. package/train/train/train.d.ts.map +1 -1
  592. package/train/train-blocked-passage.js +1 -1
  593. package/train/train-formation/train-formation.d.ts +3 -11
  594. package/train/train-formation/train-formation.d.ts.map +1 -1
  595. package/train/train-formation.js +47 -65
  596. package/train/train-wagon/train-wagon.d.ts +11 -8
  597. package/train/train-wagon/train-wagon.d.ts.map +1 -1
  598. package/train/train-wagon.js +123 -134
  599. package/train/train.js +74 -78
  600. package/visual-checkbox/visual-checkbox.d.ts +4 -1
  601. package/visual-checkbox/visual-checkbox.d.ts.map +1 -1
  602. package/visual-checkbox.js +21 -17
  603. package/button/mini-button/mini-button-base-element.d.ts +0 -8
  604. package/button/mini-button/mini-button-base-element.d.ts.map +0 -1
  605. package/button/tertiary-button/tertiary-button.d.ts +0 -19
  606. package/button/tertiary-button/tertiary-button.d.ts.map +0 -1
  607. package/button/tertiary-button-link/tertiary-button-link.d.ts +0 -19
  608. package/button/tertiary-button-link/tertiary-button-link.d.ts.map +0 -1
  609. package/button/tertiary-button-link.d.ts +0 -2
  610. package/button/tertiary-button-link.d.ts.map +0 -1
  611. package/button/tertiary-button-link.js +0 -17
  612. package/button/tertiary-button-static/tertiary-button-static.d.ts +0 -19
  613. package/button/tertiary-button-static/tertiary-button-static.d.ts.map +0 -1
  614. package/button/tertiary-button-static.d.ts +0 -2
  615. package/button/tertiary-button-static.d.ts.map +0 -1
  616. package/button/tertiary-button-static.js +0 -17
  617. package/button/tertiary-button.d.ts +0 -2
  618. package/button/tertiary-button.d.ts.map +0 -1
  619. package/button/tertiary-button.js +0 -17
  620. package/chip/chip.d.ts.map +0 -1
  621. package/chip.d.ts +0 -2
  622. package/chip.d.ts.map +0 -1
  623. package/chip.js +0 -54
  624. package/core/dom/get-document-writing-mode.d.ts +0 -5
  625. package/core/dom/get-document-writing-mode.d.ts.map +0 -1
  626. package/core/dom/ssr.d.ts +0 -13
  627. package/core/dom/ssr.d.ts.map +0 -1
  628. package/core/eventing/handler-repository.d.ts +0 -28
  629. package/core/eventing/handler-repository.d.ts.map +0 -1
  630. package/core/observers/intersection-observer.d.ts +0 -20
  631. package/core/observers/intersection-observer.d.ts.map +0 -1
  632. package/core/observers/mutation-observer.d.ts +0 -13
  633. package/core/observers/mutation-observer.d.ts.map +0 -1
  634. package/core/observers/resize-observer.d.ts +0 -16
  635. package/core/observers/resize-observer.d.ts.map +0 -1
  636. package/core/observers.d.ts +0 -4
  637. package/core/observers.d.ts.map +0 -1
  638. package/core/observers.js +0 -38
  639. package/core/testing/wait-for-event.d.ts +0 -2
  640. package/core/testing/wait-for-event.d.ts.map +0 -1
  641. package/development/button/mini-button/mini-button-base-element.d.ts +0 -8
  642. package/development/button/mini-button/mini-button-base-element.d.ts.map +0 -1
  643. package/development/button/tertiary-button/tertiary-button.d.ts +0 -19
  644. package/development/button/tertiary-button/tertiary-button.d.ts.map +0 -1
  645. package/development/button/tertiary-button-link/tertiary-button-link.d.ts +0 -19
  646. package/development/button/tertiary-button-link/tertiary-button-link.d.ts.map +0 -1
  647. package/development/button/tertiary-button-link.d.ts +0 -2
  648. package/development/button/tertiary-button-link.d.ts.map +0 -1
  649. package/development/button/tertiary-button-link.js +0 -25
  650. package/development/button/tertiary-button-static/tertiary-button-static.d.ts +0 -19
  651. package/development/button/tertiary-button-static/tertiary-button-static.d.ts.map +0 -1
  652. package/development/button/tertiary-button-static.d.ts +0 -2
  653. package/development/button/tertiary-button-static.d.ts.map +0 -1
  654. package/development/button/tertiary-button-static.js +0 -25
  655. package/development/button/tertiary-button.d.ts +0 -2
  656. package/development/button/tertiary-button.d.ts.map +0 -1
  657. package/development/button/tertiary-button.js +0 -25
  658. package/development/chip/chip.d.ts.map +0 -1
  659. package/development/chip.d.ts +0 -2
  660. package/development/chip.d.ts.map +0 -1
  661. package/development/core/dom/get-document-writing-mode.d.ts +0 -5
  662. package/development/core/dom/get-document-writing-mode.d.ts.map +0 -1
  663. package/development/core/dom/ssr.d.ts +0 -13
  664. package/development/core/dom/ssr.d.ts.map +0 -1
  665. package/development/core/eventing/handler-repository.d.ts +0 -28
  666. package/development/core/eventing/handler-repository.d.ts.map +0 -1
  667. package/development/core/observers/intersection-observer.d.ts +0 -20
  668. package/development/core/observers/intersection-observer.d.ts.map +0 -1
  669. package/development/core/observers/mutation-observer.d.ts +0 -13
  670. package/development/core/observers/mutation-observer.d.ts.map +0 -1
  671. package/development/core/observers/resize-observer.d.ts +0 -16
  672. package/development/core/observers/resize-observer.d.ts.map +0 -1
  673. package/development/core/observers.d.ts +0 -4
  674. package/development/core/observers.d.ts.map +0 -1
  675. package/development/core/observers.js +0 -39
  676. package/development/core/testing/wait-for-event.d.ts +0 -2
  677. package/development/core/testing/wait-for-event.d.ts.map +0 -1
@@ -0,0 +1,97 @@
1
+ var p = (e) => {
2
+ throw TypeError(e);
3
+ };
4
+ var m = (e, i, s) => i.has(e) || p("Cannot " + s);
5
+ var g = (e, i, s) => (m(e, i, "read from private field"), s ? s.call(e) : i.get(e)), _ = (e, i, s) => i.has(e) ? p("Cannot add the same private member more than once") : i instanceof WeakSet ? i.add(e) : i.set(e, s), n = (e, i, s, r) => (m(e, i, "write to private field"), r ? r.call(e, s) : i.set(e, s), s);
6
+ import { __runInitializers as b, __esDecorate as u } from "tslib";
7
+ import { css as y, LitElement as z } from "lit";
8
+ import { customElement as x, property as S } from "lit/decorators.js";
9
+ import { ref as D } from "lit/directives/ref.js";
10
+ import { html as k } from "lit/static-html.js";
11
+ import { slotState as C, forceType as E } from "../core/decorators.js";
12
+ import { i18nFileSelectorSubtitleLabel as $, i18nFileSelectorButtonLabel as F } from "../core/i18n.js";
13
+ import { SbbFileSelectorCommonElementMixin as L, fileSelectorCommonStyle as T } from "./common.js";
14
+ import "../button/secondary-button.js";
15
+ import "../button/secondary-button-static.js";
16
+ import "../icon.js";
17
+ const w = y`*,:before,:after{box-sizing:border-box}.sbb-file-selector__dropzone-area{display:flex;flex-direction:column;align-items:center;padding:var(--sbb-spacing-responsive-s);background-color:var(--sbb-file-selector-background-color);border:var(--sbb-border-width-1x) dashed var(--sbb-file-selector-border-color);border-radius:var(--sbb-border-radius-4x);transition-duration:var(--sbb-file-selector-transition-duration);transition-timing-function:var(--sbb-file-selector-transition-easing-function);transition-property:background-color,border-color}.sbb-file-selector__dropzone-area--icon{color:var(--sbb-file-selector-color);line-height:0}.sbb-file-selector__dropzone-area--title{--sbb-title-line-height: var(--sbb-typo-line-height-titles);--sbb-title-margin-block-start: 0;--sbb-title-margin-block-end: 0;margin:0;margin-block:var(--sbb-title-margin-block-start) var(--sbb-title-margin-block-end);font-family:var(--sbb-typo-font-family);font-weight:700;line-height:var(--sbb-title-line-height);letter-spacing:var(--sbb-typo-letter-spacing-titles);font-size:var(--sbb-title-font-size);--sbb-title-font-size: var(--sbb-font-size-title-6);--sbb-title-line-height: var(--sbb-typo-line-height-body-text);text-align:center;color:var(--sbb-file-selector-color)}.sbb-file-selector__dropzone-area--subtitle{--sbb-text-font-size: var(--sbb-font-size-text-xs);font-family:var(--sbb-typo-font-family);font-weight:400;line-height:var(--sbb-typo-line-height-body-text);letter-spacing:var(--sbb-typo-letter-spacing-body-text);font-size:var(--sbb-text-font-size);text-align:center;color:var(--sbb-file-selector-subtitle-color);margin-block-end:var(--sbb-spacing-fixed-4x)}`;
18
+ let Q = (() => {
19
+ var l, a;
20
+ let e = [x("sbb-file-selector-dropzone"), C()], i, s = [], r, c = L(z), d, f = [], h = [];
21
+ return a = class extends c {
22
+ constructor() {
23
+ super(...arguments);
24
+ _(this, l);
25
+ n(this, l, b(this, f, "")), this._counter = (b(this, h), 0);
26
+ }
27
+ /** The title displayed in `dropzone` variant. */
28
+ get titleContent() {
29
+ return g(this, l);
30
+ }
31
+ set titleContent(t) {
32
+ n(this, l, t);
33
+ }
34
+ _blockEvent(t) {
35
+ t.stopPropagation(), t.preventDefault();
36
+ }
37
+ _onDragEnter(t) {
38
+ this._counter++, !this.disabled && !this.formDisabled && (this._setDragState(t.target, !0), this._blockEvent(t));
39
+ }
40
+ _onDragLeave(t) {
41
+ this._counter--, !this.disabled && !this.formDisabled && t.target === this._dragTarget && this._counter === 0 && (this._setDragState(), this._blockEvent(t));
42
+ }
43
+ _onFileDrop(t) {
44
+ this._counter = 0, !this.disabled && !this.formDisabled && (this._setDragState(), this._blockEvent(t), this.createFileList(t.dataTransfer.files));
45
+ }
46
+ _setDragState(t = void 0, o = !1) {
47
+ this._dragTarget = t, this.toggleAttribute("data-active", o), this.loadButton.toggleAttribute("data-active", o);
48
+ }
49
+ renderTemplate(t) {
50
+ return k`
51
+ <div
52
+ class="sbb-file-selector__input-container"
53
+ @dragenter=${this._onDragEnter}
54
+ @dragover=${this._blockEvent}
55
+ @dragleave=${this._onDragLeave}
56
+ @drop=${this._onFileDrop}
57
+ >
58
+ <label>
59
+ <span class="sbb-file-selector__dropzone-area">
60
+ <span class="sbb-file-selector__dropzone-area--icon">
61
+ <sbb-icon
62
+ name=${this.size === "m" ? "folder-open-medium" : "folder-open-small"}
63
+ ></sbb-icon>
64
+ </span>
65
+ <span class="sbb-file-selector__dropzone-area--title">${this.titleContent}</span>
66
+ <span class="sbb-file-selector__dropzone-area--subtitle">
67
+ ${$[this.language.current]}
68
+ </span>
69
+ <span class="sbb-file-selector__dropzone-area--button">
70
+ <sbb-secondary-button-static
71
+ size=${this.size}
72
+ ?disabled=${this.disabled || this.formDisabled}
73
+ ${D((o) => {
74
+ this.loadButton = o;
75
+ })}
76
+ >
77
+ ${F[this.language.current]}
78
+ </sbb-secondary-button-static>
79
+ </span>
80
+ </span>
81
+ ${t}
82
+ </label>
83
+ </div>
84
+ `;
85
+ }
86
+ }, l = new WeakMap(), r = a, (() => {
87
+ const t = typeof Symbol == "function" && Symbol.metadata ? Object.create(c[Symbol.metadata] ?? null) : void 0;
88
+ d = [E(), S({ attribute: "title-content" })], u(a, null, d, { kind: "accessor", name: "titleContent", static: !1, private: !1, access: { has: (o) => "titleContent" in o, get: (o) => o.titleContent, set: (o, v) => {
89
+ o.titleContent = v;
90
+ } }, metadata: t }, f, h), u(null, i = { value: r }, e, { kind: "class", name: r.name, metadata: t }, null, s), r = i.value, t && Object.defineProperty(r, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: t });
91
+ })(), a.styles = [T, w], a.events = {
92
+ fileChangedEvent: "fileChanged"
93
+ }, b(r, s), r;
94
+ })();
95
+ export {
96
+ Q as SbbFileSelectorDropzoneElement
97
+ };
@@ -1,88 +1,2 @@
1
- import { CSSResultGroup, LitElement, TemplateResult } from 'lit';
2
- import { FormRestoreReason, FormRestoreState } from '../core/mixins.js';
3
- export type DOMEvent = globalThis.Event;
4
- declare const SbbFileSelectorElement_base: import('../core/mixins.js').AbstractConstructor<import('../core/mixins.js').SbbDisabledMixinType> & import('../core/mixins.js').AbstractConstructor<import('../core/mixins.js').SbbFormAssociatedMixinType<string>> & typeof LitElement;
5
- /**
6
- * It allows to select one or more file from storage devices and display them.
7
- *
8
- * @slot error - Use this to provide a `sbb-form-error` to show an error message.
9
- * @event {CustomEvent<File[]>} fileChanged - An event which is emitted each time the file list changes.
10
- * @event change - An event which is emitted each time the user modifies the value. Unlike the input event, the change event is not necessarily fired for each alteration to an element's value
11
- * @event input - An event which is emitted each time the value changes as a direct result of a user action.
12
- * @overrideType value - string | null
13
- */
14
- export declare class SbbFileSelectorElement extends SbbFileSelectorElement_base {
15
- static styles: CSSResultGroup;
16
- static readonly events: {
17
- readonly fileChangedEvent: "fileChanged";
18
- };
19
- /** Whether the component has a dropzone area or not. */
20
- accessor variant: 'default' | 'dropzone';
21
- /** Size variant, either s or m. */
22
- accessor size: 's' | 'm';
23
- /** Whether more than one file can be selected. */
24
- accessor multiple: boolean;
25
- /** Whether the newly added files should override the previously added ones. */
26
- accessor multipleMode: 'default' | 'persistent';
27
- /** A comma-separated list of allowed unique file type specifiers. */
28
- accessor accept: string;
29
- /** The title displayed in `dropzone` variant. */
30
- accessor titleContent: string;
31
- /** This will be forwarded as aria-label to the native input element. */
32
- accessor accessibilityLabel: string;
33
- /** The path of the first selected file. Empty string ('') if no file is selected */
34
- set value(value: string | null);
35
- get value(): string | null;
36
- /**
37
- * The list of selected files.
38
- */
39
- set files(value: File[]);
40
- get files(): File[];
41
- private _files;
42
- /**
43
- * Form type of element.
44
- * @default 'file'
45
- */
46
- get type(): string;
47
- /** An event which is emitted each time the file list changes. */
48
- private _fileChangedEvent;
49
- private _counter;
50
- private _loadButton;
51
- private _dragTarget?;
52
- private _hiddenInput;
53
- private _suffixes;
54
- private _liveRegion;
55
- private _language;
56
- /**
57
- * @deprecated use the 'files' property instead
58
- */
59
- getFiles(): File[];
60
- formResetCallback(): void;
61
- formStateRestoreCallback(state: FormRestoreState | null, _reason?: FormRestoreReason): void;
62
- protected updateFormValue(): void;
63
- private _blockEvent;
64
- private _checkFileEquality;
65
- private _onDragEnter;
66
- private _onDragLeave;
67
- private _onFileDrop;
68
- private _onFocus;
69
- private _onBlur;
70
- private _setDragState;
71
- private _readFiles;
72
- private _createFileList;
73
- private _removeFile;
74
- /** Calculates the correct unit for the file's size. */
75
- private _formatFileSize;
76
- private _updateA11yLiveRegion;
77
- private _renderDefaultMode;
78
- private _renderDropzoneArea;
79
- private _renderFileList;
80
- protected render(): TemplateResult;
81
- }
82
- declare global {
83
- interface HTMLElementTagNameMap {
84
- 'sbb-file-selector': SbbFileSelectorElement;
85
- }
86
- }
87
- export {};
1
+ export * from './file-selector/file-selector.js';
88
2
  //# sourceMappingURL=file-selector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-selector.d.ts","sourceRoot":"","sources":["../../../src/elements/file-selector/file-selector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,UAAU,EAAW,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAgBpF,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EAGtB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,+BAA+B,CAAC;AACvC,OAAO,sCAAsC,CAAC;AAC9C,OAAO,YAAY,CAAC;AAEpB,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC;;AAExC;;;;;;;;GAQG;AACH,qBAGM,sBAAuB,SAAQ,2BAAoD;IACvF,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,gBAAuB,MAAM;;MAElB;IAEX,wDAAwD;IACxD,SAA4B,OAAO,EAAE,SAAS,GAAG,UAAU,CAAa;IAExE,mCAAmC;IACnC,SAA6C,IAAI,EAAE,GAAG,GAAG,GAAG,CAAO;IAEnE,kDAAkD;IAClD,SAEgB,QAAQ,EAAE,OAAO,CAAS;IAE1C,+EAA+E;IAC/E,SACgB,YAAY,EAAE,SAAS,GAAG,YAAY,CAAa;IAEnE,qEAAqE;IACrE,SAEgB,MAAM,EAAE,MAAM,CAAM;IAEpC,iDAAiD;IACjD,SAEgB,YAAY,EAAE,MAAM,CAAM;IAE1C,wEAAwE;IACxE,SAEgB,kBAAkB,EAAE,MAAM,CAAM;IAEhD,oFAAoF;IACpF,IACoB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAM7C;IACD,IAAoB,KAAK,IAAI,MAAM,GAAG,IAAI,CAEzC;IAED;;OAEG;IACH,IACW,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,EAS7B;IACD,IAAW,KAAK,IAAI,IAAI,EAAE,CAEzB;IACD,OAAO,CAAC,MAAM,CAAc;IAE5B;;;OAGG;IACH,IAAoB,IAAI,IAAI,MAAM,CAEjC;IAED,iEAAiE;IACjE,OAAO,CAAC,iBAAiB,CAGvB;IAIF,OAAO,CAAC,QAAQ,CAAa;IAE7B,OAAO,CAAC,WAAW,CAAmC;IACtD,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,SAAS,CAA2C;IAC5D,OAAO,CAAC,WAAW,CAAwB;IAE3C,OAAO,CAAC,SAAS,CAAmC;IAEpD;;OAEG;IACI,QAAQ,IAAI,IAAI,EAAE;IAIT,iBAAiB,IAAI,IAAI;IAIzB,wBAAwB,CACtC,KAAK,EAAE,gBAAgB,GAAG,IAAI,EAC9B,OAAO,CAAC,EAAE,iBAAiB,GAC1B,IAAI;cAOY,eAAe,IAAI,IAAI;IAM1C,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,YAAY;IAapB,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,QAAQ;IAMhB,OAAO,CAAC,OAAO;IAMf,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,eAAe;IAiBvB,OAAO,CAAC,WAAW;IAUnB,uDAAuD;IACvD,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,qBAAqB;IAM7B,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,mBAAmB;IA2B3B,OAAO,CAAC,eAAe;cA4BJ,MAAM,IAAI,cAAc;CA2C5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,mBAAmB,EAAE,sBAAsB,CAAC;KAC7C;CACF"}
1
+ {"version":3,"file":"file-selector.d.ts","sourceRoot":"","sources":["../../../src/elements/file-selector/file-selector.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAC"}
@@ -0,0 +1,44 @@
1
+ import { __esDecorate as m, __runInitializers as n } from "tslib";
2
+ import { LitElement as c } from "lit";
3
+ import { customElement as b } from "lit/decorators.js";
4
+ import { ref as u } from "lit/directives/ref.js";
5
+ import { html as d } from "lit/static-html.js";
6
+ import { slotState as f } from "../core/decorators.js";
7
+ import { i18nFileSelectorButtonLabel as p } from "../core/i18n.js";
8
+ import { SbbFileSelectorCommonElementMixin as S, fileSelectorCommonStyle as h } from "./common.js";
9
+ import "../button/secondary-button.js";
10
+ import "../button/secondary-button-static.js";
11
+ import "../icon.js";
12
+ let j = (() => {
13
+ var e;
14
+ let o = [b("sbb-file-selector"), f()], i, a = [], t, r = S(c);
15
+ return e = class extends r {
16
+ renderTemplate(l) {
17
+ return d`
18
+ <div class="sbb-file-selector__input-container">
19
+ <label>
20
+ <sbb-secondary-button-static
21
+ size=${this.size}
22
+ icon-name="folder-open-small"
23
+ ?disabled=${this.disabled || this.formDisabled}
24
+ ${u((s) => {
25
+ this.loadButton = s;
26
+ })}
27
+ >
28
+ ${p[this.language.current]}
29
+ </sbb-secondary-button-static>
30
+ ${l}
31
+ </label>
32
+ </div>
33
+ `;
34
+ }
35
+ }, t = e, (() => {
36
+ const l = typeof Symbol == "function" && Symbol.metadata ? Object.create(r[Symbol.metadata] ?? null) : void 0;
37
+ m(null, i = { value: t }, o, { kind: "class", name: t.name, metadata: l }, null, a), t = i.value, l && Object.defineProperty(t, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: l });
38
+ })(), e.styles = h, e.events = {
39
+ fileChangedEvent: "fileChanged"
40
+ }, n(t, a), t;
41
+ })();
42
+ export {
43
+ j as SbbFileSelectorElement
44
+ };
@@ -1,2 +1,4 @@
1
+ export * from './file-selector/common.js';
2
+ export * from './file-selector/file-selector-dropzone.js';
1
3
  export * from './file-selector/file-selector.js';
2
4
  //# sourceMappingURL=file-selector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-selector.d.ts","sourceRoot":"","sources":["../../src/elements/file-selector.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAC"}
1
+ {"version":3,"file":"file-selector.d.ts","sourceRoot":"","sources":["../../src/elements/file-selector.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2CAA2C,CAAC;AAC1D,cAAc,kCAAkC,CAAC"}
package/file-selector.js CHANGED
@@ -1,301 +1,3 @@
1
- var Z = (s) => {
2
- throw TypeError(s);
3
- };
4
- var ee = (s, r, n) => r.has(s) || Z("Cannot " + n);
5
- var h = (s, r, n) => (ee(s, r, "read from private field"), n ? n.call(s) : r.get(s)), f = (s, r, n) => r.has(s) ? Z("Cannot add the same private member more than once") : r instanceof WeakSet ? r.add(s) : r.set(s, n), o = (s, r, n, c) => (ee(s, r, "write to private field"), c ? c.call(s, n) : r.set(s, n), n);
6
- import { __runInitializers as l, __esDecorate as b } from "tslib";
7
- import { css as se, LitElement as ae, nothing as L } from "lit";
8
- import { customElement as le, property as d } from "lit/decorators.js";
9
- import { ref as z } from "lit/directives/ref.js";
10
- import { html as x, unsafeStatic as E } from "lit/static-html.js";
11
- import { sbbInputModalityDetector as te } from "./core/a11y.js";
12
- import { SbbLanguageController as re } from "./core/controllers.js";
13
- import { slotState as oe, forceType as $ } from "./core/decorators.js";
14
- import { EventEmitter as ne, forwardEventToHost as ce } from "./core/eventing.js";
15
- import { i18nFileSelectorCurrentlySelected as be, i18nFileSelectorButtonLabel as w, i18nFileSelectorSubtitleLabel as de, i18nFileSelectorDeleteFile as he } from "./core/i18n.js";
16
- import { SbbDisabledMixin as fe, SbbFormAssociatedMixin as ue } from "./core/mixins.js";
17
- import "./button/secondary-button.js";
18
- import "./button/secondary-button-static.js";
19
- import "./icon.js";
20
- const _e = se`*,:before,:after{box-sizing:border-box}:host{--sbb-file-selector-color: var(--sbb-color-black);--sbb-file-selector-subtitle-color: var(--sbb-color-granite);--sbb-file-selector-background-color: var(--sbb-color-white);--sbb-file-selector-border-color: var(--sbb-color-cloud);--sbb-file-selector-transition-duration: var( --sbb-disable-animation-zero-time, var(--sbb-animation-duration-2x) );--sbb-file-selector-transition-easing-function: var(--sbb-animation-easing);display:block;width:20rem}@media (forced-colors: active){:host(:disabled){--sbb-file-selector-color: GrayText;--sbb-file-selector-subtitle-color: GrayText;--sbb-file-selector-border-color: GrayText}}:host([data-active]){--sbb-file-selector-background-color: var(--sbb-color-milk);--sbb-file-selector-border-color: var(--sbb-color-storm)}@media (forced-colors: active){:host([data-active]){--sbb-file-selector-border-color: Highlight}}.sbb-file-selector__input-container{-webkit-tap-highlight-color:transparent;display:flex;flex-direction:column}.sbb-file-selector__visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.sbb-file-selector__dropzone-area{display:flex;flex-direction:column;align-items:center;padding:var(--sbb-spacing-responsive-s);background-color:var(--sbb-file-selector-background-color);border:var(--sbb-border-width-1x) dashed var(--sbb-file-selector-border-color);border-radius:var(--sbb-border-radius-4x);transition-duration:var(--sbb-file-selector-transition-duration);transition-timing-function:var(--sbb-file-selector-transition-easing-function);transition-property:background-color,border-color}.sbb-file-selector__dropzone-area--icon{color:var(--sbb-file-selector-color);line-height:0}.sbb-file-selector__dropzone-area--title{--sbb-title-line-height: var(--sbb-typo-line-height-titles);--sbb-title-margin-block-start: 0;--sbb-title-margin-block-end: 0;margin:0;margin-block:var(--sbb-title-margin-block-start) var(--sbb-title-margin-block-end);font-family:var(--sbb-typo-font-family);font-weight:700;line-height:var(--sbb-title-line-height);letter-spacing:var(--sbb-typo-letter-spacing-titles);font-size:var(--sbb-title-font-size);--sbb-title-font-size: var(--sbb-font-size-title-6);--sbb-title-line-height: var(--sbb-typo-line-height-body-text);text-align:center;color:var(--sbb-file-selector-color)}.sbb-file-selector__dropzone-area--subtitle{--sbb-text-font-size: var(--sbb-font-size-text-xs);font-family:var(--sbb-typo-font-family);font-weight:400;line-height:var(--sbb-typo-line-height-body-text);letter-spacing:var(--sbb-typo-letter-spacing-body-text);font-size:var(--sbb-text-font-size);text-align:center;color:var(--sbb-file-selector-subtitle-color);margin-block-end:var(--sbb-spacing-fixed-4x)}.sbb-file-selector__file-list{display:flex;flex-direction:column;row-gap:var(--sbb-spacing-fixed-3x);margin-block:0;padding-inline:0;padding-block:var(--sbb-spacing-fixed-6x) var(--sbb-spacing-fixed-1x)}.sbb-file-selector__file{--sbb-text-font-size: var(--sbb-font-size-text-s);font-family:var(--sbb-typo-font-family);font-weight:400;line-height:var(--sbb-typo-line-height-body-text);letter-spacing:var(--sbb-typo-letter-spacing-body-text);font-size:var(--sbb-text-font-size);display:flex;gap:var(--sbb-spacing-fixed-4x);align-items:center;justify-content:space-between}.sbb-file-selector__file-details{display:flex;flex:1;justify-content:space-between;gap:var(--sbb-spacing-fixed-4x);overflow:auto}.sbb-file-selector__file-name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sbb-file-selector__file-size{white-space:nowrap;color:var(--sbb-color-metal)}:host(:not([data-slot-names~=error])) .sbb-file-selector__error{display:none}`;
21
- let Ce = (() => {
22
- var u, _, p, m, g, v, y, a;
23
- let s = [le("sbb-file-selector"), oe()], r, n = [], c, M = fe(ue(ae)), k = [], D, S = [], C = [], A, I = [], R = [], T, B = [], P = [], G, N = [], j = [], V, W = [], q = [], H, O = [], J = [], K, Q = [], U = [], X, Y;
24
- var F = (a = class extends M {
25
- constructor() {
26
- super(...arguments);
27
- f(this, u);
28
- f(this, _);
29
- f(this, p);
30
- f(this, m);
31
- f(this, g);
32
- f(this, v);
33
- f(this, y);
34
- o(this, u, (l(this, k), l(this, S, "default"))), o(this, _, (l(this, C), l(this, I, "m"))), o(this, p, (l(this, R), l(this, B, !1))), o(this, m, (l(this, P), l(this, N, "default"))), o(this, g, (l(this, j), l(this, W, ""))), o(this, v, (l(this, q), l(this, O, ""))), o(this, y, (l(this, J), l(this, Q, ""))), this._files = (l(this, U), []), this._fileChangedEvent = new ne(this, F.events.fileChangedEvent), this._counter = 0, this._suffixes = ["B", "kB", "MB", "GB", "TB"], this._language = new re(this);
35
- }
36
- /** Whether the component has a dropzone area or not. */
37
- get variant() {
38
- return h(this, u);
39
- }
40
- set variant(e) {
41
- o(this, u, e);
42
- }
43
- /** Size variant, either s or m. */
44
- get size() {
45
- return h(this, _);
46
- }
47
- set size(e) {
48
- o(this, _, e);
49
- }
50
- /** Whether more than one file can be selected. */
51
- get multiple() {
52
- return h(this, p);
53
- }
54
- set multiple(e) {
55
- o(this, p, e);
56
- }
57
- /** Whether the newly added files should override the previously added ones. */
58
- get multipleMode() {
59
- return h(this, m);
60
- }
61
- set multipleMode(e) {
62
- o(this, m, e);
63
- }
64
- /** A comma-separated list of allowed unique file type specifiers. */
65
- get accept() {
66
- return h(this, g);
67
- }
68
- set accept(e) {
69
- o(this, g, e);
70
- }
71
- /** The title displayed in `dropzone` variant. */
72
- get titleContent() {
73
- return h(this, v);
74
- }
75
- set titleContent(e) {
76
- o(this, v, e);
77
- }
78
- /** This will be forwarded as aria-label to the native input element. */
79
- get accessibilityLabel() {
80
- return h(this, y);
81
- }
82
- set accessibilityLabel(e) {
83
- o(this, y, e);
84
- }
85
- /** The path of the first selected file. Empty string ('') if no file is selected */
86
- set value(e) {
87
- this._hiddenInput.value = e ?? "", e || (this.files = []);
88
- }
89
- get value() {
90
- var e;
91
- return (e = this._hiddenInput) == null ? void 0 : e.value;
92
- }
93
- /**
94
- * The list of selected files.
95
- */
96
- set files(e) {
97
- this._files = e ?? [];
98
- const t = new DataTransfer();
99
- this.files.forEach((i) => t.items.add(i)), this._hiddenInput.files = t.files, this.updateFormValue();
100
- }
101
- get files() {
102
- return this._files;
103
- }
104
- /**
105
- * Form type of element.
106
- * @default 'file'
107
- */
108
- get type() {
109
- return "file";
110
- }
111
- /**
112
- * @deprecated use the 'files' property instead
113
- */
114
- getFiles() {
115
- return this.files;
116
- }
117
- formResetCallback() {
118
- this.files = [];
119
- }
120
- formStateRestoreCallback(e, t) {
121
- e && (this.files = e.map(([i, ie]) => ie));
122
- }
123
- updateFormValue() {
124
- const e = new FormData();
125
- this.files.forEach((t) => e.append(this.name, t)), this.internals.setFormValue(e);
126
- }
127
- _blockEvent(e) {
128
- e.stopPropagation(), e.preventDefault();
129
- }
130
- _checkFileEquality(e, t) {
131
- return e.name === t.name && e.size === t.size && e.lastModified === t.lastModified;
132
- }
133
- _onDragEnter(e) {
134
- this._counter++, !this.disabled && !this.formDisabled && (this._setDragState(e.target, !0), this._blockEvent(e));
135
- }
136
- _onDragLeave(e) {
137
- this._counter--, !this.disabled && !this.formDisabled && e.target === this._dragTarget && this._counter === 0 && (this._setDragState(), this._blockEvent(e));
138
- }
139
- _onFileDrop(e) {
140
- this._counter = 0, !this.disabled && !this.formDisabled && (this._setDragState(), this._blockEvent(e), this._createFileList(e.dataTransfer.files));
141
- }
142
- _onFocus() {
143
- te.mostRecentModality === "keyboard" && this._loadButton.toggleAttribute("data-focus-visible", !0);
144
- }
145
- _onBlur() {
146
- te.mostRecentModality === "keyboard" && this._loadButton.removeAttribute("data-focus-visible");
147
- }
148
- _setDragState(e = void 0, t = !1) {
149
- this._dragTarget = e, this.toggleAttribute("data-active", t), this._loadButton.toggleAttribute("data-active", t);
150
- }
151
- _readFiles(e) {
152
- const t = e.target;
153
- t.files && this._createFileList(t.files), ce(e, this);
154
- }
155
- _createFileList(e) {
156
- !this.multiple || this.multipleMode !== "persistent" || this.files.length === 0 ? this.files = Array.from(e) : this.files = Array.from(e).filter(
157
- // Remove duplicates
158
- (t) => this.files.findIndex((i) => this._checkFileEquality(t, i)) === -1
159
- ).concat(this.files), this._updateA11yLiveRegion(), this._fileChangedEvent.emit(this.files);
160
- }
161
- _removeFile(e) {
162
- this.files = this.files.filter((t) => !this._checkFileEquality(e, t)), this._updateA11yLiveRegion(), this.dispatchEvent(new Event("input", { composed: !0, bubbles: !0 })), this.dispatchEvent(new Event("change", { bubbles: !0 })), this._fileChangedEvent.emit(this.files);
163
- }
164
- /** Calculates the correct unit for the file's size. */
165
- _formatFileSize(e) {
166
- const t = Math.floor(Math.log(e) / Math.log(1024));
167
- return `${(e / Math.pow(1024, t)).toFixed(0)} ${this._suffixes[t]}`;
168
- }
169
- _updateA11yLiveRegion() {
170
- this._liveRegion.innerText = be(this.files.map((e) => e.name))[this._language.current];
171
- }
172
- _renderDefaultMode() {
173
- return x`
174
- <sbb-secondary-button-static
175
- size=${this.size}
176
- icon-name="folder-open-small"
177
- ?disabled=${this.disabled || this.formDisabled}
178
- ${z((e) => {
179
- this._loadButton = e;
180
- })}
181
- >
182
- ${w[this._language.current]}
183
- </sbb-secondary-button-static>
184
- `;
185
- }
186
- _renderDropzoneArea() {
187
- return x`
188
- <span class="sbb-file-selector__dropzone-area">
189
- <span class="sbb-file-selector__dropzone-area--icon">
190
- <sbb-icon
191
- name=${this.size === "m" ? "folder-open-medium" : "folder-open-small"}
192
- ></sbb-icon>
193
- </span>
194
- <span class="sbb-file-selector__dropzone-area--title">${this.titleContent}</span>
195
- <span class="sbb-file-selector__dropzone-area--subtitle">
196
- ${de[this._language.current]}
197
- </span>
198
- <span class="sbb-file-selector__dropzone-area--button">
199
- <sbb-secondary-button-static
200
- size=${this.size}
201
- ?disabled=${this.disabled || this.formDisabled}
202
- ${z((e) => {
203
- this._loadButton = e;
204
- })}
205
- >
206
- ${w[this._language.current]}
207
- </sbb-secondary-button-static>
208
- </span>
209
- </span>
210
- `;
211
- }
212
- _renderFileList() {
213
- const e = this.files.length > 1 ? { WRAPPER: "ul", ELEMENT: "li" } : { WRAPPER: "div", ELEMENT: "span" };
214
- return x`
215
- <${E(e.WRAPPER)} class="sbb-file-selector__file-list">
216
- ${this.files.map((t) => x`
217
- <${E(e.ELEMENT)} class="sbb-file-selector__file">
218
- <span class="sbb-file-selector__file-details">
219
- <span class="sbb-file-selector__file-name">${t.name}</span>
220
- <span class="sbb-file-selector__file-size">${this._formatFileSize(t.size)}</span>
221
- </span>
222
- <sbb-secondary-button
223
- size=${this.size}
224
- icon-name="trash-small"
225
- @click=${() => this._removeFile(t)}
226
- aria-label=${`${he[this._language.current]} - ${t.name}`}
227
- ></sbb-secondary-button>
228
- </${E(e.ELEMENT)}>`)}
229
- </${E(e.WRAPPER)}>
230
- `;
231
- }
232
- render() {
233
- const e = this.accessibilityLabel ? `${w[this._language.current]} - ${this.accessibilityLabel}` : void 0;
234
- return x`
235
- <div class="sbb-file-selector">
236
- <div
237
- class="sbb-file-selector__input-container"
238
- @dragenter=${this._onDragEnter}
239
- @dragover=${this._blockEvent}
240
- @dragleave=${this._onDragLeave}
241
- @drop=${this._onFileDrop}
242
- >
243
- <label>
244
- ${this.variant === "default" ? this._renderDefaultMode() : this._renderDropzoneArea()}
245
- <input
246
- class="sbb-file-selector__visually-hidden"
247
- type="file"
248
- ?disabled=${this.disabled || this.formDisabled}
249
- ?multiple=${this.multiple}
250
- accept=${this.accept || L}
251
- aria-label=${e || L}
252
- @change=${this._readFiles}
253
- @focus=${this._onFocus}
254
- @blur=${this._onBlur}
255
- ${z((t) => {
256
- this._hiddenInput = t;
257
- })}
258
- />
259
- </label>
260
- </div>
261
- <p
262
- role="status"
263
- class="sbb-file-selector__visually-hidden"
264
- ${z((t) => this._liveRegion = t)}
265
- ></p>
266
- ${this.files.length > 0 ? this._renderFileList() : L}
267
- <div class="sbb-file-selector__error">
268
- <slot name="error"></slot>
269
- </div>
270
- </div>
271
- `;
272
- }
273
- }, u = new WeakMap(), _ = new WeakMap(), p = new WeakMap(), m = new WeakMap(), g = new WeakMap(), v = new WeakMap(), y = new WeakMap(), c = a, (() => {
274
- const e = typeof Symbol == "function" && Symbol.metadata ? Object.create(M[Symbol.metadata] ?? null) : void 0;
275
- D = [d()], A = [d({ reflect: !0 })], T = [$(), d({ type: Boolean })], G = [d({ attribute: "multiple-mode" })], V = [$(), d()], H = [$(), d({ attribute: "title-content" })], K = [$(), d({ attribute: "accessibility-label" })], X = [d({ attribute: !1 })], Y = [d({ attribute: !1 })], b(a, null, D, { kind: "accessor", name: "variant", static: !1, private: !1, access: { has: (t) => "variant" in t, get: (t) => t.variant, set: (t, i) => {
276
- t.variant = i;
277
- } }, metadata: e }, S, C), b(a, null, A, { kind: "accessor", name: "size", static: !1, private: !1, access: { has: (t) => "size" in t, get: (t) => t.size, set: (t, i) => {
278
- t.size = i;
279
- } }, metadata: e }, I, R), b(a, null, T, { kind: "accessor", name: "multiple", static: !1, private: !1, access: { has: (t) => "multiple" in t, get: (t) => t.multiple, set: (t, i) => {
280
- t.multiple = i;
281
- } }, metadata: e }, B, P), b(a, null, G, { kind: "accessor", name: "multipleMode", static: !1, private: !1, access: { has: (t) => "multipleMode" in t, get: (t) => t.multipleMode, set: (t, i) => {
282
- t.multipleMode = i;
283
- } }, metadata: e }, N, j), b(a, null, V, { kind: "accessor", name: "accept", static: !1, private: !1, access: { has: (t) => "accept" in t, get: (t) => t.accept, set: (t, i) => {
284
- t.accept = i;
285
- } }, metadata: e }, W, q), b(a, null, H, { kind: "accessor", name: "titleContent", static: !1, private: !1, access: { has: (t) => "titleContent" in t, get: (t) => t.titleContent, set: (t, i) => {
286
- t.titleContent = i;
287
- } }, metadata: e }, O, J), b(a, null, K, { kind: "accessor", name: "accessibilityLabel", static: !1, private: !1, access: { has: (t) => "accessibilityLabel" in t, get: (t) => t.accessibilityLabel, set: (t, i) => {
288
- t.accessibilityLabel = i;
289
- } }, metadata: e }, Q, U), b(a, null, X, { kind: "setter", name: "value", static: !1, private: !1, access: { has: (t) => "value" in t, set: (t, i) => {
290
- t.value = i;
291
- } }, metadata: e }, null, k), b(a, null, Y, { kind: "setter", name: "files", static: !1, private: !1, access: { has: (t) => "files" in t, set: (t, i) => {
292
- t.files = i;
293
- } }, metadata: e }, null, k), b(null, r = { value: c }, s, { kind: "class", name: c.name, metadata: e }, null, n), F = c = r.value, e && Object.defineProperty(c, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: e });
294
- })(), a.styles = _e, a.events = {
295
- fileChangedEvent: "fileChanged"
296
- }, l(c, n), a);
297
- return F = c;
298
- })();
299
- export {
300
- Ce as SbbFileSelectorElement
301
- };
1
+ export * from "./file-selector/common.js";
2
+ export * from "./file-selector/file-selector-dropzone.js";
3
+ export * from "./file-selector/file-selector.js";
@@ -4,7 +4,7 @@ import { css as p, html as f, LitElement as m } from "lit";
4
4
  import { customElement as u } from "lit/decorators.js";
5
5
  import { IS_FOCUSABLE_QUERY as v } from "../core/a11y.js";
6
6
  import { hostAttributes as y } from "../core/decorators.js";
7
- const h = p`*,:before,:after{box-sizing:border-box}:host{--sbb-flip-card-details-opacity: 0;--sbb-flip-card-details-translate-y: var(--sbb-spacing-fixed-2x);--sbb-flip-card-details-transition-delay: var( --sbb-disable-animation-zero-time, var(--sbb-animation-duration-5x) );--sbb-flip-card-details-padding: var(--sbb-spacing-responsive-s);--sbb-flip-card-details-padding-block-end: calc( var(--sbb-spacing-responsive-s) + var(--sbb-spacing-responsive-xs) + var(--sbb-size-element-m) );display:contents}.sbb-flip-card-details--wrapper{position:absolute;pointer-events:none;color:var(--sbb-color-milk);opacity:var(--sbb-flip-card-details-opacity);transform:translateY(var(--sbb-flip-card-details-translate-y));transition-property:transform,opacity;transition-duration:var(--sbb-flip-card-details-transition-duration)}:host([data-flipped]) .sbb-flip-card-details--wrapper{transition-delay:var(--sbb-flip-card-details-transition-delay),var(--sbb-flip-card-details-transition-delay)}.sbb-flip-card-details{overflow:hidden;padding:var(--sbb-flip-card-details-padding);padding-block-end:var(--sbb-flip-card-details-padding-block-end)}`;
7
+ const h = p`*,:before,:after{box-sizing:border-box}:host{--sbb-flip-card-details-opacity: 0;--sbb-flip-card-details-translate-y: var(--sbb-spacing-fixed-2x);--sbb-flip-card-details-transition-delay: var( --sbb-disable-animation-duration, var(--sbb-animation-duration-5x) );--sbb-flip-card-details-padding: var(--sbb-spacing-responsive-s);--sbb-flip-card-details-padding-block-end: calc( var(--sbb-spacing-responsive-s) + var(--sbb-spacing-responsive-xs) + var(--sbb-size-element-m) );display:contents}.sbb-flip-card-details--wrapper{position:absolute;pointer-events:none;color:var(--sbb-color-milk);opacity:var(--sbb-flip-card-details-opacity);transform:translateY(var(--sbb-flip-card-details-translate-y));transition-property:transform,opacity;transition-duration:var(--sbb-flip-card-details-transition-duration)}:host([data-flipped]) .sbb-flip-card-details--wrapper{transition-delay:var(--sbb-flip-card-details-transition-delay),var(--sbb-flip-card-details-transition-delay)}.sbb-flip-card-details{overflow:hidden;padding:var(--sbb-flip-card-details-padding);padding-block-end:var(--sbb-flip-card-details-padding-block-end)}`;
8
8
  let E = (() => {
9
9
  var a;
10
10
  let d = [u("sbb-flip-card-details"), y({
@@ -22,8 +22,8 @@ let E = (() => {
22
22
  }
23
23
  _checkForSlottedActions() {
24
24
  var o;
25
- const e = "data-card-focusable";
26
- Array.from(((o = this.querySelectorAll) == null ? void 0 : o.call(this, v)) ?? []).filter((s) => !s.hasAttribute(e)).forEach((s) => s.setAttribute(e, ""));
25
+ const s = "data-card-focusable";
26
+ Array.from(((o = this.querySelectorAll) == null ? void 0 : o.call(this, v)) ?? []).filter((e) => !e.hasAttribute(s)).forEach((e) => e.setAttribute(s, ""));
27
27
  }
28
28
  render() {
29
29
  return f`
@@ -35,8 +35,8 @@ let E = (() => {
35
35
  `;
36
36
  }
37
37
  }, t = a, (() => {
38
- const e = typeof Symbol == "function" && Symbol.metadata ? Object.create(l[Symbol.metadata] ?? null) : void 0;
39
- n(null, i = { value: t }, d, { kind: "class", name: t.name, metadata: e }, null, r), t = i.value, e && Object.defineProperty(t, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: e });
38
+ const s = typeof Symbol == "function" && Symbol.metadata ? Object.create(l[Symbol.metadata] ?? null) : void 0;
39
+ n(null, i = { value: t }, d, { kind: "class", name: t.name, metadata: s }, null, r), t = i.value, s && Object.defineProperty(t, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: s });
40
40
  })(), a.styles = h, b(t, r), t;
41
41
  })();
42
42
  export {
@@ -1,23 +1,23 @@
1
- var p = (a) => {
1
+ var c = (a) => {
2
2
  throw TypeError(a);
3
3
  };
4
- var u = (a, e, t) => e.has(a) || p("Cannot " + t);
5
- var f = (a, e, t) => (u(a, e, "read from private field"), t ? t.call(a) : e.get(a)), h = (a, e, t) => e.has(a) ? p("Cannot add the same private member more than once") : e instanceof WeakSet ? e.add(a) : e.set(a, t), y = (a, e, t, i) => (u(a, e, "write to private field"), i ? i.call(a, t) : e.set(a, t), t);
4
+ var u = (a, e, t) => e.has(a) || c("Cannot " + t);
5
+ var f = (a, e, t) => (u(a, e, "read from private field"), t ? t.call(a) : e.get(a)), h = (a, e, t) => e.has(a) ? c("Cannot add the same private member more than once") : e instanceof WeakSet ? e.add(a) : e.set(a, t), y = (a, e, t, i) => (u(a, e, "write to private field"), i ? i.call(a, t) : e.set(a, t), t);
6
6
  import { __esDecorate as v, __runInitializers as o } from "tslib";
7
7
  import { css as w, html as _, LitElement as A } from "lit";
8
8
  import { customElement as x, property as S } from "lit/decorators.js";
9
9
  import { hostAttributes as z } from "../core/decorators.js";
10
- const E = w`*,:before,:after{box-sizing:border-box}:host{--sbb-flip-card-summary-opacity: 1;--sbb-flip-card-summary-pointer-events: all;display:contents}.sbb-flip-card-summary{display:grid;min-height:var(--sbb-flip-card-min-height);pointer-events:var(--sbb-flip-card-summary-pointer-events);opacity:var(--sbb-flip-card-summary-opacity);border-radius:var(--sbb-flip-card-border-radius);overflow:hidden;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);width:100%;height:100%;transition:all var(--sbb-flip-card-summary-transition-duration) ease-out;transition-delay:var(--sbb-flip-card-summary-transition-delay)}@media (min-width: 37.5rem){:host([image-alignment=after]) .sbb-flip-card-summary{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:1fr}}@media (min-width: 52.5rem){:host([image-alignment=after]) .sbb-flip-card-summary{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr}}::slotted(sbb-title){padding-inline:var(--sbb-spacing-responsive-s);padding-block:var(--sbb-spacing-responsive-s) var(--sbb-spacing-responsive-xs);margin:0;grid-area:1/1/2/2}@media (min-width: 37.5rem){:host([image-alignment=after]) ::slotted(sbb-title){grid-area:1/1/2/3}}@media (min-width: 52.5rem){:host([image-alignment=after]) ::slotted(sbb-title){grid-area:1/1/2/2}}::slotted(*:not([slot=image])){transform:translateY(var(--sbb-flip-card-translate-title-y-hover, 0rem));transition:transform var(--sbb-disable-animation-zero-time, var(--sbb-animation-duration-2x)) var(--sbb-animation-easing)}.sbb-flip-card-summary--image-wrapper{grid-area:2/1/3/2}@media (min-width: 37.5rem){:host([image-alignment=after]) .sbb-flip-card-summary--image-wrapper{grid-area:1/3/2/4}}@media (min-width: 52.5rem){:host([image-alignment=after]) .sbb-flip-card-summary--image-wrapper{grid-area:1/2/2/3}}::slotted(img){object-fit:cover;width:100%;height:100%}::slotted(sbb-image){--sbb-image-border-radius: 0;--sbb-image-aspect-ratio: auto;width:100%;height:100%}`;
10
+ const E = w`*,:before,:after{box-sizing:border-box}:host{--sbb-flip-card-summary-opacity: 1;--sbb-flip-card-summary-pointer-events: all;display:contents}.sbb-flip-card-summary{display:grid;min-height:var(--sbb-flip-card-min-height);pointer-events:var(--sbb-flip-card-summary-pointer-events);opacity:var(--sbb-flip-card-summary-opacity);border-radius:var(--sbb-flip-card-border-radius);overflow:hidden;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);width:100%;height:100%;transition:all var(--sbb-flip-card-summary-transition-duration) ease-out;transition-delay:var(--sbb-flip-card-summary-transition-delay)}@media (min-width: 37.5rem){:host([image-alignment=after]) .sbb-flip-card-summary{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:1fr}}@media (min-width: 52.5rem){:host([image-alignment=after]) .sbb-flip-card-summary{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr}}::slotted(sbb-title){padding-inline:var(--sbb-spacing-responsive-s);padding-block:var(--sbb-spacing-responsive-s) var(--sbb-spacing-responsive-xs);margin:0;grid-area:1/1/2/2}@media (min-width: 37.5rem){:host([image-alignment=after]) ::slotted(sbb-title){grid-area:1/1/2/3}}@media (min-width: 52.5rem){:host([image-alignment=after]) ::slotted(sbb-title){grid-area:1/1/2/2}}::slotted(*:not([slot=image])){transform:translateY(var(--sbb-flip-card-translate-title-y-hover, 0rem));transition:transform var(--sbb-disable-animation-duration, var(--sbb-animation-duration-2x)) var(--sbb-animation-easing)}.sbb-flip-card-summary--image-wrapper{grid-area:2/1/3/2}@media (min-width: 37.5rem){:host([image-alignment=after]) .sbb-flip-card-summary--image-wrapper{grid-area:1/3/2/4}}@media (min-width: 52.5rem){:host([image-alignment=after]) .sbb-flip-card-summary--image-wrapper{grid-area:1/2/2/3}}::slotted([slot=image]){width:100%;height:100%}`;
11
11
  let C = (() => {
12
12
  var l, s;
13
13
  let a = [x("sbb-flip-card-summary"), z({
14
14
  slot: "summary"
15
- })], e, t = [], i, d = A, b, g = [], c = [];
15
+ })], e, t = [], i, d = A, b, g = [], p = [];
16
16
  return s = class extends d {
17
17
  constructor() {
18
18
  super(...arguments);
19
19
  h(this, l, o(this, g, "after"));
20
- o(this, c);
20
+ o(this, p);
21
21
  }
22
22
  /** The position where to render the image. */
23
23
  get imageAlignment() {
@@ -44,7 +44,7 @@ let C = (() => {
44
44
  const r = typeof Symbol == "function" && Symbol.metadata ? Object.create(d[Symbol.metadata] ?? null) : void 0;
45
45
  b = [S({ attribute: "image-alignment", reflect: !0 })], v(s, null, b, { kind: "accessor", name: "imageAlignment", static: !1, private: !1, access: { has: (m) => "imageAlignment" in m, get: (m) => m.imageAlignment, set: (m, n) => {
46
46
  m.imageAlignment = n;
47
- } }, metadata: r }, g, c), v(null, e = { value: i }, a, { kind: "class", name: i.name, metadata: r }, null, t), i = e.value, r && Object.defineProperty(i, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: r });
47
+ } }, metadata: r }, g, p), v(null, e = { value: i }, a, { kind: "class", name: i.name, metadata: r }, null, t), i = e.value, r && Object.defineProperty(i, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: r });
48
48
  })(), s.styles = E, o(i, t), i;
49
49
  })();
50
50
  export {