@baloise/ds-core 16.5.0 → 16.5.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 (283) hide show
  1. package/components/bal-field.js +3 -0
  2. package/components/bal-input-date2.js +2 -3
  3. package/components/bal-input.js +1 -1
  4. package/components/bal-number-input.js +1 -1
  5. package/components/bal-segment-item.js +64 -47
  6. package/components/bal-segment.js +61 -17
  7. package/components/bal-textarea.js +1 -1
  8. package/components/bal-time-input.js +1 -1
  9. package/components/form-input.js +14 -1
  10. package/components/index.js +1 -1
  11. package/components/tokens.esm.js +1 -1
  12. package/dist/baloise-design-system/baloise-design-system.esm.js +1 -1
  13. package/dist/baloise-design-system/index.esm.js +1 -1
  14. package/dist/baloise-design-system/{p-dd30661db2.system.entry.js → p-00014af866.system.entry.js} +1 -1
  15. package/dist/baloise-design-system/{p-b0c22ff9d1.entry.js → p-08b0e345a2.entry.js} +1 -1
  16. package/dist/baloise-design-system/{p-3eb68d7e.js → p-0db6b19e.js} +1 -1
  17. package/dist/baloise-design-system/{p-9bb8778cdc.system.entry.js → p-10c13a369c.system.entry.js} +1 -1
  18. package/dist/baloise-design-system/p-1509eaa7.system.js +1 -1
  19. package/dist/baloise-design-system/{p-09ea5913.js → p-15a85377.js} +1 -1
  20. package/dist/baloise-design-system/p-15c5fe4d6d.system.entry.js +1 -0
  21. package/dist/baloise-design-system/{p-cda868a6a5.entry.js → p-16b50b08e4.entry.js} +1 -1
  22. package/dist/baloise-design-system/{p-5fae3f5478.entry.js → p-27bc71c322.entry.js} +1 -1
  23. package/dist/baloise-design-system/{p-0530e008e9.system.entry.js → p-2aa4f352d9.system.entry.js} +1 -1
  24. package/dist/baloise-design-system/{p-8080a1192c.system.entry.js → p-2e498736fc.system.entry.js} +1 -1
  25. package/dist/baloise-design-system/{p-6e3a79cce0.system.entry.js → p-2e8508812d.system.entry.js} +1 -1
  26. package/dist/baloise-design-system/{p-f798011b48.system.entry.js → p-2ea7550d1b.system.entry.js} +1 -1
  27. package/dist/baloise-design-system/{p-380aabd5bc.entry.js → p-3180888825.entry.js} +1 -1
  28. package/dist/baloise-design-system/{p-305cffd8aa.entry.js → p-342b27632b.entry.js} +1 -1
  29. package/dist/baloise-design-system/{p-39bf8adcde.entry.js → p-34671b9410.entry.js} +1 -1
  30. package/dist/baloise-design-system/{p-e187b9de.system.js → p-368bd6ac.system.js} +1 -1
  31. package/dist/baloise-design-system/p-449ffc7a7e.entry.js +1 -0
  32. package/dist/baloise-design-system/{p-0ab43941ba.entry.js → p-462b20f382.entry.js} +1 -1
  33. package/dist/baloise-design-system/{p-f5940253.js → p-4ae121b6.js} +1 -1
  34. package/dist/baloise-design-system/p-4f083c5352.entry.js +1 -0
  35. package/dist/baloise-design-system/{p-df40272425.system.entry.js → p-52a4a89073.system.entry.js} +1 -1
  36. package/dist/baloise-design-system/p-54f81c32.js +1 -1
  37. package/dist/baloise-design-system/{p-4809d5c4.system.js → p-590da25b.system.js} +1 -1
  38. package/dist/baloise-design-system/{p-e137e273b7.system.entry.js → p-5b5d1c626d.system.entry.js} +1 -1
  39. package/dist/baloise-design-system/{p-71588db3.system.js → p-5c0b0099.system.js} +1 -1
  40. package/dist/baloise-design-system/{p-3befc6f9.system.js → p-5de0bd8a.system.js} +1 -1
  41. package/dist/baloise-design-system/{p-0fb6cbda.system.js → p-60a6af04.system.js} +1 -1
  42. package/dist/baloise-design-system/{p-d3fabdb142.system.entry.js → p-60e74d3515.system.entry.js} +1 -1
  43. package/dist/baloise-design-system/p-6139ff78d7.system.entry.js +1 -0
  44. package/dist/baloise-design-system/{p-47a8ad4d7a.system.entry.js → p-619afa0ba5.system.entry.js} +1 -1
  45. package/dist/baloise-design-system/{p-4192ad4350.entry.js → p-63c685b62d.entry.js} +1 -1
  46. package/dist/baloise-design-system/{p-77350b27fc.entry.js → p-648814edf8.entry.js} +1 -1
  47. package/dist/baloise-design-system/{p-2905abdfb8.entry.js → p-663cc3242c.entry.js} +1 -1
  48. package/dist/baloise-design-system/{p-2db4ff4c5b.entry.js → p-6f18ca5500.entry.js} +1 -1
  49. package/dist/baloise-design-system/{p-12bb6ea3e7.system.entry.js → p-760797ae02.system.entry.js} +1 -1
  50. package/dist/baloise-design-system/{p-190b5cd469.entry.js → p-784c10d48f.entry.js} +1 -1
  51. package/dist/baloise-design-system/p-7957c3c0.system.js +1 -0
  52. package/dist/baloise-design-system/{p-8e17b76e7c.system.entry.js → p-7d2709b193.system.entry.js} +1 -1
  53. package/dist/baloise-design-system/{p-7c586fb89f.entry.js → p-80e59744a7.entry.js} +1 -1
  54. package/dist/baloise-design-system/{p-a7e5ee75e2.entry.js → p-82333c3ce3.entry.js} +1 -1
  55. package/dist/baloise-design-system/{p-bcb892a723.system.entry.js → p-82afff07ac.system.entry.js} +1 -1
  56. package/dist/baloise-design-system/{p-488c4a8ce1.entry.js → p-83c70a6b53.entry.js} +1 -1
  57. package/dist/baloise-design-system/{p-f62d0ccdd1.system.entry.js → p-8613444e15.system.entry.js} +1 -1
  58. package/dist/baloise-design-system/{p-9658f4a66f.entry.js → p-898f7862e4.entry.js} +1 -1
  59. package/dist/baloise-design-system/p-8f89168b60.system.entry.js +1 -0
  60. package/dist/baloise-design-system/{p-88eb14fd.system.js → p-910b2f3d.system.js} +1 -1
  61. package/dist/baloise-design-system/{p-3818fa189f.system.entry.js → p-959fc8c170.system.entry.js} +1 -1
  62. package/dist/baloise-design-system/{p-ecab0d67d5.entry.js → p-9f5eda0e22.entry.js} +1 -1
  63. package/dist/baloise-design-system/{p-9f54cac588.system.entry.js → p-a7de2305e0.system.entry.js} +1 -1
  64. package/dist/baloise-design-system/{p-c0153f8edf.system.entry.js → p-ac6d5570d8.system.entry.js} +1 -1
  65. package/dist/baloise-design-system/{p-4fe64c3ec6.system.entry.js → p-aed4d3ac0f.system.entry.js} +1 -1
  66. package/dist/baloise-design-system/{p-372474e989.system.entry.js → p-b4941441f4.system.entry.js} +1 -1
  67. package/dist/baloise-design-system/{p-bee13e834e.entry.js → p-b4c5b5e53f.entry.js} +1 -1
  68. package/dist/baloise-design-system/p-b60576a064.entry.js +1 -0
  69. package/dist/baloise-design-system/{p-853fe65e14.system.entry.js → p-b7ceb9e59e.system.entry.js} +1 -1
  70. package/dist/baloise-design-system/{p-caec1f9e.js → p-b7cef472.js} +1 -1
  71. package/dist/baloise-design-system/p-bcca1ed3.system.js +1 -1
  72. package/dist/baloise-design-system/{p-8f77c423ad.entry.js → p-be366c8428.entry.js} +1 -1
  73. package/dist/baloise-design-system/{p-cafe624e35.entry.js → p-c00e0f64c8.entry.js} +1 -1
  74. package/dist/baloise-design-system/{p-6c2bf02eb3.entry.js → p-c442bb2db2.entry.js} +1 -1
  75. package/dist/baloise-design-system/{p-a5ee486a2b.entry.js → p-c4e11d3813.entry.js} +1 -1
  76. package/dist/baloise-design-system/{p-420d88737c.entry.js → p-c539ee8edf.entry.js} +1 -1
  77. package/dist/baloise-design-system/{p-407ffd9c55.entry.js → p-c716d30de1.entry.js} +1 -1
  78. package/dist/baloise-design-system/{p-7c7e593e07.entry.js → p-c7338c255f.entry.js} +1 -1
  79. package/dist/baloise-design-system/p-cfa901cb.js +1 -0
  80. package/dist/baloise-design-system/{p-0639833837.system.entry.js → p-d800ecde35.system.entry.js} +1 -1
  81. package/dist/baloise-design-system/{p-fb0af77320.system.entry.js → p-d8a71bc5b4.system.entry.js} +1 -1
  82. package/dist/baloise-design-system/{p-d7d6937d59.system.entry.js → p-d94b2cb869.system.entry.js} +1 -1
  83. package/dist/baloise-design-system/{p-3801afd625.entry.js → p-d9f2d48be1.entry.js} +1 -1
  84. package/dist/baloise-design-system/p-dd162dc12e.system.entry.js +1 -0
  85. package/dist/baloise-design-system/{p-ad9a7657.js → p-de08fd27.js} +1 -1
  86. package/dist/baloise-design-system/{p-d1b16f9cc2.entry.js → p-dec8453a4d.entry.js} +1 -1
  87. package/dist/baloise-design-system/{p-e1ccb7023c.system.entry.js → p-e227dcfaa1.system.entry.js} +1 -1
  88. package/dist/baloise-design-system/{p-f03e63bd1e.system.entry.js → p-e2316d2aea.system.entry.js} +1 -1
  89. package/dist/baloise-design-system/p-e45eb6121d.system.entry.js +1 -0
  90. package/dist/baloise-design-system/{p-ef916aafa5.entry.js → p-e6162b978e.entry.js} +1 -1
  91. package/dist/baloise-design-system/{p-d059465399.system.entry.js → p-e7bcca66c5.system.entry.js} +1 -1
  92. package/dist/baloise-design-system/p-e829652c7a.entry.js +1 -0
  93. package/dist/baloise-design-system/p-e833841822.entry.js +1 -0
  94. package/dist/baloise-design-system/{p-2cd1f1dedb.entry.js → p-e8cab53413.entry.js} +1 -1
  95. package/dist/baloise-design-system/p-ec044ce124.system.entry.js +1 -0
  96. package/dist/baloise-design-system/{p-23b7426d09.system.entry.js → p-efe5a8806d.system.entry.js} +1 -1
  97. package/dist/baloise-design-system/{p-1659bb968c.system.entry.js → p-f00b5e9fa4.system.entry.js} +1 -1
  98. package/dist/baloise-design-system/p-f22c8e0c59.entry.js +1 -0
  99. package/dist/baloise-design-system/{p-445d2e1c70.system.entry.js → p-f3bb565972.system.entry.js} +1 -1
  100. package/dist/baloise-design-system/{p-b8251b8f68.system.entry.js → p-fad86a959d.system.entry.js} +1 -1
  101. package/dist/baloise-design-system/{p-f819d47031.entry.js → p-fcfee1c692.entry.js} +1 -1
  102. package/dist/cjs/bal-accordion_4.cjs.entry.js +1 -1
  103. package/dist/cjs/bal-carousel_2.cjs.entry.js +4 -4
  104. package/dist/cjs/bal-checkbox-button.cjs.entry.js +1 -1
  105. package/dist/cjs/bal-checkbox_2.cjs.entry.js +1 -1
  106. package/dist/cjs/bal-content.cjs.entry.js +56 -0
  107. package/dist/cjs/bal-date-calendar-cell.cjs.entry.js +1 -1
  108. package/dist/cjs/bal-date-calendar_2.cjs.entry.js +2 -3
  109. package/dist/cjs/bal-date.cjs.entry.js +1 -1
  110. package/dist/cjs/bal-datepicker.cjs.entry.js +4 -4
  111. package/dist/cjs/bal-dropdown.cjs.entry.js +1 -1
  112. package/dist/cjs/bal-field_5.cjs.entry.js +3 -0
  113. package/dist/cjs/bal-file-upload.cjs.entry.js +1 -1
  114. package/dist/cjs/bal-footer.cjs.entry.js +1 -1
  115. package/dist/cjs/{bal-popover_2.cjs.entry.js → bal-hint_5.cjs.entry.js} +172 -3
  116. package/dist/cjs/bal-input-slider.cjs.entry.js +1 -1
  117. package/dist/cjs/bal-input-stepper.cjs.entry.js +1 -1
  118. package/dist/cjs/bal-input.cjs.entry.js +1 -1
  119. package/dist/cjs/{bal-content_2.cjs.entry.js → bal-label.cjs.entry.js} +0 -46
  120. package/dist/cjs/bal-list_8.cjs.entry.js +3 -3
  121. package/dist/cjs/bal-logo.cjs.entry.js +3 -3
  122. package/dist/cjs/bal-nav_8.cjs.entry.js +3 -3
  123. package/dist/cjs/bal-navbar_5.cjs.entry.js +3 -3
  124. package/dist/cjs/bal-number-input.cjs.entry.js +1 -1
  125. package/dist/cjs/bal-option_2.cjs.entry.js +1 -1
  126. package/dist/cjs/bal-pagination.cjs.entry.js +3 -3
  127. package/dist/cjs/bal-popup.cjs.entry.js +1 -1
  128. package/dist/cjs/bal-progress-bar.cjs.entry.js +5 -5
  129. package/dist/cjs/bal-radio-button.cjs.entry.js +1 -1
  130. package/dist/cjs/bal-radio_2.cjs.entry.js +1 -1
  131. package/dist/cjs/bal-segment_2.cjs.entry.js +516 -0
  132. package/dist/cjs/bal-select_2.cjs.entry.js +1 -1
  133. package/dist/cjs/bal-shape.cjs.entry.js +1 -1
  134. package/dist/cjs/bal-steps.cjs.entry.js +4 -4
  135. package/dist/cjs/bal-tab-item_2.cjs.entry.js +4 -4
  136. package/dist/cjs/bal-textarea.cjs.entry.js +1 -1
  137. package/dist/cjs/bal-time-input.cjs.entry.js +1 -1
  138. package/dist/cjs/baloise-design-system.cjs.js +1 -1
  139. package/dist/cjs/{breakpoints.decorator-a4a5bd7a.js → breakpoints.decorator-f4da1834.js} +1 -1
  140. package/dist/cjs/{breakpoints.subject-fbf85930.js → breakpoints.subject-6fc372a8.js} +1 -1
  141. package/dist/cjs/{form-input-134c5116.js → form-input-b61eb894.js} +14 -0
  142. package/dist/cjs/index.cjs.js +2 -2
  143. package/dist/cjs/initialize-2a19d091.js +1 -1
  144. package/dist/cjs/loader.cjs.js +1 -1
  145. package/dist/cjs/{tokens.esm-aa4bb7f7.js → tokens.esm-cd3fab6c.js} +1 -1
  146. package/dist/cjs/{window-resize.decorator-c7a521b0.js → window-resize.decorator-67e1f4de.js} +1 -1
  147. package/dist/collection/collection-manifest.json +15 -13
  148. package/dist/collection/components/bal-field/bal-field.js +3 -0
  149. package/dist/collection/components/bal-segment/bal-segment-item/bal-segment-item.js +92 -69
  150. package/dist/collection/components/bal-segment/bal-segment.js +115 -19
  151. package/dist/collection/utils/constants/version.constant.js +1 -1
  152. package/dist/collection/utils/form-input.js +13 -0
  153. package/dist/collection/utils/form-input.spec.js +30 -0
  154. package/dist/collection/utils/mask/context/mask-context.js +2 -2
  155. package/dist/esm/bal-accordion_4.entry.js +2 -2
  156. package/dist/esm/bal-carousel_2.entry.js +4 -4
  157. package/dist/esm/bal-checkbox-button.entry.js +1 -1
  158. package/dist/esm/bal-checkbox_2.entry.js +2 -2
  159. package/dist/esm/bal-content.entry.js +52 -0
  160. package/dist/esm/bal-date-calendar-cell.entry.js +1 -1
  161. package/dist/esm/bal-date-calendar_2.entry.js +4 -5
  162. package/dist/esm/bal-date.entry.js +3 -3
  163. package/dist/esm/bal-datepicker.entry.js +5 -5
  164. package/dist/esm/bal-dropdown.entry.js +2 -2
  165. package/dist/esm/bal-field_5.entry.js +3 -0
  166. package/dist/esm/bal-file-upload.entry.js +2 -2
  167. package/dist/esm/bal-footer.entry.js +2 -2
  168. package/dist/esm/{bal-popover_2.entry.js → bal-hint_5.entry.js} +171 -5
  169. package/dist/esm/bal-input-slider.entry.js +1 -1
  170. package/dist/esm/bal-input-stepper.entry.js +2 -2
  171. package/dist/esm/bal-input.entry.js +1 -1
  172. package/dist/esm/{bal-content_2.entry.js → bal-label.entry.js} +1 -46
  173. package/dist/esm/bal-list_8.entry.js +4 -4
  174. package/dist/esm/bal-logo.entry.js +3 -3
  175. package/dist/esm/bal-nav_8.entry.js +3 -3
  176. package/dist/esm/bal-navbar_5.entry.js +3 -3
  177. package/dist/esm/bal-number-input.entry.js +2 -2
  178. package/dist/esm/bal-option_2.entry.js +1 -1
  179. package/dist/esm/bal-pagination.entry.js +3 -3
  180. package/dist/esm/bal-popup.entry.js +2 -2
  181. package/dist/esm/bal-progress-bar.entry.js +5 -5
  182. package/dist/esm/bal-radio-button.entry.js +1 -1
  183. package/dist/esm/bal-radio_2.entry.js +2 -2
  184. package/dist/esm/bal-segment_2.entry.js +511 -0
  185. package/dist/esm/bal-select_2.entry.js +2 -2
  186. package/dist/esm/bal-shape.entry.js +1 -1
  187. package/dist/esm/bal-steps.entry.js +5 -5
  188. package/dist/esm/bal-tab-item_2.entry.js +5 -5
  189. package/dist/esm/bal-textarea.entry.js +1 -1
  190. package/dist/esm/bal-time-input.entry.js +1 -1
  191. package/dist/esm/baloise-design-system.js +1 -1
  192. package/dist/esm/{breakpoints.decorator-f2ac9963.js → breakpoints.decorator-8a50482f.js} +1 -1
  193. package/dist/esm/{breakpoints.subject-3605e395.js → breakpoints.subject-e3538fe7.js} +1 -1
  194. package/dist/esm/{date-aba2d404.js → date-6e8f5617.js} +1 -1
  195. package/dist/esm/{form-input-28a08ec5.js → form-input-a8fdaaef.js} +14 -1
  196. package/dist/esm/{index.esm-76abd8e3.js → index.esm-cc299511.js} +1 -1
  197. package/dist/esm/index.js +5 -5
  198. package/dist/esm/initialize-e216cfe4.js +1 -1
  199. package/dist/esm/loader.js +1 -1
  200. package/dist/esm/{tokens.esm-337782ae.js → tokens.esm-7cf87670.js} +1 -1
  201. package/dist/esm/{window-resize.decorator-d5198831.js → window-resize.decorator-9c08027e.js} +1 -1
  202. package/dist/esm-es5/bal-accordion_4.entry.js +1 -1
  203. package/dist/esm-es5/bal-carousel_2.entry.js +1 -1
  204. package/dist/esm-es5/bal-checkbox-button.entry.js +1 -1
  205. package/dist/esm-es5/bal-checkbox_2.entry.js +1 -1
  206. package/dist/esm-es5/bal-content.entry.js +1 -0
  207. package/dist/esm-es5/bal-date-calendar-cell.entry.js +1 -1
  208. package/dist/esm-es5/bal-date-calendar_2.entry.js +1 -1
  209. package/dist/esm-es5/bal-date.entry.js +1 -1
  210. package/dist/esm-es5/bal-datepicker.entry.js +1 -1
  211. package/dist/esm-es5/bal-dropdown.entry.js +1 -1
  212. package/dist/esm-es5/bal-field_5.entry.js +1 -1
  213. package/dist/esm-es5/bal-file-upload.entry.js +1 -1
  214. package/dist/esm-es5/bal-footer.entry.js +1 -1
  215. package/dist/esm-es5/bal-hint_5.entry.js +1 -0
  216. package/dist/esm-es5/bal-input-slider.entry.js +1 -1
  217. package/dist/esm-es5/bal-input-stepper.entry.js +1 -1
  218. package/dist/esm-es5/bal-input.entry.js +1 -1
  219. package/dist/esm-es5/bal-label.entry.js +1 -0
  220. package/dist/esm-es5/bal-list_8.entry.js +1 -1
  221. package/dist/esm-es5/bal-logo.entry.js +1 -1
  222. package/dist/esm-es5/bal-nav_8.entry.js +1 -1
  223. package/dist/esm-es5/bal-navbar_5.entry.js +1 -1
  224. package/dist/esm-es5/bal-number-input.entry.js +1 -1
  225. package/dist/esm-es5/bal-option_2.entry.js +1 -1
  226. package/dist/esm-es5/bal-pagination.entry.js +1 -1
  227. package/dist/esm-es5/bal-popup.entry.js +1 -1
  228. package/dist/esm-es5/bal-progress-bar.entry.js +1 -1
  229. package/dist/esm-es5/bal-radio-button.entry.js +1 -1
  230. package/dist/esm-es5/bal-radio_2.entry.js +1 -1
  231. package/dist/esm-es5/bal-segment_2.entry.js +1 -0
  232. package/dist/esm-es5/bal-select_2.entry.js +1 -1
  233. package/dist/esm-es5/bal-shape.entry.js +1 -1
  234. package/dist/esm-es5/bal-steps.entry.js +1 -1
  235. package/dist/esm-es5/bal-tab-item_2.entry.js +1 -1
  236. package/dist/esm-es5/bal-textarea.entry.js +1 -1
  237. package/dist/esm-es5/bal-time-input.entry.js +1 -1
  238. package/dist/esm-es5/baloise-design-system.js +1 -1
  239. package/dist/esm-es5/{breakpoints.decorator-f2ac9963.js → breakpoints.decorator-8a50482f.js} +1 -1
  240. package/dist/esm-es5/{breakpoints.subject-3605e395.js → breakpoints.subject-e3538fe7.js} +1 -1
  241. package/dist/esm-es5/{date-aba2d404.js → date-6e8f5617.js} +1 -1
  242. package/dist/esm-es5/{form-input-28a08ec5.js → form-input-a8fdaaef.js} +1 -1
  243. package/dist/esm-es5/{index.esm-76abd8e3.js → index.esm-cc299511.js} +1 -1
  244. package/dist/esm-es5/index.js +1 -1
  245. package/dist/esm-es5/initialize-e216cfe4.js +1 -1
  246. package/dist/esm-es5/loader.js +1 -1
  247. package/dist/esm-es5/{window-resize.decorator-d5198831.js → window-resize.decorator-9c08027e.js} +1 -1
  248. package/dist/types/components/bal-segment/bal-segment-item/bal-segment-item.d.ts +17 -13
  249. package/dist/types/components/bal-segment/bal-segment.d.ts +22 -3
  250. package/dist/types/components/bal-segment/bal-segment.interfaces.d.ts +2 -0
  251. package/dist/types/components.d.ts +7 -19
  252. package/dist/types/utils/form-input.d.ts +3 -0
  253. package/package.json +7 -7
  254. package/dist/baloise-design-system/p-265f9d51c9.system.entry.js +0 -1
  255. package/dist/baloise-design-system/p-370575b8cb.system.entry.js +0 -1
  256. package/dist/baloise-design-system/p-3c25811c44.entry.js +0 -1
  257. package/dist/baloise-design-system/p-487816db33.system.entry.js +0 -1
  258. package/dist/baloise-design-system/p-53e98a0f71.entry.js +0 -1
  259. package/dist/baloise-design-system/p-547aae9610.entry.js +0 -1
  260. package/dist/baloise-design-system/p-5db0544e97.system.entry.js +0 -1
  261. package/dist/baloise-design-system/p-8de1a12660.entry.js +0 -1
  262. package/dist/baloise-design-system/p-a507ff25cb.system.entry.js +0 -1
  263. package/dist/baloise-design-system/p-b8f085f7b5.system.entry.js +0 -1
  264. package/dist/baloise-design-system/p-c1c17f8edc.system.entry.js +0 -1
  265. package/dist/baloise-design-system/p-ced37553e2.entry.js +0 -1
  266. package/dist/baloise-design-system/p-d2ee9b0a.system.js +0 -1
  267. package/dist/baloise-design-system/p-d9d229a026.entry.js +0 -1
  268. package/dist/baloise-design-system/p-e0384bfc0c.entry.js +0 -1
  269. package/dist/baloise-design-system/p-e75ccb92.js +0 -1
  270. package/dist/cjs/bal-hint_3.cjs.entry.js +0 -186
  271. package/dist/cjs/bal-segment-item.cjs.entry.js +0 -156
  272. package/dist/cjs/bal-segment.cjs.entry.js +0 -319
  273. package/dist/esm/bal-hint_3.entry.js +0 -180
  274. package/dist/esm/bal-segment-item.entry.js +0 -152
  275. package/dist/esm/bal-segment.entry.js +0 -315
  276. package/dist/esm-es5/bal-content_2.entry.js +0 -1
  277. package/dist/esm-es5/bal-hint_3.entry.js +0 -1
  278. package/dist/esm-es5/bal-popover_2.entry.js +0 -1
  279. package/dist/esm-es5/bal-segment-item.entry.js +0 -1
  280. package/dist/esm-es5/bal-segment.entry.js +0 -1
  281. /package/dist/baloise-design-system/{p-e1994e2c.js → p-46bed129.js} +0 -0
  282. /package/dist/baloise-design-system/{p-36074466.system.js → p-9ffefe27.system.js} +0 -0
  283. /package/dist/esm-es5/{tokens.esm-337782ae.js → tokens.esm-7cf87670.js} +0 -0
