@otto-de/b2b-core-components 1.30.0 → 1.31.1

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 (474) hide show
  1. package/dist/b2b-core-components/b2b-core-components.esm.js +1 -1
  2. package/dist/b2b-core-components/p-00666ca7.entry.js +1 -0
  3. package/dist/b2b-core-components/p-0a63f5f8.entry.js +1 -0
  4. package/dist/b2b-core-components/{p-9cfba835.entry.js → p-0bf05f33.entry.js} +1 -1
  5. package/dist/b2b-core-components/{p-68e07419.entry.js → p-0edac105.entry.js} +1 -1
  6. package/dist/b2b-core-components/p-0ffc90ee.entry.js +1 -0
  7. package/dist/b2b-core-components/p-168c8684.entry.js +1 -0
  8. package/dist/b2b-core-components/p-19392020.js +1 -0
  9. package/dist/b2b-core-components/p-1a908833.entry.js +1 -0
  10. package/dist/b2b-core-components/{p-a37d6cea.entry.js → p-1dff8b34.entry.js} +1 -1
  11. package/dist/b2b-core-components/p-2d5df8f7.entry.js +1 -0
  12. package/dist/b2b-core-components/p-2dc0c5c0.entry.js +1 -0
  13. package/dist/b2b-core-components/p-318eb15e.entry.js +1 -0
  14. package/dist/b2b-core-components/p-33c01bb2.entry.js +1 -0
  15. package/dist/b2b-core-components/p-375cefbd.entry.js +1 -0
  16. package/dist/b2b-core-components/p-383d0a10.entry.js +1 -0
  17. package/dist/b2b-core-components/{p-08577a40.entry.js → p-400fa973.entry.js} +1 -1
  18. package/dist/b2b-core-components/p-413729d1.entry.js +1 -0
  19. package/dist/b2b-core-components/p-4528e98c.entry.js +1 -0
  20. package/dist/b2b-core-components/p-49bafb74.entry.js +1 -0
  21. package/dist/b2b-core-components/{p-745ad406.entry.js → p-4bc0ec9a.entry.js} +1 -1
  22. package/dist/b2b-core-components/p-564c62d0.entry.js +1 -0
  23. package/dist/b2b-core-components/{p-6040dca2.entry.js → p-6025d667.entry.js} +1 -1
  24. package/dist/b2b-core-components/p-61b2a6ad.js +1 -0
  25. package/dist/b2b-core-components/{p-54d478b6.entry.js → p-661d0249.entry.js} +1 -1
  26. package/dist/b2b-core-components/p-6dd7fd7b.entry.js +1 -0
  27. package/dist/b2b-core-components/p-6ff5114b.entry.js +1 -0
  28. package/dist/b2b-core-components/p-742a18f1.entry.js +1 -0
  29. package/dist/b2b-core-components/{p-23acc468.entry.js → p-781611fb.entry.js} +1 -1
  30. package/dist/b2b-core-components/{p-0847e62e.entry.js → p-7bb6f06e.entry.js} +1 -1
  31. package/dist/b2b-core-components/p-7dd8f3cb.entry.js +1 -0
  32. package/dist/b2b-core-components/p-815d7a53.entry.js +1 -0
  33. package/dist/b2b-core-components/{p-5063e5b7.entry.js → p-850c8e01.entry.js} +1 -1
  34. package/dist/b2b-core-components/{p-e8b1fee4.entry.js → p-86ff8e6c.entry.js} +1 -1
  35. package/dist/b2b-core-components/{p-552f43c1.entry.js → p-9819f622.entry.js} +1 -1
  36. package/dist/b2b-core-components/{p-ccf78e23.entry.js → p-9dde1af0.entry.js} +1 -1
  37. package/dist/b2b-core-components/{p-24c94653.entry.js → p-9f88b476.entry.js} +1 -1
  38. package/dist/b2b-core-components/p-a155219a.entry.js +1 -0
  39. package/dist/b2b-core-components/p-a96c8ba0.entry.js +1 -0
  40. package/dist/b2b-core-components/p-b33059ab.entry.js +1 -0
  41. package/dist/b2b-core-components/p-b5fdf7df.entry.js +1 -0
  42. package/dist/b2b-core-components/p-b6a753e8.js +2 -0
  43. package/dist/b2b-core-components/p-bba0b41b.entry.js +1 -0
  44. package/dist/b2b-core-components/p-be93498d.entry.js +1 -0
  45. package/dist/b2b-core-components/p-bfbe4aff.entry.js +1 -0
  46. package/dist/b2b-core-components/p-c597637e.entry.js +1 -0
  47. package/dist/b2b-core-components/{p-eb01bb4f.entry.js → p-c67bcebc.entry.js} +1 -1
  48. package/dist/b2b-core-components/p-cb4cc427.entry.js +1 -0
  49. package/dist/b2b-core-components/{p-a63dfd99.entry.js → p-d1c8105b.entry.js} +1 -1
  50. package/dist/b2b-core-components/{p-2f9efe3f.entry.js → p-d26ec403.entry.js} +1 -1
  51. package/dist/b2b-core-components/p-d3204d75.entry.js +1 -0
  52. package/dist/b2b-core-components/p-d6457a1d.entry.js +1 -0
  53. package/dist/b2b-core-components/p-db205434.entry.js +1 -0
  54. package/dist/b2b-core-components/p-e1255160.js +1 -0
  55. package/dist/b2b-core-components/p-e520c7cf.entry.js +1 -0
  56. package/dist/b2b-core-components/p-f2fdce36.entry.js +1 -0
  57. package/dist/b2b-core-components/p-f5786cad.entry.js +1 -0
  58. package/dist/b2b-core-components/{p-58fb3508.entry.js → p-f5e9dbf4.entry.js} +1 -1
  59. package/dist/b2b-core-components/p-f9e278da.entry.js +1 -0
  60. package/dist/b2b-core-components/p-fa85955c.entry.js +1 -0
  61. package/dist/b2b-core-components/{p-eb78706f.entry.js → p-fae54521.entry.js} +1 -1
  62. package/dist/cjs/app-globals-3a1e7e63.js +5 -0
  63. package/dist/cjs/b2b-alert.cjs.entry.js +13 -15
  64. package/dist/cjs/b2b-anchor.cjs.entry.js +8 -10
  65. package/dist/cjs/b2b-background-box.cjs.entry.js +7 -10
  66. package/dist/cjs/b2b-breadcrumb-item.cjs.entry.js +10 -8
  67. package/dist/cjs/b2b-breadcrumb.cjs.entry.js +10 -9
  68. package/dist/cjs/b2b-button_2.cjs.entry.js +20 -25
  69. package/dist/cjs/b2b-card.cjs.entry.js +8 -8
  70. package/dist/cjs/b2b-checkbox-group.cjs.entry.js +15 -13
  71. package/dist/cjs/b2b-checkbox.cjs.entry.js +22 -19
  72. package/dist/cjs/b2b-chip-component_2.cjs.entry.js +24 -20
  73. package/dist/cjs/b2b-core-components.cjs.js +14 -13
  74. package/dist/cjs/b2b-date-picker-days_5.cjs.entry.js +50 -40
  75. package/dist/cjs/b2b-date-picker.cjs.entry.js +37 -36
  76. package/dist/cjs/b2b-dropdown.cjs.entry.js +26 -24
  77. package/dist/cjs/b2b-flyout-menu-option.cjs.entry.js +10 -8
  78. package/dist/cjs/b2b-flyout-menu.cjs.entry.js +9 -7
  79. package/dist/cjs/b2b-grid-col.cjs.entry.js +6 -4
  80. package/dist/cjs/b2b-grid-row.cjs.entry.js +5 -7
  81. package/dist/cjs/b2b-grid.cjs.entry.js +6 -4
  82. package/dist/cjs/b2b-headline.cjs.entry.js +5 -5
  83. package/dist/cjs/b2b-icon-100.cjs.entry.js +12 -12
  84. package/dist/cjs/b2b-icon-50.cjs.entry.js +10 -9
  85. package/dist/cjs/b2b-icon.cjs.entry.js +12 -12
  86. package/dist/cjs/b2b-input-group_2.cjs.entry.js +24 -24
  87. package/dist/cjs/b2b-input-label.cjs.entry.js +7 -6
  88. package/dist/cjs/b2b-input_2.cjs.entry.js +33 -33
  89. package/dist/cjs/b2b-label.cjs.entry.js +7 -5
  90. package/dist/cjs/b2b-modal.cjs.entry.js +16 -18
  91. package/dist/cjs/b2b-multiselect-dropdown.cjs.entry.js +27 -24
  92. package/dist/cjs/b2b-pagination.cjs.entry.js +12 -13
  93. package/dist/cjs/b2b-paragraph.cjs.entry.js +7 -10
  94. package/dist/cjs/b2b-progress-bar.cjs.entry.js +12 -9
  95. package/dist/cjs/b2b-radio-button.cjs.entry.js +19 -15
  96. package/dist/cjs/b2b-radio-group.cjs.entry.js +17 -13
  97. package/dist/cjs/b2b-required-separator.cjs.entry.js +6 -4
  98. package/dist/cjs/b2b-rounded-icon.cjs.entry.js +10 -12
  99. package/dist/cjs/b2b-scrollable-container.cjs.entry.js +6 -3
  100. package/dist/cjs/b2b-search.cjs.entry.js +10 -9
  101. package/dist/cjs/b2b-separator.cjs.entry.js +6 -4
  102. package/dist/cjs/b2b-shimmer.cjs.entry.js +9 -3
  103. package/dist/cjs/b2b-snackbar.cjs.entry.js +19 -18
  104. package/dist/cjs/b2b-tab-group.cjs.entry.js +6 -6
  105. package/dist/cjs/b2b-tab-panel.cjs.entry.js +6 -3
  106. package/dist/cjs/b2b-tab.cjs.entry.js +8 -8
  107. package/dist/cjs/b2b-table-cell_2.cjs.entry.js +30 -37
  108. package/dist/cjs/b2b-table-row.cjs.entry.js +19 -17
  109. package/dist/cjs/b2b-table-rowgroup.cjs.entry.js +16 -23
  110. package/dist/cjs/b2b-table.cjs.entry.js +10 -13
  111. package/dist/cjs/b2b-textarea.cjs.entry.js +23 -17
  112. package/dist/cjs/b2b-toggle-button.cjs.entry.js +14 -10
  113. package/dist/cjs/b2b-toggle-chip.cjs.entry.js +14 -10
  114. package/dist/cjs/b2b-toggle-group.cjs.entry.js +11 -7
  115. package/dist/cjs/b2b-toggle-switch.cjs.entry.js +15 -13
  116. package/dist/cjs/b2b-tooltip.cjs.entry.js +12 -11
  117. package/dist/cjs/b2b-wizard-icon.cjs.entry.js +9 -8
  118. package/dist/cjs/b2b-wizard-step.cjs.entry.js +8 -9
  119. package/dist/cjs/b2b-wizard.cjs.entry.js +10 -12
  120. package/dist/cjs/index-668808fd.js +2516 -0
  121. package/dist/cjs/loader.cjs.js +6 -3
  122. package/dist/cjs/{request-Dwsj-gbA.js → request-801c6ba1.js} +0 -2
  123. package/dist/cjs/{utils--ZrBSHVe.js → utils-499e9db5.js} +9 -2
  124. package/dist/collection/collection-manifest.json +2 -2
  125. package/dist/collection/components/alert/alert.e2e.js +67 -0
  126. package/dist/collection/components/alert/alert.js +12 -27
  127. package/dist/collection/components/anchor/anchor.js +9 -26
  128. package/dist/collection/components/anchor/anchor.spec.js +68 -0
  129. package/dist/collection/components/background-box/background-box.e2e.js +63 -0
  130. package/dist/collection/components/background-box/background-box.js +8 -26
  131. package/dist/collection/components/background-box/background-box.spec.js +64 -0
  132. package/dist/collection/components/breadcrumb/breadcrumb-item.js +7 -14
  133. package/dist/collection/components/breadcrumb/breadcrumb.e2e.js +50 -0
  134. package/dist/collection/components/breadcrumb/breadcrumb.js +6 -12
  135. package/dist/collection/components/button/button.e2e.js +80 -0
  136. package/dist/collection/components/button/button.js +23 -52
  137. package/dist/collection/components/card/card.e2e.js +110 -0
  138. package/dist/collection/components/card/card.js +5 -14
  139. package/dist/collection/components/card/card.spec.js +32 -0
  140. package/dist/collection/components/checkbox/checkbox.e2e.js +38 -0
  141. package/dist/collection/components/checkbox/checkbox.js +26 -50
  142. package/dist/collection/components/checkbox/checkbox.spec.js +45 -0
  143. package/dist/collection/components/checkbox-group/checkbox-group.e2e.js +83 -0
  144. package/dist/collection/components/checkbox-group/checkbox-group.js +16 -31
  145. package/dist/collection/components/checkbox-group/checkbox-group.spec.js +38 -0
  146. package/dist/collection/components/chip/chip.e2e.js +99 -0
  147. package/dist/collection/components/chip/chip.js +17 -30
  148. package/dist/collection/components/date-picker/date-picker-days-header.js +3 -6
  149. package/dist/collection/components/date-picker/date-picker-days.js +20 -44
  150. package/dist/collection/components/date-picker/date-picker-header.e2e.js +38 -0
  151. package/dist/collection/components/date-picker/date-picker-header.js +10 -15
  152. package/dist/collection/components/date-picker/date-picker-months.e2e.js +39 -0
  153. package/dist/collection/components/date-picker/date-picker-months.js +5 -9
  154. package/dist/collection/components/date-picker/date-picker-years.e2e.js +39 -0
  155. package/dist/collection/components/date-picker/date-picker-years.js +4 -5
  156. package/dist/collection/components/date-picker/date-picker.e2e.js +137 -0
  157. package/dist/collection/components/date-picker/date-picker.js +44 -76
  158. package/dist/collection/components/dropdown/dropdown.e2e.js +89 -0
  159. package/dist/collection/components/dropdown/dropdown.js +27 -46
  160. package/dist/collection/components/dropdown/dropdown.spec.js +52 -0
  161. package/dist/collection/components/flyout-menu/flyout-menu-option.js +7 -14
  162. package/dist/collection/components/flyout-menu/flyout-menu.e2e.js +97 -0
  163. package/dist/collection/components/flyout-menu/flyout-menu.js +5 -8
  164. package/dist/collection/components/grid/column.js +5 -9
  165. package/dist/collection/components/grid/grid.e2e.js +17 -0
  166. package/dist/collection/components/grid/grid.js +2 -5
  167. package/dist/collection/components/grid/row.js +6 -18
  168. package/dist/collection/components/headline/headline.e2e.js +13 -0
  169. package/dist/collection/components/headline/headline.js +3 -12
  170. package/dist/collection/components/headline/headline.spec.js +67 -0
  171. package/dist/collection/components/icon/icon.js +11 -24
  172. package/dist/collection/components/icon/icon.spec.js +21 -0
  173. package/dist/collection/components/icon-100/icon-100.e2e.js +40 -0
  174. package/dist/collection/components/icon-100/icon-100.js +11 -24
  175. package/dist/collection/components/icon-50/icon-50.e2e.js +32 -0
  176. package/dist/collection/components/icon-50/icon-50.js +8 -18
  177. package/dist/collection/components/input/input.e2e.js +84 -0
  178. package/dist/collection/components/input/input.js +33 -64
  179. package/dist/collection/components/input/input.spec.js +45 -0
  180. package/dist/collection/components/input-group/input-group.e2e.js +77 -0
  181. package/dist/collection/components/input-group/input-group.js +9 -17
  182. package/dist/collection/components/input-group/input-group.spec.js +56 -0
  183. package/dist/collection/components/input-label/input-label.e2e.js +10 -0
  184. package/dist/collection/components/input-label/input-label.js +4 -10
  185. package/dist/collection/components/input-list/input-list-option.js +3 -4
  186. package/dist/collection/components/input-list/input-list.e2e.js +242 -0
  187. package/dist/collection/components/input-list/input-list.js +17 -36
  188. package/dist/collection/components/label/label.e2e.js +17 -0
  189. package/dist/collection/components/label/label.js +3 -6
  190. package/dist/collection/components/label/label.spec.js +58 -0
  191. package/dist/collection/components/modal/modal.e2e.js +115 -0
  192. package/dist/collection/components/modal/modal.js +14 -29
  193. package/dist/collection/components/multiselect-dropdown/multiselect-dropdown.e2e.js +74 -0
  194. package/dist/collection/components/multiselect-dropdown/multiselect-dropdown.js +33 -57
  195. package/dist/collection/components/multiselect-dropdown/multiselect-option/multiselect-option.js +8 -15
  196. package/dist/collection/components/pagination/pagination.e2e.js +257 -0
  197. package/dist/collection/components/pagination/pagination.js +10 -22
  198. package/dist/collection/components/pagination/pagination.spec.js +103 -0
  199. package/dist/collection/components/paragraph/paragraph.e2e.js +13 -0
  200. package/dist/collection/components/paragraph/paragraph.js +8 -26
  201. package/dist/collection/components/progress-bar/progress-bar.e2e.js +43 -0
  202. package/dist/collection/components/progress-bar/progress-bar.js +11 -19
  203. package/dist/collection/components/radio/radio.e2e.js +45 -0
  204. package/dist/collection/components/radio/radio.js +20 -37
  205. package/dist/collection/components/radio/radio.spec.js +38 -0
  206. package/dist/collection/components/radio-group/radio-group.e2e.js +86 -0
  207. package/dist/collection/components/radio-group/radio-group.js +19 -34
  208. package/dist/collection/components/radio-group/radio-group.spec.js +31 -0
  209. package/dist/collection/components/required-separator/required-separator.e2e.js +17 -0
  210. package/dist/collection/components/required-separator/required-separator.js +2 -5
  211. package/dist/collection/components/rounded-icon/rounded-icon.js +8 -19
  212. package/dist/collection/components/scrollable-container/scrollable-container.js +1 -1
  213. package/dist/collection/components/search/search.e2e.js +98 -0
  214. package/dist/collection/components/search/search.js +9 -19
  215. package/dist/collection/components/separator/separator.e2e.js +22 -0
  216. package/dist/collection/components/separator/separator.js +2 -5
  217. package/dist/collection/components/shimmer/shimmer.e2e.js +18 -0
  218. package/dist/collection/components/shimmer/shimmer.js +9 -10
  219. package/dist/collection/components/shimmer/shimmer.spec.js +35 -0
  220. package/dist/collection/components/snackbar/snackbar.e2e.js +61 -0
  221. package/dist/collection/components/snackbar/snackbar.js +20 -38
  222. package/dist/collection/components/spinner/spinner.e2e.js +12 -0
  223. package/dist/collection/components/spinner/spinner.js +3 -9
  224. package/dist/collection/components/spinner/spinner.spec.js +41 -0
  225. package/dist/collection/components/tab/tab.e2e.js +35 -0
  226. package/dist/collection/components/tab/tab.js +5 -14
  227. package/dist/collection/components/tab/tab.spec.js +31 -0
  228. package/dist/collection/components/tab-group/tab-group.e2e.js +99 -0
  229. package/dist/collection/components/tab-group/tab-group.js +3 -7
  230. package/dist/collection/components/tab-panel/tab-panel.e2e.js +12 -0
  231. package/dist/collection/components/tab-panel/tab-panel.js +1 -1
  232. package/dist/collection/components/tab-panel/tab-panel.spec.js +10 -0
  233. package/dist/collection/components/table/table-cell/table-cell.js +17 -40
  234. package/dist/collection/components/table/table-header/table-header.js +19 -37
  235. package/dist/collection/components/table/table-row/table-row.js +18 -33
  236. package/dist/collection/components/table/table-rowgroup/table-rowgroup.js +15 -37
  237. package/dist/collection/components/table/table.e2e.js +405 -0
  238. package/dist/collection/components/table/table.js +4 -12
  239. package/dist/collection/components/textarea/textarea.e2e.js +91 -0
  240. package/dist/collection/components/textarea/textarea.js +30 -52
  241. package/dist/collection/components/toggle-button/toggle-button.e2e.js +44 -0
  242. package/dist/collection/components/toggle-button/toggle-button.js +13 -22
  243. package/dist/collection/components/toggle-chip/toggle-chip.e2e.js +47 -0
  244. package/dist/collection/components/toggle-chip/toggle-chip.js +13 -22
  245. package/dist/collection/components/toggle-group/toggle-group.e2e.js +65 -0
  246. package/dist/collection/components/toggle-group/toggle-group.js +7 -10
  247. package/dist/collection/components/toggle-switch/toggle-switch.e2e.js +50 -0
  248. package/dist/collection/components/toggle-switch/toggle-switch.js +14 -25
  249. package/dist/collection/components/tooltip/tooltip.e2e.js +64 -0
  250. package/dist/collection/components/tooltip/tooltip.js +11 -21
  251. package/dist/collection/components/wizard/wizard-step.js +5 -15
  252. package/dist/collection/components/wizard/wizard.e2e.js +149 -0
  253. package/dist/collection/components/wizard/wizard.js +7 -18
  254. package/dist/collection/components/wizard-icon/wizard-icon.js +6 -14
  255. package/dist/collection/docs/config/replace-prop-controls.spec.js +32 -0
  256. package/dist/collection/utils/utils.spec.js +15 -0
  257. package/dist/components/b2b-alert.js +13 -17
  258. package/dist/components/b2b-anchor.js +7 -11
  259. package/dist/components/b2b-background-box.js +6 -11
  260. package/dist/components/b2b-breadcrumb-item.js +9 -9
  261. package/dist/components/b2b-breadcrumb.js +9 -10
  262. package/dist/components/b2b-button.js +1 -1
  263. package/dist/components/b2b-card.js +7 -9
  264. package/dist/components/b2b-checkbox-group.js +15 -15
  265. package/dist/components/b2b-checkbox.js +1 -1
  266. package/dist/components/b2b-chip-component.js +1 -1
  267. package/dist/components/b2b-date-picker-days-header.js +1 -1
  268. package/dist/components/b2b-date-picker-days.js +1 -1
  269. package/dist/components/b2b-date-picker-header.js +1 -1
  270. package/dist/components/b2b-date-picker-months.js +1 -1
  271. package/dist/components/b2b-date-picker-years.js +1 -1
  272. package/dist/components/b2b-date-picker.js +43 -44
  273. package/dist/components/b2b-dropdown.js +26 -26
  274. package/dist/components/b2b-flyout-menu-option.js +9 -9
  275. package/dist/components/b2b-flyout-menu.js +8 -8
  276. package/dist/components/b2b-grid-col.js +5 -5
  277. package/dist/components/b2b-grid-row.js +4 -8
  278. package/dist/components/b2b-grid.js +5 -5
  279. package/dist/components/b2b-headline.js +1 -1
  280. package/dist/components/b2b-icon-100.js +1 -1
  281. package/dist/components/b2b-icon-50.js +13 -11
  282. package/dist/components/b2b-icon.js +16 -15
  283. package/dist/components/b2b-input-group.js +1 -1
  284. package/dist/components/b2b-input-label.js +1 -1
  285. package/dist/components/b2b-input-list-option.js +1 -1
  286. package/dist/components/b2b-input-list.js +1 -1
  287. package/dist/components/b2b-input.js +1 -1
  288. package/dist/components/b2b-label.js +6 -6
  289. package/dist/components/b2b-modal.js +17 -21
  290. package/dist/components/b2b-multiselect-dropdown.js +31 -30
  291. package/dist/components/b2b-multiselect-option.js +1 -1
  292. package/dist/components/b2b-pagination.js +13 -16
  293. package/dist/components/b2b-paragraph.js +6 -11
  294. package/dist/components/b2b-progress-bar.js +11 -10
  295. package/dist/components/b2b-radio-button.js +19 -17
  296. package/dist/components/b2b-radio-group.js +17 -15
  297. package/dist/components/b2b-required-separator.js +6 -6
  298. package/dist/components/b2b-rounded-icon.js +1 -1
  299. package/dist/components/b2b-scrollable-container.js +5 -4
  300. package/dist/components/b2b-search.js +18 -19
  301. package/dist/components/b2b-separator.js +1 -1
  302. package/dist/components/b2b-shimmer.js +8 -4
  303. package/dist/components/b2b-snackbar.js +19 -20
  304. package/dist/components/b2b-spinner.js +1 -1
  305. package/dist/components/b2b-tab-group.js +6 -8
  306. package/dist/components/b2b-tab-panel.js +5 -4
  307. package/dist/components/b2b-tab.js +7 -9
  308. package/dist/components/b2b-table-cell.js +1 -1
  309. package/dist/components/b2b-table-header.js +1 -1
  310. package/dist/components/b2b-table-row.js +23 -23
  311. package/dist/components/b2b-table-rowgroup.js +15 -24
  312. package/dist/components/b2b-table.js +9 -14
  313. package/dist/components/b2b-textarea.js +23 -19
  314. package/dist/components/b2b-toggle-button.js +13 -11
  315. package/dist/components/b2b-toggle-chip.js +13 -11
  316. package/dist/components/b2b-toggle-group.js +10 -8
  317. package/dist/components/b2b-toggle-switch.js +14 -14
  318. package/dist/components/b2b-tooltip.js +11 -12
  319. package/dist/components/b2b-wizard-icon.js +1 -1
  320. package/dist/components/b2b-wizard-step.js +10 -13
  321. package/dist/components/b2b-wizard.js +9 -13
  322. package/dist/components/{p-CE7t2D9r.js → button.js} +17 -23
  323. package/dist/components/{p-CLYM9t6v.js → checkbox.js} +22 -21
  324. package/dist/components/{p-ClL49BcQ.js → chip.js} +15 -13
  325. package/dist/components/{p-FI-HbnMh.js → date-picker-days-header.js} +7 -7
  326. package/dist/components/{p-0Vy4494O.js → date-picker-days.js} +24 -21
  327. package/dist/components/{p-C_U38W4s.js → date-picker-header.js} +17 -15
  328. package/dist/components/{p-1ZoTG5p9.js → date-picker-months.js} +9 -8
  329. package/dist/components/{p-dMZsx2Fh.js → date-picker-years.js} +8 -6
  330. package/dist/components/{p-Bo-B8kdb.js → headline.js} +4 -6
  331. package/dist/components/{p-B9RvgUY3.js → icon-100.js} +15 -14
  332. package/dist/components/index.js +1 -1929
  333. package/dist/components/{p-TB2jJFV6.js → input-group.js} +9 -8
  334. package/dist/components/{p-Zg4AtKjq.js → input-label.js} +6 -7
  335. package/dist/components/{p-QTGqu3he.js → input-list-option.js} +7 -5
  336. package/dist/components/{p-BacBJzW_.js → input-list.js} +21 -24
  337. package/dist/components/{p-CuUquHzL.js → input.js} +28 -32
  338. package/dist/components/{p-B7bjXySI.js → multiselect-option.js} +12 -12
  339. package/dist/{esm/request-B8W50WyB.js → components/request.js} +5 -2
  340. package/dist/components/{p-i758rnm2.js → rounded-icon.js} +9 -13
  341. package/dist/components/{p-DO7N8IC0.js → separator.js} +5 -5
  342. package/dist/components/{p-3cu_Madt.js → spinner.js} +5 -6
  343. package/dist/components/{p-9OQH2pET.js → table-cell.js} +15 -23
  344. package/dist/components/{p-BVLpVPNb.js → table-header.js} +17 -18
  345. package/dist/{esm/utils-BA6KE1BD.js → components/utils.js} +10 -3
  346. package/dist/components/{p-N6d2-6pL.js → wizard-icon.js} +10 -11
  347. package/dist/custom-elements.json +0 -24
  348. package/dist/esm/app-globals-0f993ce5.js +3 -0
  349. package/dist/esm/b2b-alert.entry.js +11 -15
  350. package/dist/esm/b2b-anchor.entry.js +6 -10
  351. package/dist/esm/b2b-background-box.entry.js +5 -10
  352. package/dist/esm/b2b-breadcrumb-item.entry.js +8 -8
  353. package/dist/esm/b2b-breadcrumb.entry.js +8 -9
  354. package/dist/esm/b2b-button_2.entry.js +18 -25
  355. package/dist/esm/b2b-card.entry.js +6 -8
  356. package/dist/esm/b2b-checkbox-group.entry.js +13 -13
  357. package/dist/esm/b2b-checkbox.entry.js +20 -19
  358. package/dist/esm/b2b-chip-component_2.entry.js +22 -20
  359. package/dist/esm/b2b-core-components.js +12 -12
  360. package/dist/esm/b2b-date-picker-days_5.entry.js +48 -40
  361. package/dist/esm/b2b-date-picker.entry.js +35 -36
  362. package/dist/esm/b2b-dropdown.entry.js +24 -24
  363. package/dist/esm/b2b-flyout-menu-option.entry.js +8 -8
  364. package/dist/esm/b2b-flyout-menu.entry.js +7 -7
  365. package/dist/esm/b2b-grid-col.entry.js +4 -4
  366. package/dist/esm/b2b-grid-row.entry.js +3 -7
  367. package/dist/esm/b2b-grid.entry.js +4 -4
  368. package/dist/esm/b2b-headline.entry.js +3 -5
  369. package/dist/esm/b2b-icon-100.entry.js +10 -12
  370. package/dist/esm/b2b-icon-50.entry.js +8 -9
  371. package/dist/esm/b2b-icon.entry.js +10 -12
  372. package/dist/esm/b2b-input-group_2.entry.js +22 -24
  373. package/dist/esm/b2b-input-label.entry.js +5 -6
  374. package/dist/esm/b2b-input_2.entry.js +31 -33
  375. package/dist/esm/b2b-label.entry.js +5 -5
  376. package/dist/esm/b2b-modal.entry.js +14 -18
  377. package/dist/esm/b2b-multiselect-dropdown.entry.js +25 -24
  378. package/dist/esm/b2b-pagination.entry.js +10 -13
  379. package/dist/esm/b2b-paragraph.entry.js +5 -10
  380. package/dist/esm/b2b-progress-bar.entry.js +10 -9
  381. package/dist/esm/b2b-radio-button.entry.js +17 -15
  382. package/dist/esm/b2b-radio-group.entry.js +15 -13
  383. package/dist/esm/b2b-required-separator.entry.js +4 -4
  384. package/dist/esm/b2b-rounded-icon.entry.js +8 -12
  385. package/dist/esm/b2b-scrollable-container.entry.js +4 -3
  386. package/dist/esm/b2b-search.entry.js +8 -9
  387. package/dist/esm/b2b-separator.entry.js +4 -4
  388. package/dist/esm/b2b-shimmer.entry.js +7 -3
  389. package/dist/esm/b2b-snackbar.entry.js +17 -18
  390. package/dist/esm/b2b-tab-group.entry.js +4 -6
  391. package/dist/esm/b2b-tab-panel.entry.js +4 -3
  392. package/dist/esm/b2b-tab.entry.js +6 -8
  393. package/dist/esm/b2b-table-cell_2.entry.js +28 -37
  394. package/dist/esm/b2b-table-row.entry.js +17 -17
  395. package/dist/esm/b2b-table-rowgroup.entry.js +14 -23
  396. package/dist/esm/b2b-table.entry.js +8 -13
  397. package/dist/esm/b2b-textarea.entry.js +21 -17
  398. package/dist/esm/b2b-toggle-button.entry.js +12 -10
  399. package/dist/esm/b2b-toggle-chip.entry.js +12 -10
  400. package/dist/esm/b2b-toggle-group.entry.js +9 -7
  401. package/dist/esm/b2b-toggle-switch.entry.js +13 -13
  402. package/dist/esm/b2b-tooltip.entry.js +10 -11
  403. package/dist/esm/b2b-wizard-icon.entry.js +7 -8
  404. package/dist/esm/b2b-wizard-step.entry.js +6 -9
  405. package/dist/esm/b2b-wizard.entry.js +8 -12
  406. package/dist/esm/index-ab9eb36d.js +2487 -0
  407. package/dist/esm/loader.js +4 -3
  408. package/dist/esm/polyfills/core-js.js +11 -0
  409. package/dist/esm/polyfills/dom.js +79 -0
  410. package/dist/esm/polyfills/es5-html-element.js +1 -0
  411. package/dist/esm/polyfills/index.js +34 -0
  412. package/dist/esm/polyfills/system.js +6 -0
  413. package/dist/{components/p-CPfvpKl5.js → esm/request-1d048f8a.js} +0 -2
  414. package/dist/{components/p-BA6KE1BD.js → esm/utils-868299de.js} +10 -3
  415. package/dist/loader/cdn.js +3 -1
  416. package/dist/loader/index.cjs.js +3 -1
  417. package/dist/loader/index.d.ts +0 -3
  418. package/dist/loader/index.es2017.js +3 -1
  419. package/dist/loader/index.js +3 -1
  420. package/dist/loader/package.json +11 -0
  421. package/dist/types/components.d.ts +0 -413
  422. package/dist/types/stencil-public-runtime.d.ts +11 -32
  423. package/dist/web-types.json +8 -7
  424. package/package.json +10 -11
  425. package/dist/b2b-core-components/p-0002d8d5.entry.js +0 -1
  426. package/dist/b2b-core-components/p-0386f660.entry.js +0 -1
  427. package/dist/b2b-core-components/p-0a08e2c8.entry.js +0 -1
  428. package/dist/b2b-core-components/p-0d8cc4eb.entry.js +0 -1
  429. package/dist/b2b-core-components/p-197dc9c0.entry.js +0 -1
  430. package/dist/b2b-core-components/p-220b8c79.entry.js +0 -1
  431. package/dist/b2b-core-components/p-2933f053.entry.js +0 -1
  432. package/dist/b2b-core-components/p-3a9f7db8.entry.js +0 -1
  433. package/dist/b2b-core-components/p-3e0919b3.entry.js +0 -1
  434. package/dist/b2b-core-components/p-42d9f79d.entry.js +0 -1
  435. package/dist/b2b-core-components/p-4bb42493.entry.js +0 -1
  436. package/dist/b2b-core-components/p-4c550170.entry.js +0 -1
  437. package/dist/b2b-core-components/p-50559efd.entry.js +0 -1
  438. package/dist/b2b-core-components/p-55db3d57.entry.js +0 -1
  439. package/dist/b2b-core-components/p-6e7abebc.entry.js +0 -1
  440. package/dist/b2b-core-components/p-7b75a0a4.entry.js +0 -1
  441. package/dist/b2b-core-components/p-7cbe33ef.entry.js +0 -1
  442. package/dist/b2b-core-components/p-8544b7e1.entry.js +0 -1
  443. package/dist/b2b-core-components/p-88037ad2.entry.js +0 -1
  444. package/dist/b2b-core-components/p-930425a1.entry.js +0 -1
  445. package/dist/b2b-core-components/p-B9l4NfeG.js +0 -1
  446. package/dist/b2b-core-components/p-BA6KE1BD.js +0 -1
  447. package/dist/b2b-core-components/p-a1a4efd4.entry.js +0 -1
  448. package/dist/b2b-core-components/p-a61eecf7.entry.js +0 -1
  449. package/dist/b2b-core-components/p-ada918c2.entry.js +0 -1
  450. package/dist/b2b-core-components/p-bb020c1c.entry.js +0 -1
  451. package/dist/b2b-core-components/p-bbb4c6f3.entry.js +0 -1
  452. package/dist/b2b-core-components/p-c0af184a.entry.js +0 -1
  453. package/dist/b2b-core-components/p-c40f7176.entry.js +0 -1
  454. package/dist/b2b-core-components/p-c6043d6a.entry.js +0 -1
  455. package/dist/b2b-core-components/p-c649c112.entry.js +0 -1
  456. package/dist/b2b-core-components/p-c69e9220.entry.js +0 -1
  457. package/dist/b2b-core-components/p-d1b46208.entry.js +0 -1
  458. package/dist/b2b-core-components/p-d2d40ae5.entry.js +0 -1
  459. package/dist/b2b-core-components/p-e8e156a4.entry.js +0 -1
  460. package/dist/b2b-core-components/p-ebcc2cce.entry.js +0 -1
  461. package/dist/b2b-core-components/p-edea84cc.entry.js +0 -1
  462. package/dist/b2b-core-components/p-f831e483.entry.js +0 -1
  463. package/dist/b2b-core-components/p-fdfb094e.entry.js +0 -1
  464. package/dist/b2b-core-components/p-zl-jO_Vq.js +0 -2
  465. package/dist/cjs/index-CIrNIFXs.js +0 -2406
  466. package/dist/esm/index-zl-jO_Vq.js +0 -2378
  467. /package/dist/b2b-core-components/{p-B8geQC3V.js → p-48608c23.js} +0 -0
  468. /package/dist/b2b-core-components/{p-BgHEmQ44.js → p-c500d93c.js} +0 -0
  469. /package/dist/cjs/{date-picker-util-VbL9p5ie.js → date-picker-util-51276571.js} +0 -0
  470. /package/dist/cjs/{wizard.types-uAv3s7tK.js → wizard.types-40a1058c.js} +0 -0
  471. /package/dist/components/{p-BsfreBZY.js → date-picker.types.js} +0 -0
  472. /package/dist/components/{p-BgHEmQ44.js → wizard.types.js} +0 -0
  473. /package/dist/esm/{date-picker-util-B8geQC3V.js → date-picker-util-44201ca6.js} +0 -0
  474. /package/dist/esm/{wizard.types-BgHEmQ44.js → wizard.types-40ae9b73.js} +0 -0