@@ -29,6 +29,7 @@ const Field = /*@__PURE__*/ proxyCustomElement(class Field extends HTMLElement {
29
29
  'bal-input-slider',
30
30
  'bal-file-upload',
31
31
  'bal-dropdown',
32
+ 'bal-segment',
32
33
  ];
33
34
  this.formElements = [...this.formControlElement, 'bal-field-label', 'bal-field-message'];
34
35
  this.isDirectChild = (el) => {
@@ -118,6 +119,8 @@ const Field = /*@__PURE__*/ proxyCustomElement(class Field extends HTMLElement {
118
119
  'bal-field-control bal-dropdown',
119
120
  'bal-field-control bal-checkbox',
120
121
  'bal-field-control bal-radio',
122
+ 'bal-field-control bal-segment-item',
123
+ 'bal-field-control bal-segment',
121
124
  'bal-field-control bal-checkbox-group',
122
125
  'bal-field-control bal-radio-group',
123
126
  'bal-field-control bal-number-input',
@@ -4,7 +4,7 @@ import { B as BEM } from './bem.js';
4
4
  import { L as Logger } from './log.js';
5
5
  import { i as inheritAttributes } from './attributes.js';
6
6
  import { o as hasParent } from './helpers.js';
7
- import { i as inputSetFocus, a as inputSetBlur } from './form-input.js';
7
+ import { h as hasValueChanged, i as inputSetFocus, a as inputSetBlur } from './form-input.js';
8
8
  import { d as defaultBalAriaForm } from './form.js';
9
9
  import { d as dateSeparator } from './index.esm.js';
10
10
  import { N as NUMBER_KEYS } from './keys.constant.js';
@@ -128,8 +128,7 @@ class MaskContext {
128
128
  this._options.component.balInput.emit(this.value);
129
129
  }
130
130
  if ((eventType === 'change' || eventType === 'blur') && parsedValue !== undefined) {
131
- const valueChanged = this._options.component.value !== parsedValue;
132
- if (valueChanged) {
131
+ if (hasValueChanged(this._options.component.value, parsedValue)) {
133
132
  this._options.component.value = parsedValue;
134
133
  this._options.component.balChange.emit(parsedValue);
135
134
  }
@@ -2,7 +2,7 @@ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/
2
2
  import { _ as __decorate, a as __metadata } from './tslib.es6.js';
3
3
  import { m as debounceEvent } from './helpers.js';
4
4
  import { i as inheritAttributes } from './attributes.js';
5
- import { g as getInputTarget, b as inputHandleFocus, e as inputHandleBlur, f as inputHandleChange, s as stopEventBubbling, h as inputHandleClick, c as inputHandleHostClick, d as inputListenOnClick, j as inputHandleReset, i as inputSetFocus, a as inputSetBlur } from './form-input.js';
5
+ import { g as getInputTarget, b as inputHandleFocus, e as inputHandleBlur, f as inputHandleChange, s as stopEventBubbling, j as inputHandleClick, c as inputHandleHostClick, d as inputListenOnClick, k as inputHandleReset, i as inputSetFocus, a as inputSetBlur } from './form-input.js';
6
6
  import { l as lodash_isnil } from './index2.js';
7
7
  import { i as isCtrlOrCommandKey, A as ACTION_KEYS, N as NUMBER_KEYS } from './keys.constant.js';
8
8
  import { B as BEM } from './bem.js';
@@ -1,6 +1,6 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import { _ as __decorate, a as __metadata } from './tslib.es6.js';
3
- import { h as inputHandleClick, c as inputHandleHostClick, b as inputHandleFocus, e as inputHandleBlur, f as inputHandleChange, k as getNativeInputValue, l as getUpcomingValue, s as stopEventBubbling, d as inputListenOnClick, j as inputHandleReset, i as inputSetFocus, a as inputSetBlur } from './form-input.js';
3
+ import { j as inputHandleClick, c as inputHandleHostClick, b as inputHandleFocus, e as inputHandleBlur, f as inputHandleChange, l as getNativeInputValue, m as getUpcomingValue, s as stopEventBubbling, d as inputListenOnClick, k as inputHandleReset, i as inputSetFocus, a as inputSetBlur } from './form-input.js';
4
4
  import { m as debounceEvent } from './helpers.js';
5
5
  import { i as inheritAttributes } from './attributes.js';
6
6
  import { y as getDecimalSeparator$1, z as getThousandSeparator$1, x as formatLocaleNumber$1 } from './index.esm.js';
@@ -1,7 +1,8 @@
1
- import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
1
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
2
  import { B as BEM } from './bem.js';
3
3
  import { i as inheritAttributes } from './attributes.js';
4
- import { j as addEventListener, r as removeEventListener, l as raf } from './helpers.js';
4
+ import { j as addEventListener, l as raf, r as removeEventListener } from './helpers.js';
5
+ import { d as defaultBalAriaForm } from './form.js';
5
6
  import { d as defineCustomElement$5 } from './bal-content2.js';
6
7
  import { d as defineCustomElement$4 } from './bal-icon2.js';
7
8
  import { d as defineCustomElement$3 } from './bal-label2.js';
@@ -10,15 +11,15 @@ import { d as defineCustomElement$2 } from './bal-stack2.js';
10
11
  const balSegmentItemCss = ":root{--bal-segment-background:var(--bal-color-grey-2);--bal-segment-background-invalid:var(--bal-color-danger-1);--bal-segment-item-focus-border:var(--bal-color-border-primary);--bal-segment-item-text-color:var(--bal-color-text-primary);--bal-segment-item-text-color-checked:var(--bal-color-text-primary);--bal-segment-item-text-color-checked-hovered:var(--bal-color-text-primary-hovered);--bal-segment-item-text-color-checked-pressed:var(--bal-color-text-primary-pressed);--bal-segment-item-text-color-invalid:var(--bal-color-text-danger);--bal-segment-item-text-color-invalid-hovered:var(--bal-color-text-danger-hovered);--bal-segment-item-text-color-invalid-pressed:var(--bal-color-text-danger-pressed);--bal-segment-item-text-color-disabled:var(--bal-color-text-grey);--bal-segment-item-text-color-disabled-checked:var(--bal-color-text-grey-dark);--bal-segment-item-divider-background:var(--bal-color-grey);--bal-segment-item-divider-background-invalid:var(--bal-color-danger-2);--bal-segment-item-indicator-background:var(--bal-color-purple-2);--bal-segment-item-indicator-background-invalid:var(--bal-color-danger-4);--bal-segment-item-indicator-background-disabled:var(--bal-color-grey-3)}.bal-segment-item{display:block;position:relative;height:auto;text-decoration:none;text-overflow:ellipsis;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;grid-row:1;-webkit-font-kerning:none;font-kerning:none}.bal-segment-item--disabled{cursor:default !important;pointer-events:none !important}.bal-segment-item__button{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;min-height:2.5rem;min-width:3rem;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;-ms-flex-positive:1;flex-grow:1;padding-top:.375rem;padding-bottom:.375rem;padding-left:20px;padding-right:20px;outline:none;border-color:rgba(0,0,0,0);border-width:var(--bal-border-width-normal);border-style:solid;border-radius:var(--bal-radius-normal);background:rgba(0,0,0,0);font-size:var(--bal-text-size-normal);font-weight:var(--bal-font-weight-bold);color:var(--bal-segment-item-text-color);overflow:hidden;position:relative;contain:content;pointer-events:none;cursor:pointer;z-index:2}.bal-segment-item__button--vertical{padding-left:.75rem;padding-right:.75rem}.bal-segment-item__button span{font-size:var(--bal-text-size-small);font-weight:var(--bal-font-weight-regular)}.bal-segment-item__button{will-change:color,padding;-webkit-transition:color 160ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 160ms cubic-bezier(0.4, 0, 0.2, 1);-webkit-transition:padding 160ms cubic-bezier(0.4, 0, 0.2, 1);transition:padding 160ms cubic-bezier(0.4, 0, 0.2, 1)}.bal-segment-item:not(.bal-segment-item--checked):not(.bal-segment-item--last):not(.bal-segment-item--before-checked)::after{content:\"\";position:absolute;background:var(--bal-segment-item-divider-background);border-radius:var(--bal-radius-normal)}.bal-segment-item:not(.bal-segment-item--vertical):not(.bal-segment-item--checked):not(.bal-segment-item--last):not(.bal-segment-item--before-checked)::after{top:2px;bottom:2px;right:-1px;width:2px}.bal-segment-item.bal-segment-item--vertical:not(.bal-segment-item--checked):not(.bal-segment-item--last):not(.bal-segment-item--before-checked)::after{left:2px;right:2px;bottom:-1px;height:2px}.bal-segment-item--invalid:not(.bal-segment-item--checked):not(.bal-segment-item--last):not(.bal-segment-item--before-checked)::after{background:var(--bal-segment-item-divider-background-invalid)}.bal-segment-item__indicator{-webkit-transform-origin:left;transform-origin:left;position:absolute;opacity:0;-webkit-box-sizing:border-box;box-sizing:border-box;pointer-events:none;border-radius:var(--bal-radius-normal);background:var(--bal-segment-item-indicator-background);top:0;left:0}.bal-segment-item__indicator--vertical{-webkit-transform-origin:top;transform-origin:top}.bal-segment-item__indicator--invalid{background:var(--bal-segment-item-indicator-background-invalid)}.bal-segment-item__indicator--background{min-width:100%;min-height:100%;-webkit-transform:none;transform:none;pointer-events:none}.bal-segment-item__indicator--animated{will-change:transform,opacity,top,bottom,left,right,min-width,min-heigth;-webkit-transition:min-width 100ms ease,min-height 100ms ease,top 100ms ease,left 100ms ease,bottom 100ms ease,right 100ms ease,-webkit-transform 260ms cubic-bezier(0.4, 0, 0.2, 1);transition:min-width 100ms ease,min-height 100ms ease,top 100ms ease,left 100ms ease,bottom 100ms ease,right 100ms ease,-webkit-transform 260ms cubic-bezier(0.4, 0, 0.2, 1);transition:transform 260ms cubic-bezier(0.4, 0, 0.2, 1),min-width 100ms ease,min-height 100ms ease,top 100ms ease,left 100ms ease,bottom 100ms ease,right 100ms ease;transition:transform 260ms cubic-bezier(0.4, 0, 0.2, 1),min-width 100ms ease,min-height 100ms ease,top 100ms ease,left 100ms ease,bottom 100ms ease,right 100ms ease,-webkit-transform 260ms cubic-bezier(0.4, 0, 0.2, 1)}.bal-segment-item__indicator--checked{opacity:1}.bal-segment-item:active .bal-segment-item__indicator{min-width:calc(100% - 4px);min-height:calc(100% - 4px);top:2px !important;bottom:2px !important;left:2px !important;right:2px !important}.bal-segment-item__button__icon{position:absolute !important;opacity:0;width:0 !important;-webkit-transform:translateX(0.1rem);transform:translateX(0.1rem);pointer-events:none !important;cursor:inherit;will-change:transform,opacity}.bal-segment-item__button__icon:not(.bal-segment-item__button__icon--vertical){left:10px}.bal-segment-item__button__icon--vertical{right:10px}.bal-segment-item__button__icon--animated{opacity:1;width:.875rem !important;-webkit-transform:translateX(-4px);transform:translateX(-4px);-webkit-transition:opacity 260ms cubic-bezier(0.4, 0, 0.2, 1),-webkit-transform 260ms cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 260ms cubic-bezier(0.4, 0, 0.2, 1),-webkit-transform 260ms cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 260ms cubic-bezier(0.4, 0, 0.2, 1),transform 260ms cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 260ms cubic-bezier(0.4, 0, 0.2, 1),transform 260ms cubic-bezier(0.4, 0, 0.2, 1),-webkit-transform 260ms cubic-bezier(0.4, 0, 0.2, 1)}.bal-segment-item__button--checked{color:var(--bal-segment-item-text-color-checked);padding-right:40px}.bal-segment-item__button--checked:not(.bal-segment-item__button--vertical){padding-left:26px;padding-right:12px}@media (hover: hover)and (pointer: fine){.bal-segment-item:not(.bal-segment-item--disabled):hover .bal-segment-item__button:not(.bal-segment-item__button--checked){color:var(--bal-segment-item-text-color-checked-hovered)}}.bal-segment-item:not(.bal-segment-item--disabled):active .bal-segment-item__button:not(.bal-segment-item__button--checked){color:var(--bal-segment-item-text-color-checked-pressed)}.bal-segment--keyboard .bal-segment-item__button:not(.bal-segment-item__button--disabled):focus-visible,.bal-segment--keyboard .bal-segment-item__button--focused:not(.bal-segment-item__button--disabled){border-color:var(--bal-segment-item-focus-border);border-width:var(--bal-border-width-normal);border-style:solid;-webkit-transition:border 300ms ease-in-out;transition:border 300ms ease-in-out}.bal-segment-item.bal-segment-item--invalid:not(.bal-segment-item--disabled) .bal-segment-item__button:not(.bal-segment-item__button--checked){color:var(--bal-segment-item-text-color-invalid)}@media (hover: hover)and (pointer: fine){.bal-segment-item.bal-segment-item--invalid:not(.bal-segment-item--disabled):hover .bal-segment-item__button:not(.bal-segment-item__button--checked){color:var(--bal-segment-item-text-color-invalid-hovered)}}.bal-segment-item.bal-segment-item--invalid:not(.bal-segment-item--disabled):active .bal-segment-item__button:not(.bal-segment-item__button--checked){color:var(--bal-segment-item-text-color-invalid-pressed)}.bal-segment-item__button--invalid.bal-segment-item__button--checked{color:var(--bal-color-text-white)}.bal-segment-item__button--disabled{background:rgba(0,0,0,0);color:var(--bal-segment-item-text-color-disabled)}.bal-segment-item__button--disabled.bal-segment-item__button--checked{background:var(--bal-segment-item-indicator-background-disabled);color:var(--bal-segment-item-text-color-disabled-checked)}.bal-segment-item__button__slot--hidden{display:none !important}";
11
12
  const BalSegmentItemStyle0 = balSegmentItemCss;
12
13
 
13
- let ids = 0;
14
+ let SegmentItemIds = 0;
14
15
  const SegmentItem = /*@__PURE__*/ proxyCustomElement(class SegmentItem extends HTMLElement {
15
16
  constructor() {
16
17
  super();
17
18
  this.__registerHost();
18
- this.balBlur = createEvent(this, "balBlur", 7);
19
19
  this.segmentEl = null;
20
20
  this.inheritedAttributes = {};
21
- this.id = ids++;
21
+ this.internalId = SegmentItemIds++;
22
+ this.inputId = `bal-si-${this.internalId}`;
22
23
  this.updateVertical = (ev) => {
23
24
  this.isVertical = ev.detail;
24
25
  };
@@ -26,7 +27,7 @@ const SegmentItem = /*@__PURE__*/ proxyCustomElement(class SegmentItem extends H
26
27
  const { segmentEl } = this;
27
28
  if (segmentEl) {
28
29
  if (segmentEl.value === '' || segmentEl.value === undefined || segmentEl.value === null) {
29
- const items = this.items;
30
+ const items = this.allAvailableOptions;
30
31
  if (items.length > 0) {
31
32
  const first = items[0];
32
33
  this.isFocusable = first === this.el;
@@ -39,6 +40,9 @@ const SegmentItem = /*@__PURE__*/ proxyCustomElement(class SegmentItem extends H
39
40
  if (segmentEl.disabled) {
40
41
  this.disabled = true;
41
42
  }
43
+ this.isLast = segmentEl.lastElementChild === this.el;
44
+ this.isFirst = segmentEl.firstElementChild === this.el;
45
+ this.calculateEmptyValue();
42
46
  }
43
47
  };
44
48
  this.onSlottedItemsChange = () => {
@@ -52,23 +56,35 @@ const SegmentItem = /*@__PURE__*/ proxyCustomElement(class SegmentItem extends H
52
56
  this.hasSlotContent = false;
53
57
  this.isFocusable = false;
54
58
  this.isVertical = false;
59
+ this.isLast = false;
60
+ this.isFirst = false;
61
+ this.hasEmptyValue = true;
62
+ this.ariaForm = defaultBalAriaForm;
55
63
  this.disabled = false;
56
64
  this.invalid = false;
57
65
  this.focused = false;
58
66
  this.checked = false;
59
67
  this.label = '';
60
- this.value = 'bal-si-' + this.id;
68
+ this.value = 'bal-si-' + this.internalId;
61
69
  }
62
- valueChanged() {
63
- this.updateState();
70
+ valueChanged(newValue, oldValue) {
71
+ if (newValue !== oldValue) {
72
+ this.updateState();
73
+ }
64
74
  }
65
- connectedCallback() {
75
+ componentWillLoad() {
76
+ this.inheritedAttributes = Object.assign({}, inheritAttributes(this.el, ['aria-label']));
77
+ }
78
+ componentDidLoad() {
66
79
  const segmentEl = (this.segmentEl = this.el.closest('bal-segment'));
67
80
  if (segmentEl) {
68
- this.updateState();
69
81
  addEventListener(segmentEl, 'balSelect', this.updateState);
70
82
  addEventListener(segmentEl, 'balVertical', this.updateVertical);
71
83
  }
84
+ raf(() => {
85
+ this.checkSlotContent();
86
+ this.updateState();
87
+ });
72
88
  }
73
89
  disconnectedCallback() {
74
90
  const segmentEl = this.segmentEl;
@@ -78,11 +94,14 @@ const SegmentItem = /*@__PURE__*/ proxyCustomElement(class SegmentItem extends H
78
94
  this.segmentEl = null;
79
95
  }
80
96
  }
81
- componentWillLoad() {
82
- this.inheritedAttributes = Object.assign({}, inheritAttributes(this.el, ['aria-label']));
83
- }
84
- componentDidLoad() {
85
- raf(() => this.checkSlotContent());
97
+ calculateEmptyValue() {
98
+ if (this.segmentEl) {
99
+ const segments = Array.from(this.segmentEl.querySelectorAll('bal-segment-item'));
100
+ this.hasEmptyValue = !segments.some(item => item.value === this.segmentEl.value);
101
+ }
102
+ else {
103
+ this.hasEmptyValue = false;
104
+ }
86
105
  }
87
106
  /**
88
107
  * @internal
@@ -95,54 +114,47 @@ const SegmentItem = /*@__PURE__*/ proxyCustomElement(class SegmentItem extends H
95
114
  nativeEl.focus();
96
115
  }
97
116
  }
98
- get items() {
99
- return this.allItems.filter(item => !item.disabled);
117
+ /**
118
+ * @internal
119
+ */
120
+ async setAriaForm(ariaForm) {
121
+ this.ariaForm = Object.assign({}, ariaForm);
100
122
  }
101
- get allItems() {
123
+ get allAvailableOptions() {
124
+ return this.allOptions.filter(item => !item.disabled);
125
+ }
126
+ get allOptions() {
102
127
  const { segmentEl } = this;
103
128
  if (segmentEl) {
104
129
  return Array.from(segmentEl.querySelectorAll('bal-segment-item'));
105
130
  }
106
131
  return [];
107
132
  }
108
- isFirst() {
109
- const { segmentEl } = this;
110
- let items = this.items;
111
- if (segmentEl && segmentEl.disabled) {
112
- items = this.allItems;
113
- }
114
- if (items.length > 0) {
115
- const first = items[0];
116
- return first === this.el;
117
- }
118
- return false;
119
- }
120
- isLast() {
121
- const { segmentEl } = this;
122
- let items = this.items;
123
- if (segmentEl && segmentEl.disabled) {
124
- items = this.allItems;
125
- }
126
- if (items.length > 0) {
127
- const last = items[items.length - 1];
128
- return last === this.el;
129
- }
130
- return false;
131
- }
132
133
  checkSlotContent() {
133
134
  const slot = this.el.querySelector('[part="slot"]');
134
135
  const children = slot ? slot.innerHTML.trim() : '';
135
136
  this.hasSlotContent = children.length > 0;
136
137
  }
137
138
  render() {
138
- const { checked, focused, segmentEl, label, isFocusable } = this;
139
+ const { checked, focused, segmentEl, label, isFocusable, isFirst, hasEmptyValue } = this;
139
140
  const block = BEM.block('segment-item');
140
141
  const buttonBem = block.element('button');
141
142
  const indicatorBem = block.element('indicator');
142
143
  const invalid = this.invalid || (segmentEl && segmentEl.invalid);
143
144
  const disabled = this.disabled || (segmentEl && segmentEl.disabled);
144
145
  const vertical = this.isVertical;
145
- return (h(Host, { class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, block.class()), block.modifier('vertical').class(vertical)), block.modifier('disabled').class(disabled)), block.modifier('checked').class(checked)), block.modifier('invalid').class(invalid)), block.modifier('line').class(!this.isFirst() && !checked)), block.modifier('last').class(this.isLast() && !checked)) }, h("button", Object.assign({ role: "radio", "aria-checked": checked ? 'true' : 'false', class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, buttonBem.class()), buttonBem.modifier('checked').class(checked)), buttonBem.modifier('invalid').class(invalid)), buttonBem.modifier('disabled').class(disabled)), buttonBem.modifier('focused').class(focused)), buttonBem.modifier('vertical').class(vertical)), "aria-labelledby": `bal-si-${this.id}-label`, type: 'button', tabIndex: isFocusable ? 0 : -1, part: "native", onBlur: ev => this.balBlur.emit(ev), disabled: disabled, ref: el => (this.nativeEl = el) }, this.inheritedAttributes), h("bal-icon", { name: "check", size: "small", class: Object.assign(Object.assign(Object.assign({}, buttonBem.element('icon').class()), buttonBem.element('icon').modifier('animated').class(checked)), buttonBem.element('icon').modifier('vertical').class(vertical)), color: disabled ? 'grey-dark' : invalid ? 'white' : 'primary' }), h("bal-stack", { space: "x-small", layout: 'horizontal' }, h("bal-content", { space: "none" }, h("bal-label", { htmlId: `bal-si-${this.id}-label` }, label), h("span", { part: "slot", class: Object.assign({}, buttonBem.element('slot').modifier('hidden').class(!this.hasSlotContent)) }, ' ', h("slot", { onSlotchange: this.onSlottedItemsChange }))))), h("div", { class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, indicatorBem.class()), indicatorBem.modifier('animated').class()), indicatorBem.modifier('background').class()), indicatorBem.modifier('disabled').class(disabled)), indicatorBem.modifier('invalid').class(invalid)), indicatorBem.modifier('checked').class(checked)), indicatorBem.modifier('vertical').class(vertical)) })));
146
+ const hasTabindex = (hasEmptyValue && isFirst) || (isFocusable && !disabled);
147
+ const id = (hasTabindex && this.ariaForm.controlId) || this.inputId;
148
+ let buttonAttributes = {};
149
+ if (hasTabindex) {
150
+ let labelId = this.ariaForm.labelId || null;
151
+ labelId = `${labelId || ''} ${id}-lbl`.trim();
152
+ buttonAttributes = {
153
+ 'aria-labelledby': labelId,
154
+ 'aria-describedby': this.ariaForm.messageId,
155
+ };
156
+ }
157
+ return (h(Host, { class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, block.class()), block.modifier('vertical').class(vertical)), block.modifier('disabled').class(disabled)), block.modifier('checked').class(checked)), block.modifier('invalid').class(invalid)), block.modifier('last').class(this.isLast && !checked)) }, h("button", Object.assign({ id: id, role: "radio", "aria-checked": checked ? 'true' : 'false' }, buttonAttributes, { class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, buttonBem.class()), buttonBem.modifier('checked').class(checked)), buttonBem.modifier('invalid').class(invalid)), buttonBem.modifier('disabled').class(disabled)), buttonBem.modifier('focused').class(focused)), buttonBem.modifier('vertical').class(vertical)), type: 'button', tabIndex: hasTabindex ? 0 : -1, part: "native", disabled: disabled, ref: el => (this.nativeEl = el) }, this.inheritedAttributes), h("bal-icon", { name: "check", size: "small", class: Object.assign(Object.assign(Object.assign({}, buttonBem.element('icon').class()), buttonBem.element('icon').modifier('animated').class(checked)), buttonBem.element('icon').modifier('vertical').class(vertical)), color: disabled ? 'grey-dark' : invalid ? 'white' : 'primary' }), h("bal-stack", { space: "x-small", layout: 'horizontal' }, h("bal-content", { space: "none" }, h("bal-label", { htmlId: `bal-si-${this.internalId}-label` }, label), h("span", { part: "slot", class: Object.assign({}, buttonBem.element('slot').modifier('hidden').class(!this.hasSlotContent)) }, ' ', h("slot", { onSlotchange: this.onSlottedItemsChange }))))), h("div", { class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, indicatorBem.class()), indicatorBem.modifier('animated').class()), indicatorBem.modifier('background').class()), indicatorBem.modifier('disabled').class(disabled)), indicatorBem.modifier('invalid').class(invalid)), indicatorBem.modifier('checked').class(checked)), indicatorBem.modifier('vertical').class(vertical)) })));
146
158
  }