@@ -4,16 +4,6 @@ import { h, Host, } from "@stencil/core";
4
4
  */
5
5
  export class B2BTextareaComponent {
6
6
  constructor() {
7
- /** Adds an asterisk at the end of the label to signify that the field is required. */
8
- this.required = false;
9
- /** Whether or not the textarea is disabled. Per default it is false. */
10
- this.disabled = false;
11
- /** Whether or not the textarea should be displayed with error styles. Per default it is false. */
12
- this.invalid = false;
13
- /** Whether or not the textarea should be automatically focused on page load. Per default it is false. */
14
- this.focusOnLoad = false;
15
- /** The value of the textarea. Per default it is null. */
16
- this.value = null;
17
7
  // TODO: find a way to test it maybe when migrating to new testing framework
18
8
  this.handleFormData = (event) => {
19
9
  if (this.name != undefined) {
@@ -34,6 +24,19 @@ export class B2BTextareaComponent {
34
24
  }
35
25
  this.b2bInput.emit(input);
36
26
  };
27
+ this.label = undefined;
28
+ this.required = false;
29
+ this.placeholder = undefined;
30
+ this.disabled = false;
31
+ this.invalid = false;
32
+ this.focusOnLoad = false;
33
+ this.resize = undefined;
34
+ this.hint = undefined;
35
+ this.error = undefined;
36
+ this.value = null;
37
+ this.name = undefined;
38
+ this.maxLength = undefined;
39
+ this.height = '';
37
40
  }
38
41
  connectedCallback() {
39
42
  const form = this.hostElement.closest('form');
@@ -42,10 +45,10 @@ export class B2BTextareaComponent {
42
45
  }
43
46
  }
44
47
  render() {
45
- return (h(Host, { key: '2ed8f90f83aaa5715b456b0dae3290eed8e7d04f', class: {
48
+ return (h(Host, { key: '042a4bf18160c76a15600b82150a0b5550c4cdb4', class: {
46
49
  'b2b-textarea': true,
47
50
  'b2b-textarea--error': this.invalid && !this.disabled,
48
- } }, this.label && (h("b2b-input-label", { key: '0f9b8f9af7f37a96bbfaadada34c1298ec151290', id: this.name, required: this.required }, this.label)), h("textarea", { key: '7d986f39e76e500476a04a0d43cc3eb4638de5a4', class: "textarea-input", "aria-labelledby": this.name, style: Object.assign({ height: this.height }, (Boolean(this.resize) && { resize: this.resize })), value: this.value, name: this.name, placeholder: this.placeholder, disabled: this.disabled, autoFocus: this.focusOnLoad, onFocus: this.onFocus, onBlur: this.onBlur, onInput: this.onInput, maxLength: this.maxLength }), (this.hint !== undefined && !this.invalid) ||
51
+ } }, this.label && (h("b2b-input-label", { id: this.name, required: this.required }, this.label)), h("textarea", { key: '84b0f3066733ed1a02d485baf91a9e90646778b0', class: "textarea-input", "aria-labelledby": this.name, style: Object.assign({ height: this.height }, (Boolean(this.resize) && { resize: this.resize })), value: this.value, name: this.name, placeholder: this.placeholder, disabled: this.disabled, autoFocus: this.focusOnLoad, onFocus: this.onFocus, onBlur: this.onBlur, onInput: this.onInput, maxLength: this.maxLength }), (this.hint !== undefined && !this.invalid) ||
49
52
  (this.hint !== undefined && this.disabled) ? (h("span", null, this.hint)) : (''), this.error !== undefined && this.invalid && !this.disabled ? (h("span", null, this.error)) : ('')));
50
53
  }
51
54
  static get is() { return "b2b-textarea"; }
@@ -64,7 +67,6 @@ export class B2BTextareaComponent {
64
67
  return {
65
68
  "label": {
66
69
  "type": "string",
67
- "attribute": "label",
68
70
  "mutable": false,
69
71
  "complexType": {
70
72
  "original": "string",
@@ -77,13 +79,11 @@ export class B2BTextareaComponent {
77
79
  "tags": [],
78
80
  "text": "The textarea label. This is optional."
79
81
  },
80
- "getter": false,
81
- "setter": false,
82
+ "attribute": "label",
82
83
  "reflect": false
83
84
  },
84
85
  "required": {
85
86
  "type": "boolean",
86
- "attribute": "required",
87
87
  "mutable": false,
88
88
  "complexType": {
89
89
  "original": "boolean",
@@ -96,14 +96,12 @@ export class B2BTextareaComponent {
96
96
  "tags": [],
97
97
  "text": "Adds an asterisk at the end of the label to signify that the field is required."
98
98
  },
99
- "getter": false,
100
- "setter": false,
99
+ "attribute": "required",
101
100
  "reflect": true,
102
101
  "defaultValue": "false"
103
102
  },
104
103
  "placeholder": {
105
104
  "type": "string",
106
- "attribute": "placeholder",
107
105
  "mutable": false,
108
106
  "complexType": {
109
107
  "original": "string",
@@ -116,13 +114,11 @@ export class B2BTextareaComponent {
116
114
  "tags": [],
117
115
  "text": "The textarea placeholder. It is optional and undefined by default."
118
116
  },
119
- "getter": false,
120
- "setter": false,
117
+ "attribute": "placeholder",
121
118
  "reflect": true
122
119
  },
123
120
  "disabled": {
124
121
  "type": "boolean",
125
- "attribute": "disabled",
126
122
  "mutable": false,
127
123
  "complexType": {
128
124
  "original": "boolean",
@@ -135,14 +131,12 @@ export class B2BTextareaComponent {
135
131
  "tags": [],
136
132
  "text": "Whether or not the textarea is disabled. Per default it is false."
137
133
  },
138
- "getter": false,
139
- "setter": false,
134
+ "attribute": "disabled",
140
135
  "reflect": true,
141
136
  "defaultValue": "false"
142
137
  },
143
138
  "invalid": {
144
139
  "type": "boolean",
145
- "attribute": "invalid",
146
140
  "mutable": false,
147
141
  "complexType": {
148
142
  "original": "boolean",
@@ -155,14 +149,12 @@ export class B2BTextareaComponent {
155
149
  "tags": [],
156
150
  "text": "Whether or not the textarea should be displayed with error styles. Per default it is false."
157
151
  },
158
- "getter": false,
159
- "setter": false,
152
+ "attribute": "invalid",
160
153
  "reflect": true,
161
154
  "defaultValue": "false"
162
155
  },
163
156
  "focusOnLoad": {
164
157
  "type": "boolean",
165
- "attribute": "focus-on-load",
166
158
  "mutable": false,
167
159
  "complexType": {
168
160
  "original": "boolean",
@@ -175,14 +167,12 @@ export class B2BTextareaComponent {
175
167
  "tags": [],
176
168
  "text": "Whether or not the textarea should be automatically focused on page load. Per default it is false."
177
169
  },
178
- "getter": false,
179
- "setter": false,
170
+ "attribute": "focus-on-load",
180
171
  "reflect": true,
181
172
  "defaultValue": "false"
182
173
  },
183
174
  "resize": {
184
175
  "type": "string",
185
- "attribute": "resize",
186
176
  "mutable": false,
187
177
  "complexType": {
188
178
  "original": "| 'unset'\n | 'none'\n | 'vertical'\n | 'horizontal'",
@@ -195,13 +185,11 @@ export class B2BTextareaComponent {
195
185
  "tags": [],
196
186
  "text": "If and how the textarea is resizable. Per default it is resizable in both directions."
197
187
  },
198
- "getter": false,
199
- "setter": false,
188
+ "attribute": "resize",
200
189
  "reflect": true
201
190
  },
202
191
  "hint": {
203
192
  "type": "string",
204
- "attribute": "hint",
205
193
  "mutable": false,
206
194
  "complexType": {
207
195
  "original": "string",
@@ -214,13 +202,11 @@ export class B2BTextareaComponent {
214
202
  "tags": [],
215
203
  "text": "An optional hint for the textarea. Per default it is undefined."
216
204
  },
217
- "getter": false,
218
- "setter": false,
205
+ "attribute": "hint",
219
206
  "reflect": false
220
207
  },
221
208
  "error": {
222
209
  "type": "string",
223
- "attribute": "error",
224
210
  "mutable": false,
225
211
  "complexType": {
226
212
  "original": "string",
@@ -233,13 +219,11 @@ export class B2BTextareaComponent {
233
219
  "tags": [],
234
220
  "text": "An optional error message that is displayed when the textarea is invalid. Per default it is undefined."
235
221
  },
236
- "getter": false,
237
- "setter": false,
222
+ "attribute": "error",
238
223
  "reflect": false
239
224
  },
240
225
  "value": {
241
226
  "type": "string",
242
- "attribute": "value",
243
227
  "mutable": true,
244
228
  "complexType": {
245
229
  "original": "string",
@@ -252,14 +236,12 @@ export class B2BTextareaComponent {
252
236
  "tags": [],
253
237
  "text": "The value of the textarea. Per default it is null."
254
238
  },
255
- "getter": false,
256
- "setter": false,
239
+ "attribute": "value",
257
240
  "reflect": true,
258
241
  "defaultValue": "null"
259
242
  },
260
243
  "name": {
261
244
  "type": "string",
262
- "attribute": "name",
263
245
  "mutable": false,
264
246
  "complexType": {
265
247
  "original": "string",
@@ -272,13 +254,11 @@ export class B2BTextareaComponent {
272
254
  "tags": [],
273
255
  "text": "The name of the textarea. This is used to programmatically group it into a form."
274
256
  },
275
- "getter": false,
276
- "setter": false,
257
+ "attribute": "name",
277
258
  "reflect": true
278
259
  },
279
260
  "maxLength": {
280
261
  "type": "number",
281
- "attribute": "max-length",
282
262
  "mutable": false,
283
263
  "complexType": {
284
264
  "original": "number",
@@ -291,13 +271,11 @@ export class B2BTextareaComponent {
291
271
  "tags": [],
292
272
  "text": "The maximum input length. Characters entered after that will not be appended to the input value."
293
273
  },
294
- "getter": false,
295
- "setter": false,
274
+ "attribute": "max-length",
296
275
  "reflect": true
297
276
  },
298
277
  "height": {
299
278
  "type": "string",
300
- "attribute": "height",
301
279
  "mutable": false,
302
280
  "complexType": {
303
281
  "original": "string",
@@ -310,9 +288,9 @@ export class B2BTextareaComponent {
310
288
  "tags": [],
311
289
  "text": "The height of the text area"
312
290
  },
313
- "getter": false,
314
- "setter": false,
315
- "reflect": false
291
+ "attribute": "height",
292
+ "reflect": false,
293
+ "defaultValue": "''"
316
294
  }
317
295
  };
318
296
  }
@@ -0,0 +1,44 @@
1
+ import { newE2EPage } from "@stencil/core/testing";
2
+ describe('b2b-toggle-button', () => {
3
+ let page;
4
+ beforeEach(async () => {
5
+ page = await newE2EPage();
6
+ await page.setContent(`<b2b-toggle-button checked="false" name="toggle-1" label="Unselected" value="1"></b2b-toggle-button>`);
7
+ });
8
+ it('renders', async () => {
9
+ const element = await page.find('b2b-toggle-button');
10
+ expect(element).not.toBeNull();
11
+ });
12
+ it('checks the button when selected', async () => {
13
+ const element = await page.find('b2b-toggle-button');
14
+ await element.click();
15
+ await page.waitForChanges();
16
+ const check = await element.getProperty('checked');
17
+ expect(check).toBe(true);
18
+ });
19
+ it('emits its value when selected', async () => {
20
+ const element = await page.find('b2b-toggle-button');
21
+ const spy = await page.spyOnEvent('b2b-change');
22
+ await element.click();
23
+ await page.waitForChanges();
24
+ expect(spy).toHaveReceivedEvent();
25
+ expect(spy).toHaveReceivedEventDetail({ value: '1' });
26
+ });
27
+ it('should not emit when a button is disabled', async () => {
28
+ const element = await page.find('b2b-toggle-button');
29
+ await element.setProperty('disabled', true);
30
+ await page.waitForChanges();
31
+ const spy = await page.spyOnEvent('b2b-change');
32
+ await element.click();
33
+ await page.waitForChanges();
34
+ expect(spy).not.toHaveReceivedEvent();
35
+ });
36
+ it('should not emit when a button is already selected', async () => {
37
+ const element = await page.find('b2b-toggle-button');
38
+ const spy = await page.spyOnEvent('b2b-change');
39
+ await element.click();
40
+ await element.click();
41
+ await page.waitForChanges();
42
+ expect(spy).toHaveReceivedEventTimes(1);
43
+ });
44
+ });
@@ -1,10 +1,6 @@
1
1
  import { h, Host, } from "@stencil/core";
2
2
  export class B2bToggleButtonComponent {
3
3
  constructor() {
4
- /** Whether or not the toggle button is currently checked. Per default it is false. */
5
- this.checked = false;
6
- /** Whether or not the toggle button is currently disabled. Per default it is false. */
7
- this.disabled = false;
8
4
  this.onClick = (ev) => {
9
5
  ev.preventDefault();
10
6
  if (this.disabled || this.checked) {
@@ -25,18 +21,23 @@ export class B2bToggleButtonComponent {
25
21
  toggle.checked = false;
26
22
  });
27
23
  };
24
+ this.label = undefined;
25
+ this.name = undefined;
26
+ this.checked = false;
27
+ this.disabled = false;
28
+ this.value = undefined;
28
29
  }
29
30
  getSiblingToggles() {
30
31
  return Array.from(document.querySelectorAll(`b2b-toggle-button[name="${this.name}"]`)).filter((toggle) => toggle.value !== this.value);
31
32
  }
32
33
  render() {
33
- return (h(Host, { key: '5d7fb470ff38eeed74aca5479731fc7ba1af2b9f', onClick: this.onClick }, h("span", { key: '135f338e88e68ed352cc1f32a708c5586ec3fcf5', class: {
34
+ return (h(Host, { key: '72a27c904d091619da19fb5dab2da588326688df', onClick: this.onClick }, h("span", { key: '165c0254153fa4a3bff6d76f58f844830344f8c2', class: {
34
35
  'b2b-toggle-button': true,
35
36
  'b2b-toggle-button--disabled': this.disabled,
36
- } }, h("input", { key: '2f3d9715acbb6d8e144e5f52ebc83e23e1ffbebf', tabindex: 0, class: {
37
+ } }, h("input", { key: '0d6ee278d5db9f360e7ab466daeaebced17063e6', tabindex: 0, class: {
37
38
  'b2b-toggle-button__input': true,
38
39
  'b2b-toggle-button__input--disabled': this.disabled,
39
- }, "aria-labelledby": this.name, type: "radio", checked: this.checked && !this.disabled, disabled: this.disabled, name: this.name, value: this.value }), h("label", { key: '62b01d38a1d70a4e010188e9e17e2ef1841f813d', id: this.name, tabindex: -1, class: {
40
+ }, "aria-labelledby": this.name, type: "radio", checked: this.checked && !this.disabled, disabled: this.disabled, name: this.name, value: this.value }), h("label", { key: 'f073f01258465886c9fe70e99692ffee84db38bc', id: this.name, tabindex: -1, class: {
40
41
  'b2b-toggle-button__label': true,
41
42
  'b2b-toggle-button__label--disabled': this.disabled,
42
43
  'b2b-toggle-button__label--checked': this.checked && !this.disabled,
@@ -58,7 +59,6 @@ export class B2bToggleButtonComponent {
58
59
  return {
59
60
  "label": {
60
61
  "type": "string",
61
- "attribute": "label",
62
62
  "mutable": false,
63
63
  "complexType": {
64
64
  "original": "string",
@@ -71,13 +71,11 @@ export class B2bToggleButtonComponent {
71
71
  "tags": [],
72
72
  "text": "The label of the toggle button. This is required"
73
73
  },
74
- "getter": false,
75
- "setter": false,
74
+ "attribute": "label",
76
75
  "reflect": false
77
76
  },
78
77
  "name": {
79
78
  "type": "string",
80
- "attribute": "name",
81
79
  "mutable": false,
82
80
  "complexType": {
83
81
  "original": "string",
@@ -90,13 +88,11 @@ export class B2bToggleButtonComponent {
90
88
  "tags": [],
91
89
  "text": "The name of the toggle button. Use it to group toggle buttons together and assign the label to the input element for better accessibility. This is required."
92
90
  },
93
- "getter": false,
94
- "setter": false,
91
+ "attribute": "name",
95
92
  "reflect": true
96
93
  },
97
94
  "checked": {
98
95
  "type": "boolean",
99
- "attribute": "checked",
100
96
  "mutable": true,
101
97
  "complexType": {
102
98
  "original": "boolean",
@@ -109,14 +105,12 @@ export class B2bToggleButtonComponent {
109
105
  "tags": [],
110
106
  "text": "Whether or not the toggle button is currently checked. Per default it is false."
111
107
  },
112
- "getter": false,
113
- "setter": false,
108
+ "attribute": "checked",
114
109
  "reflect": true,
115
110
  "defaultValue": "false"
116
111
  },
117
112
  "disabled": {
118
113
  "type": "boolean",
119
- "attribute": "disabled",
120
114
  "mutable": false,
121
115
  "complexType": {
122
116
  "original": "boolean",
@@ -129,14 +123,12 @@ export class B2bToggleButtonComponent {
129
123
  "tags": [],
130
124
  "text": "Whether or not the toggle button is currently disabled. Per default it is false."
131
125
  },
132
- "getter": false,
133
- "setter": false,
126
+ "attribute": "disabled",
134
127
  "reflect": true,
135
128
  "defaultValue": "false"
136
129
  },
137
130
  "value": {
138
131
  "type": "string",
139
- "attribute": "value",
140
132
  "mutable": false,
141
133
  "complexType": {
142
134
  "original": "string",
@@ -149,8 +141,7 @@ export class B2bToggleButtonComponent {
149
141
  "tags": [],
150
142
  "text": "The value of the toggle button. This will be emitted when the toggle button is clicked. This is required"
151
143
  },
152
- "getter": false,
153
- "setter": false,
144
+ "attribute": "value",
154
145
  "reflect": true
155
146
  }
156
147
  };
@@ -0,0 +1,47 @@
1
+ import { newE2EPage } from "@stencil/core/testing";
2
+ describe('b2b-toggle-chip', () => {
3
+ let page;
4
+ beforeEach(async () => {
5
+ page = await newE2EPage();
6
+ await page.setContent(`<b2b-toggle-chip label="test-chip" name="chip-1" value="chip-1"></b2b-toggle-chip>`);
7
+ });
8
+ it('renders', async () => {
9
+ const element = await page.find('b2b-toggle-chip');
10
+ expect(element).not.toBeNull();
11
+ });
12
+ it('emits the assigned value when clicked', async () => {
13
+ const element = await page.find('b2b-toggle-chip');
14
+ const selectedSpy = await page.spyOnEvent('b2b-selected');
15
+ await element.click();
16
+ await page.waitForChanges();
17
+ expect(await element.getProperty('active')).toBe(true);
18
+ expect(selectedSpy).toHaveReceivedEventDetail({ value: 'chip-1' });
19
+ });
20
+ it('emits the assigned value when navigated with a keyboard', async () => {
21
+ const element = await page.find('b2b-toggle-chip');
22
+ const selectedSpy = await page.spyOnEvent('b2b-selected');
23
+ await page.keyboard.press('Tab');
24
+ await page.keyboard.press('Enter');
25
+ await page.waitForChanges();
26
+ expect(await element.getProperty('active')).toBe(true);
27
+ expect(selectedSpy).toHaveReceivedEventDetail({ value: 'chip-1' });
28
+ });
29
+ it('does not emit if it is already active', async () => {
30
+ const element = await page.find('b2b-toggle-chip');
31
+ const selectedSpy = await page.spyOnEvent('b2b-selected');
32
+ await element.setProperty('active', true);
33
+ await page.waitForChanges();
34
+ await element.click();
35
+ await page.waitForChanges();
36
+ expect(selectedSpy).not.toHaveReceivedEvent();
37
+ });
38
+ it('does not emit if it is disabled', async () => {
39
+ const element = await page.find('b2b-toggle-chip');
40
+ const selectedSpy = await page.spyOnEvent('b2b-selected');
41
+ await element.setAttribute('disabled', true);
42
+ await page.waitForChanges();
43
+ await element.click();
44
+ await page.waitForChanges();
45
+ expect(selectedSpy).not.toHaveReceivedEvent();
46
+ });
47
+ });
@@ -1,10 +1,6 @@
1
1
  import { h, Host } from "@stencil/core";
2
2
  export class B2BToggleChipComponent {
3
3
  constructor() {
4
- /** Whether or not the chip is currently active. Per default, it is false. */
5
- this.active = false;
6
- /** Whether or not the chip is currently disabled. Per default it is false. */
7
- this.disabled = false;
8
4
  this.onClick = () => {
9
5
  if (this.disabled) {
10
6
  return;
@@ -29,13 +25,18 @@ export class B2BToggleChipComponent {
29
25
  }
30
26
  }
31
27
  };
28
+ this.label = undefined;
29
+ this.value = undefined;
30
+ this.name = undefined;
31
+ this.active = false;
32
+ this.disabled = false;
32
33
  }
33
34
  render() {
34
- return (h(Host, { key: '09cf06a146da0e7bbb9b1250a70892e01e4347b1' }, h("span", { key: 'cd72c41c37af52d5b8160da42aba9c0129bddc46', onClick: this.onClick, onKeyDown: this.onKeyDown, class: {
35
+ return (h(Host, { key: 'f1666274891d2a73ec37becece45d1b756bc7510' }, h("span", { key: '3ac8a839ad72f507a091863d06ee7620ea4795d1', onClick: this.onClick, onKeyDown: this.onKeyDown, class: {
35
36
  'b2b-toggle-chip': true,
36
- } }, h("input", { key: 'f37fe0f51601657fcd7959e029d732a3710eb7a7', "aria-labelledby": this.name, tabindex: this.disabled ? -1 : 0, class: {
37
+ } }, h("input", { key: '6233e0b013d8136768f46f771ecc76bbfd663794', "aria-labelledby": this.name, tabindex: this.disabled ? -1 : 0, class: {
37
38
  'b2b-toggle-chip__input': true,
38
- }, type: "checkbox", checked: this.active && !this.disabled, disabled: this.disabled, name: this.name, value: this.value }), h("label", { key: '63441947e13ab34f0d7a303792ff0adeaaf82ca6', id: this.name, tabIndex: -1, class: {
39
+ }, type: "checkbox", checked: this.active && !this.disabled, disabled: this.disabled, name: this.name, value: this.value }), h("label", { key: 'b100606b6bba9648d00b2660de654d045dc8aa85', id: this.name, tabIndex: -1, class: {
39
40
  'b2b-toggle-chip__label': true,
40
41
  'b2b-toggle-chip__label--active': this.active && !this.disabled,
41
42
  'b2b-toggle-chip__label--disabled': this.disabled,
@@ -58,7 +59,6 @@ export class B2BToggleChipComponent {
58
59
  return {
59
60
  "label": {
60
61
  "type": "string",
61
- "attribute": "label",
62
62
  "mutable": false,
63
63
  "complexType": {
64
64
  "original": "string",
@@ -71,13 +71,11 @@ export class B2BToggleChipComponent {
71
71
  "tags": [],
72
72
  "text": "The chip's label. This is required."
73
73
  },
74
- "getter": false,
75
- "setter": false,
74
+ "attribute": "label",
76
75
  "reflect": false
77
76
  },
78
77
  "value": {
79
78
  "type": "any",
80
- "attribute": "value",
81
79
  "mutable": false,
82
80
  "complexType": {
83
81
  "original": "any",
@@ -90,13 +88,11 @@ export class B2BToggleChipComponent {
90
88
  "tags": [],
91
89
  "text": "The value associated with the toggle chip. This is emitted when the chip is interacted with."
92
90
  },
93
- "getter": false,
94
- "setter": false,
91
+ "attribute": "value",
95
92
  "reflect": true
96
93
  },
97
94
  "name": {
98
95
  "type": "string",
99
- "attribute": "name",
100
96
  "mutable": false,
101
97
  "complexType": {
102
98
  "original": "string",
@@ -109,13 +105,11 @@ export class B2BToggleChipComponent {
109
105
  "tags": [],
110
106
  "text": "The name of the toggle chip. Use it to group toggle buttons together and assign the label to the input element for better accessibility. This is required."
111
107
  },
112
- "getter": false,
113
- "setter": false,
108
+ "attribute": "name",
114
109
  "reflect": true
115
110
  },
116
111
  "active": {
117
112
  "type": "boolean",
118
- "attribute": "active",
119
113
  "mutable": true,
120
114
  "complexType": {
121
115
  "original": "boolean",
@@ -128,14 +122,12 @@ export class B2BToggleChipComponent {
128
122
  "tags": [],
129
123
  "text": "Whether or not the chip is currently active. Per default, it is false."
130
124
  },
131
- "getter": false,
132
- "setter": false,
125
+ "attribute": "active",
133
126
  "reflect": false,
134
127
  "defaultValue": "false"
135
128
  },
136
129
  "disabled": {
137
130
  "type": "boolean",
138
- "attribute": "disabled",
139
131
  "mutable": false,
140
132
  "complexType": {
141
133
  "original": "boolean",
@@ -148,8 +140,7 @@ export class B2BToggleChipComponent {
148
140
  "tags": [],
149
141
  "text": "Whether or not the chip is currently disabled. Per default it is false."
150
142
  },
151
- "getter": false,
152
- "setter": false,
143
+ "attribute": "disabled",
153
144
  "reflect": true,
154
145
  "defaultValue": "false"
155
146
  }
@@ -0,0 +1,65 @@
1
+ import { newE2EPage } from "@stencil/core/testing";
2
+ describe('b2b-toggle-group', () => {
3
+ let page;
4
+ beforeEach(async () => {
5
+ page = await newE2EPage();
6
+ await page.setContent(`<b2b-toggle-group name="toggle-group-1">
7
+ <b2b-toggle-button name="toggle-group-1" value="1" label="One"></b2b-toggle-button>
8
+ <b2b-toggle-button name="toggle-group-1" value="2" label="Two"></b2b-toggle-button>
9
+ </b2b-toggle-group>`);
10
+ });
11
+ it('should render the toggle group', async () => {
12
+ const element = await page.find('b2b-toggle-group');
13
+ expect(element).not.toBeNull();
14
+ });
15
+ it('should emit an event when a button is checked', async () => {
16
+ const firstButton = await page.find({ text: 'Two' });
17
+ const changeSpy = await page.spyOnEvent('b2b-group-change');
18
+ await firstButton.click();
19
+ await page.waitForChanges();
20
+ expect(changeSpy).toHaveReceivedEvent();
21
+ expect(changeSpy).toHaveReceivedEventDetail({ value: '2' });
22
+ });
23
+ it('should not emit an event when the checked button is already selected', async () => {
24
+ const firstButton = await page.find({ text: 'Two' });
25
+ const changeSpy = await page.spyOnEvent('b2b-group-change');
26
+ await firstButton.click();
27
+ await firstButton.click();
28
+ await page.waitForChanges();
29
+ expect(changeSpy).toHaveReceivedEventTimes(1);
30
+ });
31
+ it('should not select any buttons if the group is disabled', async () => {
32
+ const element = await page.find('b2b-toggle-group');
33
+ const changeSpy = await page.spyOnEvent('b2b-group-change');
34
+ await element.setProperty('disabled', true);
35
+ await page.waitForChanges();
36
+ const button = await page.find({ text: 'One' });
37
+ await button.click();
38
+ await page.waitForChanges();
39
+ expect(changeSpy).not.toHaveReceivedEvent();
40
+ });
41
+ it('should navigate and select a button by using a keyboard', async () => {
42
+ await page.keyboard.press('Tab');
43
+ await page.waitForChanges();
44
+ await page.keyboard.press('Space');
45
+ await page.waitForChanges();
46
+ const element = await page.find('b2b-toggle-button');
47
+ const checked = await element.getProperty('checked');
48
+ expect(checked).toBe(true);
49
+ });
50
+ it('should select first element if none other is pre-selected ', async () => {
51
+ const firstButton = await page.find('b2b-toggle-button');
52
+ const isSelected = await firstButton.getProperty('checked');
53
+ expect(isSelected).toBe(true);
54
+ });
55
+ it('should not select first element if any element is pre-selected ', async () => {
56
+ page = await newE2EPage();
57
+ await page.setContent(`<b2b-toggle-group name="toggle-group-1">
58
+ <b2b-toggle-button name="toggle-group-1" value="1" label="One"></b2b-toggle-button>
59
+ <b2b-toggle-button checked name="toggle-group-1" value="2" label="Two"></b2b-toggle-button>
60
+ </b2b-toggle-group>`);
61
+ const firstButton = await page.find('b2b-toggle-button');
62
+ const isSelected = await firstButton.getProperty('checked');
63
+ expect(isSelected).toBe(false);
64
+ });
65
+ });