147
159
  get el() { return this; }
148
160
  static get watchers() { return {
@@ -155,11 +167,16 @@ const SegmentItem = /*@__PURE__*/ proxyCustomElement(class SegmentItem extends H
155
167
  "focused": [1028],
156
168
  "checked": [1028],
157
169
  "label": [1],
158
- "value": [8],
170
+ "value": [1032],
159
171
  "hasSlotContent": [32],
160
172
  "isFocusable": [32],
161
173
  "isVertical": [32],
162
- "setFocus": [64]
174
+ "isLast": [32],
175
+ "isFirst": [32],
176
+ "hasEmptyValue": [32],
177
+ "ariaForm": [32],
178
+ "setFocus": [64],
179
+ "setAriaForm": [64]
163
180
  }, undefined, {
164
181
  "value": ["valueChanged"]
165
182
  }]);
@@ -6,6 +6,8 @@ import { a as isSpaceKey, q as isArrowUpKey, A as isArrowLeftKey, o as isArrowDo
6
6
  import { s as stopEventBubbling } from './form-input.js';
7
7
  import { F as FOCUS_KEYS } from './focus-visible.js';
8
8
  import { l as raf } from './helpers.js';
9
+ import { d as defaultBalAriaForm } from './form.js';
10
+ import { L as ListenToFocus } from './focus.decorator.js';
9
11
  import { L as ListenToBreakpoints } from './breakpoints.decorator.js';
10
12
  import { L as ListenToWindowResize } from './window-resize.decorator.js';
11
13
 
@@ -16,13 +18,19 @@ const Segment = /*@__PURE__*/ proxyCustomElement(class Segment extends HTMLEleme
16
18
  constructor() {
17
19
  super();
18
20
  this.__registerHost();
21
+ this.balFocus = createEvent(this, "balFocus", 7);
19
22
  this.balBlur = createEvent(this, "balBlur", 7);
20
23
  this.balChange = createEvent(this, "balChange", 7);
21
24
  this.balSelect = createEvent(this, "balSelect", 7);
22
25
  this.balVertical = createEvent(this, "balVertical", 7);
26
+ /**
27
+ * LISTENERS
28
+ * ------------------------------------------------------
29
+ */
30
+ this.hasFocus = false;
23
31
  this.getSegmentItem = (selector) => {
24
32
  var _a, _b;
25
- const items = this.items.filter(item => !item.disabled);
33
+ const items = this.allItems.filter(item => !item.disabled);
26
34
  const currIndex = items.findIndex(item => item === document.activeElement.closest('bal-segment-item'));
27
35
  switch (selector) {
28
36
  case 'current':
@@ -87,6 +95,7 @@ const Segment = /*@__PURE__*/ proxyCustomElement(class Segment extends HTMLEleme
87
95
  this.isVertical = false;
88
96
  this.isMobile = false;
89
97
  this.maxWidth = 0;
98
+ this.ariaForm = defaultBalAriaForm;
90
99
  this.invalid = false;
91
100
  this.disabled = false;
92
101
  this.vertical = false;
@@ -97,6 +106,9 @@ const Segment = /*@__PURE__*/ proxyCustomElement(class Segment extends HTMLEleme
97
106
  createLogger(log) {
98
107
  this.log = log;
99
108
  }
109
+ disabledChanged() {
110
+ this.allItems.map(item => (item.disabled = this.disabled));
111
+ }
100
112
  valueChanged(value) {
101
113
  /**
102
114
  * `balSelect` is emitted every time the value changes (internal or external changes).
@@ -111,6 +123,7 @@ const Segment = /*@__PURE__*/ proxyCustomElement(class Segment extends HTMLEleme
111
123
  connectedCallback() {
112
124
  this.el.addEventListener('touchstart', this.onPointerDown);
113
125
  this.el.addEventListener('mousedown', this.onPointerDown);
126
+ this.disabledChanged();
114
127
  }
115
128
  disconnectedCallback() {
116
129
  this.el.removeEventListener('touchstart', this.onPointerDown);
@@ -120,10 +133,12 @@ const Segment = /*@__PURE__*/ proxyCustomElement(class Segment extends HTMLEleme
120
133
  this.setCheckedClasses();
121
134
  this.defineWidth();
122
135
  }
123
- /**
124
- * LISTENERS
125
- * ------------------------------------------------------
126
- */
136
+ focusInListener(ev) {
137
+ this.balFocus.emit(ev);
138
+ }
139
+ focusOutListener(ev) {
140
+ this.balBlur.emit(ev);
141
+ }
127
142
  breakpointListener(breakpoints) {
128
143
  this.isMobile = breakpoints.mobile;
129
144
  }
@@ -145,9 +160,8 @@ const Segment = /*@__PURE__*/ proxyCustomElement(class Segment extends HTMLEleme
145
160
  this.emitVerticalChange(true);
146
161
  }
147
162
  }
148
- listenOnBalBlur(ev) {
149
- stopEventBubbling(ev);
150
- this.balBlur.emit(ev.detail);
163
+ listenOnKeyDownOutside() {
164
+ this.keyboardMode = true;
151
165
  }
152
166
  listenOnKeyDown(ev) {
153
167
  this.keyboardMode = FOCUS_KEYS.includes(ev.key);
@@ -155,6 +169,7 @@ const Segment = /*@__PURE__*/ proxyCustomElement(class Segment extends HTMLEleme
155
169
  if (isSpaceKey(ev)) {
156
170
  stopEventBubbling(ev);
157
171
  current = this.getSegmentItem('current');
172
+ this.value = current.value;
158
173
  }
159
174
  else if (isArrowUpKey(ev) || isArrowLeftKey(ev)) {
160
175
  stopEventBubbling(ev);
@@ -184,15 +199,25 @@ const Segment = /*@__PURE__*/ proxyCustomElement(class Segment extends HTMLEleme
184
199
  current.setFocus();
185
200
  }
186
201
  }
202
+ /**
203
+ * PUBLIC METHODS
204
+ * ------------------------------------------------------
205
+ */
206
+ /**
207
+ * @internal
208
+ */
209
+ async setAriaForm(ariaForm) {
210
+ this.ariaForm = Object.assign({}, ariaForm);
211
+ }
187
212
  /**
188
213
  * GETTERS
189
214
  * ------------------------------------------------------
190
215
  */
191
- get items() {
216
+ get allItems() {
192
217
  return Array.from(this.el.querySelectorAll('bal-segment-item'));
193
218
  }
194
219
  get checked() {
195
- return this.items.find(item => item.value === this.value);
220
+ return this.allItems.find(item => item.value === this.value);
196
221
  }
197
222
  /**
198
223
  * PRIVATE METHODS
@@ -217,8 +242,11 @@ const Segment = /*@__PURE__*/ proxyCustomElement(class Segment extends HTMLEleme
217
242
  });
218
243
  }
219
244
  getIndicator(item) {
220
- const root = item.shadowRoot || item;
221
- return root.querySelector('.bal-segment-item__indicator');
245
+ if (item) {
246
+ const root = item.shadowRoot || item;
247
+ return root.querySelector('.bal-segment-item__indicator');
248
+ }
249
+ return null;
222
250
  }
223
251
  checkButton(previous, current) {
224
252
  const previousIndicator = this.getIndicator(previous);
@@ -255,7 +283,7 @@ const Segment = /*@__PURE__*/ proxyCustomElement(class Segment extends HTMLEleme
255
283
  this.setCheckedClasses();
256
284
  }
257
285
  setCheckedClasses() {
258
- const items = this.items;
286
+ const items = this.allItems;
259
287
  const index = items.findIndex(item => item.value === this.value);
260
288
  const next = index + 1;
261
289
  const previous = index - 1;
@@ -275,12 +303,13 @@ const Segment = /*@__PURE__*/ proxyCustomElement(class Segment extends HTMLEleme
275
303
  * ------------------------------------------------------
276
304
  */
277
305
  render() {
278
- const { invalid, isVertical, scrollable, keyboardMode, expanded, isMobile } = this;
306
+ const { invalid, isVertical, scrollable, keyboardMode, expanded, isMobile, disabled } = this;
279
307
  const block = BEM.block('segment');
280
- return (h(Host, { role: "radiogroup", class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, block.class()), block.modifier('invalid').class(invalid)), block.modifier('vertical').class(isVertical)), block.modifier('scrollable').class(scrollable)), block.modifier('keyboard').class(keyboardMode)), block.modifier('expanded').class((expanded || isMobile) && !isVertical)), onClick: this.onClick }, h("slot", { onSlotchange: this.onSlottedItemsChange })));
308
+ return (h(Host, { role: "radiogroup", "aria-labelledby": this.ariaForm.labelId, "aria-describedby": this.ariaForm.messageId, class: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, block.class()), block.modifier('invalid').class(invalid)), block.modifier('vertical').class(isVertical)), block.modifier('scrollable').class(scrollable)), block.modifier('keyboard').class(keyboardMode)), block.modifier('disabled').class(disabled)), block.modifier('expanded').class((expanded || isMobile) && !isVertical)), onClick: this.onClick }, h("slot", { onSlotchange: this.onSlottedItemsChange })));
281
309
  }
282
310
  get el() { return this; }
283
311
  static get watchers() { return {
312
+ "disabled": ["disabledChanged"],
284
313
  "value": ["valueChanged"]
285
314
  }; }
286
315
  static get style() { return BalSegmentStyle0; }
@@ -295,8 +324,11 @@ const Segment = /*@__PURE__*/ proxyCustomElement(class Segment extends HTMLEleme
295
324
  "keyboardMode": [32],
296
325
  "isVertical": [32],
297
326
  "isMobile": [32],
298
- "maxWidth": [32]
299
- }, [[0, "balBlur", "listenOnBalBlur"], [0, "keydown", "listenOnKeyDown"]], {
327
+ "maxWidth": [32],
328
+ "ariaForm": [32],
329
+ "setAriaForm": [64]
330
+ }, [[4, "keydown", "listenOnKeyDownOutside"], [0, "keydown", "listenOnKeyDown"]], {
331
+ "disabled": ["disabledChanged"],
300
332
  "value": ["valueChanged"]
301
333
  }]);
302
334
  __decorate([
@@ -305,6 +337,18 @@ __decorate([
305
337
  __metadata("design:paramtypes", [Function]),
306
338
  __metadata("design:returntype", void 0)
307
339
  ], Segment.prototype, "createLogger", null);
340
+ __decorate([
341
+ ListenToFocus(),
342
+ __metadata("design:type", Function),
343
+ __metadata("design:paramtypes", [FocusEvent]),
344
+ __metadata("design:returntype", void 0)
345
+ ], Segment.prototype, "focusInListener", null);
346
+ __decorate([
347
+ ListenToFocus(),
348
+ __metadata("design:type", Function),
349
+ __metadata("design:paramtypes", [FocusEvent]),
350
+ __metadata("design:returntype", void 0)
351
+ ], Segment.prototype, "focusOutListener", null);
308
352
  __decorate([
309
353
  ListenToBreakpoints(),
310
354
  __metadata("design:type", Function),
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
- import { g as getInputTarget, b as inputHandleFocus, e as inputHandleBlur, f as inputHandleChange, h as inputHandleClick, c as inputHandleHostClick, d as inputListenOnClick, j as inputHandleReset, i as inputSetFocus, a as inputSetBlur } from './form-input.js';
2
+ import { g as getInputTarget, b as inputHandleFocus, e as inputHandleBlur, f as inputHandleChange, j as inputHandleClick, c as inputHandleHostClick, d as inputListenOnClick, k as inputHandleReset, i as inputSetFocus, a as inputSetBlur } from './form-input.js';
3
3
  import { m as debounceEvent } from './helpers.js';
4
4
  import { i as inheritAttributes } from './attributes.js';
5
5
  import { B as BEM } from './bem.js';
@@ -1,7 +1,7 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import { _ as __decorate, a as __metadata } from './tslib.es6.js';
3
3
  import { l as lodash_isnil } from './index2.js';
4
- import { g as getInputTarget, b as inputHandleFocus, e as inputHandleBlur, f as inputHandleChange, s as stopEventBubbling, d as inputListenOnClick, j as inputHandleReset, i as inputSetFocus, a as inputSetBlur } from './form-input.js';
4
+ import { g as getInputTarget, b as inputHandleFocus, e as inputHandleBlur, f as inputHandleChange, s as stopEventBubbling, d as inputListenOnClick, k as inputHandleReset, i as inputSetFocus, a as inputSetBlur } from './form-input.js';
5
5
  import { m as debounceEvent } from './helpers.js';
6
6
  import { i as inheritAttributes } from './attributes.js';
7
7
  import { i as isCtrlOrCommandKey, N as NUMBER_KEYS, A as ACTION_KEYS } from './keys.constant.js';
@@ -73,5 +73,18 @@ const inputHandleChange = (component) => {
73
73
  component.balChange.emit(component.value);
74
74
  }
75
75
  };
76
+ const isEmptyValue = (value) => {
77
+ return (value === '' ||
78
+ value === undefined ||
79
+ value === null ||
80
+ (Array.isArray(value) && !value.length) ||
81
+ (typeof value === 'number' && isNaN(value)));
82
+ };
83
+ const parseValue = (value) => {
84
+ return isEmptyValue(value) ? undefined : value;
85
+ };
86
+ const hasValueChanged = (oldValue, newValue) => {
87
+ return parseValue(oldValue) !== parseValue(newValue);
88
+ };
76
89
 
77
- export { inputSetBlur as a, inputHandleFocus as b, inputHandleHostClick as c, inputListenOnClick as d, inputHandleBlur as e, inputHandleChange as f, getInputTarget as g, inputHandleClick as h, inputSetFocus as i, inputHandleReset as j, getNativeInputValue as k, getUpcomingValue as l, stopEventBubbling as s };
90
+ export { inputSetBlur as a, inputHandleFocus as b, inputHandleHostClick as c, inputListenOnClick as d, inputHandleBlur as e, inputHandleChange as f, getInputTarget as g, hasValueChanged as h, inputSetFocus as i, inputHandleClick as j, inputHandleReset as k, getNativeInputValue as l, getUpcomingValue as m, stopEventBubbling as s };
@@ -328,7 +328,7 @@ class BalSnackbarController extends BalNoticeController {
328
328
  const balSnackbarController = new BalSnackbarController();
329
329
 
330
330
  // generated by .build/version.js
331
- const VERSION = '16.5.0';
331
+ const VERSION = '16.5.1';
332
332
 
333
333
  const initializeBaloiseDesignSystem = (userConfig = {}, platformConfig = undefined, win = {}) => {
334
334
  if (Object.keys(win).length === 0 && balBrowser.hasWindow) {
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Do not edit directly
3
- * Generated on Tue, 17 Sep 2024 12:02:09 GMT
3
+ * Generated on Tue, 24 Sep 2024 12:54:29 GMT
4
4
  */
5
5
  const balColorGreen3 = "#94e3d4";
6
6
  const balColorGreen6 = "#1b5951";