@lifesg/react-design-system 4.0.0-alpha.2 → 4.0.0-alpha.3

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 (1434) hide show
  1. package/_virtual/index.js +1 -1
  2. package/_virtual/index3.js +1 -1
  3. package/alert/alert.js +1 -1
  4. package/alert/alert.js.map +1 -1
  5. package/animations/loading-dots-spinner/loading-dots-spinner.js +1 -1
  6. package/animations/loading-dots-spinner/loading-dots-spinner.js.map +1 -1
  7. package/badge/badge.js +1 -1
  8. package/badge/badge.js.map +1 -1
  9. package/box-container/box-container.js +1 -1
  10. package/box-container/box-container.js.map +1 -1
  11. package/breadcrumb/breadcrumb.js +1 -1
  12. package/breadcrumb/breadcrumb.js.map +1 -1
  13. package/button/button.js +1 -1
  14. package/button/button.js.map +1 -1
  15. package/button/button.styles.d.ts +1 -0
  16. package/button/button.styles.js +1 -1
  17. package/button/button.styles.js.map +1 -1
  18. package/{cjs/button/button.styles_142m6cx.css → button/button.styles_bcpkzm.css} +2 -1
  19. package/cjs/_virtual/index.js +1 -1
  20. package/cjs/_virtual/index3.js +1 -1
  21. package/cjs/alert/alert.js +1 -1
  22. package/cjs/alert/alert.js.map +1 -1
  23. package/cjs/animations/loading-dots-spinner/loading-dots-spinner.js +1 -1
  24. package/cjs/animations/loading-dots-spinner/loading-dots-spinner.js.map +1 -1
  25. package/cjs/badge/badge.js +1 -1
  26. package/cjs/badge/badge.js.map +1 -1
  27. package/cjs/box-container/box-container.js +1 -1
  28. package/cjs/box-container/box-container.js.map +1 -1
  29. package/cjs/breadcrumb/breadcrumb.js +1 -1
  30. package/cjs/breadcrumb/breadcrumb.js.map +1 -1
  31. package/cjs/button/button.js +1 -1
  32. package/cjs/button/button.js.map +1 -1
  33. package/cjs/button/button.styles.js +1 -1
  34. package/cjs/button/button.styles.js.map +1 -1
  35. package/{button/button.styles_142m6cx.css → cjs/button/button.styles_bcpkzm.css} +2 -1
  36. package/cjs/countdown-timer/countdown-timer.js +1 -1
  37. package/cjs/countdown-timer/countdown-timer.js.map +1 -1
  38. package/cjs/countdown-timer/countdown-timer.styles.js +2 -0
  39. package/cjs/countdown-timer/countdown-timer.styles.js.map +1 -0
  40. package/cjs/countdown-timer/countdown-timer.styles_k50tkw.css +8 -0
  41. package/cjs/dashed-border/dashed-border.js +1 -1
  42. package/cjs/dashed-border/dashed-border.js.map +1 -1
  43. package/cjs/data-table/data-table.js +1 -1
  44. package/cjs/data-table/data-table.js.map +1 -1
  45. package/cjs/data-table/data-table.styles.js +1 -152
  46. package/cjs/data-table/data-table.styles.js.map +1 -1
  47. package/cjs/data-table/data-table.styles_1nj2uzq.css +26 -0
  48. package/cjs/date-input/date-input.js +1 -1
  49. package/cjs/date-input/date-input.js.map +1 -1
  50. package/cjs/date-input/date-input.styles.js +2 -0
  51. package/cjs/date-input/date-input.styles.js.map +1 -0
  52. package/cjs/date-input/date-input.styles_1r5kcc7.css +1 -0
  53. package/cjs/date-range-input/date-range-input.js +1 -1
  54. package/cjs/date-range-input/date-range-input.js.map +1 -1
  55. package/cjs/date-range-input/date-range-input.styles.js +2 -0
  56. package/cjs/date-range-input/date-range-input.styles.js.map +1 -0
  57. package/cjs/date-range-input/date-range-input.styles_1s7ojnj.css +4 -0
  58. package/cjs/divider/divider.js +1 -1
  59. package/cjs/divider/divider.js.map +1 -1
  60. package/cjs/e-signature/e-signature.js +1 -1
  61. package/cjs/e-signature/e-signature.js.map +1 -1
  62. package/cjs/e-signature/e-signature.styles.js +18 -18
  63. package/cjs/e-signature/e-signature.styles.js.map +1 -1
  64. package/cjs/error-display/error-display-data.js +1 -1
  65. package/cjs/error-display/error-display-data.js.map +1 -1
  66. package/cjs/error-display/error-display.js +1 -1
  67. package/cjs/error-display/error-display.js.map +1 -1
  68. package/cjs/error-display/helper.js +1 -1
  69. package/cjs/error-display/helper.js.map +1 -1
  70. package/cjs/external/lodash/isNumber.js +2 -0
  71. package/cjs/external/lodash/isNumber.js.map +1 -0
  72. package/cjs/external/lodash.clonedeep/index.js +1 -1
  73. package/cjs/external/lottie-colorify/lib/index.js +1 -1
  74. package/cjs/external/lottie-colorify/lib/index.js.map +1 -1
  75. package/cjs/external/prop-types/external/react-is/index.js +1 -1
  76. package/cjs/external/prop-types/index.js +1 -1
  77. package/cjs/external/prop-types/index.js.map +1 -1
  78. package/cjs/feedback-rating/feedback-rating-stars-container.js +1 -1
  79. package/cjs/feedback-rating/feedback-rating-stars-container.js.map +1 -1
  80. package/cjs/feedback-rating/feedback-rating-stars-container.styles.js +1 -36
  81. package/cjs/feedback-rating/feedback-rating-stars-container.styles.js.map +1 -1
  82. package/cjs/feedback-rating/feedback-rating-stars-container.styles_dmi8z9.css +4 -0
  83. package/cjs/feedback-rating/feedback-rating.js +1 -1
  84. package/cjs/feedback-rating/feedback-rating.js.map +1 -1
  85. package/cjs/feedback-rating/feedback-rating.styles.js +1 -37
  86. package/cjs/feedback-rating/feedback-rating.styles.js.map +1 -1
  87. package/cjs/feedback-rating/feedback-rating.styles_1kdklb6.css +4 -0
  88. package/cjs/file-download/file-list-card/file-list-card.js +1 -1
  89. package/cjs/file-download/file-list-card/file-list-card.js.map +1 -1
  90. package/cjs/file-upload/dropzone.js +1 -1
  91. package/cjs/file-upload/dropzone.js.map +1 -1
  92. package/cjs/file-upload/dropzone.styles.js +1 -34
  93. package/cjs/file-upload/dropzone.styles.js.map +1 -1
  94. package/cjs/file-upload/dropzone.styles_1pllsau.css +6 -0
  95. package/cjs/file-upload/file-item-edit.js +1 -1
  96. package/cjs/file-upload/file-item-edit.js.map +1 -1
  97. package/cjs/file-upload/file-item-edit.styles.js +1 -66
  98. package/cjs/file-upload/file-item-edit.styles.js.map +1 -1
  99. package/cjs/file-upload/file-item-edit.styles_1qbpbxj.css +10 -0
  100. package/cjs/file-upload/file-list-item/file-list-item-thumbnail.js +1 -34
  101. package/cjs/file-upload/file-list-item/file-list-item-thumbnail.js.map +1 -1
  102. package/cjs/file-upload/file-list-item/file-list-item-thumbnail.styles.js +2 -0
  103. package/cjs/file-upload/file-list-item/file-list-item-thumbnail.styles.js.map +1 -0
  104. package/cjs/file-upload/file-list-item/file-list-item-thumbnail.styles_1vrh1ve.css +4 -0
  105. package/cjs/file-upload/file-list-item/file-list-item.js +1 -1
  106. package/cjs/file-upload/file-list-item/file-list-item.js.map +1 -1
  107. package/cjs/file-upload/file-list-item/file-list-item.styles.js +1 -174
  108. package/cjs/file-upload/file-list-item/file-list-item.styles.js.map +1 -1
  109. package/cjs/file-upload/file-list-item/file-list-item.styles_y7my2m.css +14 -0
  110. package/cjs/file-upload/file-list.js +1 -1
  111. package/cjs/file-upload/file-list.js.map +1 -1
  112. package/cjs/file-upload/file-list.styles.js +1 -20
  113. package/cjs/file-upload/file-list.styles.js.map +1 -1
  114. package/cjs/file-upload/file-list.styles_16vplxk.css +3 -0
  115. package/cjs/file-upload/file-upload.js +1 -1
  116. package/cjs/file-upload/file-upload.js.map +1 -1
  117. package/cjs/file-upload/file-upload.styles.js +1 -40
  118. package/cjs/file-upload/file-upload.styles.js.map +1 -1
  119. package/cjs/file-upload/file-upload.styles_9ffwcd.css +8 -0
  120. package/cjs/filter/addons/filter-item-checkbox.js +1 -1
  121. package/cjs/filter/addons/filter-item-checkbox.js.map +1 -1
  122. package/cjs/filter/addons/filter-item-checkbox.styles.js +1 -72
  123. package/cjs/filter/addons/filter-item-checkbox.styles.js.map +1 -1
  124. package/cjs/filter/addons/filter-item-checkbox.styles_18l87i2.css +16 -0
  125. package/cjs/filter/filter-item-page.js +1 -1
  126. package/cjs/filter/filter-item-page.js.map +1 -1
  127. package/cjs/filter/filter-item-page.styles.js +1 -7
  128. package/cjs/filter/filter-item-page.styles.js.map +1 -1
  129. package/cjs/filter/filter-item-page.styles_17ewfrz.css +1 -0
  130. package/cjs/filter/filter-item.js +1 -1
  131. package/cjs/filter/filter-item.js.map +1 -1
  132. package/cjs/filter/filter-item.styles.js +1 -63
  133. package/cjs/filter/filter-item.styles.js.map +1 -1
  134. package/cjs/filter/filter-item.styles_1e3v6qq.css +17 -0
  135. package/cjs/filter/filter-modal.js +1 -1
  136. package/cjs/filter/filter-modal.js.map +1 -1
  137. package/cjs/filter/filter-modal.styles.js +1 -29
  138. package/cjs/filter/filter-modal.styles.js.map +1 -1
  139. package/cjs/filter/filter-modal.styles_e0ev97.css +8 -0
  140. package/cjs/filter/filter-sidebar.js +1 -1
  141. package/cjs/filter/filter-sidebar.js.map +1 -1
  142. package/cjs/filter/filter-sidebar.styles.js +1 -23
  143. package/cjs/filter/filter-sidebar.styles.js.map +1 -1
  144. package/cjs/filter/filter-sidebar.styles_cwvqql.css +4 -0
  145. package/cjs/filter/filter.js +1 -1
  146. package/cjs/filter/filter.js.map +1 -1
  147. package/cjs/filter/filter.styles.js +1 -26
  148. package/cjs/filter/filter.styles.js.map +1 -1
  149. package/cjs/filter/filter.styles_2fmaok.css +5 -0
  150. package/cjs/form/form-label-addon.js +1 -1
  151. package/cjs/form/form-label-addon.js.map +1 -1
  152. package/cjs/form/form-masked-input.js +1 -1
  153. package/cjs/form/form-masked-input.js.map +1 -1
  154. package/cjs/form/form-time-range-picker.js +1 -1
  155. package/cjs/form/form-time-range-picker.js.map +1 -1
  156. package/cjs/form/index.js.map +1 -1
  157. package/cjs/fullscreen-image-carousel/fullscreen-image-carousel.js +1 -1
  158. package/cjs/fullscreen-image-carousel/fullscreen-image-carousel.js.map +1 -1
  159. package/cjs/fullscreen-image-carousel/fullscreen-image-carousel.styles.js +2 -0
  160. package/cjs/fullscreen-image-carousel/fullscreen-image-carousel.styles.js.map +1 -0
  161. package/cjs/fullscreen-image-carousel/fullscreen-image-carousel.styles_vc6y5c.css +75 -0
  162. package/cjs/fullscreen-image-carousel/stateful-image.js +1 -1
  163. package/cjs/fullscreen-image-carousel/stateful-image.js.map +1 -1
  164. package/cjs/fullscreen-image-carousel/stateful-image.styles.js +2 -0
  165. package/cjs/fullscreen-image-carousel/stateful-image.styles.js.map +1 -0
  166. package/cjs/fullscreen-image-carousel/stateful-image.styles_1xe8ypm.css +3 -0
  167. package/cjs/histogram-slider/histogram-slider.js +1 -1
  168. package/cjs/histogram-slider/histogram-slider.js.map +1 -1
  169. package/cjs/index.js +1 -1
  170. package/cjs/input-group/input-group-list-addon.js +1 -1
  171. package/cjs/input-group/input-group-list-addon.js.map +1 -1
  172. package/cjs/input-group/input-group-list-addon.styles.js +1 -1
  173. package/cjs/input-group/input-group-list-addon.styles.js.map +1 -1
  174. package/{input-group/input-group-list-addon.styles_1my6j2v.css → cjs/input-group/input-group-list-addon.styles_17iuqtw.css} +2 -2
  175. package/cjs/input-group/input-group.js +1 -1
  176. package/cjs/input-group/input-group.js.map +1 -1
  177. package/cjs/input-multi-select/input-multi-select.js +1 -1
  178. package/cjs/input-multi-select/input-multi-select.js.map +1 -1
  179. package/cjs/input-nested-multi-select/input-nested-multi-select.js +1 -1
  180. package/cjs/input-nested-multi-select/input-nested-multi-select.js.map +1 -1
  181. package/cjs/input-nested-select/input-nested-select.js +1 -1
  182. package/cjs/input-nested-select/input-nested-select.js.map +1 -1
  183. package/cjs/input-range-select/input-range-select.js +1 -1
  184. package/cjs/input-range-select/input-range-select.js.map +1 -1
  185. package/cjs/input-range-select/input-range-select.styles.js +2 -0
  186. package/cjs/input-range-select/input-range-select.styles.js.map +1 -0
  187. package/cjs/input-range-select/input-range-select.styles_adbrbm.css +2 -0
  188. package/cjs/input-range-slider/input-range-slider.js +1 -1
  189. package/cjs/input-range-slider/input-range-slider.js.map +1 -1
  190. package/cjs/input-range-slider/slider-components.js +1 -1
  191. package/cjs/input-range-slider/slider-components.js.map +1 -1
  192. package/cjs/input-select/input-select.js +1 -1
  193. package/cjs/input-select/input-select.js.map +1 -1
  194. package/cjs/language-switcher/dropdown-panel.js +2 -0
  195. package/cjs/language-switcher/dropdown-panel.js.map +1 -0
  196. package/cjs/language-switcher/dropdown-panel.styles.js +2 -0
  197. package/cjs/language-switcher/dropdown-panel.styles.js.map +1 -0
  198. package/cjs/language-switcher/dropdown-panel.styles_1z0n7qq.css +4 -0
  199. package/cjs/language-switcher/dropdown-variant.js +1 -1
  200. package/cjs/language-switcher/dropdown-variant.js.map +1 -1
  201. package/cjs/language-switcher/dropdown-variant.styles.js +2 -0
  202. package/cjs/language-switcher/dropdown-variant.styles.js.map +1 -0
  203. package/cjs/language-switcher/dropdown-variant.styles_16c4wc1.css +2 -0
  204. package/cjs/language-switcher/link-container-variant.js +1 -1
  205. package/cjs/language-switcher/link-container-variant.js.map +1 -1
  206. package/cjs/language-switcher/link-container-variant.styles.js +2 -0
  207. package/cjs/language-switcher/link-container-variant.styles.js.map +1 -0
  208. package/cjs/language-switcher/link-container-variant.styles_1blx9qm.css +5 -0
  209. package/cjs/layout/col-div.js +1 -1
  210. package/cjs/layout/col-div.js.map +1 -1
  211. package/cjs/link-list/components/common.js +1 -1
  212. package/cjs/link-list/components/common.js.map +1 -1
  213. package/cjs/link-list/components/link-list-eager.js +1 -1
  214. package/cjs/link-list/components/link-list-eager.js.map +1 -1
  215. package/cjs/link-list/components/link-list-lazy.js +1 -1
  216. package/cjs/link-list/components/link-list-lazy.js.map +1 -1
  217. package/cjs/link-list/link-list.js +1 -1
  218. package/cjs/link-list/link-list.js.map +1 -1
  219. package/cjs/link-list/link-list.styles.js +1 -89
  220. package/cjs/link-list/link-list.styles.js.map +1 -1
  221. package/cjs/link-list/link-list.styles_1g33nb4.css +13 -0
  222. package/cjs/local-nav/local-nav-dropdown/local-nav-dropdown.js +1 -1
  223. package/cjs/local-nav/local-nav-dropdown/local-nav-dropdown.js.map +1 -1
  224. package/cjs/local-nav/local-nav-dropdown/local-nav-dropdown.styles.js +1 -100
  225. package/cjs/local-nav/local-nav-dropdown/local-nav-dropdown.styles.js.map +1 -1
  226. package/cjs/local-nav/local-nav-dropdown/local-nav-dropdown.styles_ftv36t.css +13 -0
  227. package/cjs/local-nav/local-nav-menu/local-nav-menu.js +1 -1
  228. package/cjs/local-nav/local-nav-menu/local-nav-menu.js.map +1 -1
  229. package/cjs/local-nav/local-nav-menu/local-nav-menu.styles.js +1 -39
  230. package/cjs/local-nav/local-nav-menu/local-nav-menu.styles.js.map +1 -1
  231. package/cjs/local-nav/local-nav-menu/local-nav-menu.styles_pq19dh.css +5 -0
  232. package/cjs/markup/markup.js +1 -1
  233. package/cjs/markup/markup.js.map +1 -1
  234. package/cjs/masked-input/masked-input.js +1 -1
  235. package/cjs/masked-input/masked-input.js.map +1 -1
  236. package/cjs/masked-input/masked-input.styles.js +2 -0
  237. package/cjs/masked-input/masked-input.styles.js.map +1 -0
  238. package/cjs/masked-input/masked-input.styles_4i1qsy.css +16 -0
  239. package/cjs/menu/menu-content.js +1 -1
  240. package/cjs/menu/menu-content.js.map +1 -1
  241. package/cjs/menu/menu-content.styles.js +1 -1
  242. package/cjs/menu/menu-content.styles.js.map +1 -1
  243. package/cjs/menu/{menu-content.styles_1b7d6qf.css → menu-content.styles_p7ijll.css} +1 -1
  244. package/cjs/menu/menu.js +1 -1
  245. package/cjs/menu/menu.js.map +1 -1
  246. package/cjs/modal/modal.js +1 -1
  247. package/cjs/modal/modal.js.map +1 -1
  248. package/cjs/modal-v2/modal-v2.js +1 -1
  249. package/cjs/modal-v2/modal-v2.js.map +1 -1
  250. package/cjs/navbar/brand.js +1 -1
  251. package/cjs/navbar/brand.js.map +1 -1
  252. package/cjs/navbar/brand.styles.js +1 -12
  253. package/cjs/navbar/brand.styles.js.map +1 -1
  254. package/cjs/navbar/brand.styles_zcgddp.css +1 -0
  255. package/cjs/navbar/drawer.js +1 -1
  256. package/cjs/navbar/drawer.js.map +1 -1
  257. package/cjs/navbar/drawer.styles.js +1 -65
  258. package/cjs/navbar/drawer.styles.js.map +1 -1
  259. package/cjs/navbar/drawer.styles_7hnxp5.css +8 -0
  260. package/cjs/navbar/menu.js +1 -1
  261. package/cjs/navbar/menu.js.map +1 -1
  262. package/cjs/navbar/menu.styles.js +1 -34
  263. package/cjs/navbar/menu.styles.js.map +1 -1
  264. package/cjs/navbar/menu.styles_gdpqc.css +3 -0
  265. package/cjs/navbar/navbar-action-buttons.js +1 -1
  266. package/cjs/navbar/navbar-action-buttons.js.map +1 -1
  267. package/cjs/navbar/navbar-action-buttons.styles.js +1 -100
  268. package/cjs/navbar/navbar-action-buttons.styles.js.map +1 -1
  269. package/cjs/navbar/navbar-action-buttons.styles_1vpm0nk.css +10 -0
  270. package/cjs/navbar/navbar-items.js +1 -1
  271. package/cjs/navbar/navbar-items.js.map +1 -1
  272. package/cjs/navbar/navbar-items.styles.js +1 -114
  273. package/cjs/navbar/navbar-items.styles.js.map +1 -1
  274. package/cjs/navbar/navbar-items.styles_i9cunu.css +19 -0
  275. package/cjs/navbar/navbar-logo-data.js +1 -1
  276. package/cjs/navbar/navbar-logo-data.js.map +1 -1
  277. package/cjs/navbar/navbar.js +1 -1
  278. package/cjs/navbar/navbar.js.map +1 -1
  279. package/cjs/navbar/navbar.styles.js +1 -79
  280. package/cjs/navbar/navbar.styles.js.map +1 -1
  281. package/cjs/navbar/navbar.styles_koy0c7.css +20 -0
  282. package/cjs/notification-banner/notification-banner.js +1 -1
  283. package/cjs/notification-banner/notification-banner.js.map +1 -1
  284. package/cjs/notification-banner/notification-banner.styles.js +1 -111
  285. package/cjs/notification-banner/notification-banner.styles.js.map +1 -1
  286. package/cjs/notification-banner/notification-banner.styles_130loac.css +12 -0
  287. package/cjs/otp-input/otp-input.js +1 -1
  288. package/cjs/otp-input/otp-input.js.map +1 -1
  289. package/cjs/otp-input/otp-input.styles.js +1 -22
  290. package/cjs/otp-input/otp-input.styles.js.map +1 -1
  291. package/cjs/otp-input/otp-input.styles_5sbutl.css +5 -0
  292. package/cjs/otp-verification/contact-input-section-styles.js +18 -16
  293. package/cjs/otp-verification/contact-input-section-styles.js.map +1 -1
  294. package/cjs/otp-verification/contact-input-section.js +1 -1
  295. package/cjs/otp-verification/contact-input-section.js.map +1 -1
  296. package/cjs/otp-verification/verification-section.js +1 -1
  297. package/cjs/otp-verification/verification-section.js.map +1 -1
  298. package/cjs/overlay/overlay.js +1 -1
  299. package/cjs/overlay/overlay.js.map +1 -1
  300. package/cjs/pagination/pagination.js +1 -1
  301. package/cjs/pagination/pagination.js.map +1 -1
  302. package/cjs/popover/index.js +1 -1
  303. package/{popover-v2 → cjs/popover}/popover-inline/popover-inline.js.map +1 -1
  304. package/cjs/popover/popover-inline/popover-inline.styles.js +2 -0
  305. package/{popover-v2 → cjs/popover}/popover-inline/popover-inline.styles.js.map +1 -1
  306. package/cjs/popover/popover-inline/popover-inline.styles_bkopnt.css +2 -0
  307. package/cjs/popover/popover-trigger.js +2 -0
  308. package/cjs/popover/popover-trigger.js.map +1 -0
  309. package/cjs/popover/popover-trigger.styles.js +2 -0
  310. package/{popover-v2 → cjs/popover}/popover-trigger.styles.js.map +1 -1
  311. package/cjs/popover/popover-trigger.styles_8zokig.css +1 -0
  312. package/cjs/popover/popover.js +1 -1
  313. package/cjs/popover/popover.js.map +1 -1
  314. package/cjs/popover/popover.styles.js +1 -74
  315. package/cjs/popover/popover.styles.js.map +1 -1
  316. package/cjs/popover/popover.styles_ujnf0h.css +4 -0
  317. package/cjs/predictive-text-input/predictive-text-input.js +1 -1
  318. package/cjs/predictive-text-input/predictive-text-input.js.map +1 -1
  319. package/cjs/progress-indicator/progress-indicator.js +1 -1
  320. package/cjs/progress-indicator/progress-indicator.js.map +1 -1
  321. package/cjs/progress-indicator/progress-indicator.styles.js +2 -0
  322. package/cjs/progress-indicator/progress-indicator.styles.js.map +1 -0
  323. package/cjs/progress-indicator/progress-indicator.styles_1c038s4.css +8 -0
  324. package/cjs/schedule/schedule.js +1 -1
  325. package/cjs/schedule/schedule.js.map +1 -1
  326. package/cjs/schedule/shared/with-optional-popover.js +1 -1
  327. package/cjs/schedule/shared/with-optional-popover.js.map +1 -1
  328. package/cjs/select-histogram/select-histogram.js +1 -1
  329. package/cjs/select-histogram/select-histogram.js.map +1 -1
  330. package/cjs/select-histogram/select-histogram.styles.js +1 -37
  331. package/cjs/select-histogram/select-histogram.styles.js.map +1 -1
  332. package/cjs/select-histogram/select-histogram.styles_11916eo.css +5 -0
  333. package/cjs/shared/component-loading-spinner/component-loading-spinner.js +1 -1
  334. package/cjs/shared/component-loading-spinner/component-loading-spinner.js.map +1 -1
  335. package/cjs/shared/dropdown-list/dropdown-label.js +1 -1
  336. package/cjs/shared/dropdown-list/dropdown-label.js.map +1 -1
  337. package/cjs/shared/dropdown-list/dropdown-list.js +1 -1
  338. package/cjs/shared/dropdown-list/dropdown-list.js.map +1 -1
  339. package/cjs/shared/dropdown-list/dropdown-list.styles.js +1 -1
  340. package/cjs/shared/dropdown-list/dropdown-list.styles.js.map +1 -1
  341. package/{shared/dropdown-list/dropdown-list.styles_1qveyb9.css → cjs/shared/dropdown-list/dropdown-list.styles_1kt4zhf.css} +3 -6
  342. package/cjs/shared/dropdown-list/nested-dropdown-list.js +1 -1
  343. package/cjs/shared/dropdown-list/nested-dropdown-list.js.map +1 -1
  344. package/cjs/shared/dropdown-wrapper/element-with-dropdown.js +1 -1
  345. package/cjs/shared/dropdown-wrapper/element-with-dropdown.js.map +1 -1
  346. package/cjs/shared/fade-wrapper/fade-wrapper.js +1 -1
  347. package/cjs/shared/fade-wrapper/fade-wrapper.js.map +1 -1
  348. package/cjs/shared/fade-wrapper/helpers.js +1 -1
  349. package/cjs/shared/fade-wrapper/helpers.js.map +1 -1
  350. package/cjs/shared/input-wrapper/input-wrapper.js +1 -1
  351. package/cjs/shared/input-wrapper/input-wrapper.js.map +1 -1
  352. package/cjs/shared/input-wrapper/input-wrapper.styles.js +1 -1
  353. package/cjs/shared/input-wrapper/input-wrapper.styles.js.map +1 -1
  354. package/cjs/shared/input-wrapper/{input-wrapper.styles_1kc4xhb.css → input-wrapper.styles_19fpzb.css} +3 -0
  355. package/cjs/shared/internal-calendar/calendar-dropdown.js +1 -1
  356. package/cjs/shared/internal-calendar/calendar-dropdown.js.map +1 -1
  357. package/cjs/shared/progress-bar/progress-bar.js +1 -1
  358. package/cjs/shared/progress-bar/progress-bar.js.map +1 -1
  359. package/cjs/shared/standalone-date-input/standalone-date-input.js +1 -1
  360. package/cjs/shared/standalone-date-input/standalone-date-input.js.map +1 -1
  361. package/cjs/shared/standalone-date-input/standalone-date-input.styles.js +1 -1
  362. package/cjs/shared/standalone-date-input/standalone-date-input.styles.js.map +1 -1
  363. package/{shared/standalone-date-input/standalone-date-input.styles_1mqophx.css → cjs/shared/standalone-date-input/standalone-date-input.styles_1m0da43.css} +10 -11
  364. package/cjs/shared/time-slot/time-slot.js +2 -0
  365. package/cjs/shared/time-slot/time-slot.js.map +1 -0
  366. package/cjs/shared/time-slot/time-slot.styles.js +2 -0
  367. package/cjs/shared/time-slot/time-slot.styles.js.map +1 -0
  368. package/cjs/shared/time-slot/time-slot.styles_1r9na3f.css +17 -0
  369. package/cjs/smart-app-banner/smart-app-banner.js +1 -1
  370. package/cjs/smart-app-banner/smart-app-banner.js.map +1 -1
  371. package/cjs/smart-app-banner/smart-app-banner.styles.js +1 -93
  372. package/cjs/smart-app-banner/smart-app-banner.styles.js.map +1 -1
  373. package/cjs/smart-app-banner/smart-app-banner.styles_m5dtgh.css +16 -0
  374. package/cjs/tab/tab-link-chain.js +1 -1
  375. package/cjs/tab/tab-link-chain.js.map +1 -1
  376. package/cjs/text-list/ordered-list.js +1 -1
  377. package/cjs/text-list/ordered-list.js.map +1 -1
  378. package/cjs/text-list/unordered-list.js +1 -1
  379. package/cjs/text-list/unordered-list.js.map +1 -1
  380. package/cjs/theme/index.js +1 -1
  381. package/cjs/theme/theme-provider/breakpoint.js +1 -1
  382. package/cjs/theme/theme-provider/breakpoint.js.map +1 -1
  383. package/cjs/theme/tokens/font.js +1 -1
  384. package/cjs/theme/tokens/font.js.map +1 -1
  385. package/cjs/theme/utils/css-variable.js +1 -1
  386. package/cjs/theme/utils/css-variable.js.map +1 -1
  387. package/cjs/theme/utils/use-media-query.js +2 -0
  388. package/cjs/theme/utils/use-media-query.js.map +1 -0
  389. package/cjs/time-range-picker/combobox-picker/combobox-picker.js +1 -1
  390. package/cjs/time-range-picker/combobox-picker/combobox-picker.js.map +1 -1
  391. package/cjs/time-range-picker/combobox-picker/combobox-picker.styles.js +1 -6
  392. package/cjs/time-range-picker/combobox-picker/combobox-picker.styles.js.map +1 -1
  393. package/cjs/time-range-picker/combobox-picker/combobox-picker.styles_7i9vso.css +1 -0
  394. package/cjs/time-range-picker/common.styles.js +1 -10
  395. package/cjs/time-range-picker/common.styles.js.map +1 -1
  396. package/cjs/time-range-picker/common.styles_1qwp4xa.css +3 -0
  397. package/cjs/time-range-picker/dial-picker/dial-picker.js +1 -1
  398. package/cjs/time-range-picker/dial-picker/dial-picker.js.map +1 -1
  399. package/cjs/time-slot-bar/helper.js +1 -1
  400. package/cjs/time-slot-bar/helper.js.map +1 -1
  401. package/cjs/time-slot-bar/time-slot-bar.js +1 -1
  402. package/cjs/time-slot-bar/time-slot-bar.js.map +1 -1
  403. package/cjs/time-slot-bar/time-slot-bar.styles.js +1 -127
  404. package/cjs/time-slot-bar/time-slot-bar.styles.js.map +1 -1
  405. package/cjs/time-slot-bar/time-slot-bar.styles_wigbyd.css +25 -0
  406. package/cjs/time-slot-bar/time-slot-divider.js +2 -0
  407. package/cjs/time-slot-bar/time-slot-divider.js.map +1 -0
  408. package/cjs/time-slot-bar/time-slot-item.js +2 -0
  409. package/cjs/time-slot-bar/time-slot-item.js.map +1 -0
  410. package/cjs/time-slot-bar-week/time-slot-bar-week-days.js +1 -1
  411. package/cjs/time-slot-bar-week/time-slot-bar-week-days.js.map +1 -1
  412. package/cjs/time-slot-bar-week/time-slot-bar-week-days.style.js +25 -22
  413. package/cjs/time-slot-bar-week/time-slot-bar-week-days.style.js.map +1 -1
  414. package/cjs/time-slot-week-view/time-slot-week-days.js +1 -1
  415. package/cjs/time-slot-week-view/time-slot-week-days.js.map +1 -1
  416. package/cjs/time-slot-week-view/time-slot-week-days.style.js +16 -10
  417. package/cjs/time-slot-week-view/time-slot-week-days.style.js.map +1 -1
  418. package/cjs/timeline/timeline.js +1 -1
  419. package/cjs/timeline/timeline.js.map +1 -1
  420. package/cjs/timeline/timeline.styles.js +2 -0
  421. package/cjs/timeline/timeline.styles.js.map +1 -0
  422. package/cjs/timeline/timeline.styles_1wcnzot.css +9 -0
  423. package/cjs/timetable/const.js +1 -1
  424. package/cjs/timetable/const.js.map +1 -1
  425. package/cjs/timetable/timetable-header/timetable-header.js +1 -1
  426. package/cjs/timetable/timetable-header/timetable-header.js.map +1 -1
  427. package/cjs/timetable/timetable-header/timetable-header.styles.js +2 -0
  428. package/cjs/timetable/timetable-header/timetable-header.styles.js.map +1 -0
  429. package/cjs/timetable/timetable-header/timetable-header.styles_11gl1h4.css +6 -0
  430. package/cjs/timetable/timetable-row/row-bar.js +1 -1
  431. package/cjs/timetable/timetable-row/row-bar.js.map +1 -1
  432. package/cjs/timetable/timetable-row/row-bar.styles.js +2 -0
  433. package/cjs/timetable/timetable-row/row-bar.styles.js.map +1 -0
  434. package/cjs/timetable/timetable-row/row-bar.styles_1x0vrsz.css +1 -0
  435. package/cjs/timetable/timetable-row/row-cell.js +1 -1
  436. package/cjs/timetable/timetable-row/row-cell.js.map +1 -1
  437. package/cjs/timetable/timetable-row/row-cell.styles.js +2 -0
  438. package/cjs/timetable/timetable-row/row-cell.styles.js.map +1 -0
  439. package/cjs/timetable/timetable-row/row-cell.styles_y1dl5j.css +7 -0
  440. package/cjs/timetable/timetable-row/with-optional-popover.js +1 -1
  441. package/cjs/timetable/timetable-row/with-optional-popover.js.map +1 -1
  442. package/cjs/timetable/timetable.js +1 -1
  443. package/cjs/timetable/timetable.js.map +1 -1
  444. package/cjs/timetable/timetable.styles.js +2 -0
  445. package/cjs/timetable/timetable.styles.js.map +1 -0
  446. package/cjs/timetable/timetable.styles_7rp8kz.css +46 -0
  447. package/cjs/toast/toast.js +1 -1
  448. package/cjs/toast/toast.js.map +1 -1
  449. package/cjs/toast/toast.styles.js +1 -98
  450. package/cjs/toast/toast.styles.js.map +1 -1
  451. package/cjs/toast/toast.styles_ngrlup.css +8 -0
  452. package/cjs/toggle/toggle.js +1 -1
  453. package/cjs/toggle/toggle.js.map +1 -1
  454. package/cjs/typography/typography.js +1 -1
  455. package/cjs/typography/typography.js.map +1 -1
  456. package/cjs/uneditable-section/item-section.js +1 -1
  457. package/cjs/uneditable-section/item-section.js.map +1 -1
  458. package/cjs/uneditable-section/section-item.js +1 -1
  459. package/cjs/uneditable-section/section-item.js.map +1 -1
  460. package/cjs/uneditable-section/section-item.styles.js +1 -63
  461. package/cjs/uneditable-section/section-item.styles.js.map +1 -1
  462. package/cjs/uneditable-section/section-item.styles_1dfjzc4.css +9 -0
  463. package/cjs/uneditable-section/uneditable-section.js +1 -1
  464. package/cjs/uneditable-section/uneditable-section.js.map +1 -1
  465. package/cjs/uneditable-section/uneditable-section.styles.js +1 -39
  466. package/cjs/uneditable-section/uneditable-section.styles.js.map +1 -1
  467. package/cjs/uneditable-section/uneditable-section.styles_aj9zun.css +8 -0
  468. package/cjs/unit-number/unit-number-input.js +1 -1
  469. package/cjs/unit-number/unit-number-input.js.map +1 -1
  470. package/cjs/unit-number/unit-number-input.styles.js +2 -0
  471. package/cjs/unit-number/unit-number-input.styles.js.map +1 -0
  472. package/cjs/unit-number/unit-number-input.styles_8yizj.css +7 -0
  473. package/cjs/util/styling-helper.js +1 -1
  474. package/cjs/util/styling-helper.js.map +1 -1
  475. package/countdown-timer/countdown-timer.js +1 -1
  476. package/countdown-timer/countdown-timer.js.map +1 -1
  477. package/countdown-timer/countdown-timer.styles.d.ts +15 -0
  478. package/countdown-timer/countdown-timer.styles.js +2 -0
  479. package/countdown-timer/countdown-timer.styles.js.map +1 -0
  480. package/countdown-timer/countdown-timer.styles_k50tkw.css +8 -0
  481. package/dashed-border/dashed-border.js +1 -1
  482. package/dashed-border/dashed-border.js.map +1 -1
  483. package/data-table/data-table.js +1 -1
  484. package/data-table/data-table.js.map +1 -1
  485. package/data-table/data-table.styles.d.ts +30 -83
  486. package/data-table/data-table.styles.js +1 -152
  487. package/data-table/data-table.styles.js.map +1 -1
  488. package/data-table/data-table.styles_1nj2uzq.css +26 -0
  489. package/date-input/date-input.d.ts +1 -1
  490. package/date-input/date-input.js +1 -1
  491. package/date-input/date-input.js.map +1 -1
  492. package/date-input/date-input.styles.d.ts +1 -0
  493. package/date-input/date-input.styles.js +2 -0
  494. package/date-input/date-input.styles.js.map +1 -0
  495. package/date-input/date-input.styles_1r5kcc7.css +1 -0
  496. package/date-range-input/date-range-input.js +1 -1
  497. package/date-range-input/date-range-input.js.map +1 -1
  498. package/date-range-input/date-range-input.styles.d.ts +5 -0
  499. package/date-range-input/date-range-input.styles.js +2 -0
  500. package/date-range-input/date-range-input.styles.js.map +1 -0
  501. package/date-range-input/date-range-input.styles_1s7ojnj.css +4 -0
  502. package/divider/divider.d.ts +1 -1
  503. package/divider/divider.js +1 -1
  504. package/divider/divider.js.map +1 -1
  505. package/divider/types.d.ts +1 -2
  506. package/e-signature/e-signature.js +1 -1
  507. package/e-signature/e-signature.js.map +1 -1
  508. package/e-signature/e-signature.styles.js +5 -5
  509. package/e-signature/e-signature.styles.js.map +1 -1
  510. package/error-display/error-display-data.d.ts +2 -2
  511. package/error-display/error-display-data.js +1 -1
  512. package/error-display/error-display-data.js.map +1 -1
  513. package/error-display/error-display.js +1 -1
  514. package/error-display/error-display.js.map +1 -1
  515. package/error-display/helper.d.ts +1 -1
  516. package/error-display/helper.js +1 -1
  517. package/error-display/helper.js.map +1 -1
  518. package/external/lodash/isNumber.js +2 -0
  519. package/external/lodash/isNumber.js.map +1 -0
  520. package/external/lodash.clonedeep/index.js +1 -1
  521. package/external/lottie-colorify/lib/index.js +1 -1
  522. package/external/lottie-colorify/lib/index.js.map +1 -1
  523. package/external/prop-types/external/react-is/index.js +1 -1
  524. package/external/prop-types/index.js +1 -1
  525. package/external/prop-types/index.js.map +1 -1
  526. package/feedback-rating/feedback-rating-stars-container.js +1 -1
  527. package/feedback-rating/feedback-rating-stars-container.js.map +1 -1
  528. package/feedback-rating/feedback-rating-stars-container.styles.d.ts +4 -23
  529. package/feedback-rating/feedback-rating-stars-container.styles.js +1 -36
  530. package/feedback-rating/feedback-rating-stars-container.styles.js.map +1 -1
  531. package/feedback-rating/feedback-rating-stars-container.styles_dmi8z9.css +4 -0
  532. package/feedback-rating/feedback-rating.js +1 -1
  533. package/feedback-rating/feedback-rating.js.map +1 -1
  534. package/feedback-rating/feedback-rating.styles.d.ts +4 -4
  535. package/feedback-rating/feedback-rating.styles.js +1 -37
  536. package/feedback-rating/feedback-rating.styles.js.map +1 -1
  537. package/feedback-rating/feedback-rating.styles_1kdklb6.css +4 -0
  538. package/file-download/file-list-card/file-list-card.js +1 -1
  539. package/file-download/file-list-card/file-list-card.js.map +1 -1
  540. package/file-upload/dropzone.js +1 -1
  541. package/file-upload/dropzone.js.map +1 -1
  542. package/file-upload/dropzone.styles.d.ts +6 -34
  543. package/file-upload/dropzone.styles.js +1 -34
  544. package/file-upload/dropzone.styles.js.map +1 -1
  545. package/file-upload/dropzone.styles_1pllsau.css +6 -0
  546. package/file-upload/file-item-edit.js +1 -1
  547. package/file-upload/file-item-edit.js.map +1 -1
  548. package/file-upload/file-item-edit.styles.d.ts +8 -48
  549. package/file-upload/file-item-edit.styles.js +1 -66
  550. package/file-upload/file-item-edit.styles.js.map +1 -1
  551. package/file-upload/file-item-edit.styles_1qbpbxj.css +10 -0
  552. package/file-upload/file-list-item/file-list-item-thumbnail.d.ts +0 -7
  553. package/file-upload/file-list-item/file-list-item-thumbnail.js +1 -34
  554. package/file-upload/file-list-item/file-list-item-thumbnail.js.map +1 -1
  555. package/file-upload/file-list-item/file-list-item-thumbnail.styles.d.ts +4 -0
  556. package/file-upload/file-list-item/file-list-item-thumbnail.styles.js +2 -0
  557. package/file-upload/file-list-item/file-list-item-thumbnail.styles.js.map +1 -0
  558. package/file-upload/file-list-item/file-list-item-thumbnail.styles_1vrh1ve.css +4 -0
  559. package/file-upload/file-list-item/file-list-item.js +1 -1
  560. package/file-upload/file-list-item/file-list-item.js.map +1 -1
  561. package/file-upload/file-list-item/file-list-item.styles.d.ts +14 -170
  562. package/file-upload/file-list-item/file-list-item.styles.js +1 -174
  563. package/file-upload/file-list-item/file-list-item.styles.js.map +1 -1
  564. package/file-upload/file-list-item/file-list-item.styles_y7my2m.css +14 -0
  565. package/file-upload/file-list.js +1 -1
  566. package/file-upload/file-list.js.map +1 -1
  567. package/file-upload/file-list.styles.d.ts +3 -6
  568. package/file-upload/file-list.styles.js +1 -20
  569. package/file-upload/file-list.styles.js.map +1 -1
  570. package/file-upload/file-list.styles_16vplxk.css +3 -0
  571. package/file-upload/file-upload.js +1 -1
  572. package/file-upload/file-upload.js.map +1 -1
  573. package/file-upload/file-upload.styles.d.ts +8 -64
  574. package/file-upload/file-upload.styles.js +1 -40
  575. package/file-upload/file-upload.styles.js.map +1 -1
  576. package/file-upload/file-upload.styles_9ffwcd.css +8 -0
  577. package/filter/addons/filter-item-checkbox.js +1 -1
  578. package/filter/addons/filter-item-checkbox.js.map +1 -1
  579. package/filter/addons/filter-item-checkbox.styles.d.ts +15 -25
  580. package/filter/addons/filter-item-checkbox.styles.js +1 -72
  581. package/filter/addons/filter-item-checkbox.styles.js.map +1 -1
  582. package/filter/addons/filter-item-checkbox.styles_18l87i2.css +16 -0
  583. package/filter/filter-item-page.js +1 -1
  584. package/filter/filter-item-page.js.map +1 -1
  585. package/filter/filter-item-page.styles.d.ts +1 -1
  586. package/filter/filter-item-page.styles.js +1 -7
  587. package/filter/filter-item-page.styles.js.map +1 -1
  588. package/filter/filter-item-page.styles_17ewfrz.css +1 -0
  589. package/filter/filter-item.d.ts +1 -1
  590. package/filter/filter-item.js +1 -1
  591. package/filter/filter-item.js.map +1 -1
  592. package/filter/filter-item.styles.d.ts +22 -38
  593. package/filter/filter-item.styles.js +1 -63
  594. package/filter/filter-item.styles.js.map +1 -1
  595. package/filter/filter-item.styles_1e3v6qq.css +17 -0
  596. package/filter/filter-modal.d.ts +1 -1
  597. package/filter/filter-modal.js +1 -1
  598. package/filter/filter-modal.js.map +1 -1
  599. package/filter/filter-modal.styles.d.ts +12 -14
  600. package/filter/filter-modal.styles.js +1 -29
  601. package/filter/filter-modal.styles.js.map +1 -1
  602. package/filter/filter-modal.styles_e0ev97.css +8 -0
  603. package/filter/filter-sidebar.d.ts +1 -1
  604. package/filter/filter-sidebar.js +1 -1
  605. package/filter/filter-sidebar.js.map +1 -1
  606. package/filter/filter-sidebar.styles.d.ts +4 -4
  607. package/filter/filter-sidebar.styles.js +1 -23
  608. package/filter/filter-sidebar.styles.js.map +1 -1
  609. package/filter/filter-sidebar.styles_cwvqql.css +4 -0
  610. package/filter/filter.d.ts +3 -3
  611. package/filter/filter.js +1 -1
  612. package/filter/filter.js.map +1 -1
  613. package/filter/filter.styles.d.ts +9 -7
  614. package/filter/filter.styles.js +1 -26
  615. package/filter/filter.styles.js.map +1 -1
  616. package/filter/filter.styles_2fmaok.css +5 -0
  617. package/form/form-label-addon.js +1 -1
  618. package/form/form-label-addon.js.map +1 -1
  619. package/form/form-masked-input.js +1 -1
  620. package/form/form-masked-input.js.map +1 -1
  621. package/form/form-time-range-picker.js +1 -1
  622. package/form/form-time-range-picker.js.map +1 -1
  623. package/form/index.d.ts +1 -0
  624. package/form/index.js.map +1 -1
  625. package/fullscreen-image-carousel/fullscreen-image-carousel.js +1 -1
  626. package/fullscreen-image-carousel/fullscreen-image-carousel.js.map +1 -1
  627. package/fullscreen-image-carousel/fullscreen-image-carousel.styles.d.ts +40 -0
  628. package/fullscreen-image-carousel/fullscreen-image-carousel.styles.js +2 -0
  629. package/fullscreen-image-carousel/fullscreen-image-carousel.styles.js.map +1 -0
  630. package/fullscreen-image-carousel/fullscreen-image-carousel.styles_vc6y5c.css +75 -0
  631. package/fullscreen-image-carousel/stateful-image.js +1 -1
  632. package/fullscreen-image-carousel/stateful-image.js.map +1 -1
  633. package/fullscreen-image-carousel/stateful-image.styles.d.ts +8 -0
  634. package/fullscreen-image-carousel/stateful-image.styles.js +2 -0
  635. package/fullscreen-image-carousel/stateful-image.styles.js.map +1 -0
  636. package/fullscreen-image-carousel/stateful-image.styles_1xe8ypm.css +3 -0
  637. package/histogram-slider/histogram-slider.js +1 -1
  638. package/histogram-slider/histogram-slider.js.map +1 -1
  639. package/index.d.ts +0 -11
  640. package/index.js +1 -1
  641. package/input-group/input-group-list-addon.js +1 -1
  642. package/input-group/input-group-list-addon.js.map +1 -1
  643. package/input-group/input-group-list-addon.styles.d.ts +2 -2
  644. package/input-group/input-group-list-addon.styles.js +1 -1
  645. package/input-group/input-group-list-addon.styles.js.map +1 -1
  646. package/{cjs/input-group/input-group-list-addon.styles_1my6j2v.css → input-group/input-group-list-addon.styles_17iuqtw.css} +2 -2
  647. package/input-group/input-group.js +1 -1
  648. package/input-group/input-group.js.map +1 -1
  649. package/input-multi-select/input-multi-select.js +1 -1
  650. package/input-multi-select/input-multi-select.js.map +1 -1
  651. package/input-nested-multi-select/input-nested-multi-select.js +1 -1
  652. package/input-nested-multi-select/input-nested-multi-select.js.map +1 -1
  653. package/input-nested-select/input-nested-select.js +1 -1
  654. package/input-nested-select/input-nested-select.js.map +1 -1
  655. package/input-range-select/input-range-select.js +1 -1
  656. package/input-range-select/input-range-select.js.map +1 -1
  657. package/input-range-select/input-range-select.styles.d.ts +2 -0
  658. package/input-range-select/input-range-select.styles.js +2 -0
  659. package/input-range-select/input-range-select.styles.js.map +1 -0
  660. package/input-range-select/input-range-select.styles_adbrbm.css +2 -0
  661. package/input-range-slider/input-range-slider.js +1 -1
  662. package/input-range-slider/input-range-slider.js.map +1 -1
  663. package/input-range-slider/slider-components.js +1 -1
  664. package/input-range-slider/slider-components.js.map +1 -1
  665. package/input-select/input-select.js +1 -1
  666. package/input-select/input-select.js.map +1 -1
  667. package/input-select/types.d.ts +1 -1
  668. package/language-switcher/dropdown-panel.d.ts +13 -0
  669. package/language-switcher/dropdown-panel.js +2 -0
  670. package/language-switcher/dropdown-panel.js.map +1 -0
  671. package/language-switcher/dropdown-panel.styles.d.ts +8 -0
  672. package/language-switcher/dropdown-panel.styles.js +2 -0
  673. package/language-switcher/dropdown-panel.styles.js.map +1 -0
  674. package/language-switcher/dropdown-panel.styles_1z0n7qq.css +4 -0
  675. package/language-switcher/dropdown-variant.js +1 -1
  676. package/language-switcher/dropdown-variant.js.map +1 -1
  677. package/language-switcher/dropdown-variant.styles.d.ts +2 -0
  678. package/language-switcher/dropdown-variant.styles.js +2 -0
  679. package/language-switcher/dropdown-variant.styles.js.map +1 -0
  680. package/language-switcher/dropdown-variant.styles_16c4wc1.css +2 -0
  681. package/language-switcher/link-container-variant.d.ts +1 -1
  682. package/language-switcher/link-container-variant.js +1 -1
  683. package/language-switcher/link-container-variant.js.map +1 -1
  684. package/language-switcher/link-container-variant.styles.d.ts +5 -0
  685. package/language-switcher/link-container-variant.styles.js +2 -0
  686. package/language-switcher/link-container-variant.styles.js.map +1 -0
  687. package/language-switcher/link-container-variant.styles_1blx9qm.css +5 -0
  688. package/layout/col-div.js +1 -1
  689. package/layout/col-div.js.map +1 -1
  690. package/link-list/components/common.js +1 -1
  691. package/link-list/components/common.js.map +1 -1
  692. package/link-list/components/link-list-eager.js +1 -1
  693. package/link-list/components/link-list-eager.js.map +1 -1
  694. package/link-list/components/link-list-lazy.js +1 -1
  695. package/link-list/components/link-list-lazy.js.map +1 -1
  696. package/link-list/link-list.js +1 -1
  697. package/link-list/link-list.js.map +1 -1
  698. package/link-list/link-list.styles.d.ts +13 -113
  699. package/link-list/link-list.styles.js +1 -89
  700. package/link-list/link-list.styles.js.map +1 -1
  701. package/link-list/link-list.styles_1g33nb4.css +13 -0
  702. package/local-nav/local-nav-dropdown/local-nav-dropdown.js +1 -1
  703. package/local-nav/local-nav-dropdown/local-nav-dropdown.js.map +1 -1
  704. package/local-nav/local-nav-dropdown/local-nav-dropdown.styles.d.ts +22 -41
  705. package/local-nav/local-nav-dropdown/local-nav-dropdown.styles.js +1 -100
  706. package/local-nav/local-nav-dropdown/local-nav-dropdown.styles.js.map +1 -1
  707. package/local-nav/local-nav-dropdown/local-nav-dropdown.styles_ftv36t.css +13 -0
  708. package/local-nav/local-nav-menu/local-nav-menu.js +1 -1
  709. package/local-nav/local-nav-menu/local-nav-menu.js.map +1 -1
  710. package/local-nav/local-nav-menu/local-nav-menu.styles.d.ts +5 -26
  711. package/local-nav/local-nav-menu/local-nav-menu.styles.js +1 -39
  712. package/local-nav/local-nav-menu/local-nav-menu.styles.js.map +1 -1
  713. package/local-nav/local-nav-menu/local-nav-menu.styles_pq19dh.css +5 -0
  714. package/markup/markup.js +1 -1
  715. package/markup/markup.js.map +1 -1
  716. package/masked-input/masked-input.js +1 -1
  717. package/masked-input/masked-input.js.map +1 -1
  718. package/masked-input/masked-input.styles.d.ts +22 -0
  719. package/masked-input/masked-input.styles.js +2 -0
  720. package/masked-input/masked-input.styles.js.map +1 -0
  721. package/masked-input/masked-input.styles_4i1qsy.css +16 -0
  722. package/menu/menu-content.js +1 -1
  723. package/menu/menu-content.js.map +1 -1
  724. package/menu/menu-content.styles.js +1 -1
  725. package/menu/menu-content.styles.js.map +1 -1
  726. package/menu/{menu-content.styles_1b7d6qf.css → menu-content.styles_p7ijll.css} +1 -1
  727. package/menu/menu.js +1 -1
  728. package/menu/menu.js.map +1 -1
  729. package/menu/types.d.ts +2 -2
  730. package/modal/modal.js +1 -1
  731. package/modal/modal.js.map +1 -1
  732. package/modal-v2/modal-v2.js +1 -1
  733. package/modal-v2/modal-v2.js.map +1 -1
  734. package/navbar/brand.js +1 -1
  735. package/navbar/brand.js.map +1 -1
  736. package/navbar/brand.styles.d.ts +1 -6
  737. package/navbar/brand.styles.js +1 -12
  738. package/navbar/brand.styles.js.map +1 -1
  739. package/navbar/brand.styles_zcgddp.css +1 -0
  740. package/navbar/drawer.js +1 -1
  741. package/navbar/drawer.js.map +1 -1
  742. package/navbar/drawer.styles.d.ts +13 -18
  743. package/navbar/drawer.styles.js +1 -65
  744. package/navbar/drawer.styles.js.map +1 -1
  745. package/navbar/drawer.styles_7hnxp5.css +8 -0
  746. package/navbar/menu.js +1 -1
  747. package/navbar/menu.js.map +1 -1
  748. package/navbar/menu.styles.d.ts +3 -3
  749. package/navbar/menu.styles.js +1 -34
  750. package/navbar/menu.styles.js.map +1 -1
  751. package/navbar/menu.styles_gdpqc.css +3 -0
  752. package/navbar/navbar-action-buttons.js +1 -1
  753. package/navbar/navbar-action-buttons.js.map +1 -1
  754. package/navbar/navbar-action-buttons.styles.d.ts +10 -31
  755. package/navbar/navbar-action-buttons.styles.js +1 -100
  756. package/navbar/navbar-action-buttons.styles.js.map +1 -1
  757. package/navbar/navbar-action-buttons.styles_1vpm0nk.css +10 -0
  758. package/navbar/navbar-items.js +1 -1
  759. package/navbar/navbar-items.js.map +1 -1
  760. package/navbar/navbar-items.styles.d.ts +19 -40
  761. package/navbar/navbar-items.styles.js +1 -114
  762. package/navbar/navbar-items.styles.js.map +1 -1
  763. package/navbar/navbar-items.styles_i9cunu.css +19 -0
  764. package/navbar/navbar-logo-data.d.ts +2 -2
  765. package/navbar/navbar-logo-data.js +1 -1
  766. package/navbar/navbar-logo-data.js.map +1 -1
  767. package/navbar/navbar.js +1 -1
  768. package/navbar/navbar.js.map +1 -1
  769. package/navbar/navbar.styles.d.ts +25 -20
  770. package/navbar/navbar.styles.js +1 -79
  771. package/navbar/navbar.styles.js.map +1 -1
  772. package/navbar/navbar.styles_koy0c7.css +20 -0
  773. package/notification-banner/notification-banner.d.ts +2 -2
  774. package/notification-banner/notification-banner.js +1 -1
  775. package/notification-banner/notification-banner.js.map +1 -1
  776. package/notification-banner/notification-banner.styles.d.ts +17 -23
  777. package/notification-banner/notification-banner.styles.js +1 -111
  778. package/notification-banner/notification-banner.styles.js.map +1 -1
  779. package/notification-banner/notification-banner.styles_130loac.css +12 -0
  780. package/otp-input/otp-input.js +1 -1
  781. package/otp-input/otp-input.js.map +1 -1
  782. package/otp-input/otp-input.styles.d.ts +5 -23
  783. package/otp-input/otp-input.styles.js +1 -22
  784. package/otp-input/otp-input.styles.js.map +1 -1
  785. package/otp-input/otp-input.styles_5sbutl.css +5 -0
  786. package/otp-verification/contact-input-section-styles.js +47 -45
  787. package/otp-verification/contact-input-section-styles.js.map +1 -1
  788. package/otp-verification/contact-input-section.d.ts +1 -1
  789. package/otp-verification/contact-input-section.js +1 -1
  790. package/otp-verification/contact-input-section.js.map +1 -1
  791. package/otp-verification/internal-types.d.ts +2 -0
  792. package/otp-verification/verification-section.js +1 -1
  793. package/otp-verification/verification-section.js.map +1 -1
  794. package/overlay/overlay.js +1 -1
  795. package/overlay/overlay.js.map +1 -1
  796. package/package.json +1 -67
  797. package/pagination/pagination.js +1 -1
  798. package/pagination/pagination.js.map +1 -1
  799. package/popover/index.d.ts +2 -1
  800. package/popover/index.js +1 -1
  801. package/popover/popover-inline/popover-inline.js.map +1 -0
  802. package/popover/popover-inline/popover-inline.styles.js +2 -0
  803. package/popover/popover-inline/popover-inline.styles.js.map +1 -0
  804. package/popover/popover-inline/popover-inline.styles_bkopnt.css +2 -0
  805. package/{popover-v2 → popover}/popover-trigger.d.ts +2 -2
  806. package/popover/popover-trigger.js +2 -0
  807. package/popover/popover-trigger.js.map +1 -0
  808. package/popover/popover-trigger.styles.js +2 -0
  809. package/popover/popover-trigger.styles.js.map +1 -0
  810. package/popover/popover-trigger.styles_8zokig.css +1 -0
  811. package/popover/popover.d.ts +1 -4
  812. package/popover/popover.js +1 -1
  813. package/popover/popover.js.map +1 -1
  814. package/popover/popover.styles.d.ts +10 -11
  815. package/popover/popover.styles.js +1 -74
  816. package/popover/popover.styles.js.map +1 -1
  817. package/popover/popover.styles_ujnf0h.css +4 -0
  818. package/popover/types.d.ts +48 -10
  819. package/predictive-text-input/predictive-text-input.js +1 -1
  820. package/predictive-text-input/predictive-text-input.js.map +1 -1
  821. package/predictive-text-input/types.d.ts +1 -1
  822. package/progress-indicator/progress-indicator.d.ts +1 -1
  823. package/progress-indicator/progress-indicator.js +1 -1
  824. package/progress-indicator/progress-indicator.js.map +1 -1
  825. package/progress-indicator/progress-indicator.styles.d.ts +9 -0
  826. package/progress-indicator/progress-indicator.styles.js +2 -0
  827. package/progress-indicator/progress-indicator.styles.js.map +1 -0
  828. package/progress-indicator/progress-indicator.styles_1c038s4.css +8 -0
  829. package/progress-indicator/types.d.ts +0 -6
  830. package/schedule/schedule.js +1 -1
  831. package/schedule/schedule.js.map +1 -1
  832. package/schedule/shared/with-optional-popover.js +2 -2
  833. package/schedule/shared/with-optional-popover.js.map +1 -1
  834. package/schedule/types.d.ts +2 -2
  835. package/select-histogram/select-histogram.js +1 -1
  836. package/select-histogram/select-histogram.js.map +1 -1
  837. package/select-histogram/select-histogram.styles.d.ts +5 -21
  838. package/select-histogram/select-histogram.styles.js +1 -37
  839. package/select-histogram/select-histogram.styles.js.map +1 -1
  840. package/select-histogram/select-histogram.styles_11916eo.css +5 -0
  841. package/shared/component-loading-spinner/component-loading-spinner.js +1 -1
  842. package/shared/component-loading-spinner/component-loading-spinner.js.map +1 -1
  843. package/shared/dropdown-list/dropdown-label.js +1 -1
  844. package/shared/dropdown-list/dropdown-label.js.map +1 -1
  845. package/shared/dropdown-list/dropdown-list.js +1 -1
  846. package/shared/dropdown-list/dropdown-list.js.map +1 -1
  847. package/shared/dropdown-list/dropdown-list.styles.d.ts +1 -1
  848. package/shared/dropdown-list/dropdown-list.styles.js +1 -1
  849. package/shared/dropdown-list/dropdown-list.styles.js.map +1 -1
  850. package/{cjs/shared/dropdown-list/dropdown-list.styles_1qveyb9.css → shared/dropdown-list/dropdown-list.styles_1kt4zhf.css} +3 -6
  851. package/shared/dropdown-list/nested-dropdown-list.js +1 -1
  852. package/shared/dropdown-list/nested-dropdown-list.js.map +1 -1
  853. package/shared/dropdown-wrapper/element-with-dropdown.js +1 -1
  854. package/shared/dropdown-wrapper/element-with-dropdown.js.map +1 -1
  855. package/shared/fade-wrapper/fade-wrapper.js +1 -1
  856. package/shared/fade-wrapper/fade-wrapper.js.map +1 -1
  857. package/shared/fade-wrapper/helpers.js +1 -1
  858. package/shared/fade-wrapper/helpers.js.map +1 -1
  859. package/shared/input-wrapper/input-wrapper.d.ts +5 -0
  860. package/shared/input-wrapper/input-wrapper.js +1 -1
  861. package/shared/input-wrapper/input-wrapper.js.map +1 -1
  862. package/shared/input-wrapper/input-wrapper.styles.d.ts +3 -0
  863. package/shared/input-wrapper/input-wrapper.styles.js +1 -1
  864. package/shared/input-wrapper/input-wrapper.styles.js.map +1 -1
  865. package/shared/input-wrapper/{input-wrapper.styles_1kc4xhb.css → input-wrapper.styles_19fpzb.css} +3 -0
  866. package/shared/internal-calendar/calendar-dropdown.js +1 -1
  867. package/shared/internal-calendar/calendar-dropdown.js.map +1 -1
  868. package/shared/progress-bar/progress-bar.js +1 -1
  869. package/shared/progress-bar/progress-bar.js.map +1 -1
  870. package/shared/standalone-date-input/standalone-date-input.js +1 -1
  871. package/shared/standalone-date-input/standalone-date-input.js.map +1 -1
  872. package/shared/standalone-date-input/standalone-date-input.styles.d.ts +0 -1
  873. package/shared/standalone-date-input/standalone-date-input.styles.js +1 -1
  874. package/shared/standalone-date-input/standalone-date-input.styles.js.map +1 -1
  875. package/{cjs/shared/standalone-date-input/standalone-date-input.styles_1mqophx.css → shared/standalone-date-input/standalone-date-input.styles_1m0da43.css} +10 -11
  876. package/shared/time-slot/index.d.ts +2 -0
  877. package/shared/time-slot/time-slot.d.ts +17 -0
  878. package/shared/time-slot/time-slot.js +2 -0
  879. package/shared/time-slot/time-slot.js.map +1 -0
  880. package/shared/time-slot/time-slot.styles.d.ts +10 -0
  881. package/shared/time-slot/time-slot.styles.js +2 -0
  882. package/shared/time-slot/time-slot.styles.js.map +1 -0
  883. package/shared/time-slot/time-slot.styles_1r9na3f.css +17 -0
  884. package/shared/time-slot/types.d.ts +1 -0
  885. package/smart-app-banner/smart-app-banner.js +1 -1
  886. package/smart-app-banner/smart-app-banner.js.map +1 -1
  887. package/smart-app-banner/smart-app-banner.styles.d.ts +21 -85
  888. package/smart-app-banner/smart-app-banner.styles.js +1 -93
  889. package/smart-app-banner/smart-app-banner.styles.js.map +1 -1
  890. package/smart-app-banner/smart-app-banner.styles_m5dtgh.css +16 -0
  891. package/tab/tab-link-chain.js +1 -1
  892. package/tab/tab-link-chain.js.map +1 -1
  893. package/text-list/ordered-list.js +1 -1
  894. package/text-list/ordered-list.js.map +1 -1
  895. package/text-list/unordered-list.js +1 -1
  896. package/text-list/unordered-list.js.map +1 -1
  897. package/theme/index.js +1 -1
  898. package/theme/styles/pa.css +176 -0
  899. package/theme/theme-provider/breakpoint.js +1 -1
  900. package/theme/theme-provider/breakpoint.js.map +1 -1
  901. package/theme/tokens/font.js +1 -1
  902. package/theme/tokens/font.js.map +1 -1
  903. package/theme/utils/css-variable.d.ts +14 -0
  904. package/theme/utils/css-variable.js +1 -1
  905. package/theme/utils/css-variable.js.map +1 -1
  906. package/theme/utils/index.d.ts +1 -1
  907. package/theme/utils/use-media-query.d.ts +24 -0
  908. package/theme/utils/use-media-query.js +2 -0
  909. package/theme/utils/use-media-query.js.map +1 -0
  910. package/time-range-picker/combobox-picker/combobox-picker.js +1 -1
  911. package/time-range-picker/combobox-picker/combobox-picker.js.map +1 -1
  912. package/time-range-picker/combobox-picker/combobox-picker.styles.d.ts +1 -1
  913. package/time-range-picker/combobox-picker/combobox-picker.styles.js +1 -6
  914. package/time-range-picker/combobox-picker/combobox-picker.styles.js.map +1 -1
  915. package/time-range-picker/combobox-picker/combobox-picker.styles_7i9vso.css +1 -0
  916. package/time-range-picker/common.styles.d.ts +3 -3
  917. package/time-range-picker/common.styles.js +1 -10
  918. package/time-range-picker/common.styles.js.map +1 -1
  919. package/time-range-picker/common.styles_1qwp4xa.css +3 -0
  920. package/time-range-picker/dial-picker/dial-picker.js +1 -1
  921. package/time-range-picker/dial-picker/dial-picker.js.map +1 -1
  922. package/time-slot-bar/helper.d.ts +1 -0
  923. package/time-slot-bar/helper.js +1 -1
  924. package/time-slot-bar/helper.js.map +1 -1
  925. package/time-slot-bar/time-slot-bar.js +1 -1
  926. package/time-slot-bar/time-slot-bar.js.map +1 -1
  927. package/time-slot-bar/time-slot-bar.styles.d.ts +37 -99
  928. package/time-slot-bar/time-slot-bar.styles.js +1 -127
  929. package/time-slot-bar/time-slot-bar.styles.js.map +1 -1
  930. package/time-slot-bar/time-slot-bar.styles_wigbyd.css +25 -0
  931. package/time-slot-bar/time-slot-divider.d.ts +8 -0
  932. package/time-slot-bar/time-slot-divider.js +2 -0
  933. package/time-slot-bar/time-slot-divider.js.map +1 -0
  934. package/time-slot-bar/time-slot-item.d.ts +13 -0
  935. package/time-slot-bar/time-slot-item.js +2 -0
  936. package/time-slot-bar/time-slot-item.js.map +1 -0
  937. package/time-slot-bar/types.d.ts +7 -8
  938. package/time-slot-bar-week/time-slot-bar-week-days.js +1 -1
  939. package/time-slot-bar-week/time-slot-bar-week-days.js.map +1 -1
  940. package/time-slot-bar-week/time-slot-bar-week-days.style.d.ts +2 -13
  941. package/time-slot-bar-week/time-slot-bar-week-days.style.js +20 -17
  942. package/time-slot-bar-week/time-slot-bar-week-days.style.js.map +1 -1
  943. package/time-slot-week-view/time-slot-week-days.js +1 -1
  944. package/time-slot-week-view/time-slot-week-days.js.map +1 -1
  945. package/time-slot-week-view/time-slot-week-days.style.d.ts +1 -11
  946. package/time-slot-week-view/time-slot-week-days.style.js +14 -8
  947. package/time-slot-week-view/time-slot-week-days.style.js.map +1 -1
  948. package/timeline/timeline.js +1 -1
  949. package/timeline/timeline.js.map +1 -1
  950. package/timeline/timeline.styles.d.ts +15 -0
  951. package/timeline/timeline.styles.js +2 -0
  952. package/timeline/timeline.styles.js.map +1 -0
  953. package/timeline/timeline.styles_1wcnzot.css +9 -0
  954. package/timetable/const.js +1 -1
  955. package/timetable/const.js.map +1 -1
  956. package/timetable/timetable-header/timetable-header.js +1 -1
  957. package/timetable/timetable-header/timetable-header.js.map +1 -1
  958. package/timetable/timetable-header/timetable-header.styles.d.ts +6 -0
  959. package/timetable/timetable-header/timetable-header.styles.js +2 -0
  960. package/timetable/timetable-header/timetable-header.styles.js.map +1 -0
  961. package/timetable/timetable-header/timetable-header.styles_11gl1h4.css +6 -0
  962. package/timetable/timetable-row/row-bar.js +1 -1
  963. package/timetable/timetable-row/row-bar.js.map +1 -1
  964. package/timetable/timetable-row/row-bar.styles.d.ts +1 -0
  965. package/timetable/timetable-row/row-bar.styles.js +2 -0
  966. package/timetable/timetable-row/row-bar.styles.js.map +1 -0
  967. package/timetable/timetable-row/row-bar.styles_1x0vrsz.css +1 -0
  968. package/timetable/timetable-row/row-cell.js +1 -1
  969. package/timetable/timetable-row/row-cell.js.map +1 -1
  970. package/timetable/timetable-row/row-cell.styles.d.ts +14 -0
  971. package/timetable/timetable-row/row-cell.styles.js +2 -0
  972. package/timetable/timetable-row/row-cell.styles.js.map +1 -0
  973. package/timetable/timetable-row/row-cell.styles_y1dl5j.css +7 -0
  974. package/timetable/timetable-row/with-optional-popover.js +1 -1
  975. package/timetable/timetable-row/with-optional-popover.js.map +1 -1
  976. package/timetable/timetable.js +1 -1
  977. package/timetable/timetable.js.map +1 -1
  978. package/timetable/timetable.styles.d.ts +41 -0
  979. package/timetable/timetable.styles.js +2 -0
  980. package/timetable/timetable.styles.js.map +1 -0
  981. package/timetable/timetable.styles_7rp8kz.css +46 -0
  982. package/timetable/types.d.ts +6 -7
  983. package/toast/toast.d.ts +1 -1
  984. package/toast/toast.js +1 -1
  985. package/toast/toast.js.map +1 -1
  986. package/toast/toast.styles.d.ts +8 -51
  987. package/toast/toast.styles.js +1 -98
  988. package/toast/toast.styles.js.map +1 -1
  989. package/toast/toast.styles_ngrlup.css +8 -0
  990. package/toggle/toggle.js +1 -1
  991. package/toggle/toggle.js.map +1 -1
  992. package/typography/index.js +1 -1
  993. package/typography/typography.js +1 -1
  994. package/typography/typography.js.map +1 -1
  995. package/uneditable-section/index.d.ts +1 -1
  996. package/uneditable-section/item-section.d.ts +1 -1
  997. package/uneditable-section/item-section.js +1 -1
  998. package/uneditable-section/item-section.js.map +1 -1
  999. package/uneditable-section/section-item.js +1 -1
  1000. package/uneditable-section/section-item.js.map +1 -1
  1001. package/uneditable-section/section-item.styles.d.ts +9 -22
  1002. package/uneditable-section/section-item.styles.js +1 -63
  1003. package/uneditable-section/section-item.styles.js.map +1 -1
  1004. package/uneditable-section/section-item.styles_1dfjzc4.css +9 -0
  1005. package/uneditable-section/uneditable-section.d.ts +1 -1
  1006. package/uneditable-section/uneditable-section.js +1 -1
  1007. package/uneditable-section/uneditable-section.js.map +1 -1
  1008. package/uneditable-section/uneditable-section.styles.d.ts +8 -52
  1009. package/uneditable-section/uneditable-section.styles.js +1 -39
  1010. package/uneditable-section/uneditable-section.styles.js.map +1 -1
  1011. package/uneditable-section/uneditable-section.styles_aj9zun.css +8 -0
  1012. package/unit-number/unit-number-input.js +1 -1
  1013. package/unit-number/unit-number-input.js.map +1 -1
  1014. package/unit-number/unit-number-input.styles.d.ts +7 -0
  1015. package/unit-number/unit-number-input.styles.js +2 -0
  1016. package/unit-number/unit-number-input.styles.js.map +1 -0
  1017. package/unit-number/unit-number-input.styles_8yizj.css +7 -0
  1018. package/util/styling-helper.js +1 -1
  1019. package/util/styling-helper.js.map +1 -1
  1020. package/v3_theme/index.d.ts +39 -13
  1021. package/v3_theme/types.d.ts +2 -2
  1022. package/_virtual/react-responsive.js +0 -2
  1023. package/_virtual/react-responsive.js.map +0 -1
  1024. package/cjs/_virtual/react-responsive.js +0 -2
  1025. package/cjs/_virtual/react-responsive.js.map +0 -1
  1026. package/cjs/countdown-timer/countdown-timer.style.js +0 -58
  1027. package/cjs/countdown-timer/countdown-timer.style.js.map +0 -1
  1028. package/cjs/date-input/date-input.style.js +0 -4
  1029. package/cjs/date-input/date-input.style.js.map +0 -1
  1030. package/cjs/date-range-input/date-range-input.style.js +0 -17
  1031. package/cjs/date-range-input/date-range-input.style.js.map +0 -1
  1032. package/cjs/external/react-responsive/dist/react-responsive.js +0 -65
  1033. package/cjs/external/react-responsive/dist/react-responsive.js.map +0 -1
  1034. package/cjs/fullscreen-image-carousel/fullscreen-image-carousel.style.js +0 -298
  1035. package/cjs/fullscreen-image-carousel/fullscreen-image-carousel.style.js.map +0 -1
  1036. package/cjs/fullscreen-image-carousel/stateful-image.style.js +0 -13
  1037. package/cjs/fullscreen-image-carousel/stateful-image.style.js.map +0 -1
  1038. package/cjs/input-range-select/input-range-select.style.js +0 -36
  1039. package/cjs/input-range-select/input-range-select.style.js.map +0 -1
  1040. package/cjs/language-switcher/dropdown-variant.style.js +0 -62
  1041. package/cjs/language-switcher/dropdown-variant.style.js.map +0 -1
  1042. package/cjs/language-switcher/link-container-variant.style.js +0 -51
  1043. package/cjs/language-switcher/link-container-variant.style.js.map +0 -1
  1044. package/cjs/masked-input/masked-input.style.js +0 -87
  1045. package/cjs/masked-input/masked-input.style.js.map +0 -1
  1046. package/cjs/masonry/index.js +0 -2
  1047. package/cjs/masonry/index.js.map +0 -1
  1048. package/cjs/masonry/masonry.js +0 -2
  1049. package/cjs/masonry/masonry.js.map +0 -1
  1050. package/cjs/masonry/masonry.style.js +0 -42
  1051. package/cjs/masonry/masonry.style.js.map +0 -1
  1052. package/cjs/popover/popover-hoc.js +0 -2
  1053. package/cjs/popover/popover-hoc.js.map +0 -1
  1054. package/cjs/popover-v2/index.js +0 -2
  1055. package/cjs/popover-v2/index.js.map +0 -1
  1056. package/cjs/popover-v2/popover-inline/popover-inline.js.map +0 -1
  1057. package/cjs/popover-v2/popover-inline/popover-inline.styles.js +0 -2
  1058. package/cjs/popover-v2/popover-inline/popover-inline.styles.js.map +0 -1
  1059. package/cjs/popover-v2/popover-inline/popover-inline.styles_ziag9c.css +0 -2
  1060. package/cjs/popover-v2/popover-trigger.js +0 -2
  1061. package/cjs/popover-v2/popover-trigger.js.map +0 -1
  1062. package/cjs/popover-v2/popover-trigger.styles.js +0 -2
  1063. package/cjs/popover-v2/popover-trigger.styles.js.map +0 -1
  1064. package/cjs/popover-v2/popover-trigger.styles_1yq7ffk.css +0 -1
  1065. package/cjs/popover-v2/popover.js +0 -2
  1066. package/cjs/popover-v2/popover.js.map +0 -1
  1067. package/cjs/popover-v2/popover.styles.js +0 -2
  1068. package/cjs/popover-v2/popover.styles.js.map +0 -1
  1069. package/cjs/popover-v2/popover.styles_lslc72.css +0 -4
  1070. package/cjs/progress-indicator/progress-indicator.style.js +0 -39
  1071. package/cjs/progress-indicator/progress-indicator.style.js.map +0 -1
  1072. package/cjs/theme/utils/media-query.js +0 -2
  1073. package/cjs/theme/utils/media-query.js.map +0 -1
  1074. package/cjs/timeline/timeline.style.js +0 -100
  1075. package/cjs/timeline/timeline.style.js.map +0 -1
  1076. package/cjs/timetable/timetable-header/timetable-header.style.js +0 -28
  1077. package/cjs/timetable/timetable-header/timetable-header.style.js.map +0 -1
  1078. package/cjs/timetable/timetable-row/row-bar.style.js +0 -5
  1079. package/cjs/timetable/timetable-row/row-bar.style.js.map +0 -1
  1080. package/cjs/timetable/timetable-row/row-cell.style.js +0 -53
  1081. package/cjs/timetable/timetable-row/row-cell.style.js.map +0 -1
  1082. package/cjs/timetable/timetable.style.js +0 -172
  1083. package/cjs/timetable/timetable.style.js.map +0 -1
  1084. package/cjs/tooltip/index.js +0 -2
  1085. package/cjs/tooltip/index.js.map +0 -1
  1086. package/cjs/tooltip/tooltip-hoc.js +0 -2
  1087. package/cjs/tooltip/tooltip-hoc.js.map +0 -1
  1088. package/cjs/tooltip/tooltip.js +0 -2
  1089. package/cjs/tooltip/tooltip.js.map +0 -1
  1090. package/cjs/tooltip/tooltip.styles.js +0 -192
  1091. package/cjs/tooltip/tooltip.styles.js.map +0 -1
  1092. package/cjs/unit-number/unit-number-input.style.js +0 -27
  1093. package/cjs/unit-number/unit-number-input.style.js.map +0 -1
  1094. package/cjs/v2_color/color.js +0 -2
  1095. package/cjs/v2_color/color.js.map +0 -1
  1096. package/cjs/v2_color/index.js +0 -2
  1097. package/cjs/v2_color/index.js.map +0 -1
  1098. package/cjs/v2_design-token/design-token.js +0 -2
  1099. package/cjs/v2_design-token/design-token.js.map +0 -1
  1100. package/cjs/v2_design-token/index.js +0 -2
  1101. package/cjs/v2_design-token/index.js.map +0 -1
  1102. package/cjs/v2_layout/col-div.js +0 -2
  1103. package/cjs/v2_layout/col-div.js.map +0 -1
  1104. package/cjs/v2_layout/col-div.style.js +0 -17
  1105. package/cjs/v2_layout/col-div.style.js.map +0 -1
  1106. package/cjs/v2_layout/container.js +0 -49
  1107. package/cjs/v2_layout/container.js.map +0 -1
  1108. package/cjs/v2_layout/content.js +0 -2
  1109. package/cjs/v2_layout/content.js.map +0 -1
  1110. package/cjs/v2_layout/index.js +0 -2
  1111. package/cjs/v2_layout/index.js.map +0 -1
  1112. package/cjs/v2_layout/section.js +0 -20
  1113. package/cjs/v2_layout/section.js.map +0 -1
  1114. package/cjs/v2_media/index.js +0 -2
  1115. package/cjs/v2_media/index.js.map +0 -1
  1116. package/cjs/v2_media/media.js +0 -2
  1117. package/cjs/v2_media/media.js.map +0 -1
  1118. package/cjs/v2_spec/color-spec/base-color-set.js +0 -2
  1119. package/cjs/v2_spec/color-spec/base-color-set.js.map +0 -1
  1120. package/cjs/v2_spec/color-spec/bookingsg-color-set.js +0 -2
  1121. package/cjs/v2_spec/color-spec/bookingsg-color-set.js.map +0 -1
  1122. package/cjs/v2_spec/color-spec/ccube-color-set.js +0 -2
  1123. package/cjs/v2_spec/color-spec/ccube-color-set.js.map +0 -1
  1124. package/cjs/v2_spec/color-spec/mylegacy-color-set.js +0 -2
  1125. package/cjs/v2_spec/color-spec/mylegacy-color-set.js.map +0 -1
  1126. package/cjs/v2_spec/color-spec/oneservice-color-set.js +0 -2
  1127. package/cjs/v2_spec/color-spec/oneservice-color-set.js.map +0 -1
  1128. package/cjs/v2_spec/color-spec/rbs-color-set.js +0 -2
  1129. package/cjs/v2_spec/color-spec/rbs-color-set.js.map +0 -1
  1130. package/cjs/v2_spec/design-token-spec/base-design-token-set.js +0 -8
  1131. package/cjs/v2_spec/design-token-spec/base-design-token-set.js.map +0 -1
  1132. package/cjs/v2_spec/design-token-spec/rbs-design-token-set.js +0 -8
  1133. package/cjs/v2_spec/design-token-spec/rbs-design-token-set.js.map +0 -1
  1134. package/cjs/v2_spec/media-spec.js +0 -2
  1135. package/cjs/v2_spec/media-spec.js.map +0 -1
  1136. package/cjs/v2_spec/text-spec/base-plus-jakarta-sans-text-style-set.js +0 -2
  1137. package/cjs/v2_spec/text-spec/base-plus-jakarta-sans-text-style-set.js.map +0 -1
  1138. package/cjs/v2_spec/text-spec/base-text-style-set.js +0 -2
  1139. package/cjs/v2_spec/text-spec/base-text-style-set.js.map +0 -1
  1140. package/cjs/v2_spec/text-spec/font-spec.js +0 -2
  1141. package/cjs/v2_spec/text-spec/font-spec.js.map +0 -1
  1142. package/cjs/v2_spec/text-spec/oneservice-text-style-set.js +0 -2
  1143. package/cjs/v2_spec/text-spec/oneservice-text-style-set.js.map +0 -1
  1144. package/cjs/v2_text/helper.js +0 -31
  1145. package/cjs/v2_text/helper.js.map +0 -1
  1146. package/cjs/v2_text/index.js +0 -2
  1147. package/cjs/v2_text/index.js.map +0 -1
  1148. package/cjs/v2_text/text-style.js +0 -2
  1149. package/cjs/v2_text/text-style.js.map +0 -1
  1150. package/cjs/v2_text/text.js +0 -107
  1151. package/cjs/v2_text/text.js.map +0 -1
  1152. package/cjs/v2_text/types.js +0 -2
  1153. package/cjs/v2_text/types.js.map +0 -1
  1154. package/cjs/v2_text-list/index.js +0 -2
  1155. package/cjs/v2_text-list/index.js.map +0 -1
  1156. package/cjs/v2_text-list/ordered-list.js +0 -2
  1157. package/cjs/v2_text-list/ordered-list.js.map +0 -1
  1158. package/cjs/v2_text-list/text-list.styles.js +0 -62
  1159. package/cjs/v2_text-list/text-list.styles.js.map +0 -1
  1160. package/cjs/v2_text-list/unordered-list.js +0 -2
  1161. package/cjs/v2_text-list/unordered-list.js.map +0 -1
  1162. package/cjs/v2_theme/color-theme-helper.js +0 -2
  1163. package/cjs/v2_theme/color-theme-helper.js.map +0 -1
  1164. package/cjs/v2_theme/design-token-helper.js +0 -2
  1165. package/cjs/v2_theme/design-token-helper.js.map +0 -1
  1166. package/cjs/v2_theme/helper.js +0 -2
  1167. package/cjs/v2_theme/helper.js.map +0 -1
  1168. package/cjs/v2_theme/index.js +0 -2
  1169. package/cjs/v2_theme/index.js.map +0 -1
  1170. package/cjs/v2_theme/text-theme-helper.js +0 -2
  1171. package/cjs/v2_theme/text-theme-helper.js.map +0 -1
  1172. package/cjs/v2_theme/types.js +0 -2
  1173. package/cjs/v2_theme/types.js.map +0 -1
  1174. package/cjs/v2_transition/index.js +0 -2
  1175. package/cjs/v2_transition/index.js.map +0 -1
  1176. package/cjs/v3_theme/components/specs/a11yplayground-component-token-set.js +0 -2
  1177. package/cjs/v3_theme/components/specs/a11yplayground-component-token-set.js.map +0 -1
  1178. package/cjs/v3_theme/components/specs/default-component-token-set.js +0 -2
  1179. package/cjs/v3_theme/components/specs/default-component-token-set.js.map +0 -1
  1180. package/cjs/v3_theme/components/specs/lifesg-component-token-set.js +0 -2
  1181. package/cjs/v3_theme/components/specs/lifesg-component-token-set.js.map +0 -1
  1182. package/cjs/v3_theme/components/specs/pa-component-token-set.js +0 -2
  1183. package/cjs/v3_theme/components/specs/pa-component-token-set.js.map +0 -1
  1184. package/cjs/v3_theme/components/specs/smgs-component-token-set.js +0 -2
  1185. package/cjs/v3_theme/components/specs/smgs-component-token-set.js.map +0 -1
  1186. package/cjs/v3_theme/components/specs/spf-component-token-set.js +0 -2
  1187. package/cjs/v3_theme/components/specs/spf-component-token-set.js.map +0 -1
  1188. package/cjs/v3_theme/components/theme-helper.js +0 -2
  1189. package/cjs/v3_theme/components/theme-helper.js.map +0 -1
  1190. package/countdown-timer/countdown-timer.style.d.ts +0 -42
  1191. package/countdown-timer/countdown-timer.style.js +0 -58
  1192. package/countdown-timer/countdown-timer.style.js.map +0 -1
  1193. package/date-input/date-input.style.d.ts +0 -1
  1194. package/date-input/date-input.style.js +0 -4
  1195. package/date-input/date-input.style.js.map +0 -1
  1196. package/date-range-input/date-range-input.style.d.ts +0 -8
  1197. package/date-range-input/date-range-input.style.js +0 -17
  1198. package/date-range-input/date-range-input.style.js.map +0 -1
  1199. package/external/react-responsive/dist/react-responsive.js +0 -65
  1200. package/external/react-responsive/dist/react-responsive.js.map +0 -1
  1201. package/fullscreen-image-carousel/fullscreen-image-carousel.style.d.ts +0 -116
  1202. package/fullscreen-image-carousel/fullscreen-image-carousel.style.js +0 -298
  1203. package/fullscreen-image-carousel/fullscreen-image-carousel.style.js.map +0 -1
  1204. package/fullscreen-image-carousel/stateful-image.style.d.ts +0 -7
  1205. package/fullscreen-image-carousel/stateful-image.style.js +0 -13
  1206. package/fullscreen-image-carousel/stateful-image.style.js.map +0 -1
  1207. package/input-range-select/input-range-select.style.d.ts +0 -3
  1208. package/input-range-select/input-range-select.style.js +0 -36
  1209. package/input-range-select/input-range-select.style.js.map +0 -1
  1210. package/language-switcher/dropdown-variant.style.d.ts +0 -11
  1211. package/language-switcher/dropdown-variant.style.js +0 -62
  1212. package/language-switcher/dropdown-variant.style.js.map +0 -1
  1213. package/language-switcher/link-container-variant.style.d.ts +0 -8
  1214. package/language-switcher/link-container-variant.style.js +0 -51
  1215. package/language-switcher/link-container-variant.style.js.map +0 -1
  1216. package/masked-input/masked-input.style.d.ts +0 -48
  1217. package/masked-input/masked-input.style.js +0 -87
  1218. package/masked-input/masked-input.style.js.map +0 -1
  1219. package/masonry/index.d.ts +0 -1
  1220. package/masonry/index.js +0 -2
  1221. package/masonry/index.js.map +0 -1
  1222. package/masonry/masonry.d.ts +0 -7
  1223. package/masonry/masonry.js +0 -2
  1224. package/masonry/masonry.js.map +0 -1
  1225. package/masonry/masonry.style.d.ts +0 -6
  1226. package/masonry/masonry.style.js +0 -42
  1227. package/masonry/masonry.style.js.map +0 -1
  1228. package/masonry/types.d.ts +0 -32
  1229. package/popover/popover-hoc.d.ts +0 -4
  1230. package/popover/popover-hoc.js +0 -2
  1231. package/popover/popover-hoc.js.map +0 -1
  1232. package/popover-v2/index.d.ts +0 -4
  1233. package/popover-v2/index.js +0 -2
  1234. package/popover-v2/index.js.map +0 -1
  1235. package/popover-v2/popover-inline/popover-inline.styles.js +0 -2
  1236. package/popover-v2/popover-inline/popover-inline.styles_ziag9c.css +0 -2
  1237. package/popover-v2/popover-trigger.js +0 -2
  1238. package/popover-v2/popover-trigger.js.map +0 -1
  1239. package/popover-v2/popover-trigger.styles.js +0 -2
  1240. package/popover-v2/popover-trigger.styles_1yq7ffk.css +0 -1
  1241. package/popover-v2/popover.d.ts +0 -2
  1242. package/popover-v2/popover.js +0 -2
  1243. package/popover-v2/popover.js.map +0 -1
  1244. package/popover-v2/popover.styles.d.ts +0 -10
  1245. package/popover-v2/popover.styles.js +0 -2
  1246. package/popover-v2/popover.styles.js.map +0 -1
  1247. package/popover-v2/popover.styles_lslc72.css +0 -4
  1248. package/popover-v2/types.d.ts +0 -59
  1249. package/progress-indicator/progress-indicator.style.d.ts +0 -47
  1250. package/progress-indicator/progress-indicator.style.js +0 -39
  1251. package/progress-indicator/progress-indicator.style.js.map +0 -1
  1252. package/theme/utils/media-query.d.ts +0 -6
  1253. package/theme/utils/media-query.js +0 -2
  1254. package/theme/utils/media-query.js.map +0 -1
  1255. package/timeline/timeline.style.d.ts +0 -55
  1256. package/timeline/timeline.style.js +0 -100
  1257. package/timeline/timeline.style.js.map +0 -1
  1258. package/timetable/timetable-header/timetable-header.style.d.ts +0 -31
  1259. package/timetable/timetable-header/timetable-header.style.js +0 -28
  1260. package/timetable/timetable-header/timetable-header.style.js.map +0 -1
  1261. package/timetable/timetable-row/row-bar.style.d.ts +0 -1
  1262. package/timetable/timetable-row/row-bar.style.js +0 -5
  1263. package/timetable/timetable-row/row-bar.style.js.map +0 -1
  1264. package/timetable/timetable-row/row-cell.style.d.ts +0 -60
  1265. package/timetable/timetable-row/row-cell.style.js +0 -53
  1266. package/timetable/timetable-row/row-cell.style.js.map +0 -1
  1267. package/timetable/timetable.style.d.ts +0 -102
  1268. package/timetable/timetable.style.js +0 -172
  1269. package/timetable/timetable.style.js.map +0 -1
  1270. package/tooltip/index.d.ts +0 -3
  1271. package/tooltip/index.js +0 -2
  1272. package/tooltip/index.js.map +0 -1
  1273. package/tooltip/tooltip-hoc.d.ts +0 -3
  1274. package/tooltip/tooltip-hoc.js +0 -2
  1275. package/tooltip/tooltip-hoc.js.map +0 -1
  1276. package/tooltip/tooltip.d.ts +0 -3
  1277. package/tooltip/tooltip.js +0 -2
  1278. package/tooltip/tooltip.js.map +0 -1
  1279. package/tooltip/tooltip.styles.d.ts +0 -10
  1280. package/tooltip/tooltip.styles.js +0 -192
  1281. package/tooltip/tooltip.styles.js.map +0 -1
  1282. package/tooltip/types.d.ts +0 -22
  1283. package/unit-number/unit-number-input.style.d.ts +0 -52
  1284. package/unit-number/unit-number-input.style.js +0 -27
  1285. package/unit-number/unit-number-input.style.js.map +0 -1
  1286. package/v2_color/color.d.ts +0 -5
  1287. package/v2_color/color.js +0 -2
  1288. package/v2_color/color.js.map +0 -1
  1289. package/v2_color/index.d.ts +0 -2
  1290. package/v2_color/index.js +0 -2
  1291. package/v2_color/index.js.map +0 -1
  1292. package/v2_color/types.d.ts +0 -62
  1293. package/v2_design-token/design-token.d.ts +0 -23
  1294. package/v2_design-token/design-token.js +0 -2
  1295. package/v2_design-token/design-token.js.map +0 -1
  1296. package/v2_design-token/index.d.ts +0 -2
  1297. package/v2_design-token/index.js +0 -2
  1298. package/v2_design-token/index.js.map +0 -1
  1299. package/v2_design-token/types.d.ts +0 -28
  1300. package/v2_layout/col-div.d.ts +0 -4
  1301. package/v2_layout/col-div.js +0 -2
  1302. package/v2_layout/col-div.js.map +0 -1
  1303. package/v2_layout/col-div.style.d.ts +0 -9
  1304. package/v2_layout/col-div.style.js +0 -17
  1305. package/v2_layout/col-div.style.js.map +0 -1
  1306. package/v2_layout/container.d.ts +0 -4
  1307. package/v2_layout/container.js +0 -49
  1308. package/v2_layout/container.js.map +0 -1
  1309. package/v2_layout/content.d.ts +0 -4
  1310. package/v2_layout/content.js +0 -2
  1311. package/v2_layout/content.js.map +0 -1
  1312. package/v2_layout/index.d.ts +0 -8
  1313. package/v2_layout/index.js +0 -2
  1314. package/v2_layout/index.js.map +0 -1
  1315. package/v2_layout/section.d.ts +0 -4
  1316. package/v2_layout/section.js +0 -20
  1317. package/v2_layout/section.js.map +0 -1
  1318. package/v2_layout/types.d.ts +0 -66
  1319. package/v2_media/index.d.ts +0 -2
  1320. package/v2_media/index.js +0 -2
  1321. package/v2_media/index.js.map +0 -1
  1322. package/v2_media/media.d.ts +0 -8
  1323. package/v2_media/media.js +0 -2
  1324. package/v2_media/media.js.map +0 -1
  1325. package/v2_media/types.d.ts +0 -20
  1326. package/v2_spec/color-spec/base-color-set.d.ts +0 -2
  1327. package/v2_spec/color-spec/base-color-set.js +0 -2
  1328. package/v2_spec/color-spec/base-color-set.js.map +0 -1
  1329. package/v2_spec/color-spec/bookingsg-color-set.d.ts +0 -2
  1330. package/v2_spec/color-spec/bookingsg-color-set.js +0 -2
  1331. package/v2_spec/color-spec/bookingsg-color-set.js.map +0 -1
  1332. package/v2_spec/color-spec/ccube-color-set.d.ts +0 -2
  1333. package/v2_spec/color-spec/ccube-color-set.js +0 -2
  1334. package/v2_spec/color-spec/ccube-color-set.js.map +0 -1
  1335. package/v2_spec/color-spec/mylegacy-color-set.d.ts +0 -2
  1336. package/v2_spec/color-spec/mylegacy-color-set.js +0 -2
  1337. package/v2_spec/color-spec/mylegacy-color-set.js.map +0 -1
  1338. package/v2_spec/color-spec/oneservice-color-set.d.ts +0 -2
  1339. package/v2_spec/color-spec/oneservice-color-set.js +0 -2
  1340. package/v2_spec/color-spec/oneservice-color-set.js.map +0 -1
  1341. package/v2_spec/color-spec/rbs-color-set.d.ts +0 -2
  1342. package/v2_spec/color-spec/rbs-color-set.js +0 -2
  1343. package/v2_spec/color-spec/rbs-color-set.js.map +0 -1
  1344. package/v2_spec/design-token-spec/base-design-token-set.d.ts +0 -2
  1345. package/v2_spec/design-token-spec/base-design-token-set.js +0 -8
  1346. package/v2_spec/design-token-spec/base-design-token-set.js.map +0 -1
  1347. package/v2_spec/design-token-spec/rbs-design-token-set.d.ts +0 -2
  1348. package/v2_spec/design-token-spec/rbs-design-token-set.js +0 -8
  1349. package/v2_spec/design-token-spec/rbs-design-token-set.js.map +0 -1
  1350. package/v2_spec/media-spec.d.ts +0 -2
  1351. package/v2_spec/media-spec.js +0 -2
  1352. package/v2_spec/media-spec.js.map +0 -1
  1353. package/v2_spec/text-spec/base-plus-jakarta-sans-text-style-set.d.ts +0 -2
  1354. package/v2_spec/text-spec/base-plus-jakarta-sans-text-style-set.js +0 -2
  1355. package/v2_spec/text-spec/base-plus-jakarta-sans-text-style-set.js.map +0 -1
  1356. package/v2_spec/text-spec/base-text-style-set.d.ts +0 -2
  1357. package/v2_spec/text-spec/base-text-style-set.js +0 -2
  1358. package/v2_spec/text-spec/base-text-style-set.js.map +0 -1
  1359. package/v2_spec/text-spec/font-spec.d.ts +0 -15
  1360. package/v2_spec/text-spec/font-spec.js +0 -2
  1361. package/v2_spec/text-spec/font-spec.js.map +0 -1
  1362. package/v2_spec/text-spec/oneservice-text-style-set.d.ts +0 -2
  1363. package/v2_spec/text-spec/oneservice-text-style-set.js +0 -2
  1364. package/v2_spec/text-spec/oneservice-text-style-set.js.map +0 -1
  1365. package/v2_spec/text-spec/types.d.ts +0 -4
  1366. package/v2_text/helper.d.ts +0 -7
  1367. package/v2_text/helper.js +0 -31
  1368. package/v2_text/helper.js.map +0 -1
  1369. package/v2_text/index.d.ts +0 -4
  1370. package/v2_text/index.js +0 -2
  1371. package/v2_text/index.js.map +0 -1
  1372. package/v2_text/text-style.d.ts +0 -5
  1373. package/v2_text/text-style.js +0 -2
  1374. package/v2_text/text-style.js.map +0 -1
  1375. package/v2_text/text.d.ts +0 -22
  1376. package/v2_text/text.js +0 -107
  1377. package/v2_text/text.js.map +0 -1
  1378. package/v2_text/types.d.ts +0 -44
  1379. package/v2_text/types.js +0 -2
  1380. package/v2_text/types.js.map +0 -1
  1381. package/v2_text-list/index.d.ts +0 -6
  1382. package/v2_text-list/index.js +0 -2
  1383. package/v2_text-list/index.js.map +0 -1
  1384. package/v2_text-list/ordered-list.d.ts +0 -3
  1385. package/v2_text-list/ordered-list.js +0 -2
  1386. package/v2_text-list/ordered-list.js.map +0 -1
  1387. package/v2_text-list/text-list.styles.d.ts +0 -13
  1388. package/v2_text-list/text-list.styles.js +0 -62
  1389. package/v2_text-list/text-list.styles.js.map +0 -1
  1390. package/v2_text-list/types.d.ts +0 -26
  1391. package/v2_text-list/unordered-list.d.ts +0 -3
  1392. package/v2_text-list/unordered-list.js +0 -2
  1393. package/v2_text-list/unordered-list.js.map +0 -1
  1394. package/v2_theme/color-theme-helper.d.ts +0 -1
  1395. package/v2_theme/color-theme-helper.js +0 -2
  1396. package/v2_theme/color-theme-helper.js.map +0 -1
  1397. package/v2_theme/design-token-helper.d.ts +0 -2
  1398. package/v2_theme/design-token-helper.js +0 -2
  1399. package/v2_theme/design-token-helper.js.map +0 -1
  1400. package/v2_theme/helper.d.ts +0 -16
  1401. package/v2_theme/helper.js +0 -2
  1402. package/v2_theme/helper.js.map +0 -1
  1403. package/v2_theme/index.d.ts +0 -8
  1404. package/v2_theme/index.js +0 -2
  1405. package/v2_theme/index.js.map +0 -1
  1406. package/v2_theme/text-theme-helper.d.ts +0 -1
  1407. package/v2_theme/text-theme-helper.js +0 -2
  1408. package/v2_theme/text-theme-helper.js.map +0 -1
  1409. package/v2_theme/types.d.ts +0 -48
  1410. package/v2_theme/types.js +0 -2
  1411. package/v2_theme/types.js.map +0 -1
  1412. package/v2_transition/index.d.ts +0 -5
  1413. package/v2_transition/index.js +0 -2
  1414. package/v2_transition/index.js.map +0 -1
  1415. package/v3_theme/components/specs/a11yplayground-component-token-set.js +0 -2
  1416. package/v3_theme/components/specs/a11yplayground-component-token-set.js.map +0 -1
  1417. package/v3_theme/components/specs/default-component-token-set.js +0 -2
  1418. package/v3_theme/components/specs/default-component-token-set.js.map +0 -1
  1419. package/v3_theme/components/specs/lifesg-component-token-set.js +0 -2
  1420. package/v3_theme/components/specs/lifesg-component-token-set.js.map +0 -1
  1421. package/v3_theme/components/specs/pa-component-token-set.js +0 -2
  1422. package/v3_theme/components/specs/pa-component-token-set.js.map +0 -1
  1423. package/v3_theme/components/specs/smgs-component-token-set.js +0 -2
  1424. package/v3_theme/components/specs/smgs-component-token-set.js.map +0 -1
  1425. package/v3_theme/components/specs/spf-component-token-set.js +0 -2
  1426. package/v3_theme/components/specs/spf-component-token-set.js.map +0 -1
  1427. package/v3_theme/components/theme-helper.js +0 -2
  1428. package/v3_theme/components/theme-helper.js.map +0 -1
  1429. /package/cjs/{popover-v2 → popover}/popover-inline/popover-inline.js +0 -0
  1430. /package/{popover-v2 → popover}/popover-inline/index.d.ts +0 -0
  1431. /package/{popover-v2 → popover}/popover-inline/popover-inline.d.ts +0 -0
  1432. /package/{popover-v2 → popover}/popover-inline/popover-inline.js +0 -0
  1433. /package/{popover-v2 → popover}/popover-inline/popover-inline.styles.d.ts +0 -0
  1434. /package/{popover-v2 → popover}/popover-trigger.styles.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"input-nested-select.js","sources":["../../src/input-nested-select/input-nested-select.tsx"],"sourcesContent":["import type { OpenChangeReason } from \"@floating-ui/react\";\nimport isEmpty from \"lodash/isEmpty\";\nimport type React from \"react\";\nimport { useEffect, useRef, useState } from \"react\";\n\nimport type {\n NestedDropdownListItemProps,\n NestedDropdownListLocalItem,\n} from \"../shared/dropdown-list\";\nimport {\n buildKeyPathToSet,\n ExpandableElement,\n findItemByKeyPath,\n NestedDropdownList,\n} from \"../shared/dropdown-list\";\nimport { ElementWithDropdown } from \"../shared/dropdown-wrapper\";\nimport {\n LabelContainer,\n PlaceholderLabel,\n ValueLabel,\n} from \"../shared/dropdown-wrapper/dropdown-wrapper\";\nimport { InputBox } from \"../shared/input-wrapper/input-wrapper\";\nimport { StringHelper, useId } from \"../util\";\nimport type {\n InputNestedSelectProps,\n L1OptionProps,\n L2OptionProps,\n L3OptionProps,\n} from \"./types\";\n\nexport type CombinedOptionProps<V1, V2, V3> =\n | L1OptionProps<V1, V2, V3>\n | L2OptionProps<V2, V3>\n | L3OptionProps<V3>;\n\ninterface SelectedItemType<V1, V2, V3> {\n label: string;\n value: V1 | V2 | V3;\n}\n\nexport const InputNestedSelect = <V1, V2, V3>({\n placeholder = \"Select\",\n options: _options,\n disabled,\n error,\n className,\n \"data-testid\": testId,\n id,\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": ariaDescribedBy,\n \"aria-invalid\": ariaInvalid,\n selectedKeyPath: _selectedKeyPath,\n mode,\n valueToStringFunction,\n enableSearch,\n searchPlaceholder,\n selectableCategory,\n hideNoResultsDisplay,\n noResultsDescription,\n customLabels,\n readOnly,\n onBlur,\n onSearch,\n onSelectOption,\n onShowOptions,\n onHideOptions,\n onRetry,\n optionsLoadState = \"success\",\n optionTruncationType = \"end\",\n variant = \"default\",\n alignment,\n dropdownZIndex,\n dropdownWidth,\n dropdownRootNode,\n}: InputNestedSelectProps<V1, V2, V3>): JSX.Element => {\n // =========================================================================\n // CONST, STATE\n // =========================================================================\n const options = _options as NestedDropdownListItemProps<V1 | V2 | V3>[];\n const [selectedKeyPaths, setSelectedKeyPaths] = useState<Set<string>>(\n _selectedKeyPath\n ? buildKeyPathToSet([_selectedKeyPath])\n : new Set<string>()\n );\n const [selectedItem, setSelectedItem] =\n useState<SelectedItemType<V1, V2, V3>>();\n\n const [showOptions, setShowOptions] = useState<boolean>(false);\n const [focused, setFocused] = useState<boolean>(false);\n const internalId = useId();\n\n const nodeRef = useRef<HTMLDivElement>(null);\n const selectorRef = useRef<HTMLButtonElement>(null);\n const labelContainerRef = useRef<HTMLDivElement>(null);\n\n // =========================================================================\n // EFFECTS\n // =========================================================================\n useEffect(() => {\n setSelectedKeyPaths(\n _selectedKeyPath\n ? buildKeyPathToSet([_selectedKeyPath])\n : new Set<string>()\n );\n const selectedItem = findItemByKeyPath(options, _selectedKeyPath || []);\n setSelectedItem(selectedItem ?? undefined);\n }, [_selectedKeyPath, options]);\n\n // =========================================================================\n // EVENT HANDLERS\n // =========================================================================\n const handleListItemClick = (\n listItem: NestedDropdownListLocalItem<V1 | V2 | V3>\n ) => {\n const {\n keyPath,\n item: { label, value },\n } = listItem;\n setSelectedKeyPaths(buildKeyPathToSet([keyPath]));\n setSelectedItem({ label, value });\n setShowOptions(false);\n triggerOptionDisplayCallback(false);\n\n selectorRef.current?.focus();\n onSelectOption?.(keyPath, value);\n };\n\n const handleNodeFocus = () => {\n if (!focused && !showOptions) {\n setFocused(true);\n }\n };\n\n const handleNodeBlur = (e: React.FocusEvent) => {\n if (\n focused &&\n !showOptions &&\n nodeRef.current &&\n !nodeRef.current.contains(e.relatedTarget as Node)\n ) {\n setFocused(false);\n onBlur?.();\n }\n };\n\n const handleOpen = () => {\n setShowOptions(true);\n triggerOptionDisplayCallback(true);\n setFocused(true);\n };\n\n const handleClose = (reason: OpenChangeReason | undefined) => {\n setShowOptions(false);\n triggerOptionDisplayCallback(false);\n\n // click to toggle should not blur the input\n if (reason !== \"click\") {\n setFocused(false);\n onBlur?.();\n }\n };\n\n const handleDismiss = () => {\n selectorRef.current?.focus();\n setShowOptions(false);\n triggerOptionDisplayCallback(false);\n };\n\n // =========================================================================\n // HELPER FUNCTION\n // =========================================================================\n const getDisplayValue = (): string => {\n if (!selectedItem) return \"\";\n const { label, value } = selectedItem;\n\n if (valueToStringFunction) {\n return valueToStringFunction(value);\n } else {\n return label;\n }\n };\n\n const truncateValue = (value: string) => {\n if (optionTruncationType === \"middle\") {\n let widthOfElement = 0;\n if (labelContainerRef && labelContainerRef.current) {\n widthOfElement =\n labelContainerRef.current.getBoundingClientRect().width;\n }\n return StringHelper.truncateOneLine(value, widthOfElement, 120, 6);\n }\n\n return value;\n };\n\n const triggerOptionDisplayCallback = (show: boolean) => {\n if (!show && onHideOptions) {\n onHideOptions();\n }\n\n if (show && onShowOptions) {\n onShowOptions();\n }\n };\n\n // =========================================================================\n // RENDER FUNCTION\n // =========================================================================\n const renderLabel = () => {\n if (isEmpty(selectedItem)) {\n return (\n <PlaceholderLabel truncateType={optionTruncationType}>\n {placeholder}\n </PlaceholderLabel>\n );\n } else {\n return (\n <ValueLabel truncateType={optionTruncationType}>\n {truncateValue(getDisplayValue())}\n </ValueLabel>\n );\n }\n };\n\n const renderSelectorContent = () => (\n <LabelContainer ref={labelContainerRef} disabled={disabled}>\n {renderLabel()}\n </LabelContainer>\n );\n\n const renderElement = () => {\n return (\n <InputBox\n className={className}\n data-testid={testId}\n id={id}\n ref={nodeRef}\n tabIndex={-1}\n onFocus={handleNodeFocus}\n onBlur={handleNodeBlur}\n focused={focused}\n disabled={disabled}\n readOnly={readOnly}\n error={error}\n >\n <ExpandableElement\n ref={selectorRef}\n disabled={disabled}\n expanded={showOptions}\n listboxId={internalId}\n popupRole=\"tree\"\n readOnly={readOnly}\n variant={variant}\n aria-labelledby={ariaLabelledBy}\n aria-describedby={ariaDescribedBy}\n aria-invalid={ariaInvalid}\n >\n {renderSelectorContent()}\n </ExpandableElement>\n </InputBox>\n );\n };\n\n const renderDropdown = () => {\n return (\n <NestedDropdownList\n listboxId={internalId}\n listItems={options}\n selectedKeyPaths={selectedKeyPaths}\n selectableCategory={selectableCategory}\n itemsLoadState={optionsLoadState}\n itemTruncationType={optionTruncationType}\n enableSearch={enableSearch}\n searchPlaceholder={searchPlaceholder}\n hideNoResultsDisplay={hideNoResultsDisplay}\n noResultsDescription={noResultsDescription}\n customLabels={customLabels}\n onSelectItem={handleListItemClick}\n onRetry={onRetry}\n onSearch={onSearch}\n variant={variant}\n mode={mode}\n width={dropdownWidth}\n matchElementWidth\n />\n );\n };\n\n return (\n <ElementWithDropdown\n enabled={!readOnly && !disabled}\n isOpen={showOptions}\n renderElement={renderElement}\n renderDropdown={renderDropdown}\n onOpen={handleOpen}\n onClose={handleClose}\n onDismiss={handleDismiss}\n clickToToggle\n offset={8}\n alignment={alignment}\n fitAvailableHeight\n customZIndex={dropdownZIndex}\n rootNode={dropdownRootNode}\n />\n );\n};\n"],"names":["InputNestedSelect","placeholder","options","_options","disabled","error","className","testId","id","ariaLabelledBy","ariaDescribedBy","ariaInvalid","selectedKeyPath","_selectedKeyPath","mode","valueToStringFunction","enableSearch","searchPlaceholder","selectableCategory","hideNoResultsDisplay","noResultsDescription","customLabels","readOnly","onBlur","onSearch","onSelectOption","onShowOptions","onHideOptions","onRetry","optionsLoadState","optionTruncationType","variant","alignment","dropdownZIndex","dropdownWidth","dropdownRootNode","selectedKeyPaths","setSelectedKeyPaths","useState","buildKeyPathToSet","Set","selectedItem","setSelectedItem","showOptions","setShowOptions","focused","setFocused","internalId","useId","nodeRef","useRef","selectorRef","labelContainerRef","useEffect","findItemByKeyPath","undefined","handleListItemClick","listItem","keyPath","item","label","value","triggerOptionDisplayCallback","_a","current","focus","handleNodeFocus","handleNodeBlur","e","contains","relatedTarget","getDisplayValue","truncateValue","widthOfElement","getBoundingClientRect","width","StringHelper","truncateOneLine","show","_jsx","ElementWithDropdown","enabled","isOpen","renderElement","InputBox","ref","tabIndex","onFocus","ExpandableElement","expanded","listboxId","popupRole","children","LabelContainer","isEmpty","PlaceholderLabel","truncateType","ValueLabel","renderDropdown","NestedDropdownList","listItems","itemsLoadState","itemTruncationType","onSelectItem","matchElementWidth","onOpen","onClose","reason","onDismiss","clickToToggle","offset","fitAvailableHeight","customZIndex","rootNode"],"mappings":"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"}
1
+ {"version":3,"file":"input-nested-select.js","sources":["../../src/input-nested-select/input-nested-select.tsx"],"sourcesContent":["import type { OpenChangeReason } from \"@floating-ui/react\";\nimport isEmpty from \"lodash/isEmpty\";\nimport type React from \"react\";\nimport { useEffect, useRef, useState } from \"react\";\n\nimport type {\n NestedDropdownListItemProps,\n NestedDropdownListLocalItem,\n} from \"../shared/dropdown-list\";\nimport {\n buildKeyPathToSet,\n ExpandableElement,\n findItemByKeyPath,\n NestedDropdownList,\n} from \"../shared/dropdown-list\";\nimport { ElementWithDropdown } from \"../shared/dropdown-wrapper\";\nimport {\n LabelContainer,\n PlaceholderLabel,\n ValueLabel,\n} from \"../shared/dropdown-wrapper/dropdown-wrapper\";\nimport { InputBox } from \"../shared/input-wrapper/input-wrapper\";\nimport { StringHelper, useId } from \"../util\";\nimport type {\n InputNestedSelectProps,\n L1OptionProps,\n L2OptionProps,\n L3OptionProps,\n} from \"./types\";\n\nexport type CombinedOptionProps<V1, V2, V3> =\n | L1OptionProps<V1, V2, V3>\n | L2OptionProps<V2, V3>\n | L3OptionProps<V3>;\n\ninterface SelectedItemType<V1, V2, V3> {\n label: string;\n value: V1 | V2 | V3;\n}\n\nexport const InputNestedSelect = <V1, V2, V3>({\n placeholder = \"Select\",\n options: _options,\n disabled,\n error,\n className,\n \"data-testid\": testId,\n id,\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": ariaDescribedBy,\n \"aria-invalid\": ariaInvalid,\n selectedKeyPath: _selectedKeyPath,\n mode,\n valueToStringFunction,\n enableSearch,\n searchPlaceholder,\n selectableCategory,\n hideNoResultsDisplay,\n noResultsDescription,\n customLabels,\n readOnly,\n onBlur,\n onSearch,\n onSelectOption,\n onShowOptions,\n onHideOptions,\n onRetry,\n optionsLoadState = \"success\",\n optionTruncationType = \"end\",\n variant = \"default\",\n alignment,\n dropdownZIndex,\n dropdownWidth,\n dropdownRootNode,\n}: InputNestedSelectProps<V1, V2, V3>): JSX.Element => {\n // =========================================================================\n // CONST, STATE\n // =========================================================================\n const options = _options as NestedDropdownListItemProps<V1 | V2 | V3>[];\n const [selectedKeyPaths, setSelectedKeyPaths] = useState<Set<string>>(\n _selectedKeyPath\n ? buildKeyPathToSet([_selectedKeyPath])\n : new Set<string>()\n );\n const [selectedItem, setSelectedItem] =\n useState<SelectedItemType<V1, V2, V3>>();\n\n const [showOptions, setShowOptions] = useState<boolean>(false);\n const [focused, setFocused] = useState<boolean>(false);\n const internalId = useId();\n\n const nodeRef = useRef<HTMLDivElement>(null);\n const selectorRef = useRef<HTMLButtonElement>(null);\n const labelContainerRef = useRef<HTMLDivElement>(null);\n\n // =========================================================================\n // EFFECTS\n // =========================================================================\n useEffect(() => {\n setSelectedKeyPaths(\n _selectedKeyPath\n ? buildKeyPathToSet([_selectedKeyPath])\n : new Set<string>()\n );\n const selectedItem = findItemByKeyPath(options, _selectedKeyPath || []);\n setSelectedItem(selectedItem ?? undefined);\n }, [_selectedKeyPath, options]);\n\n // =========================================================================\n // EVENT HANDLERS\n // =========================================================================\n const handleListItemClick = (\n listItem: NestedDropdownListLocalItem<V1 | V2 | V3>\n ) => {\n const {\n keyPath,\n item: { label, value },\n } = listItem;\n setSelectedKeyPaths(buildKeyPathToSet([keyPath]));\n setSelectedItem({ label, value });\n setShowOptions(false);\n triggerOptionDisplayCallback(false);\n\n selectorRef.current?.focus();\n onSelectOption?.(keyPath, value);\n };\n\n const handleNodeFocus = () => {\n if (!focused && !showOptions) {\n setFocused(true);\n }\n };\n\n const handleNodeBlur = (e: React.FocusEvent) => {\n if (\n focused &&\n !showOptions &&\n nodeRef.current &&\n !nodeRef.current.contains(e.relatedTarget as Node)\n ) {\n setFocused(false);\n onBlur?.();\n }\n };\n\n const handleOpen = () => {\n setShowOptions(true);\n triggerOptionDisplayCallback(true);\n setFocused(true);\n };\n\n const handleClose = (reason: OpenChangeReason | undefined) => {\n setShowOptions(false);\n triggerOptionDisplayCallback(false);\n\n // click to toggle should not blur the input\n if (reason !== \"click\") {\n setFocused(false);\n onBlur?.();\n }\n };\n\n const handleDismiss = () => {\n selectorRef.current?.focus();\n setShowOptions(false);\n triggerOptionDisplayCallback(false);\n };\n\n // =========================================================================\n // HELPER FUNCTION\n // =========================================================================\n const getDisplayValue = (): string => {\n if (!selectedItem) return \"\";\n const { label, value } = selectedItem;\n\n if (valueToStringFunction) {\n return valueToStringFunction(value);\n } else {\n return label;\n }\n };\n\n const truncateValue = (value: string) => {\n if (optionTruncationType === \"middle\") {\n let widthOfElement = 0;\n if (labelContainerRef && labelContainerRef.current) {\n widthOfElement =\n labelContainerRef.current.getBoundingClientRect().width;\n }\n return StringHelper.truncateOneLine(value, widthOfElement, 120, 6);\n }\n\n return value;\n };\n\n const triggerOptionDisplayCallback = (show: boolean) => {\n if (!show && onHideOptions) {\n onHideOptions();\n }\n\n if (show && onShowOptions) {\n onShowOptions();\n }\n };\n\n // =========================================================================\n // RENDER FUNCTION\n // =========================================================================\n const renderLabel = () => {\n if (isEmpty(selectedItem)) {\n return (\n <PlaceholderLabel truncateType={optionTruncationType}>\n {placeholder}\n </PlaceholderLabel>\n );\n } else {\n return (\n <ValueLabel truncateType={optionTruncationType}>\n {truncateValue(getDisplayValue())}\n </ValueLabel>\n );\n }\n };\n\n const renderSelectorContent = () => (\n <LabelContainer ref={labelContainerRef} disabled={disabled}>\n {renderLabel()}\n </LabelContainer>\n );\n\n const renderElement = () => {\n return (\n <InputBox\n className={className}\n data-testid={testId}\n id={id}\n ref={nodeRef}\n tabIndex={-1}\n onFocus={handleNodeFocus}\n onBlur={handleNodeBlur}\n focused={focused}\n disabled={disabled}\n readOnly={readOnly}\n error={error}\n >\n <ExpandableElement\n ref={selectorRef}\n disabled={disabled}\n expanded={showOptions}\n listboxId={internalId}\n popupRole=\"tree\"\n readOnly={readOnly}\n variant={variant}\n aria-labelledby={ariaLabelledBy}\n aria-describedby={ariaDescribedBy}\n aria-invalid={ariaInvalid}\n >\n {renderSelectorContent()}\n </ExpandableElement>\n </InputBox>\n );\n };\n\n const renderDropdown = () => {\n return (\n <NestedDropdownList\n listboxId={internalId}\n listItems={options}\n selectedKeyPaths={selectedKeyPaths}\n selectableCategory={selectableCategory}\n itemsLoadState={optionsLoadState}\n itemTruncationType={optionTruncationType}\n enableSearch={enableSearch}\n searchPlaceholder={searchPlaceholder}\n hideNoResultsDisplay={hideNoResultsDisplay}\n noResultsDescription={noResultsDescription}\n customLabels={customLabels}\n onSelectItem={handleListItemClick}\n onRetry={onRetry}\n onSearch={onSearch}\n variant={variant}\n mode={mode}\n width={dropdownWidth}\n matchElementWidth\n />\n );\n };\n\n return (\n <ElementWithDropdown\n enabled={!readOnly && !disabled}\n isOpen={showOptions}\n renderElement={renderElement}\n renderDropdown={renderDropdown}\n onOpen={handleOpen}\n onClose={handleClose}\n onDismiss={handleDismiss}\n clickToToggle\n offset={8}\n alignment={alignment}\n fitAvailableHeight\n customZIndex={dropdownZIndex}\n rootNode={dropdownRootNode}\n />\n );\n};\n"],"names":["InputNestedSelect","placeholder","options","_options","disabled","error","className","testId","id","ariaLabelledBy","ariaDescribedBy","ariaInvalid","selectedKeyPath","_selectedKeyPath","mode","valueToStringFunction","enableSearch","searchPlaceholder","selectableCategory","hideNoResultsDisplay","noResultsDescription","customLabels","readOnly","onBlur","onSearch","onSelectOption","onShowOptions","onHideOptions","onRetry","optionsLoadState","optionTruncationType","variant","alignment","dropdownZIndex","dropdownWidth","dropdownRootNode","selectedKeyPaths","setSelectedKeyPaths","useState","buildKeyPathToSet","Set","selectedItem","setSelectedItem","showOptions","setShowOptions","focused","setFocused","internalId","useId","nodeRef","useRef","selectorRef","labelContainerRef","useEffect","findItemByKeyPath","undefined","handleListItemClick","listItem","keyPath","item","label","value","triggerOptionDisplayCallback","_a","current","focus","handleNodeFocus","handleNodeBlur","e","contains","relatedTarget","getDisplayValue","truncateValue","widthOfElement","getBoundingClientRect","width","StringHelper","truncateOneLine","show","_jsx","ElementWithDropdown","enabled","isOpen","renderElement","InputBox","ref","tabIndex","onFocus","ExpandableElement","expanded","listboxId","popupRole","children","LabelContainer","isEmpty","PlaceholderLabel","truncateType","ValueLabel","renderDropdown","NestedDropdownList","listItems","itemsLoadState","itemTruncationType","onSelectItem","matchElementWidth","onOpen","onClose","reason","onDismiss","clickToToggle","offset","fitAvailableHeight","customZIndex","rootNode"],"mappings":"+2CAwCaA,EAAoB,EAC7BC,cAAc,SACdC,QAASC,EACTC,WACAC,QACAC,YACA,cAAeC,EACfC,KACA,kBAAmBC,EACnB,mBAAoBC,EACpB,eAAgBC,EAChBC,gBAAiBC,EACjBC,OACAC,wBACAC,eACAC,oBACAC,qBACAC,uBACAC,uBACAC,eACAC,WACAC,SACAC,WACAC,iBACAC,gBACAC,gBACAC,UACAC,mBAAmB,UACnBC,uBAAuB,MACvBC,UAAU,UACVC,YACAC,iBACAC,gBACAC,uBAKA,MAAMjC,EAAUC,GACTiC,EAAkBC,GAAuBC,EAC5CzB,EACM0B,EAAkB,CAAC1B,IACnB,IAAI2B,MAEPC,EAAcC,GACjBJ,KAEGK,GAAaC,IAAkBN,GAAkB,IACjDO,GAASC,IAAcR,GAAkB,GAC1CS,GAAaC,IAEbC,GAAUC,EAAuB,MACjCC,GAAcD,EAA0B,MACxCE,GAAoBF,EAAuB,MAKjDG,GAAU,KACNhB,EACIxB,EACM0B,EAAkB,CAAC1B,IACnB,IAAI2B,KAEd,MAAMC,EAAea,EAAkBpD,EAASW,GAAoB,IACpE6B,EAAgBD,QAAAA,OAAgBc,EAAU,GAC3C,CAAC1C,EAAkBX,IAKtB,MAAMsD,GACFC,UAEA,MAAMC,QACFA,EACAC,MAAMC,MAAEA,EAAKC,MAAEA,IACfJ,EACJpB,EAAoBE,EAAkB,CAACmB,KACvChB,EAAgB,CAAEkB,QAAOC,UACzBjB,IAAe,GACfkB,IAA6B,GAEV,QAAnBC,EAAAZ,GAAYa,eAAO,IAAAD,GAAAA,EAAEE,QACrBxC,SAAAA,EAAiBiC,EAASG,EAAM,EAG9BK,GAAkB,KACfrB,IAAYF,IACbG,IAAW,EACf,EAGEqB,GAAkBC,IAEhBvB,KACCF,IACDM,GAAQe,UACPf,GAAQe,QAAQK,SAASD,EAAEE,iBAE5BxB,IAAW,GACXvB,SAAAA,IACJ,EA6BEgD,GAAkB,KACpB,IAAK9B,EAAc,MAAO,GAC1B,MAAMmB,MAAEA,EAAKC,MAAEA,GAAUpB,EAEzB,OAAI1B,EACOA,EAAsB8C,GAEtBD,CACX,EAGEY,GAAiBX,IACnB,GAA6B,WAAzB/B,EAAmC,CACnC,IAAI2C,EAAiB,EAKrB,OAJIrB,IAAqBA,GAAkBY,UACvCS,EACIrB,GAAkBY,QAAQU,wBAAwBC,OAEnDC,EAAaC,gBAAgBhB,EAAOY,EAAgB,IAAK,EACpE,CAEA,OAAOZ,CAAK,EAGVC,GAAgCgB,KAC7BA,GAAQnD,GACTA,IAGAmD,GAAQpD,GACRA,GACJ,EAsFJ,OACIqD,EAACC,EAAmB,CAChBC,SAAU3D,IAAalB,EACvB8E,OAAQvC,GACRwC,cA9Dc,IAEdJ,EAACK,GACG9E,UAAWA,EAAS,cACPC,EACbC,GAAIA,EACJ6E,IAAKpC,GACLqC,UAAU,EACVC,QAASrB,GACT3C,OAAQ4C,GACRtB,QAASA,GACTzC,SAAUA,EACVkB,SAAUA,EACVjB,MAAOA,WAEP0E,EAACS,GACGH,IAAKlC,GACL/C,SAAUA,EACVqF,SAAU9C,GACV+C,UAAW3C,GACX4C,UAAU,OACVrE,SAAUA,EACVS,QAASA,EAAO,kBACCtB,qBACCC,EAAe,eACnBC,EAAWiF,SA9BrCb,EAACc,EAAc,CAACR,IAAKjC,GAAmBhD,SAAUA,WAhB9C0F,EAAQrD,GAEJsC,EAACgB,EAAgB,CAACC,aAAclE,EAAoB8D,SAC/C3F,IAKL8E,EAACkB,EAAU,CAACD,aAAclE,EAAoB8D,SACzCpB,GAAcD,cA2EvB2B,eA9Be,IAEfnB,EAACoB,EAAkB,CACfT,UAAW3C,GACXqD,UAAWlG,EACXkC,iBAAkBA,EAClBlB,mBAAoBA,EACpBmF,eAAgBxE,EAChByE,mBAAoBxE,EACpBd,aAAcA,EACdC,kBAAmBA,EACnBE,qBAAsBA,EACtBC,qBAAsBA,EACtBC,aAAcA,EACdkF,aAAc/C,GACd5B,QAASA,EACTJ,SAAUA,EACVO,QAASA,EACTjB,KAAMA,EACN6D,MAAOzC,EACPsE,mBAAiB,IAWrBC,OArJW,KACf7D,IAAe,GACfkB,IAA6B,GAC7BhB,IAAW,EAAK,EAmJZ4D,QAhJaC,IACjB/D,IAAe,GACfkB,IAA6B,GAGd,UAAX6C,IACA7D,IAAW,GACXvB,SAAAA,IACJ,EAyIIqF,UAtIc,WACC,QAAnB7C,EAAAZ,GAAYa,eAAO,IAAAD,GAAAA,EAAEE,QACrBrB,IAAe,GACfkB,IAA6B,EAAM,EAoI/B+C,eAAa,EACbC,OAAQ,EACR9E,UAAWA,EACX+E,oBAAkB,EAClBC,aAAc/E,EACdgF,SAAU9E,GACZ"}
@@ -1,2 +1,2 @@
1
- import{__rest as e}from"../_virtual/_tslib.js";import{jsx as o,jsxs as r}from"react/jsx-runtime";import{CrossIcon as t}from"@lifesg/react-icons/cross";import{useState as n,useRef as i,useEffect as s,useMemo as l}from"react";import{clearIcon as a}from"../input/input.styles.js";import{VisuallyHidden as d,concatIds as c}from"../shared/accessibility/index.js";import"clsx";import"../theme/theme-provider/index.js";import"../theme/theme-provider/context.js";import"../theme/tokens/border.js";import"../theme/tokens/colour.js";import"../theme/tokens/font.js";import"../theme/tokens/media-query.js";import"../util/calendar-helper.js";import"../external/dayjs/dayjs.min.js";import{useId as p}from"../util/simple-id-generator.js";import{StringHelper as m}from"../util/string-helper.js";import"@react-aria/live-announcer";import"../shared/dropdown-list/dropdown-label.styles_1dwmd8f.css";import{DropdownList as u}from"../shared/dropdown-list/dropdown-list.js";import{DropdownListState as h}from"../shared/dropdown-list/dropdown-list-state.js";import"../shared/dropdown-list/expandable-element.js";import"@lifesg/react-icons/caret-right";import"@lifesg/react-icons/exclamation-circle-fill";import"@lifesg/react-icons/minus-square-fill";import"@lifesg/react-icons/square";import"@lifesg/react-icons/square-tick-fill";import"@lifesg/react-icons/tick";import"react-virtuoso";import"../markup/markup.js";import"../shared/component-loading-spinner/component-loading-spinner.styles_15eq02i.css";import{ElementWithDropdown as f}from"../shared/dropdown-wrapper/element-with-dropdown.js";import{BasicButton as v}from"../shared/input-wrapper/input-wrapper.js";import"../shared/dropdown-list/dropdown-list.styles_1qveyb9.css";import"../shared/dropdown-list/dropdown-search.js";import"../shared/dropdown-list/nested-dropdown-list.styles_wdhxoe.css";import"immer";import"../external/lodash/_getTag.js";import"../external/lodash/isArguments.js";import"../external/lodash/_baseGetTag.js";import"../external/lodash/isBuffer.js";import"../external/lodash/isTypedArray.js";import"../external/lodash/_Stack.js";import"../external/lodash/_SetCache.js";import"../external/lodash/_equalByTag.js";import"../shared/dropdown-list/virtuoso-components.js";import{PlaceholderLabel as w,ValueLabel as b}from"../shared/dropdown-wrapper/dropdown-wrapper.js";import{RangeInputInnerContainer as g}from"../shared/range-input-inner-container/range-input-inner-container.js";import{StyledInputWrapper as y,ClearIconContainer as j,RangeSelectorButton as x}from"./input-range-select.style.js";const S=S=>{var{selectedOptions:T,placeholders:_={from:"Select",to:"Select"},options:C,disabled:O,className:A,readOnly:I,error:k,"data-testid":E,id:P,enableSearch:D=!1,searchFunction:L,searchPlaceholder:N,valueExtractor:q,valueToStringFunction:H,listExtractor:F,displayValueExtractor:R,onSelectOption:$,onShowOptions:G,onHideOptions:M,onRetry:B,optionsLoadState:W={from:"success",to:"success"},optionTruncationType:Z="middle",renderCustomSelectedOption:V,renderListItem:K,renderCustomCallToAction:z,alignment:J,dropdownZIndex:Q,dropdownRootNode:U,dropdownWidth:X,"aria-labelledby":Y,"aria-describedby":ee}=S,oe=e(S,["selectedOptions","placeholders","options","disabled","className","readOnly","error","data-testid","id","enableSearch","searchFunction","searchPlaceholder","valueExtractor","valueToStringFunction","listExtractor","displayValueExtractor","onSelectOption","onShowOptions","onHideOptions","onRetry","optionsLoadState","optionTruncationType","renderCustomSelectedOption","renderListItem","renderCustomCallToAction","alignment","dropdownZIndex","dropdownRootNode","dropdownWidth","aria-labelledby","aria-describedby"]);const[re,te]=n(),[ne,ie]=n(),[se,le]=n("none"),ae="none"!==se,de={from:i(null),to:i(null)},ce=i(null),pe=p(),me=`${pe}-range-listbox`,ue=`${pe}-from-label`,he=`${pe}-to-label`;s((()=>{te(null==T?void 0:T.from),ie(null==T?void 0:T.to)}),[T]),s((()=>{var e;ae&&"to"===se&&(null===(e=ce.current)||void 0===e||e.refocus({index:0}))}),[ae,se]);const fe=e=>{e||null==M||M(),e&&(null==G||G())},ve=e=>{var o,r;const t="from"===e?re:ne;if(!t)return"";if(R)return R(t);if(q){const e=q(t);return H?H(e):null!==(r=null===(o=null==e?void 0:e.toString)||void 0===o?void 0:o.call(e))&&void 0!==r?r:""}return t.toString()},we=(e,o)=>{var r;if("middle"===Z){let t=0;return(null===(r=de[e])||void 0===r?void 0:r.current)&&(t=de[e].current.getBoundingClientRect().width),m.truncateOneLine(o,t,120,8)}return o},be=()=>{switch(se){case"from":return"start";case"to":return"end";case"none":return se}},ge=l((()=>{var e;return"none"===se?[]:null!==(e=null==C?void 0:C[se])&&void 0!==e?e:[]}),[se,C]),ye=l((()=>{if("none"===se)return[];const e="from"===se?re:ne;return e?[e]:[]}),[se,re,ne]),je=e=>{if(O||I)return;le("to"!==e||re?e:"from"),fe(!0)},xe=e=>{var o;null===(o=de[e].current)||void 0===o||o.focus()},Se=e=>c("from"===e?ue:he,Y),Te=e=>o=>{o.stopPropagation(),o.preventDefault(),je(e)},_e=e=>o=>{if(!O&&!I)switch(o.key){case"Enter":case" ":case"ArrowDown":o.preventDefault(),je(e)}},Ce=(e,o)=>{if("none"!==se){if("from"===se)return te(e),null==$||$({from:e},o),ie(void 0),le("to"),fe(!0),void xe("to");ie(e),null==$||$({to:e},o),le("none"),fe(!1),xe("to")}},Oe=()=>{const e=se;le("none"),fe(!1),xe("to"===e?"to":"from"),re&&ne||(te(void 0),ie(void 0))},Ae=e=>{e.stopPropagation(),e.preventDefault(),te(void 0),ie(void 0),null==$||$({from:void 0,to:void 0},void 0),xe("from")},Ie=e=>{const r="from"===e?re:ne;return r?V?V(r):o(b,{truncateType:Z,children:we(e,ve(e))}):o(w,{truncateType:Z,children:we(e,(null==_?void 0:_[e])||"")})},ke=e=>o(x,{type:"button",role:"combobox","aria-labelledby":Se(e),"aria-describedby":ee,"aria-expanded":ae&&se===e,"aria-controls":me,"aria-disabled":O,"aria-readonly":I,onClick:Te(e),onKeyDown:_e(e),ref:de[e],tabIndex:0,children:Ie(e)});return o("div",Object.assign({id:P},oe,{children:o(h,{children:o(f,{enabled:!I&&!O,isOpen:ae,renderElement:()=>r(y,{className:A,"data-testid":E,disabled:O,readOnly:I,error:k,focused:ae,children:[o(d,{id:ue,children:(null==_?void 0:_.from)||"Select From"}),o(d,{id:he,children:(null==_?void 0:_.to)||"Select To"}),r(g,{currentActive:be(),error:k,children:[ke("from"),ke("to")]}),!ae&&re&&ne&&!I&&!O&&o(v,{onClick:Ae,type:"button","aria-label":"Clear",className:j,children:o(t,{className:a,"aria-hidden":!0})})]}),renderDropdown:()=>o(u,{ref:ce,"data-testid":`${E}-dropdown`,listboxId:me,ariaLabel:"from"===se?`Selecting for: ${null==_?void 0:_.from}`:"to"===se?`Selecting for: ${null==_?void 0:_.to}`:void 0,listItems:ge,onSelectItem:Ce,onDismiss:Oe,valueExtractor:q,listExtractor:F,selectedItems:ye,itemsLoadState:W[se],itemTruncationType:Z,onRetry:B,width:X,matchElementWidth:!X,enableSearch:D,searchFunction:L,searchPlaceholder:N,renderListItem:K,renderCustomCallToAction:z}),onOpen:()=>{O||I||"none"===se&&(le("from"),fe(!0))},onClose:()=>{le("none"),fe(!1),re&&ne||(te(void 0),ie(void 0))},onDismiss:Oe,clickToToggle:!1,offset:8,alignment:J,fitAvailableHeight:!0,customZIndex:Q,rootNode:U})})}))};export{S as InputRangeSelect};
1
+ import{__rest as e}from"../_virtual/_tslib.js";import{jsx as r,jsxs as o}from"react/jsx-runtime";import t from"clsx";import{useState as n,useRef as i,useEffect as s,useMemo as l}from"react";import{VisuallyHidden as a,concatIds as d}from"../shared/accessibility/index.js";import"../theme/theme-provider/index.js";import"../theme/theme-provider/context.js";import"../theme/tokens/border.js";import"../theme/tokens/colour.js";import"../theme/tokens/font.js";import"../theme/tokens/media-query.js";import"../util/calendar-helper.js";import"../external/dayjs/dayjs.min.js";import{useId as c}from"../util/simple-id-generator.js";import{StringHelper as p}from"../util/string-helper.js";import"@react-aria/live-announcer";import"../theme/utils/use-media-query.js";import"../shared/dropdown-list/dropdown-label.styles_1dwmd8f.css";import{DropdownList as m}from"../shared/dropdown-list/dropdown-list.js";import{DropdownListState as u}from"../shared/dropdown-list/dropdown-list-state.js";import"../shared/dropdown-list/expandable-element.js";import"@lifesg/react-icons/caret-right";import"@lifesg/react-icons/exclamation-circle-fill";import"@lifesg/react-icons/minus-square-fill";import"@lifesg/react-icons/square";import"@lifesg/react-icons/square-tick-fill";import"@lifesg/react-icons/tick";import"react-virtuoso";import"../markup/markup.js";import"../shared/component-loading-spinner/component-loading-spinner.styles_15eq02i.css";import{ElementWithDropdown as h}from"../shared/dropdown-wrapper/element-with-dropdown.js";import{InputWrapper as f,ClearButton as v}from"../shared/input-wrapper/input-wrapper.js";import"../shared/dropdown-list/dropdown-list.styles_1kt4zhf.css";import"../shared/dropdown-list/dropdown-search.js";import"../shared/dropdown-list/nested-dropdown-list.styles_wdhxoe.css";import"immer";import"../external/lodash/_getTag.js";import"../external/lodash/isArguments.js";import"../external/lodash/_baseGetTag.js";import"../external/lodash/isBuffer.js";import"../external/lodash/isTypedArray.js";import"../external/lodash/_Stack.js";import"../external/lodash/_SetCache.js";import"../external/lodash/_equalByTag.js";import"../shared/dropdown-list/virtuoso-components.js";import{PlaceholderLabel as w,ValueLabel as b}from"../shared/dropdown-wrapper/dropdown-wrapper.js";import{clearButtonContainer as y}from"../shared/input-wrapper/input-wrapper.styles.js";import{RangeInputInnerContainer as g}from"../shared/range-input-inner-container/range-input-inner-container.js";import{styledInputWrapper as j,rangeSelectorButton as x}from"./input-range-select.styles.js";const S=S=>{var{selectedOptions:T,placeholders:_={from:"Select",to:"Select"},options:C,disabled:O,className:A,readOnly:I,error:k,"data-testid":E,id:P,enableSearch:D=!1,searchFunction:L,searchPlaceholder:N,valueExtractor:q,valueToStringFunction:H,listExtractor:F,displayValueExtractor:R,onSelectOption:$,onShowOptions:G,onHideOptions:M,onRetry:B,optionsLoadState:W={from:"success",to:"success"},optionTruncationType:Z="middle",renderCustomSelectedOption:V,renderListItem:z,renderCustomCallToAction:K,alignment:J,dropdownZIndex:Q,dropdownRootNode:U,dropdownWidth:X,"aria-labelledby":Y,"aria-describedby":ee}=S,re=e(S,["selectedOptions","placeholders","options","disabled","className","readOnly","error","data-testid","id","enableSearch","searchFunction","searchPlaceholder","valueExtractor","valueToStringFunction","listExtractor","displayValueExtractor","onSelectOption","onShowOptions","onHideOptions","onRetry","optionsLoadState","optionTruncationType","renderCustomSelectedOption","renderListItem","renderCustomCallToAction","alignment","dropdownZIndex","dropdownRootNode","dropdownWidth","aria-labelledby","aria-describedby"]);const[oe,te]=n(),[ne,ie]=n(),[se,le]=n("none"),ae="none"!==se,de={from:i(null),to:i(null)},ce=i(null),pe=c(),me=`${pe}-range-listbox`,ue=`${pe}-from-label`,he=`${pe}-to-label`;s((()=>{te(null==T?void 0:T.from),ie(null==T?void 0:T.to)}),[T]),s((()=>{var e;ae&&"to"===se&&(null===(e=ce.current)||void 0===e||e.refocus({index:0}))}),[ae,se]);const fe=e=>{e||null==M||M(),e&&(null==G||G())},ve=e=>{var r,o;const t="from"===e?oe:ne;if(!t)return"";if(R)return R(t);if(q){const e=q(t);return H?H(e):null!==(o=null===(r=null==e?void 0:e.toString)||void 0===r?void 0:r.call(e))&&void 0!==o?o:""}return t.toString()},we=(e,r)=>{var o;if("middle"===Z){let t=0;return(null===(o=de[e])||void 0===o?void 0:o.current)&&(t=de[e].current.getBoundingClientRect().width),p.truncateOneLine(r,t,120,8)}return r},be=()=>{switch(se){case"from":return"start";case"to":return"end";case"none":return se}},ye=l((()=>{var e;return"none"===se?[]:null!==(e=null==C?void 0:C[se])&&void 0!==e?e:[]}),[se,C]),ge=l((()=>{if("none"===se)return[];const e="from"===se?oe:ne;return e?[e]:[]}),[se,oe,ne]),je=e=>{if(O||I)return;le("to"!==e||oe?e:"from"),fe(!0)},xe=e=>{var r;null===(r=de[e].current)||void 0===r||r.focus()},Se=e=>d("from"===e?ue:he,Y),Te=e=>r=>{r.stopPropagation(),r.preventDefault(),je(e)},_e=e=>r=>{if(!O&&!I)switch(r.key){case"Enter":case" ":case"ArrowDown":r.preventDefault(),je(e)}},Ce=(e,r)=>{if("none"!==se){if("from"===se)return te(e),null==$||$({from:e},r),ie(void 0),le("to"),fe(!0),void xe("to");ie(e),null==$||$({to:e},r),le("none"),fe(!1),xe("to")}},Oe=()=>{const e=se;le("none"),fe(!1),xe("to"===e?"to":"from"),oe&&ne||(te(void 0),ie(void 0))},Ae=e=>{e.stopPropagation(),e.preventDefault(),te(void 0),ie(void 0),null==$||$({from:void 0,to:void 0},void 0),xe("from")},Ie=e=>{const o="from"===e?oe:ne;return o?V?V(o):r(b,{truncateType:Z,children:we(e,ve(e))}):r(w,{truncateType:Z,children:we(e,(null==_?void 0:_[e])||"")})},ke=e=>r("button",{type:"button",role:"combobox","aria-labelledby":Se(e),"aria-describedby":ee,"aria-expanded":ae&&se===e,"aria-controls":me,"aria-disabled":O,"aria-readonly":I,onClick:Te(e),onKeyDown:_e(e),ref:de[e],tabIndex:0,className:x,children:Ie(e)});return r("div",Object.assign({id:P},re,{children:r(u,{children:r(h,{enabled:!I&&!O,isOpen:ae,renderElement:()=>o(f,{className:t(j,A),"data-testid":E,disabled:O,readOnly:I,error:k,focused:ae,children:[r(a,{id:ue,children:(null==_?void 0:_.from)||"Select From"}),r(a,{id:he,children:(null==_?void 0:_.to)||"Select To"}),o(g,{currentActive:be(),error:k,children:[ke("from"),ke("to")]}),!ae&&oe&&ne&&!I&&!O&&r("div",{className:y,children:r(v,{onClick:Ae,type:"button","aria-label":"Clear"})})]}),renderDropdown:()=>r(m,{ref:ce,"data-testid":`${E}-dropdown`,listboxId:me,ariaLabel:"from"===se?`Selecting for: ${null==_?void 0:_.from}`:"to"===se?`Selecting for: ${null==_?void 0:_.to}`:void 0,listItems:ye,onSelectItem:Ce,onDismiss:Oe,valueExtractor:q,listExtractor:F,selectedItems:ge,itemsLoadState:W[se],itemTruncationType:Z,onRetry:B,width:X,matchElementWidth:!X,enableSearch:D,searchFunction:L,searchPlaceholder:N,renderListItem:z,renderCustomCallToAction:K}),onOpen:()=>{O||I||"none"===se&&(le("from"),fe(!0))},onClose:()=>{le("none"),fe(!1),oe&&ne||(te(void 0),ie(void 0))},onDismiss:Oe,clickToToggle:!1,offset:8,alignment:J,fitAvailableHeight:!0,customZIndex:Q,rootNode:U})})}))};export{S as InputRangeSelect};
2
2
  //# sourceMappingURL=input-range-select.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-range-select.js","sources":["../../src/input-range-select/input-range-select.tsx"],"sourcesContent":["import { CrossIcon } from \"@lifesg/react-icons/cross\";\nimport type React from \"react\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\n\nimport * as styles from \"../input/input.styles\";\nimport { concatIds, VisuallyHidden } from \"../shared/accessibility\";\nimport type { DropdownListApi } from \"../shared/dropdown-list\";\nimport { DropdownList, DropdownListState } from \"../shared/dropdown-list\";\nimport { ElementWithDropdown } from \"../shared/dropdown-wrapper\";\nimport {\n PlaceholderLabel,\n ValueLabel,\n} from \"../shared/dropdown-wrapper/dropdown-wrapper\";\nimport { BasicButton } from \"../shared/input-wrapper\";\nimport { RangeInputInnerContainer } from \"../shared/range-input-inner-container\";\nimport { useId } from \"../util\";\nimport { StringHelper } from \"../util/string-helper\";\nimport {\n ClearIconContainer,\n RangeSelectorButton,\n StyledInputWrapper,\n} from \"./input-range-select.style\";\nimport type { InputRangeSelectProps } from \"./types\";\n\ntype RangeType = \"from\" | \"to\";\n\nexport const InputRangeSelect = <T, V>({\n selectedOptions,\n placeholders = { from: \"Select\", to: \"Select\" },\n options,\n disabled,\n className,\n readOnly,\n error,\n \"data-testid\": testId,\n id,\n enableSearch = false,\n searchFunction,\n searchPlaceholder,\n valueExtractor,\n valueToStringFunction,\n listExtractor,\n displayValueExtractor,\n onSelectOption,\n onShowOptions,\n onHideOptions,\n onRetry,\n optionsLoadState = { from: \"success\", to: \"success\" },\n optionTruncationType = \"middle\",\n renderCustomSelectedOption,\n renderListItem,\n renderCustomCallToAction,\n alignment,\n dropdownZIndex,\n dropdownRootNode,\n dropdownWidth,\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": ariaDescribedBy,\n ...otherProps\n}: InputRangeSelectProps<T, V>): JSX.Element => {\n // =============================================================================\n // CONST, STATE, REF\n // =============================================================================\n const [selectedFromValue, setSelectedFromValue] = useState<T | undefined>();\n const [selectedToValue, setSelectedToValue] = useState<T | undefined>();\n const [focusedInput, setFocusedInput] = useState<RangeType | \"none\">(\n \"none\"\n );\n const isOpen = focusedInput !== \"none\";\n\n const labelButtonRef = {\n from: useRef<HTMLButtonElement>(null),\n to: useRef<HTMLButtonElement>(null),\n };\n const dropdownRef = useRef<DropdownListApi>(null);\n\n const internalId = useId();\n const listboxId = `${internalId}-range-listbox`;\n const fromLabelId = `${internalId}-from-label`;\n const toLabelId = `${internalId}-to-label`;\n\n // =============================================================================\n // EFFECTS\n // =============================================================================\n useEffect(() => {\n setSelectedFromValue(selectedOptions?.from);\n setSelectedToValue(selectedOptions?.to);\n }, [selectedOptions]);\n\n useEffect(() => {\n if (!isOpen) return;\n\n if (focusedInput === \"to\") {\n dropdownRef.current?.refocus({ index: 0 });\n }\n }, [isOpen, focusedInput]);\n\n // =============================================================================\n // HELPERS\n // =============================================================================\n const triggerOptionDisplayCallback = (show: boolean) => {\n if (!show) onHideOptions?.();\n if (show) onShowOptions?.();\n };\n\n const getDisplayValue = (rangeType: RangeType): string => {\n const selected =\n rangeType === \"from\" ? selectedFromValue : selectedToValue;\n if (!selected) return \"\";\n\n if (displayValueExtractor) return displayValueExtractor(selected);\n\n if (valueExtractor) {\n const value = valueExtractor(selected);\n return valueToStringFunction\n ? valueToStringFunction(value)\n : value?.toString?.() ?? \"\";\n }\n\n return selected.toString();\n };\n\n const truncateValue = (type: RangeType, value: string) => {\n if (optionTruncationType === \"middle\") {\n let widthOfElement = 0;\n if (labelButtonRef[type]?.current) {\n widthOfElement =\n labelButtonRef[type].current.getBoundingClientRect().width;\n }\n return StringHelper.truncateOneLine(value, widthOfElement, 120, 8);\n }\n return value;\n };\n\n const getCurrentFocused = (): \"none\" | \"start\" | \"end\" => {\n switch (focusedInput) {\n case \"from\":\n return \"start\";\n case \"to\":\n return \"end\";\n case \"none\":\n return focusedInput;\n }\n };\n\n const currentOptions = useMemo(() => {\n if (focusedInput === \"none\") return [];\n return options?.[focusedInput] ?? [];\n }, [focusedInput, options]);\n\n const currentSelectedItems = useMemo(() => {\n if (focusedInput === \"none\") return [];\n const selected =\n focusedInput === \"from\" ? selectedFromValue : selectedToValue;\n return selected ? [selected] : [];\n }, [focusedInput, selectedFromValue, selectedToValue]);\n\n const openDropdownFor = (rangeType: RangeType) => {\n if (disabled || readOnly) return;\n\n const nextFocusedInput =\n rangeType === \"to\" && !selectedFromValue ? \"from\" : rangeType;\n\n setFocusedInput(nextFocusedInput);\n triggerOptionDisplayCallback(true);\n };\n\n const focusButton = (type: RangeType) => {\n labelButtonRef[type].current?.focus();\n };\n\n const getButtonLabelledBy = (rangeType: RangeType) => {\n const rangeLabelId = rangeType === \"from\" ? fromLabelId : toLabelId;\n return concatIds(rangeLabelId, ariaLabelledBy);\n };\n\n const getDropdownAriaLabel = () => {\n if (focusedInput === \"from\") {\n return `Selecting for: ${placeholders?.from}`;\n }\n\n if (focusedInput === \"to\") {\n return `Selecting for: ${placeholders?.to}`;\n }\n\n return undefined;\n };\n\n // =============================================================================\n // EVENT HANDLERS\n // =============================================================================\n const handleSelectorClick =\n (rangeType: RangeType) => (event: React.MouseEvent) => {\n event.stopPropagation();\n event.preventDefault();\n openDropdownFor(rangeType);\n };\n\n const handleSelectorKeyDown =\n (rangeType: RangeType) =>\n (event: React.KeyboardEvent<HTMLButtonElement>) => {\n if (disabled || readOnly) return;\n\n switch (event.key) {\n case \"Enter\":\n case \" \":\n case \"ArrowDown\":\n event.preventDefault();\n openDropdownFor(rangeType);\n break;\n default:\n break;\n }\n };\n\n const handleListItemClick = (item: T, extractedValue: V) => {\n if (focusedInput === \"none\") return;\n\n if (focusedInput === \"from\") {\n setSelectedFromValue(item);\n onSelectOption?.({ from: item }, extractedValue);\n\n setSelectedToValue(undefined);\n setFocusedInput(\"to\");\n triggerOptionDisplayCallback(true);\n focusButton(\"to\");\n return;\n }\n\n setSelectedToValue(item);\n onSelectOption?.({ to: item }, extractedValue);\n\n setFocusedInput(\"none\");\n triggerOptionDisplayCallback(false);\n focusButton(\"to\");\n };\n\n const handleDismiss = () => {\n const last = focusedInput;\n\n setFocusedInput(\"none\");\n triggerOptionDisplayCallback(false);\n\n if (last === \"to\") focusButton(\"to\");\n else focusButton(\"from\");\n\n if (!selectedFromValue || !selectedToValue) {\n setSelectedFromValue(undefined);\n setSelectedToValue(undefined);\n }\n };\n\n const handleClose = () => {\n setFocusedInput(\"none\");\n triggerOptionDisplayCallback(false);\n\n if (!selectedFromValue || !selectedToValue) {\n setSelectedFromValue(undefined);\n setSelectedToValue(undefined);\n }\n };\n\n const handleOpen = () => {\n if (disabled || readOnly) return;\n\n if (focusedInput === \"none\") {\n setFocusedInput(\"from\");\n triggerOptionDisplayCallback(true);\n }\n };\n\n const handleClear = (event: React.MouseEvent) => {\n event.stopPropagation();\n event.preventDefault();\n setSelectedFromValue(undefined);\n setSelectedToValue(undefined);\n onSelectOption?.({ from: undefined, to: undefined }, undefined);\n\n focusButton(\"from\");\n };\n\n // =============================================================================\n // RENDER\n // =============================================================================\n const renderLabel = (rangeType: RangeType) => {\n const selected =\n rangeType === \"from\" ? selectedFromValue : selectedToValue;\n\n if (!selected) {\n return (\n <PlaceholderLabel truncateType={optionTruncationType}>\n {truncateValue(rangeType, placeholders?.[rangeType] || \"\")}\n </PlaceholderLabel>\n );\n }\n\n if (renderCustomSelectedOption) {\n return renderCustomSelectedOption(selected);\n }\n\n return (\n <ValueLabel truncateType={optionTruncationType}>\n {truncateValue(rangeType, getDisplayValue(rangeType))}\n </ValueLabel>\n );\n };\n\n const renderSelectorContent = (rangeType: RangeType) => (\n <RangeSelectorButton\n type=\"button\"\n role=\"combobox\"\n aria-labelledby={getButtonLabelledBy(rangeType)}\n aria-describedby={ariaDescribedBy}\n aria-expanded={isOpen && focusedInput === rangeType}\n aria-controls={listboxId}\n aria-disabled={disabled}\n aria-readonly={readOnly}\n onClick={handleSelectorClick(rangeType)}\n onKeyDown={handleSelectorKeyDown(rangeType)}\n ref={labelButtonRef[rangeType]}\n tabIndex={0}\n >\n {renderLabel(rangeType)}\n </RangeSelectorButton>\n );\n\n const renderElement = () => {\n return (\n <StyledInputWrapper\n className={className}\n data-testid={testId}\n disabled={disabled}\n readOnly={readOnly}\n error={error}\n focused={isOpen}\n >\n <VisuallyHidden id={fromLabelId}>\n {placeholders?.from || \"Select From\"}\n </VisuallyHidden>\n <VisuallyHidden id={toLabelId}>\n {placeholders?.to || \"Select To\"}\n </VisuallyHidden>\n\n <RangeInputInnerContainer\n currentActive={getCurrentFocused()}\n error={error}\n >\n {renderSelectorContent(\"from\")}\n {renderSelectorContent(\"to\")}\n </RangeInputInnerContainer>\n\n {!isOpen &&\n selectedFromValue &&\n selectedToValue &&\n !readOnly &&\n !disabled && (\n <BasicButton\n onClick={handleClear}\n type=\"button\"\n aria-label=\"Clear\"\n className={ClearIconContainer}\n >\n <CrossIcon\n className={styles.clearIcon}\n aria-hidden\n />\n </BasicButton>\n )}\n </StyledInputWrapper>\n );\n };\n\n const renderDropdown = () => {\n return (\n <DropdownList\n ref={dropdownRef}\n data-testid={`${testId}-dropdown`}\n listboxId={listboxId}\n ariaLabel={getDropdownAriaLabel()}\n listItems={currentOptions}\n onSelectItem={handleListItemClick}\n onDismiss={handleDismiss}\n valueExtractor={valueExtractor}\n listExtractor={listExtractor}\n selectedItems={currentSelectedItems}\n itemsLoadState={optionsLoadState[focusedInput as RangeType]}\n itemTruncationType={optionTruncationType}\n onRetry={onRetry}\n width={dropdownWidth}\n matchElementWidth={!dropdownWidth}\n enableSearch={enableSearch}\n searchFunction={searchFunction}\n searchPlaceholder={searchPlaceholder}\n renderListItem={renderListItem}\n renderCustomCallToAction={renderCustomCallToAction}\n />\n );\n };\n\n return (\n <div id={id} {...otherProps}>\n <DropdownListState>\n <ElementWithDropdown\n enabled={!readOnly && !disabled}\n isOpen={isOpen}\n renderElement={renderElement}\n renderDropdown={renderDropdown}\n onOpen={handleOpen}\n onClose={handleClose}\n onDismiss={handleDismiss}\n clickToToggle={false}\n offset={8}\n alignment={alignment}\n fitAvailableHeight\n customZIndex={dropdownZIndex}\n rootNode={dropdownRootNode}\n />\n </DropdownListState>\n </div>\n );\n};\n"],"names":["InputRangeSelect","_a","selectedOptions","placeholders","from","to","options","disabled","className","readOnly","error","testId","id","enableSearch","searchFunction","searchPlaceholder","valueExtractor","valueToStringFunction","listExtractor","displayValueExtractor","onSelectOption","onShowOptions","onHideOptions","onRetry","optionsLoadState","optionTruncationType","renderCustomSelectedOption","renderListItem","renderCustomCallToAction","alignment","dropdownZIndex","dropdownRootNode","dropdownWidth","ariaLabelledBy","ariaDescribedBy","otherProps","__rest","selectedFromValue","setSelectedFromValue","useState","selectedToValue","setSelectedToValue","focusedInput","setFocusedInput","isOpen","labelButtonRef","useRef","dropdownRef","internalId","useId","listboxId","fromLabelId","toLabelId","useEffect","current","refocus","index","triggerOptionDisplayCallback","show","getDisplayValue","rangeType","selected","value","_b","toString","call","truncateValue","type","widthOfElement","getBoundingClientRect","width","StringHelper","truncateOneLine","getCurrentFocused","currentOptions","useMemo","currentSelectedItems","openDropdownFor","focusButton","focus","getButtonLabelledBy","concatIds","handleSelectorClick","event","stopPropagation","preventDefault","handleSelectorKeyDown","key","handleListItemClick","item","extractedValue","undefined","handleDismiss","last","handleClear","renderLabel","_jsx","ValueLabel","truncateType","children","PlaceholderLabel","renderSelectorContent","RangeSelectorButton","role","onClick","onKeyDown","ref","tabIndex","Object","assign","DropdownListState","ElementWithDropdown","enabled","renderElement","_jsxs","StyledInputWrapper","focused","VisuallyHidden","RangeInputInnerContainer","currentActive","BasicButton","ClearIconContainer","CrossIcon","styles.clearIcon","renderDropdown","DropdownList","ariaLabel","listItems","onSelectItem","onDismiss","selectedItems","itemsLoadState","itemTruncationType","matchElementWidth","onOpen","onClose","clickToToggle","offset","fitAvailableHeight","customZIndex","rootNode"],"mappings":"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"}
1
+ {"version":3,"file":"input-range-select.js","sources":["../../src/input-range-select/input-range-select.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport type React from \"react\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\n\nimport { concatIds, VisuallyHidden } from \"../shared/accessibility\";\nimport type { DropdownListApi } from \"../shared/dropdown-list\";\nimport { DropdownList, DropdownListState } from \"../shared/dropdown-list\";\nimport { ElementWithDropdown } from \"../shared/dropdown-wrapper\";\nimport {\n PlaceholderLabel,\n ValueLabel,\n} from \"../shared/dropdown-wrapper/dropdown-wrapper\";\nimport { ClearButton, InputWrapper } from \"../shared/input-wrapper\";\nimport * as inputWrapperStyles from \"../shared/input-wrapper/input-wrapper.styles\";\nimport { RangeInputInnerContainer } from \"../shared/range-input-inner-container\";\nimport { useId } from \"../util\";\nimport { StringHelper } from \"../util/string-helper\";\nimport * as styles from \"./input-range-select.styles\";\nimport type { InputRangeSelectProps } from \"./types\";\n\ntype RangeType = \"from\" | \"to\";\n\nexport const InputRangeSelect = <T, V>({\n selectedOptions,\n placeholders = { from: \"Select\", to: \"Select\" },\n options,\n disabled,\n className,\n readOnly,\n error,\n \"data-testid\": testId,\n id,\n enableSearch = false,\n searchFunction,\n searchPlaceholder,\n valueExtractor,\n valueToStringFunction,\n listExtractor,\n displayValueExtractor,\n onSelectOption,\n onShowOptions,\n onHideOptions,\n onRetry,\n optionsLoadState = { from: \"success\", to: \"success\" },\n optionTruncationType = \"middle\",\n renderCustomSelectedOption,\n renderListItem,\n renderCustomCallToAction,\n alignment,\n dropdownZIndex,\n dropdownRootNode,\n dropdownWidth,\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": ariaDescribedBy,\n ...otherProps\n}: InputRangeSelectProps<T, V>): JSX.Element => {\n // =============================================================================\n // CONST, STATE, REF\n // =============================================================================\n const [selectedFromValue, setSelectedFromValue] = useState<T | undefined>();\n const [selectedToValue, setSelectedToValue] = useState<T | undefined>();\n const [focusedInput, setFocusedInput] = useState<RangeType | \"none\">(\n \"none\"\n );\n const isOpen = focusedInput !== \"none\";\n\n const labelButtonRef = {\n from: useRef<HTMLButtonElement>(null),\n to: useRef<HTMLButtonElement>(null),\n };\n const dropdownRef = useRef<DropdownListApi>(null);\n\n const internalId = useId();\n const listboxId = `${internalId}-range-listbox`;\n const fromLabelId = `${internalId}-from-label`;\n const toLabelId = `${internalId}-to-label`;\n\n // =============================================================================\n // EFFECTS\n // =============================================================================\n useEffect(() => {\n setSelectedFromValue(selectedOptions?.from);\n setSelectedToValue(selectedOptions?.to);\n }, [selectedOptions]);\n\n useEffect(() => {\n if (!isOpen) return;\n\n if (focusedInput === \"to\") {\n dropdownRef.current?.refocus({ index: 0 });\n }\n }, [isOpen, focusedInput]);\n\n // =============================================================================\n // HELPERS\n // =============================================================================\n const triggerOptionDisplayCallback = (show: boolean) => {\n if (!show) onHideOptions?.();\n if (show) onShowOptions?.();\n };\n\n const getDisplayValue = (rangeType: RangeType): string => {\n const selected =\n rangeType === \"from\" ? selectedFromValue : selectedToValue;\n if (!selected) return \"\";\n\n if (displayValueExtractor) return displayValueExtractor(selected);\n\n if (valueExtractor) {\n const value = valueExtractor(selected);\n return valueToStringFunction\n ? valueToStringFunction(value)\n : value?.toString?.() ?? \"\";\n }\n\n return selected.toString();\n };\n\n const truncateValue = (type: RangeType, value: string) => {\n if (optionTruncationType === \"middle\") {\n let widthOfElement = 0;\n if (labelButtonRef[type]?.current) {\n widthOfElement =\n labelButtonRef[type].current.getBoundingClientRect().width;\n }\n return StringHelper.truncateOneLine(value, widthOfElement, 120, 8);\n }\n return value;\n };\n\n const getCurrentFocused = (): \"none\" | \"start\" | \"end\" => {\n switch (focusedInput) {\n case \"from\":\n return \"start\";\n case \"to\":\n return \"end\";\n case \"none\":\n return focusedInput;\n }\n };\n\n const currentOptions = useMemo(() => {\n if (focusedInput === \"none\") return [];\n return options?.[focusedInput] ?? [];\n }, [focusedInput, options]);\n\n const currentSelectedItems = useMemo(() => {\n if (focusedInput === \"none\") return [];\n const selected =\n focusedInput === \"from\" ? selectedFromValue : selectedToValue;\n return selected ? [selected] : [];\n }, [focusedInput, selectedFromValue, selectedToValue]);\n\n const openDropdownFor = (rangeType: RangeType) => {\n if (disabled || readOnly) return;\n\n const nextFocusedInput =\n rangeType === \"to\" && !selectedFromValue ? \"from\" : rangeType;\n\n setFocusedInput(nextFocusedInput);\n triggerOptionDisplayCallback(true);\n };\n\n const focusButton = (type: RangeType) => {\n labelButtonRef[type].current?.focus();\n };\n\n const getButtonLabelledBy = (rangeType: RangeType) => {\n const rangeLabelId = rangeType === \"from\" ? fromLabelId : toLabelId;\n return concatIds(rangeLabelId, ariaLabelledBy);\n };\n\n const getDropdownAriaLabel = () => {\n if (focusedInput === \"from\") {\n return `Selecting for: ${placeholders?.from}`;\n }\n\n if (focusedInput === \"to\") {\n return `Selecting for: ${placeholders?.to}`;\n }\n\n return undefined;\n };\n\n // =============================================================================\n // EVENT HANDLERS\n // =============================================================================\n const handleSelectorClick =\n (rangeType: RangeType) => (event: React.MouseEvent) => {\n event.stopPropagation();\n event.preventDefault();\n openDropdownFor(rangeType);\n };\n\n const handleSelectorKeyDown =\n (rangeType: RangeType) =>\n (event: React.KeyboardEvent<HTMLButtonElement>) => {\n if (disabled || readOnly) return;\n\n switch (event.key) {\n case \"Enter\":\n case \" \":\n case \"ArrowDown\":\n event.preventDefault();\n openDropdownFor(rangeType);\n break;\n default:\n break;\n }\n };\n\n const handleListItemClick = (item: T, extractedValue: V) => {\n if (focusedInput === \"none\") return;\n\n if (focusedInput === \"from\") {\n setSelectedFromValue(item);\n onSelectOption?.({ from: item }, extractedValue);\n\n setSelectedToValue(undefined);\n setFocusedInput(\"to\");\n triggerOptionDisplayCallback(true);\n focusButton(\"to\");\n return;\n }\n\n setSelectedToValue(item);\n onSelectOption?.({ to: item }, extractedValue);\n\n setFocusedInput(\"none\");\n triggerOptionDisplayCallback(false);\n focusButton(\"to\");\n };\n\n const handleDismiss = () => {\n const last = focusedInput;\n\n setFocusedInput(\"none\");\n triggerOptionDisplayCallback(false);\n\n if (last === \"to\") focusButton(\"to\");\n else focusButton(\"from\");\n\n if (!selectedFromValue || !selectedToValue) {\n setSelectedFromValue(undefined);\n setSelectedToValue(undefined);\n }\n };\n\n const handleClose = () => {\n setFocusedInput(\"none\");\n triggerOptionDisplayCallback(false);\n\n if (!selectedFromValue || !selectedToValue) {\n setSelectedFromValue(undefined);\n setSelectedToValue(undefined);\n }\n };\n\n const handleOpen = () => {\n if (disabled || readOnly) return;\n\n if (focusedInput === \"none\") {\n setFocusedInput(\"from\");\n triggerOptionDisplayCallback(true);\n }\n };\n\n const handleClear = (event: React.MouseEvent) => {\n event.stopPropagation();\n event.preventDefault();\n setSelectedFromValue(undefined);\n setSelectedToValue(undefined);\n onSelectOption?.({ from: undefined, to: undefined }, undefined);\n\n focusButton(\"from\");\n };\n\n // =============================================================================\n // RENDER\n // =============================================================================\n const renderLabel = (rangeType: RangeType) => {\n const selected =\n rangeType === \"from\" ? selectedFromValue : selectedToValue;\n\n if (!selected) {\n return (\n <PlaceholderLabel truncateType={optionTruncationType}>\n {truncateValue(rangeType, placeholders?.[rangeType] || \"\")}\n </PlaceholderLabel>\n );\n }\n\n if (renderCustomSelectedOption) {\n return renderCustomSelectedOption(selected);\n }\n\n return (\n <ValueLabel truncateType={optionTruncationType}>\n {truncateValue(rangeType, getDisplayValue(rangeType))}\n </ValueLabel>\n );\n };\n\n const renderSelectorContent = (rangeType: RangeType) => (\n <button\n type=\"button\"\n role=\"combobox\"\n aria-labelledby={getButtonLabelledBy(rangeType)}\n aria-describedby={ariaDescribedBy}\n aria-expanded={isOpen && focusedInput === rangeType}\n aria-controls={listboxId}\n aria-disabled={disabled}\n aria-readonly={readOnly}\n onClick={handleSelectorClick(rangeType)}\n onKeyDown={handleSelectorKeyDown(rangeType)}\n ref={labelButtonRef[rangeType]}\n tabIndex={0}\n className={styles.rangeSelectorButton}\n >\n {renderLabel(rangeType)}\n </button>\n );\n\n const renderElement = () => {\n return (\n <InputWrapper\n className={clsx(styles.styledInputWrapper, className)}\n data-testid={testId}\n disabled={disabled}\n readOnly={readOnly}\n error={error}\n focused={isOpen}\n >\n <VisuallyHidden id={fromLabelId}>\n {placeholders?.from || \"Select From\"}\n </VisuallyHidden>\n <VisuallyHidden id={toLabelId}>\n {placeholders?.to || \"Select To\"}\n </VisuallyHidden>\n\n <RangeInputInnerContainer\n currentActive={getCurrentFocused()}\n error={error}\n >\n {renderSelectorContent(\"from\")}\n {renderSelectorContent(\"to\")}\n </RangeInputInnerContainer>\n\n {!isOpen &&\n selectedFromValue &&\n selectedToValue &&\n !readOnly &&\n !disabled && (\n <div\n className={inputWrapperStyles.clearButtonContainer}\n >\n <ClearButton\n onClick={handleClear}\n type=\"button\"\n aria-label=\"Clear\"\n />\n </div>\n )}\n </InputWrapper>\n );\n };\n\n const renderDropdown = () => {\n return (\n <DropdownList\n ref={dropdownRef}\n data-testid={`${testId}-dropdown`}\n listboxId={listboxId}\n ariaLabel={getDropdownAriaLabel()}\n listItems={currentOptions}\n onSelectItem={handleListItemClick}\n onDismiss={handleDismiss}\n valueExtractor={valueExtractor}\n listExtractor={listExtractor}\n selectedItems={currentSelectedItems}\n itemsLoadState={optionsLoadState[focusedInput as RangeType]}\n itemTruncationType={optionTruncationType}\n onRetry={onRetry}\n width={dropdownWidth}\n matchElementWidth={!dropdownWidth}\n enableSearch={enableSearch}\n searchFunction={searchFunction}\n searchPlaceholder={searchPlaceholder}\n renderListItem={renderListItem}\n renderCustomCallToAction={renderCustomCallToAction}\n />\n );\n };\n\n return (\n <div id={id} {...otherProps}>\n <DropdownListState>\n <ElementWithDropdown\n enabled={!readOnly && !disabled}\n isOpen={isOpen}\n renderElement={renderElement}\n renderDropdown={renderDropdown}\n onOpen={handleOpen}\n onClose={handleClose}\n onDismiss={handleDismiss}\n clickToToggle={false}\n offset={8}\n alignment={alignment}\n fitAvailableHeight\n customZIndex={dropdownZIndex}\n rootNode={dropdownRootNode}\n />\n </DropdownListState>\n </div>\n );\n};\n"],"names":["InputRangeSelect","_a","selectedOptions","placeholders","from","to","options","disabled","className","readOnly","error","testId","id","enableSearch","searchFunction","searchPlaceholder","valueExtractor","valueToStringFunction","listExtractor","displayValueExtractor","onSelectOption","onShowOptions","onHideOptions","onRetry","optionsLoadState","optionTruncationType","renderCustomSelectedOption","renderListItem","renderCustomCallToAction","alignment","dropdownZIndex","dropdownRootNode","dropdownWidth","ariaLabelledBy","ariaDescribedBy","otherProps","__rest","selectedFromValue","setSelectedFromValue","useState","selectedToValue","setSelectedToValue","focusedInput","setFocusedInput","isOpen","labelButtonRef","useRef","dropdownRef","internalId","useId","listboxId","fromLabelId","toLabelId","useEffect","current","refocus","index","triggerOptionDisplayCallback","show","getDisplayValue","rangeType","selected","value","_b","toString","call","truncateValue","type","widthOfElement","getBoundingClientRect","width","StringHelper","truncateOneLine","getCurrentFocused","currentOptions","useMemo","currentSelectedItems","openDropdownFor","focusButton","focus","getButtonLabelledBy","concatIds","handleSelectorClick","event","stopPropagation","preventDefault","handleSelectorKeyDown","key","handleListItemClick","item","extractedValue","undefined","handleDismiss","last","handleClear","renderLabel","_jsx","ValueLabel","truncateType","children","PlaceholderLabel","renderSelectorContent","role","onClick","onKeyDown","ref","tabIndex","styles.rangeSelectorButton","Object","assign","DropdownListState","ElementWithDropdown","enabled","renderElement","_jsxs","InputWrapper","clsx","styles.styledInputWrapper","focused","VisuallyHidden","RangeInputInnerContainer","currentActive","inputWrapperStyles.clearButtonContainer","ClearButton","renderDropdown","DropdownList","ariaLabel","listItems","onSelectItem","onDismiss","selectedItems","itemsLoadState","itemTruncationType","matchElementWidth","onOpen","onClose","clickToToggle","offset","fitAvailableHeight","customZIndex","rootNode"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const styledInputWrapper: import("@linaria/core").LinariaClassName;
2
+ export declare const rangeSelectorButton: import("@linaria/core").LinariaClassName;
@@ -0,0 +1,2 @@
1
+ import"./input-range-select.styles_adbrbm.css";const e="s7h6auw",s="ryu6qy6";export{s as rangeSelectorButton,e as styledInputWrapper};
2
+ //# sourceMappingURL=input-range-select.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-range-select.styles.js","sources":["../../src/input-range-select/input-range-select.styles.ts"],"sourcesContent":["import { css } from \"@linaria/core\";\n\nimport { Colour, Radius } from \"../theme\";\n\nexport const styledInputWrapper = css`\n height: 3rem;\n`;\n\nexport const rangeSelectorButton = css`\n appearance: none;\n border: 0;\n background: transparent;\n display: flex;\n flex: 1;\n color: ${Colour.text};\n\n &:focus,\n &:active {\n outline: none;\n }\n\n &:focus-visible {\n outline: 2px solid ${Colour[\"border-focus\"]};\n border-radius: ${Radius.sm};\n }\n\n &:disabled {\n cursor: not-allowed;\n }\n`;\n"],"names":["styledInputWrapper","rangeSelectorButton"],"mappings":"iFAIO,MAAMA,EAAkB,UAIlBC,EAAmB"}
@@ -0,0 +1,2 @@
1
+ .s7h6auw{height:3rem;}
2
+ .ryu6qy6{-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;border:0;background:transparent;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:1;-ms-flex:1;flex:1;color:var(--fds-colour-text);}.ryu6qy6:focus,.ryu6qy6:active{outline:none;}.ryu6qy6:focus-visible{outline:2px solid var(--fds-colour-border-focus);border-radius:var(--fds-radius-sm);}.ryu6qy6:disabled{cursor:not-allowed;}
@@ -1,2 +1,2 @@
1
- import{__rest as e}from"../_virtual/_tslib.js";import{useState as r,useEffect as i,createElement as n}from"react";import{jsxs as t,jsx as a}from"react/jsx-runtime";import{clearAnnouncer as l,announce as o}from"@react-aria/live-announcer";import s from"clsx";import d from"react-slider";import{VisuallyHidden as u,concatIds as c}from"../shared/accessibility/index.js";import"../theme/theme-provider/index.js";import"../theme/theme-provider/context.js";import"../theme/tokens/border.js";import{Colour as m}from"../theme/tokens/colour.js";import"../theme/tokens/font.js";import"../theme/tokens/media-query.js";import"../util/calendar-helper.js";import"../external/dayjs/dayjs.min.js";import{useId as h}from"../util/simple-id-generator.js";import"../util/string-helper.js";import{Typography as f}from"../typography/index.js";import{indicatorLabelContainer as b,slider as p,labelContainer as v,wrapper as g,labelText as y}from"./input-range-slider.styles.js";import{Track as x,Thumb as $}from"./slider-components.js";const j=j=>{var{id:L,value:w,min:k=0,max:C=100,step:N=1,minRange:O=0,numOfThumbs:S=2,colors:A,disabled:D,readOnly:T,showSliderLabels:M,sliderLabelPrefix:P,sliderLabelSuffix:B,showIndicatorLabel:I,indicatorLabelPrefix:E,indicatorLabelSuffix:R,ariaLabels:U,ariaDescriptions:_,"aria-invalid":q,"aria-labelledby":F,"aria-describedby":H,renderSliderLabel:K,onChange:z,onChangeEnd:G,className:J}=j,Q=e(j,["id","value","min","max","step","minRange","numOfThumbs","colors","disabled","readOnly","showSliderLabels","sliderLabelPrefix","sliderLabelSuffix","showIndicatorLabel","indicatorLabelPrefix","indicatorLabelSuffix","ariaLabels","ariaDescriptions","aria-invalid","aria-labelledby","aria-describedby","renderSliderLabel","onChange","onChangeEnd","className"]);const[V,W]=r(le()),[X,Y]=r(null),Z=h(),ee=function(){const e=function(){const e=D||T?m["border-disabled"]:m["border-strong"],r=D||T?m["border-selected-disabled"]:m["border-selected"];if(1===S)return[r,e];const i=[e];for(let e=0;e<S-1;e++)i.push(r);return i.push(e),i}();return new Array(S+1).fill(0).map(((r,i)=>(null==A?void 0:A[i])||e[i]))}(),re=`${Z}-indicator`,ie=`${Z}-instruction`,ne=Array.from({length:S},((e,r)=>(null==U?void 0:U[r])||function(e){return 1===S?"":0===e?"Minimum value slider":e===S-1?"Maximum value slider":"Indeterminate value slider"}(r)));i((()=>{w!==V&&W(le())}),[w]);const te=(e,r)=>{if(D||T)return;const i=function(e,r){if(S<2)return"";const i=V[r],n=r>0?V[r-1]:void 0,t=r<V.length-1?V[r+1]:void 0,a=ne[r],l=r>0?ne[r-1]:void 0,o=r<ne.length-1?ne[r+1]:void 0;if(function(e){return["ArrowRight","ArrowUp","PageUp","End"].includes(e)}(e)&&void 0!==t&&i>=t-O)return`The ${oe(a)} has reached its limit. Increase the ${se(o)} to set a higher ${se(a)}.`;if(function(e){return["ArrowLeft","ArrowDown","PageDown","Home"].includes(e)}(e)&&void 0!==n&&i<=n+O)return`The ${oe(a)} has reached its limit. Decrease the ${se(l)} to set a lower ${se(a)}.`;return""}(e.key,r);i&&(l("assertive"),o(i,"assertive"))},ae=(e,r)=>{if(D||T)return;const i=Number(e.currentTarget.value),n=[...V];n[r]=function(e,r,i){const n=de(r,i),t=ue(r,i);return Math.min(t,Math.max(n,e))}(i,r,V),W(n),null==z||z(n),null==G||G(n)};function le(){if(w&&w.length===S)return w;const e=[];for(let r=0;r<S;r++)e.push(k+N*r);return e}function oe(e){return e?e.toLowerCase():"slider"}function se(e){return e?e.replace(/ slider$/i,"").toLowerCase():"slider"}function de(e,r=V){return 0===e?k:r[e-1]+O}function ue(e,r=V){return e===r.length-1?C:r[e+1]-O}const ce=e=>K?K(e):t(f.BodyBL,{className:y,children:[P,e,B]});return t("div",Object.assign({},Q,{id:L,role:"group","aria-labelledby":F,"aria-disabled":D,className:s(g,J),children:[!D&&!T&&a(u,{id:ie,children:"Use left and right arrow keys to adjust the slider."}),I&&a("div",{id:re,className:b,children:(()=>{let e="";if(1===V.length)e=`${V[0]}`;else if(2===V.length)e=`${V[0]} - ${V[1]}`;else if(V.length>2){e=`${Math.min(...V)} - ${Math.max(...V)}`}return t(f.BodyBL,{className:y,children:[E,e,R]})})()}),V.map(((e,r)=>{const i=`${Z}-thumb-label-${r}`,n=function(e){return null==_?void 0:_[e]}(r),l=n?`${Z}-thumb-description-${r}`:void 0;return t(u,{children:[l&&a("span",{id:l,children:n}),a("span",{id:i,children:ne[r]}),a("input",{"data-testid":`slider-input-${r}`,type:"range",min:de(r),max:ue(r),step:N,value:e,"aria-disabled":D||void 0,readOnly:T,"aria-labelledby":c(F,i),"aria-describedby":(s=l,c(H,I?re:void 0,D||T?void 0:ie,s)),"aria-valuetext":(o=e,`${P||""}${o}${B||""}`),"aria-invalid":q,onFocus:()=>Y(r),onBlur:()=>Y(null),onChange:e=>ae(e,r),onKeyDown:e=>{te(e,r)}})]},`native-slider-${r}`);var o,s})),a(d,{step:N,min:k,max:C,value:V,disabled:D||T,onChange:(e,r)=>{if(T||D)return;if("number"==typeof e){const r=[e];return W(r),void(null==z||z(r))}if(r>-1&&V[r]===e[r])return;const i=[...e];W(i),null==z||z(i)},onAfterChange:e=>{if(T||D)return;if("number"==typeof e){const r=[e];return W(r),void(null==G||G(r))}const r=[...e];W(r),null==G||G(r)},minDistance:O,"aria-hidden":!0,className:p,renderThumb:(e,r)=>n($,Object.assign({"data-testid":`slider-thumb-${r.index}`},e,{key:e.key,tabIndex:-1,"aria-hidden":!0,focused:X===r.index,disabled:D,readOnly:T})),renderTrack:(e,r)=>n(x,Object.assign({"data-testid":`slider-track-${r.index}`},e,{key:e.key,color:ee[r.index]}))}),M&&t("div",{className:v,children:[a("div",{children:ce(k)}),a("div",{children:ce(C)})]})]}))};export{j as InputRangeSlider};
1
+ import{__rest as e}from"../_virtual/_tslib.js";import{useState as r,useEffect as i,createElement as n}from"react";import{jsxs as t,jsx as a}from"react/jsx-runtime";import{clearAnnouncer as l,announce as s}from"@react-aria/live-announcer";import o from"clsx";import d from"react-slider";import{VisuallyHidden as u,concatIds as c}from"../shared/accessibility/index.js";import"../theme/theme-provider/index.js";import"../theme/theme-provider/context.js";import"../theme/tokens/border.js";import{Colour as m}from"../theme/tokens/colour.js";import"../theme/tokens/font.js";import"../theme/tokens/media-query.js";import"../util/calendar-helper.js";import"../external/dayjs/dayjs.min.js";import{useId as h}from"../util/simple-id-generator.js";import"../util/string-helper.js";import"../theme/utils/use-media-query.js";import{Typography as f}from"../typography/index.js";import{indicatorLabelContainer as b,slider as p,labelContainer as v,wrapper as g,labelText as y}from"./input-range-slider.styles.js";import{Track as x,Thumb as $}from"./slider-components.js";const j=j=>{var{id:L,value:w,min:k=0,max:C=100,step:N=1,minRange:O=0,numOfThumbs:S=2,colors:A,disabled:D,readOnly:T,showSliderLabels:M,sliderLabelPrefix:P,sliderLabelSuffix:B,showIndicatorLabel:I,indicatorLabelPrefix:E,indicatorLabelSuffix:R,ariaLabels:U,ariaDescriptions:q,"aria-invalid":_,"aria-labelledby":F,"aria-describedby":H,renderSliderLabel:K,onChange:z,onChangeEnd:G,className:J}=j,Q=e(j,["id","value","min","max","step","minRange","numOfThumbs","colors","disabled","readOnly","showSliderLabels","sliderLabelPrefix","sliderLabelSuffix","showIndicatorLabel","indicatorLabelPrefix","indicatorLabelSuffix","ariaLabels","ariaDescriptions","aria-invalid","aria-labelledby","aria-describedby","renderSliderLabel","onChange","onChangeEnd","className"]);const[V,W]=r(le()),[X,Y]=r(null),Z=h(),ee=function(){const e=function(){const e=D||T?m["border-disabled"]:m["border-strong"],r=D||T?m["border-selected-disabled"]:m["border-selected"];if(1===S)return[r,e];const i=[e];for(let e=0;e<S-1;e++)i.push(r);return i.push(e),i}();return new Array(S+1).fill(0).map(((r,i)=>(null==A?void 0:A[i])||e[i]))}(),re=`${Z}-indicator`,ie=`${Z}-instruction`,ne=Array.from({length:S},((e,r)=>(null==U?void 0:U[r])||function(e){return 1===S?"":0===e?"Minimum value slider":e===S-1?"Maximum value slider":"Indeterminate value slider"}(r)));i((()=>{w!==V&&W(le())}),[w]);const te=(e,r)=>{if(D||T)return;const i=function(e,r){if(S<2)return"";const i=V[r],n=r>0?V[r-1]:void 0,t=r<V.length-1?V[r+1]:void 0,a=ne[r],l=r>0?ne[r-1]:void 0,s=r<ne.length-1?ne[r+1]:void 0;if(function(e){return["ArrowRight","ArrowUp","PageUp","End"].includes(e)}(e)&&void 0!==t&&i>=t-O)return`The ${se(a)} has reached its limit. Increase the ${oe(s)} to set a higher ${oe(a)}.`;if(function(e){return["ArrowLeft","ArrowDown","PageDown","Home"].includes(e)}(e)&&void 0!==n&&i<=n+O)return`The ${se(a)} has reached its limit. Decrease the ${oe(l)} to set a lower ${oe(a)}.`;return""}(e.key,r);i&&(l("assertive"),s(i,"assertive"))},ae=(e,r)=>{if(D||T)return;const i=Number(e.currentTarget.value),n=[...V];n[r]=function(e,r,i){const n=de(r,i),t=ue(r,i);return Math.min(t,Math.max(n,e))}(i,r,V),W(n),null==z||z(n),null==G||G(n)};function le(){if(w&&w.length===S)return w;const e=[];for(let r=0;r<S;r++)e.push(k+N*r);return e}function se(e){return e?e.toLowerCase():"slider"}function oe(e){return e?e.replace(/ slider$/i,"").toLowerCase():"slider"}function de(e,r=V){return 0===e?k:r[e-1]+O}function ue(e,r=V){return e===r.length-1?C:r[e+1]-O}const ce=e=>K?K(e):t(f.BodyBL,{className:y,children:[P,e,B]});return t("div",Object.assign({},Q,{id:L,role:"group","aria-labelledby":F,"aria-disabled":D,className:o(g,J),children:[!D&&!T&&a(u,{id:ie,children:"Use left and right arrow keys to adjust the slider."}),I&&a("div",{id:re,className:b,children:(()=>{let e="";if(1===V.length)e=`${V[0]}`;else if(2===V.length)e=`${V[0]} - ${V[1]}`;else if(V.length>2){e=`${Math.min(...V)} - ${Math.max(...V)}`}return t(f.BodyBL,{className:y,children:[E,e,R]})})()}),V.map(((e,r)=>{const i=`${Z}-thumb-label-${r}`,n=function(e){return null==q?void 0:q[e]}(r),l=n?`${Z}-thumb-description-${r}`:void 0;return t(u,{children:[l&&a("span",{id:l,children:n}),a("span",{id:i,children:ne[r]}),a("input",{"data-testid":`slider-input-${r}`,type:"range",min:de(r),max:ue(r),step:N,value:e,"aria-disabled":D||void 0,readOnly:T,"aria-labelledby":c(F,i),"aria-describedby":(o=l,c(H,I?re:void 0,D||T?void 0:ie,o)),"aria-valuetext":(s=e,`${P||""}${s}${B||""}`),"aria-invalid":_,onFocus:()=>Y(r),onBlur:()=>Y(null),onChange:e=>ae(e,r),onKeyDown:e=>{te(e,r)}})]},`native-slider-${r}`);var s,o})),a(d,{step:N,min:k,max:C,value:V,disabled:D||T,onChange:(e,r)=>{if(T||D)return;if("number"==typeof e){const r=[e];return W(r),void(null==z||z(r))}if(r>-1&&V[r]===e[r])return;const i=[...e];W(i),null==z||z(i)},onAfterChange:e=>{if(T||D)return;if("number"==typeof e){const r=[e];return W(r),void(null==G||G(r))}const r=[...e];W(r),null==G||G(r)},minDistance:O,"aria-hidden":!0,className:p,renderThumb:(e,r)=>n($,Object.assign({"data-testid":`slider-thumb-${r.index}`},e,{key:e.key,tabIndex:-1,"aria-hidden":!0,focused:X===r.index,disabled:D,readOnly:T})),renderTrack:(e,r)=>n(x,Object.assign({"data-testid":`slider-track-${r.index}`},e,{key:e.key,color:ee[r.index]}))}),M&&t("div",{className:v,children:[a("div",{children:ce(k)}),a("div",{children:ce(C)})]})]}))};export{j as InputRangeSlider};
2
2
  //# sourceMappingURL=input-range-slider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-range-slider.js","sources":["../../src/input-range-slider/input-range-slider.tsx"],"sourcesContent":["import { announce, clearAnnouncer } from \"@react-aria/live-announcer\";\nimport clsx from \"clsx\";\nimport type React from \"react\";\nimport { useEffect, useState } from \"react\";\nimport ReactSlider from \"react-slider\";\n\nimport { concatIds, VisuallyHidden } from \"../shared/accessibility\";\nimport { Colour } from \"../theme\";\nimport { Typography } from \"../typography\";\nimport { useId } from \"../util\";\nimport * as styles from \"./input-range-slider.styles\";\nimport { Thumb, Track } from \"./slider-components\";\nimport type { InputRangeSliderProps } from \"./types\";\n\nexport const InputRangeSlider = ({\n id,\n value,\n min = 0,\n max = 100,\n step = 1,\n minRange = 0,\n numOfThumbs = 2,\n colors,\n disabled,\n readOnly,\n showSliderLabels,\n sliderLabelPrefix,\n sliderLabelSuffix,\n showIndicatorLabel,\n indicatorLabelPrefix,\n indicatorLabelSuffix,\n ariaLabels,\n ariaDescriptions,\n \"aria-invalid\": ariaInvalid,\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": ariaDescribedBy,\n renderSliderLabel,\n onChange,\n onChangeEnd,\n className,\n ...otherProps\n}: InputRangeSliderProps) => {\n // =========================================================================\n // CONST, STATE, REF\n // =========================================================================\n const [selection, setSelection] = useState<number[]>(initialiseSelection());\n const [focusedThumbIndex, setFocusedThumbIndex] = useState<number | null>(\n null\n );\n const internalId = useId();\n const trackColors = getTrackColors();\n const indicatorTextId = `${internalId}-indicator`;\n const instructionTextId = `${internalId}-instruction`;\n const resolvedAriaLabels = getResolvedAriaLabels();\n\n // =========================================================================\n // EFFECTS\n // =========================================================================\n useEffect(() => {\n if (value !== selection) {\n setSelection(initialiseSelection());\n }\n }, [value]);\n\n // =========================================================================\n // EVENT HANDLERS\n // =========================================================================\n const handleChange = (value: number | readonly number[], index: number) => {\n if (readOnly || disabled) {\n return;\n }\n\n if (typeof value === \"number\") {\n const nextValue = [value];\n setSelection(nextValue);\n onChange?.(nextValue);\n return;\n }\n\n if (index > -1 && selection[index] === value[index]) {\n // skip unnecessary update when dragging the start thumb across the end thumb\n return;\n }\n\n const nextValue = [...value];\n setSelection(nextValue);\n onChange?.(nextValue);\n };\n\n const handleChangeEnd = (value: number | readonly number[]) => {\n if (readOnly || disabled) {\n return;\n }\n\n if (typeof value === \"number\") {\n const val = [value];\n setSelection(val);\n onChangeEnd?.(val);\n return;\n }\n\n const newSelection = [...value];\n setSelection(newSelection);\n onChangeEnd?.(newSelection);\n };\n\n const handleThumbKeyDown = (\n event: React.KeyboardEvent<HTMLDivElement>,\n index: number\n ) => {\n if (disabled || readOnly) {\n return;\n }\n\n const message = getBlockedMovementMessage(event.key, index);\n\n if (!message) {\n return;\n }\n\n clearAnnouncer(\"assertive\");\n announce(message, \"assertive\");\n };\n\n const handleNativeRangeChange = (\n event: React.ChangeEvent<HTMLInputElement>,\n index: number\n ) => {\n if (disabled || readOnly) {\n return;\n }\n\n const nextRawValue = Number(event.currentTarget.value);\n\n const nextSelection = [...selection];\n nextSelection[index] = clampValueForThumb(\n nextRawValue,\n index,\n selection\n );\n\n setSelection(nextSelection);\n onChange?.(nextSelection);\n onChangeEnd?.(nextSelection);\n };\n\n // =========================================================================\n // HELPER FUNCTIONS\n // =========================================================================\n function initialiseSelection() {\n if (value && value.length === numOfThumbs) {\n return value;\n }\n\n const values: number[] = [];\n for (let i = 0; i < numOfThumbs; i++) {\n values.push(min + step * i);\n }\n return values;\n }\n\n function getResolvedAriaLabels() {\n return Array.from({ length: numOfThumbs }, (_, index) => {\n return ariaLabels?.[index] || getDefaultAriaLabel(index);\n });\n }\n\n function getDefaultAriaLabel(index: number) {\n if (numOfThumbs === 1) {\n return \"\";\n }\n\n if (index === 0) {\n return \"Minimum value slider\";\n }\n\n if (index === numOfThumbs - 1) {\n return \"Maximum value slider\";\n }\n\n return \"Indeterminate value slider\";\n }\n\n function getThumbDescriptionText(index: number) {\n return ariaDescriptions?.[index];\n }\n\n function getTrackColors() {\n const defaultColors = getDefaultColors();\n return new Array(numOfThumbs + 1).fill(0).map((_, i) => {\n return colors?.[i] || defaultColors[i];\n });\n }\n\n function getDefaultColors() {\n const inactiveColor =\n disabled || readOnly\n ? Colour[\"border-disabled\"]\n : Colour[\"border-strong\"];\n const activeColor =\n disabled || readOnly\n ? Colour[\"border-selected-disabled\"]\n : Colour[\"border-selected\"];\n\n if (numOfThumbs === 1) {\n return [activeColor, inactiveColor];\n }\n\n const defaultColors: typeof colors = [inactiveColor];\n\n for (let index = 0; index < numOfThumbs - 1; index++) {\n defaultColors.push(activeColor);\n }\n\n defaultColors.push(inactiveColor);\n return defaultColors;\n }\n\n function getValueText(currentValue: number) {\n return `${sliderLabelPrefix || \"\"}${currentValue}${\n sliderLabelSuffix || \"\"\n }`;\n }\n\n function getThumbDescriptionIds(thumbDescriptionId?: string) {\n return concatIds(\n ariaDescribedBy,\n showIndicatorLabel ? indicatorTextId : undefined,\n disabled || readOnly ? undefined : instructionTextId,\n thumbDescriptionId\n );\n }\n\n function isIncreaseKey(key: string) {\n return [\"ArrowRight\", \"ArrowUp\", \"PageUp\", \"End\"].includes(key);\n }\n\n function isDecreaseKey(key: string) {\n return [\"ArrowLeft\", \"ArrowDown\", \"PageDown\", \"Home\"].includes(key);\n }\n\n function getSliderTypeText(label?: string) {\n if (!label) {\n return \"slider\";\n }\n\n return label.toLowerCase();\n }\n\n function getSliderTargetText(label?: string) {\n if (!label) {\n return \"slider\";\n }\n\n return label.replace(/ slider$/i, \"\").toLowerCase();\n }\n\n function getBlockedMovementMessage(key: string, index: number) {\n if (numOfThumbs < 2) {\n return \"\";\n }\n\n const currentValue = selection[index];\n const previousValue = index > 0 ? selection[index - 1] : undefined;\n const nextValue =\n index < selection.length - 1 ? selection[index + 1] : undefined;\n\n const currentLabel = resolvedAriaLabels[index];\n const previousLabel =\n index > 0 ? resolvedAriaLabels[index - 1] : undefined;\n const nextLabel =\n index < resolvedAriaLabels.length - 1\n ? resolvedAriaLabels[index + 1]\n : undefined;\n\n if (isIncreaseKey(key)) {\n if (\n nextValue !== undefined &&\n currentValue >= nextValue - minRange\n ) {\n return `The ${getSliderTypeText(\n currentLabel\n )} has reached its limit. Increase the ${getSliderTargetText(\n nextLabel\n )} to set a higher ${getSliderTargetText(currentLabel)}.`;\n }\n }\n\n if (isDecreaseKey(key)) {\n if (\n previousValue !== undefined &&\n currentValue <= previousValue + minRange\n ) {\n return `The ${getSliderTypeText(\n currentLabel\n )} has reached its limit. Decrease the ${getSliderTargetText(\n previousLabel\n )} to set a lower ${getSliderTargetText(currentLabel)}.`;\n }\n }\n\n return \"\";\n }\n\n function getThumbMin(index: number, values = selection) {\n if (index === 0) {\n return min;\n }\n\n return values[index - 1] + minRange;\n }\n\n function getThumbMax(index: number, values = selection) {\n if (index === values.length - 1) {\n return max;\n }\n\n return values[index + 1] - minRange;\n }\n\n function clampValueForThumb(\n nextValue: number,\n index: number,\n values: number[]\n ) {\n const minAllowed = getThumbMin(index, values);\n const maxAllowed = getThumbMax(index, values);\n\n return Math.min(maxAllowed, Math.max(minAllowed, nextValue));\n }\n\n // =========================================================================\n // RENDER FUNCTIONS\n // =========================================================================\n const formatLabel = (value: number) => {\n if (renderSliderLabel) {\n return renderSliderLabel(value);\n }\n\n return (\n <Typography.BodyBL className={styles.labelText}>\n {sliderLabelPrefix}\n {value}\n {sliderLabelSuffix}\n </Typography.BodyBL>\n );\n };\n\n const formatIndicationLabel = () => {\n let formattedSelection = \"\";\n\n if (selection.length === 1) {\n formattedSelection = `${selection[0]}`;\n } else if (selection.length === 2) {\n formattedSelection = `${selection[0]} - ${selection[1]}`;\n } else if (selection.length > 2) {\n const minValue = Math.min(...selection);\n const maxValue = Math.max(...selection);\n formattedSelection = `${minValue} - ${maxValue}`;\n }\n\n return (\n <Typography.BodyBL className={styles.labelText}>\n {indicatorLabelPrefix}\n {formattedSelection}\n {indicatorLabelSuffix}\n </Typography.BodyBL>\n );\n };\n\n return (\n <div\n {...otherProps}\n id={id}\n role=\"group\"\n aria-labelledby={ariaLabelledBy}\n aria-disabled={disabled}\n className={clsx(styles.wrapper, className)}\n >\n {!disabled && !readOnly && (\n <VisuallyHidden id={instructionTextId}>\n Use left and right arrow keys to adjust the slider.\n </VisuallyHidden>\n )}\n\n {showIndicatorLabel && (\n <div\n id={indicatorTextId}\n className={styles.indicatorLabelContainer}\n >\n {formatIndicationLabel()}\n </div>\n )}\n\n {selection.map((thumbValue, index) => {\n const thumbLabelTextId = `${internalId}-thumb-label-${index}`;\n const thumbDescriptionText = getThumbDescriptionText(index);\n const thumbDescriptionTextId = thumbDescriptionText\n ? `${internalId}-thumb-description-${index}`\n : undefined;\n\n return (\n <VisuallyHidden key={`native-slider-${index}`}>\n {thumbDescriptionTextId && (\n <span id={thumbDescriptionTextId}>\n {thumbDescriptionText}\n </span>\n )}\n <span id={thumbLabelTextId}>\n {resolvedAriaLabels[index]}\n </span>\n\n <input\n data-testid={`slider-input-${index}`}\n type=\"range\"\n min={getThumbMin(index)}\n max={getThumbMax(index)}\n step={step}\n value={thumbValue}\n aria-disabled={disabled || undefined}\n readOnly={readOnly}\n aria-labelledby={concatIds(\n ariaLabelledBy,\n thumbLabelTextId\n )}\n aria-describedby={getThumbDescriptionIds(\n thumbDescriptionTextId\n )}\n aria-valuetext={getValueText(thumbValue)}\n aria-invalid={ariaInvalid}\n onFocus={() => setFocusedThumbIndex(index)}\n onBlur={() => setFocusedThumbIndex(null)}\n onChange={(event) =>\n handleNativeRangeChange(event, index)\n }\n onKeyDown={(event) => {\n handleThumbKeyDown(event, index);\n }}\n />\n </VisuallyHidden>\n );\n })}\n\n {/* Native range inputs provide the accessible interaction model.\n The visible react-slider is presentation-only. */}\n <ReactSlider\n step={step}\n min={min}\n max={max}\n value={selection}\n disabled={disabled || readOnly}\n onChange={handleChange}\n onAfterChange={handleChangeEnd}\n minDistance={minRange}\n aria-hidden\n className={styles.slider}\n renderThumb={(thumbProps, state) => {\n return (\n <Thumb\n data-testid={`slider-thumb-${state.index}`}\n {...thumbProps}\n key={thumbProps.key}\n tabIndex={-1}\n aria-hidden\n focused={focusedThumbIndex === state.index}\n disabled={disabled}\n readOnly={readOnly}\n />\n );\n }}\n renderTrack={(trackProps, state) => {\n return (\n <Track\n data-testid={`slider-track-${state.index}`}\n {...trackProps}\n key={trackProps.key}\n color={trackColors[state.index]}\n />\n );\n }}\n />\n\n {showSliderLabels && (\n <div className={styles.labelContainer}>\n <div>{formatLabel(min)}</div>\n <div>{formatLabel(max)}</div>\n </div>\n )}\n </div>\n );\n};\n"],"names":["InputRangeSlider","_a","id","value","min","max","step","minRange","numOfThumbs","colors","disabled","readOnly","showSliderLabels","sliderLabelPrefix","sliderLabelSuffix","showIndicatorLabel","indicatorLabelPrefix","indicatorLabelSuffix","ariaLabels","ariaDescriptions","ariaInvalid","ariaLabelledBy","ariaDescribedBy","renderSliderLabel","onChange","onChangeEnd","className","otherProps","__rest","selection","setSelection","useState","initialiseSelection","focusedThumbIndex","setFocusedThumbIndex","internalId","useId","trackColors","defaultColors","inactiveColor","Colour","activeColor","index","push","getDefaultColors","Array","fill","map","_","i","getTrackColors","indicatorTextId","instructionTextId","resolvedAriaLabels","from","length","getDefaultAriaLabel","useEffect","handleThumbKeyDown","event","message","key","currentValue","previousValue","undefined","nextValue","currentLabel","previousLabel","nextLabel","includes","isIncreaseKey","getSliderTypeText","getSliderTargetText","isDecreaseKey","getBlockedMovementMessage","clearAnnouncer","announce","handleNativeRangeChange","nextRawValue","Number","currentTarget","nextSelection","values","minAllowed","getThumbMin","maxAllowed","getThumbMax","Math","clampValueForThumb","label","toLowerCase","replace","formatLabel","_jsxs","Typography","BodyBL","styles.labelText","children","Object","assign","role","clsx","styles.wrapper","_jsx","VisuallyHidden","styles.indicatorLabelContainer","formattedSelection","formatIndicationLabel","thumbValue","thumbLabelTextId","thumbDescriptionText","getThumbDescriptionText","thumbDescriptionTextId","type","concatIds","thumbDescriptionId","onFocus","onBlur","onKeyDown","ReactSlider","onAfterChange","val","newSelection","minDistance","styles.slider","renderThumb","thumbProps","state","_createElement","Thumb","tabIndex","focused","renderTrack","trackProps","Track","color","styles.labelContainer"],"mappings":"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"}
1
+ {"version":3,"file":"input-range-slider.js","sources":["../../src/input-range-slider/input-range-slider.tsx"],"sourcesContent":["import { announce, clearAnnouncer } from \"@react-aria/live-announcer\";\nimport clsx from \"clsx\";\nimport type React from \"react\";\nimport { useEffect, useState } from \"react\";\nimport ReactSlider from \"react-slider\";\n\nimport { concatIds, VisuallyHidden } from \"../shared/accessibility\";\nimport { Colour } from \"../theme\";\nimport { Typography } from \"../typography\";\nimport { useId } from \"../util\";\nimport * as styles from \"./input-range-slider.styles\";\nimport { Thumb, Track } from \"./slider-components\";\nimport type { InputRangeSliderProps } from \"./types\";\n\nexport const InputRangeSlider = ({\n id,\n value,\n min = 0,\n max = 100,\n step = 1,\n minRange = 0,\n numOfThumbs = 2,\n colors,\n disabled,\n readOnly,\n showSliderLabels,\n sliderLabelPrefix,\n sliderLabelSuffix,\n showIndicatorLabel,\n indicatorLabelPrefix,\n indicatorLabelSuffix,\n ariaLabels,\n ariaDescriptions,\n \"aria-invalid\": ariaInvalid,\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": ariaDescribedBy,\n renderSliderLabel,\n onChange,\n onChangeEnd,\n className,\n ...otherProps\n}: InputRangeSliderProps) => {\n // =========================================================================\n // CONST, STATE, REF\n // =========================================================================\n const [selection, setSelection] = useState<number[]>(initialiseSelection());\n const [focusedThumbIndex, setFocusedThumbIndex] = useState<number | null>(\n null\n );\n const internalId = useId();\n const trackColors = getTrackColors();\n const indicatorTextId = `${internalId}-indicator`;\n const instructionTextId = `${internalId}-instruction`;\n const resolvedAriaLabels = getResolvedAriaLabels();\n\n // =========================================================================\n // EFFECTS\n // =========================================================================\n useEffect(() => {\n if (value !== selection) {\n setSelection(initialiseSelection());\n }\n }, [value]);\n\n // =========================================================================\n // EVENT HANDLERS\n // =========================================================================\n const handleChange = (value: number | readonly number[], index: number) => {\n if (readOnly || disabled) {\n return;\n }\n\n if (typeof value === \"number\") {\n const nextValue = [value];\n setSelection(nextValue);\n onChange?.(nextValue);\n return;\n }\n\n if (index > -1 && selection[index] === value[index]) {\n // skip unnecessary update when dragging the start thumb across the end thumb\n return;\n }\n\n const nextValue = [...value];\n setSelection(nextValue);\n onChange?.(nextValue);\n };\n\n const handleChangeEnd = (value: number | readonly number[]) => {\n if (readOnly || disabled) {\n return;\n }\n\n if (typeof value === \"number\") {\n const val = [value];\n setSelection(val);\n onChangeEnd?.(val);\n return;\n }\n\n const newSelection = [...value];\n setSelection(newSelection);\n onChangeEnd?.(newSelection);\n };\n\n const handleThumbKeyDown = (\n event: React.KeyboardEvent<HTMLDivElement>,\n index: number\n ) => {\n if (disabled || readOnly) {\n return;\n }\n\n const message = getBlockedMovementMessage(event.key, index);\n\n if (!message) {\n return;\n }\n\n clearAnnouncer(\"assertive\");\n announce(message, \"assertive\");\n };\n\n const handleNativeRangeChange = (\n event: React.ChangeEvent<HTMLInputElement>,\n index: number\n ) => {\n if (disabled || readOnly) {\n return;\n }\n\n const nextRawValue = Number(event.currentTarget.value);\n\n const nextSelection = [...selection];\n nextSelection[index] = clampValueForThumb(\n nextRawValue,\n index,\n selection\n );\n\n setSelection(nextSelection);\n onChange?.(nextSelection);\n onChangeEnd?.(nextSelection);\n };\n\n // =========================================================================\n // HELPER FUNCTIONS\n // =========================================================================\n function initialiseSelection() {\n if (value && value.length === numOfThumbs) {\n return value;\n }\n\n const values: number[] = [];\n for (let i = 0; i < numOfThumbs; i++) {\n values.push(min + step * i);\n }\n return values;\n }\n\n function getResolvedAriaLabels() {\n return Array.from({ length: numOfThumbs }, (_, index) => {\n return ariaLabels?.[index] || getDefaultAriaLabel(index);\n });\n }\n\n function getDefaultAriaLabel(index: number) {\n if (numOfThumbs === 1) {\n return \"\";\n }\n\n if (index === 0) {\n return \"Minimum value slider\";\n }\n\n if (index === numOfThumbs - 1) {\n return \"Maximum value slider\";\n }\n\n return \"Indeterminate value slider\";\n }\n\n function getThumbDescriptionText(index: number) {\n return ariaDescriptions?.[index];\n }\n\n function getTrackColors() {\n const defaultColors = getDefaultColors();\n return new Array(numOfThumbs + 1).fill(0).map((_, i) => {\n return colors?.[i] || defaultColors[i];\n });\n }\n\n function getDefaultColors() {\n const inactiveColor =\n disabled || readOnly\n ? Colour[\"border-disabled\"]\n : Colour[\"border-strong\"];\n const activeColor =\n disabled || readOnly\n ? Colour[\"border-selected-disabled\"]\n : Colour[\"border-selected\"];\n\n if (numOfThumbs === 1) {\n return [activeColor, inactiveColor];\n }\n\n const defaultColors: typeof colors = [inactiveColor];\n\n for (let index = 0; index < numOfThumbs - 1; index++) {\n defaultColors.push(activeColor);\n }\n\n defaultColors.push(inactiveColor);\n return defaultColors;\n }\n\n function getValueText(currentValue: number) {\n return `${sliderLabelPrefix || \"\"}${currentValue}${\n sliderLabelSuffix || \"\"\n }`;\n }\n\n function getThumbDescriptionIds(thumbDescriptionId?: string) {\n return concatIds(\n ariaDescribedBy,\n showIndicatorLabel ? indicatorTextId : undefined,\n disabled || readOnly ? undefined : instructionTextId,\n thumbDescriptionId\n );\n }\n\n function isIncreaseKey(key: string) {\n return [\"ArrowRight\", \"ArrowUp\", \"PageUp\", \"End\"].includes(key);\n }\n\n function isDecreaseKey(key: string) {\n return [\"ArrowLeft\", \"ArrowDown\", \"PageDown\", \"Home\"].includes(key);\n }\n\n function getSliderTypeText(label?: string) {\n if (!label) {\n return \"slider\";\n }\n\n return label.toLowerCase();\n }\n\n function getSliderTargetText(label?: string) {\n if (!label) {\n return \"slider\";\n }\n\n return label.replace(/ slider$/i, \"\").toLowerCase();\n }\n\n function getBlockedMovementMessage(key: string, index: number) {\n if (numOfThumbs < 2) {\n return \"\";\n }\n\n const currentValue = selection[index];\n const previousValue = index > 0 ? selection[index - 1] : undefined;\n const nextValue =\n index < selection.length - 1 ? selection[index + 1] : undefined;\n\n const currentLabel = resolvedAriaLabels[index];\n const previousLabel =\n index > 0 ? resolvedAriaLabels[index - 1] : undefined;\n const nextLabel =\n index < resolvedAriaLabels.length - 1\n ? resolvedAriaLabels[index + 1]\n : undefined;\n\n if (isIncreaseKey(key)) {\n if (\n nextValue !== undefined &&\n currentValue >= nextValue - minRange\n ) {\n return `The ${getSliderTypeText(\n currentLabel\n )} has reached its limit. Increase the ${getSliderTargetText(\n nextLabel\n )} to set a higher ${getSliderTargetText(currentLabel)}.`;\n }\n }\n\n if (isDecreaseKey(key)) {\n if (\n previousValue !== undefined &&\n currentValue <= previousValue + minRange\n ) {\n return `The ${getSliderTypeText(\n currentLabel\n )} has reached its limit. Decrease the ${getSliderTargetText(\n previousLabel\n )} to set a lower ${getSliderTargetText(currentLabel)}.`;\n }\n }\n\n return \"\";\n }\n\n function getThumbMin(index: number, values = selection) {\n if (index === 0) {\n return min;\n }\n\n return values[index - 1] + minRange;\n }\n\n function getThumbMax(index: number, values = selection) {\n if (index === values.length - 1) {\n return max;\n }\n\n return values[index + 1] - minRange;\n }\n\n function clampValueForThumb(\n nextValue: number,\n index: number,\n values: number[]\n ) {\n const minAllowed = getThumbMin(index, values);\n const maxAllowed = getThumbMax(index, values);\n\n return Math.min(maxAllowed, Math.max(minAllowed, nextValue));\n }\n\n // =========================================================================\n // RENDER FUNCTIONS\n // =========================================================================\n const formatLabel = (value: number) => {\n if (renderSliderLabel) {\n return renderSliderLabel(value);\n }\n\n return (\n <Typography.BodyBL className={styles.labelText}>\n {sliderLabelPrefix}\n {value}\n {sliderLabelSuffix}\n </Typography.BodyBL>\n );\n };\n\n const formatIndicationLabel = () => {\n let formattedSelection = \"\";\n\n if (selection.length === 1) {\n formattedSelection = `${selection[0]}`;\n } else if (selection.length === 2) {\n formattedSelection = `${selection[0]} - ${selection[1]}`;\n } else if (selection.length > 2) {\n const minValue = Math.min(...selection);\n const maxValue = Math.max(...selection);\n formattedSelection = `${minValue} - ${maxValue}`;\n }\n\n return (\n <Typography.BodyBL className={styles.labelText}>\n {indicatorLabelPrefix}\n {formattedSelection}\n {indicatorLabelSuffix}\n </Typography.BodyBL>\n );\n };\n\n return (\n <div\n {...otherProps}\n id={id}\n role=\"group\"\n aria-labelledby={ariaLabelledBy}\n aria-disabled={disabled}\n className={clsx(styles.wrapper, className)}\n >\n {!disabled && !readOnly && (\n <VisuallyHidden id={instructionTextId}>\n Use left and right arrow keys to adjust the slider.\n </VisuallyHidden>\n )}\n\n {showIndicatorLabel && (\n <div\n id={indicatorTextId}\n className={styles.indicatorLabelContainer}\n >\n {formatIndicationLabel()}\n </div>\n )}\n\n {selection.map((thumbValue, index) => {\n const thumbLabelTextId = `${internalId}-thumb-label-${index}`;\n const thumbDescriptionText = getThumbDescriptionText(index);\n const thumbDescriptionTextId = thumbDescriptionText\n ? `${internalId}-thumb-description-${index}`\n : undefined;\n\n return (\n <VisuallyHidden key={`native-slider-${index}`}>\n {thumbDescriptionTextId && (\n <span id={thumbDescriptionTextId}>\n {thumbDescriptionText}\n </span>\n )}\n <span id={thumbLabelTextId}>\n {resolvedAriaLabels[index]}\n </span>\n\n <input\n data-testid={`slider-input-${index}`}\n type=\"range\"\n min={getThumbMin(index)}\n max={getThumbMax(index)}\n step={step}\n value={thumbValue}\n aria-disabled={disabled || undefined}\n readOnly={readOnly}\n aria-labelledby={concatIds(\n ariaLabelledBy,\n thumbLabelTextId\n )}\n aria-describedby={getThumbDescriptionIds(\n thumbDescriptionTextId\n )}\n aria-valuetext={getValueText(thumbValue)}\n aria-invalid={ariaInvalid}\n onFocus={() => setFocusedThumbIndex(index)}\n onBlur={() => setFocusedThumbIndex(null)}\n onChange={(event) =>\n handleNativeRangeChange(event, index)\n }\n onKeyDown={(event) => {\n handleThumbKeyDown(event, index);\n }}\n />\n </VisuallyHidden>\n );\n })}\n\n {/* Native range inputs provide the accessible interaction model.\n The visible react-slider is presentation-only. */}\n <ReactSlider\n step={step}\n min={min}\n max={max}\n value={selection}\n disabled={disabled || readOnly}\n onChange={handleChange}\n onAfterChange={handleChangeEnd}\n minDistance={minRange}\n aria-hidden\n className={styles.slider}\n renderThumb={(thumbProps, state) => {\n return (\n <Thumb\n data-testid={`slider-thumb-${state.index}`}\n {...thumbProps}\n key={thumbProps.key}\n tabIndex={-1}\n aria-hidden\n focused={focusedThumbIndex === state.index}\n disabled={disabled}\n readOnly={readOnly}\n />\n );\n }}\n renderTrack={(trackProps, state) => {\n return (\n <Track\n data-testid={`slider-track-${state.index}`}\n {...trackProps}\n key={trackProps.key}\n color={trackColors[state.index]}\n />\n );\n }}\n />\n\n {showSliderLabels && (\n <div className={styles.labelContainer}>\n <div>{formatLabel(min)}</div>\n <div>{formatLabel(max)}</div>\n </div>\n )}\n </div>\n );\n};\n"],"names":["InputRangeSlider","_a","id","value","min","max","step","minRange","numOfThumbs","colors","disabled","readOnly","showSliderLabels","sliderLabelPrefix","sliderLabelSuffix","showIndicatorLabel","indicatorLabelPrefix","indicatorLabelSuffix","ariaLabels","ariaDescriptions","ariaInvalid","ariaLabelledBy","ariaDescribedBy","renderSliderLabel","onChange","onChangeEnd","className","otherProps","__rest","selection","setSelection","useState","initialiseSelection","focusedThumbIndex","setFocusedThumbIndex","internalId","useId","trackColors","defaultColors","inactiveColor","Colour","activeColor","index","push","getDefaultColors","Array","fill","map","_","i","getTrackColors","indicatorTextId","instructionTextId","resolvedAriaLabels","from","length","getDefaultAriaLabel","useEffect","handleThumbKeyDown","event","message","key","currentValue","previousValue","undefined","nextValue","currentLabel","previousLabel","nextLabel","includes","isIncreaseKey","getSliderTypeText","getSliderTargetText","isDecreaseKey","getBlockedMovementMessage","clearAnnouncer","announce","handleNativeRangeChange","nextRawValue","Number","currentTarget","nextSelection","values","minAllowed","getThumbMin","maxAllowed","getThumbMax","Math","clampValueForThumb","label","toLowerCase","replace","formatLabel","_jsxs","Typography","BodyBL","styles.labelText","children","Object","assign","role","clsx","styles.wrapper","_jsx","VisuallyHidden","styles.indicatorLabelContainer","formattedSelection","formatIndicationLabel","thumbValue","thumbLabelTextId","thumbDescriptionText","getThumbDescriptionText","thumbDescriptionTextId","type","concatIds","thumbDescriptionId","onFocus","onBlur","onKeyDown","ReactSlider","onAfterChange","val","newSelection","minDistance","styles.slider","renderThumb","thumbProps","state","_createElement","Thumb","tabIndex","focused","renderTrack","trackProps","Track","color","styles.labelContainer"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{__rest as e}from"../_virtual/_tslib.js";import{jsx as r}from"react/jsx-runtime";import t from"clsx";import{forwardRef as s,useRef as o}from"react";import"../theme/theme-provider/index.js";import"../theme/theme-provider/context.js";import"../theme/tokens/border.js";import"../theme/tokens/colour.js";import"../theme/tokens/font.js";import"../theme/tokens/media-query.js";import{useApplyStyle as i}from"../theme/utils/use-apply-styles.js";import"../util/calendar-helper.js";import"../external/dayjs/dayjs.min.js";import{mergeRefs as m}from"../util/merge-refs.js";import"../util/simple-id-generator.js";import"../util/string-helper.js";import"@react-aria/live-announcer";import{knob as a,knobDisabled as l,knobInteractive as n,sliderThumb as c,tokens as p,sliderTrack as d}from"./input-range-slider.styles.js";const u=s(((s,p)=>{var{focused:d,disabled:u,readOnly:j,className:f,style:h}=s,y=e(s,["focused","disabled","readOnly","className","style"]);const v=o(null);return i(v,h),r("div",Object.assign({ref:m(v,p)},y,{className:t(c,f),"data-focused":d?"true":void 0,children:r("div",{className:t(a,u&&l,!u&&!j&&n)})}))})),j=s(((s,a)=>{var{color:l,className:n,style:c}=s,u=e(s,["color","className","style"]);const j=o(null);return i(j,{[p.track.backgroundColor]:l}),i(j,c),r("div",Object.assign({},u,{className:t(d,n),ref:m(j,a)}))}));export{u as Thumb,j as Track};
1
+ import{__rest as e}from"../_virtual/_tslib.js";import{jsx as r}from"react/jsx-runtime";import t from"clsx";import{forwardRef as s,useRef as o}from"react";import"../theme/theme-provider/index.js";import"../theme/theme-provider/context.js";import"../theme/tokens/border.js";import"../theme/tokens/colour.js";import"../theme/tokens/font.js";import"../theme/tokens/media-query.js";import{useApplyStyle as i}from"../theme/utils/use-apply-styles.js";import"../theme/utils/use-media-query.js";import"../util/calendar-helper.js";import"../external/dayjs/dayjs.min.js";import{mergeRefs as m}from"../util/merge-refs.js";import"../util/simple-id-generator.js";import"../util/string-helper.js";import"@react-aria/live-announcer";import{knob as a,knobDisabled as l,knobInteractive as n,sliderThumb as c,tokens as p,sliderTrack as d}from"./input-range-slider.styles.js";const u=s(((s,p)=>{var{focused:d,disabled:u,readOnly:j,className:f,style:h}=s,y=e(s,["focused","disabled","readOnly","className","style"]);const v=o(null);return i(v,h),r("div",Object.assign({ref:m(v,p)},y,{className:t(c,f),"data-focused":d?"true":void 0,children:r("div",{className:t(a,u&&l,!u&&!j&&n)})}))})),j=s(((s,a)=>{var{color:l,className:n,style:c}=s,u=e(s,["color","className","style"]);const j=o(null);return i(j,{[p.track.backgroundColor]:l}),i(j,c),r("div",Object.assign({},u,{className:t(d,n),ref:m(j,a)}))}));export{u as Thumb,j as Track};
2
2
  //# sourceMappingURL=slider-components.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"slider-components.js","sources":["../../src/input-range-slider/slider-components.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport type React from \"react\";\nimport { forwardRef, useRef } from \"react\";\n\nimport { useApplyStyle } from \"../theme\";\nimport { mergeRefs } from \"../util\";\nimport * as styles from \"./input-range-slider.styles\";\n\ninterface ThumbProps extends React.HTMLAttributes<HTMLDivElement> {\n focused: boolean | undefined;\n disabled: boolean | undefined;\n readOnly: boolean | undefined;\n}\n\nconst InnerThumb = (\n {\n focused,\n disabled,\n readOnly,\n className,\n style,\n ...otherProps\n }: ThumbProps,\n ref: React.Ref<HTMLDivElement>\n) => {\n const thumbRef = useRef<HTMLDivElement>(null);\n\n useApplyStyle(thumbRef, style);\n\n return (\n <div\n ref={mergeRefs(thumbRef, ref)}\n {...otherProps}\n className={clsx(styles.sliderThumb, className)}\n data-focused={focused ? \"true\" : undefined}\n >\n <div\n className={clsx(\n styles.knob,\n disabled && styles.knobDisabled,\n !disabled && !readOnly && styles.knobInteractive\n )}\n />\n </div>\n );\n};\n\nexport const Thumb = forwardRef(InnerThumb);\n\ninterface TrackProps extends React.HTMLAttributes<HTMLDivElement> {\n color?: string;\n}\n\nconst InnerTrack = (\n { color, className, style, ...otherProps }: TrackProps,\n ref: React.Ref<HTMLDivElement>\n) => {\n const trackRef = useRef<HTMLDivElement>(null);\n\n useApplyStyle(trackRef, {\n [styles.tokens.track.backgroundColor]: color,\n });\n\n useApplyStyle(trackRef, style);\n\n return (\n <div\n {...otherProps}\n className={clsx(styles.sliderTrack, className)}\n ref={mergeRefs(trackRef, ref)}\n />\n );\n};\n\nexport const Track = forwardRef(InnerTrack);\n"],"names":["Thumb","forwardRef","_a","ref","focused","disabled","readOnly","className","style","otherProps","__rest","thumbRef","useRef","useApplyStyle","_jsx","Object","assign","mergeRefs","clsx","styles.sliderThumb","undefined","children","styles.knob","styles.knobDisabled","styles.knobInteractive","Track","color","trackRef","styles.tokens","track","backgroundColor","styles.sliderTrack"],"mappings":"8yBAcA,MAiCaA,EAAQC,GAjCF,CACfC,EAQAC,KARA,IAAAC,QACIA,EAAOC,SACPA,EAAQC,SACRA,EAAQC,UACRA,EAASC,MACTA,GAAKN,EACFO,EAAUC,EAAAR,EANjB,uDAUA,MAAMS,EAAWC,EAAuB,MAIxC,OAFAC,EAAcF,EAAUH,GAGpBM,EAAA,MAAAC,OAAAC,OAAA,CACIb,IAAKc,EAAUN,EAAUR,IACrBM,EAAU,CACdF,UAAWW,EAAKC,EAAoBZ,GAAU,eAChCH,EAAU,YAASgB,EAASC,SAE1CP,EAAA,MAAA,CACIP,UAAWW,EACPI,EACAjB,GAAYkB,GACXlB,IAAaC,GAAYkB,OAGhC,IA+BDC,EAAQxB,GArBF,CACfC,EACAC,SADAuB,MAAEA,EAAKnB,UAAEA,EAASC,MAAEA,KAAUC,EAAUC,EAAAR,EAAxC,CAAA,QAAA,YAAA,UAGA,MAAMyB,EAAWf,EAAuB,MAQxC,OANAC,EAAcc,EAAU,CACpB,CAACC,EAAcC,MAAMC,iBAAkBJ,IAG3Cb,EAAcc,EAAUnB,GAGpBM,EAAA,MAAAC,OAAAC,OAAA,CAAA,EACQP,EAAU,CACdF,UAAWW,EAAKa,EAAoBxB,GACpCJ,IAAKc,EAAUU,EAAUxB,KAC3B"}
1
+ {"version":3,"file":"slider-components.js","sources":["../../src/input-range-slider/slider-components.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport type React from \"react\";\nimport { forwardRef, useRef } from \"react\";\n\nimport { useApplyStyle } from \"../theme\";\nimport { mergeRefs } from \"../util\";\nimport * as styles from \"./input-range-slider.styles\";\n\ninterface ThumbProps extends React.HTMLAttributes<HTMLDivElement> {\n focused: boolean | undefined;\n disabled: boolean | undefined;\n readOnly: boolean | undefined;\n}\n\nconst InnerThumb = (\n {\n focused,\n disabled,\n readOnly,\n className,\n style,\n ...otherProps\n }: ThumbProps,\n ref: React.Ref<HTMLDivElement>\n) => {\n const thumbRef = useRef<HTMLDivElement>(null);\n\n useApplyStyle(thumbRef, style);\n\n return (\n <div\n ref={mergeRefs(thumbRef, ref)}\n {...otherProps}\n className={clsx(styles.sliderThumb, className)}\n data-focused={focused ? \"true\" : undefined}\n >\n <div\n className={clsx(\n styles.knob,\n disabled && styles.knobDisabled,\n !disabled && !readOnly && styles.knobInteractive\n )}\n />\n </div>\n );\n};\n\nexport const Thumb = forwardRef(InnerThumb);\n\ninterface TrackProps extends React.HTMLAttributes<HTMLDivElement> {\n color?: string;\n}\n\nconst InnerTrack = (\n { color, className, style, ...otherProps }: TrackProps,\n ref: React.Ref<HTMLDivElement>\n) => {\n const trackRef = useRef<HTMLDivElement>(null);\n\n useApplyStyle(trackRef, {\n [styles.tokens.track.backgroundColor]: color,\n });\n\n useApplyStyle(trackRef, style);\n\n return (\n <div\n {...otherProps}\n className={clsx(styles.sliderTrack, className)}\n ref={mergeRefs(trackRef, ref)}\n />\n );\n};\n\nexport const Track = forwardRef(InnerTrack);\n"],"names":["Thumb","forwardRef","_a","ref","focused","disabled","readOnly","className","style","otherProps","__rest","thumbRef","useRef","useApplyStyle","_jsx","Object","assign","mergeRefs","clsx","styles.sliderThumb","undefined","children","styles.knob","styles.knobDisabled","styles.knobInteractive","Track","color","trackRef","styles.tokens","track","backgroundColor","styles.sliderTrack"],"mappings":"w1BAcA,MAiCaA,EAAQC,GAjCF,CACfC,EAQAC,KARA,IAAAC,QACIA,EAAOC,SACPA,EAAQC,SACRA,EAAQC,UACRA,EAASC,MACTA,GAAKN,EACFO,EAAUC,EAAAR,EANjB,uDAUA,MAAMS,EAAWC,EAAuB,MAIxC,OAFAC,EAAcF,EAAUH,GAGpBM,EAAA,MAAAC,OAAAC,OAAA,CACIb,IAAKc,EAAUN,EAAUR,IACrBM,EAAU,CACdF,UAAWW,EAAKC,EAAoBZ,GAAU,eAChCH,EAAU,YAASgB,EAASC,SAE1CP,EAAA,MAAA,CACIP,UAAWW,EACPI,EACAjB,GAAYkB,GACXlB,IAAaC,GAAYkB,OAGhC,IA+BDC,EAAQxB,GArBF,CACfC,EACAC,SADAuB,MAAEA,EAAKnB,UAAEA,EAASC,MAAEA,KAAUC,EAAUC,EAAAR,EAAxC,CAAA,QAAA,YAAA,UAGA,MAAMyB,EAAWf,EAAuB,MAQxC,OANAC,EAAcc,EAAU,CACpB,CAACC,EAAcC,MAAMC,iBAAkBJ,IAG3Cb,EAAcc,EAAUnB,GAGpBM,EAAA,MAAAC,OAAAC,OAAA,CAAA,EACQP,EAAU,CACdF,UAAWW,EAAKa,EAAoBxB,GACpCJ,IAAKc,EAAUU,EAAUxB,KAC3B"}
@@ -1,2 +1,2 @@
1
- import{jsx as e}from"react/jsx-runtime";import{useState as r,useRef as t,useEffect as o}from"react";import"clsx";import"../theme/theme-provider/index.js";import"../theme/theme-provider/context.js";import"../theme/tokens/border.js";import"../theme/tokens/colour.js";import"../theme/tokens/font.js";import"../theme/tokens/media-query.js";import"../util/calendar-helper.js";import"../external/dayjs/dayjs.min.js";import{useId as i}from"../util/simple-id-generator.js";import{StringHelper as n}from"../util/string-helper.js";import"@react-aria/live-announcer";import"../shared/dropdown-list/dropdown-label.styles_1dwmd8f.css";import{DropdownList as s}from"../shared/dropdown-list/dropdown-list.js";import{DropdownListState as l}from"../shared/dropdown-list/dropdown-list-state.js";import{ExpandableElement as a}from"../shared/dropdown-list/expandable-element.js";import"@lifesg/react-icons/caret-right";import"@lifesg/react-icons/exclamation-circle-fill";import"@lifesg/react-icons/minus-square-fill";import"@lifesg/react-icons/square";import"@lifesg/react-icons/square-tick-fill";import"@lifesg/react-icons/tick";import"react-virtuoso";import"../markup/markup.js";import"../_virtual/_tslib.js";import"../shared/component-loading-spinner/component-loading-spinner.styles_15eq02i.css";import{ElementWithDropdown as d}from"../shared/dropdown-wrapper/element-with-dropdown.js";import{InputBox as p}from"../shared/input-wrapper/input-wrapper.js";import"../shared/dropdown-list/dropdown-list.styles_1qveyb9.css";import"../shared/dropdown-list/dropdown-search.js";import"../shared/dropdown-list/nested-dropdown-list.styles_wdhxoe.css";import"immer";import"../external/lodash/_getTag.js";import"../external/lodash/isArguments.js";import"../external/lodash/_baseGetTag.js";import"../external/lodash/isBuffer.js";import"../external/lodash/isTypedArray.js";import"../external/lodash/_Stack.js";import"../external/lodash/_SetCache.js";import"../external/lodash/_equalByTag.js";import"../shared/dropdown-list/virtuoso-components.js";import{LabelContainer as c,PlaceholderLabel as m,ValueLabel as u}from"../shared/dropdown-wrapper/dropdown-wrapper.js";const h=({selectedOption:h,placeholder:f="Select",options:w,disabled:j,error:x,className:b,"data-testid":g,id:y,"aria-labelledby":v,"aria-describedby":_,"aria-invalid":T,enableSearch:I=!1,searchFunction:S,searchPlaceholder:A,valueExtractor:C,valueToStringFunction:k,listExtractor:O,displayValueExtractor:R,onSelectOption:q,onShowOptions:D,onHideOptions:E,onRetry:L,optionsLoadState:H="success",optionTruncationType:N="end",renderCustomSelectedOption:P,renderListItem:B,hideNoResultsDisplay:G,noResultsDescription:F,customLabels:M,renderCustomCallToAction:W,onBlur:Z,variant:V="default",readOnly:z,alignment:J,dropdownZIndex:K,dropdownRootNode:Q,dropdownWidth:U})=>{const[X,Y]=r(h),[$,ee]=r(!1),[re,te]=r(!1),oe=i(),ie=t(null),ne=t(null),se=t(null);o((()=>{Y(h)}),[h]);const le=(e,r)=>{var t;null===(t=ne.current)||void 0===t||t.focus(),Y(e),ee(!1),ue(!1),null==q||q(e,r)},ae=()=>{$&&(ee(!1),ue(!1))},de=()=>{re||$||te(!0)},pe=e=>{re&&!$&&ie.current&&!ie.current.contains(e.relatedTarget)&&(te(!1),null==Z||Z())},ce=()=>{var e;if(!X)return"";if(R)return R(X);if(C){const r=C(X);return k?k(r):null!==(e=null==r?void 0:r.toString())&&void 0!==e?e:""}return X.toString()},me=e=>{if("middle"===N){let r=0;return se&&se.current&&(r=se.current.getBoundingClientRect().width),n.truncateOneLine(e,r,120,8)}return e},ue=e=>{e?null==D||D():null==E||E()};return e(l,{children:e(d,{enabled:!z&&!j,isOpen:$,renderElement:()=>e(p,{className:b,"data-testid":g,id:y,ref:ie,tabIndex:-1,onFocus:de,onBlur:pe,focused:re,disabled:j,readOnly:z,error:x,children:e(a,{ref:ne,disabled:j,expanded:$,listboxId:oe,popupRole:"listbox",readOnly:z,variant:V,"aria-labelledby":v,"aria-describedby":_,"aria-invalid":T,children:e(c,{ref:se,disabled:j,children:X?P?P(X):e(u,{variant:V,truncateType:N,children:me(ce())}):e(m,{variant:V,truncateType:N,children:f})})})}),renderDropdown:()=>e(s,{listboxId:oe,listItems:w,onSelectItem:le,onDismiss:ae,valueExtractor:C,listExtractor:O,enableSearch:I,searchPlaceholder:A,searchFunction:S,selectedItems:X?[X]:[],onRetry:L,itemsLoadState:H,itemTruncationType:N,renderListItem:B,hideNoResultsDisplay:G,noResultsDescription:F,customLabels:M,renderCustomCallToAction:W,variant:V,width:U,matchElementWidth:!0}),onOpen:()=>{ee(!0),ue(!0),te(!0)},onClose:e=>{ee(!1),ue(!1),"click"!==e&&(te(!1),null==Z||Z())},onDismiss:()=>{var e;null===(e=ne.current)||void 0===e||e.focus(),ee(!1),ue(!1)},clickToToggle:!0,offset:8,alignment:J,fitAvailableHeight:!0,customZIndex:K,rootNode:Q})})};export{h as InputSelect};
1
+ import{jsx as e}from"react/jsx-runtime";import{useState as r,useRef as t,useEffect as o}from"react";import"clsx";import"../theme/theme-provider/index.js";import"../theme/theme-provider/context.js";import"../theme/tokens/border.js";import"../theme/tokens/colour.js";import"../theme/tokens/font.js";import"../theme/tokens/media-query.js";import"../util/calendar-helper.js";import"../external/dayjs/dayjs.min.js";import{useId as i}from"../util/simple-id-generator.js";import{StringHelper as s}from"../util/string-helper.js";import"@react-aria/live-announcer";import"../theme/utils/use-media-query.js";import"../shared/dropdown-list/dropdown-label.styles_1dwmd8f.css";import{DropdownList as n}from"../shared/dropdown-list/dropdown-list.js";import{DropdownListState as l}from"../shared/dropdown-list/dropdown-list-state.js";import{ExpandableElement as a}from"../shared/dropdown-list/expandable-element.js";import"@lifesg/react-icons/caret-right";import"@lifesg/react-icons/exclamation-circle-fill";import"@lifesg/react-icons/minus-square-fill";import"@lifesg/react-icons/square";import"@lifesg/react-icons/square-tick-fill";import"@lifesg/react-icons/tick";import"react-virtuoso";import"../markup/markup.js";import"../_virtual/_tslib.js";import"../shared/component-loading-spinner/component-loading-spinner.styles_15eq02i.css";import{ElementWithDropdown as d}from"../shared/dropdown-wrapper/element-with-dropdown.js";import{InputBox as p}from"../shared/input-wrapper/input-wrapper.js";import"../shared/dropdown-list/dropdown-list.styles_1kt4zhf.css";import"../shared/dropdown-list/dropdown-search.js";import"../shared/dropdown-list/nested-dropdown-list.styles_wdhxoe.css";import"immer";import"../external/lodash/_getTag.js";import"../external/lodash/isArguments.js";import"../external/lodash/_baseGetTag.js";import"../external/lodash/isBuffer.js";import"../external/lodash/isTypedArray.js";import"../external/lodash/_Stack.js";import"../external/lodash/_SetCache.js";import"../external/lodash/_equalByTag.js";import"../shared/dropdown-list/virtuoso-components.js";import{LabelContainer as c,PlaceholderLabel as m,ValueLabel as u}from"../shared/dropdown-wrapper/dropdown-wrapper.js";const h=({selectedOption:h,placeholder:f="Select",options:w,disabled:j,error:x,className:b,"data-testid":g,id:y,"aria-labelledby":v,"aria-describedby":_,"aria-invalid":T,enableSearch:I=!1,searchFunction:S,searchPlaceholder:A,valueExtractor:k,valueToStringFunction:C,listExtractor:O,displayValueExtractor:R,onSelectOption:q,onShowOptions:D,onHideOptions:E,onRetry:L,optionsLoadState:H="success",optionTruncationType:N="end",renderCustomSelectedOption:P,renderListItem:B,hideNoResultsDisplay:G,noResultsDescription:F,customLabels:M,renderCustomCallToAction:W,onBlur:Z,variant:z="default",readOnly:V,alignment:J,dropdownZIndex:K,dropdownRootNode:Q,dropdownWidth:U})=>{const[X,Y]=r(h),[$,ee]=r(!1),[re,te]=r(!1),oe=i(),ie=t(null),se=t(null),ne=t(null);o((()=>{Y(h)}),[h]);const le=(e,r)=>{var t;null===(t=se.current)||void 0===t||t.focus(),Y(e),ee(!1),ue(!1),null==q||q(e,r)},ae=()=>{$&&(ee(!1),ue(!1))},de=()=>{re||$||te(!0)},pe=e=>{re&&!$&&ie.current&&!ie.current.contains(e.relatedTarget)&&(te(!1),null==Z||Z())},ce=()=>{var e;if(!X)return"";if(R)return R(X);if(k){const r=k(X);return C?C(r):null!==(e=null==r?void 0:r.toString())&&void 0!==e?e:""}return X.toString()},me=e=>{if("middle"===N){let r=0;return ne&&ne.current&&(r=ne.current.getBoundingClientRect().width),s.truncateOneLine(e,r,120,8)}return e},ue=e=>{e?null==D||D():null==E||E()};return e(l,{children:e(d,{enabled:!V&&!j,isOpen:$,renderElement:()=>e(p,{className:b,"data-testid":g,id:y,ref:ie,tabIndex:-1,onFocus:de,onBlur:pe,focused:re,disabled:j,readOnly:V,error:x,children:e(a,{ref:se,disabled:j,expanded:$,listboxId:oe,popupRole:"listbox",readOnly:V,variant:z,"aria-labelledby":v,"aria-describedby":_,"aria-invalid":T,children:e(c,{ref:ne,disabled:j,children:X?P?P(X):e(u,{variant:z,truncateType:N,children:me(ce())}):e(m,{variant:z,truncateType:N,children:f})})})}),renderDropdown:()=>e(n,{listboxId:oe,listItems:w,onSelectItem:le,onDismiss:ae,valueExtractor:k,listExtractor:O,enableSearch:I,searchPlaceholder:A,searchFunction:S,selectedItems:X?[X]:[],onRetry:L,itemsLoadState:H,itemTruncationType:N,renderListItem:B,hideNoResultsDisplay:G,noResultsDescription:F,customLabels:M,renderCustomCallToAction:W,variant:z,width:U,matchElementWidth:!0}),onOpen:()=>{ee(!0),ue(!0),te(!0)},onClose:e=>{ee(!1),ue(!1),"click"!==e&&(te(!1),null==Z||Z())},onDismiss:()=>{var e;null===(e=se.current)||void 0===e||e.focus(),ee(!1),ue(!1)},clickToToggle:!0,offset:8,alignment:J,fitAvailableHeight:!0,customZIndex:K,rootNode:Q})})};export{h as InputSelect};
2
2
  //# sourceMappingURL=input-select.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-select.js","sources":["../../src/input-select/input-select.tsx"],"sourcesContent":["import type { OpenChangeReason } from \"@floating-ui/react\";\nimport type React from \"react\";\nimport { useEffect, useRef, useState } from \"react\";\n\nimport {\n DropdownList,\n DropdownListState,\n ExpandableElement,\n} from \"../shared/dropdown-list\";\nimport { ElementWithDropdown } from \"../shared/dropdown-wrapper\";\nimport {\n LabelContainer,\n PlaceholderLabel,\n ValueLabel,\n} from \"../shared/dropdown-wrapper/dropdown-wrapper\";\nimport { InputBox } from \"../shared/input-wrapper/input-wrapper\";\nimport { useId } from \"../util\";\nimport { StringHelper } from \"../util/string-helper\";\nimport type { InputSelectProps } from \"./types\";\n\nexport const InputSelect = <T, V>({\n selectedOption,\n placeholder = \"Select\",\n options,\n disabled,\n error,\n className,\n \"data-testid\": testId,\n id,\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": ariaDescribedBy,\n \"aria-invalid\": ariaInvalid,\n enableSearch = false,\n searchFunction,\n searchPlaceholder,\n valueExtractor,\n valueToStringFunction,\n listExtractor,\n displayValueExtractor,\n onSelectOption,\n onShowOptions,\n onHideOptions,\n onRetry,\n optionsLoadState = \"success\",\n optionTruncationType = \"end\",\n renderCustomSelectedOption,\n renderListItem,\n hideNoResultsDisplay,\n noResultsDescription,\n customLabels,\n renderCustomCallToAction,\n onBlur,\n variant = \"default\",\n readOnly,\n alignment,\n dropdownZIndex,\n dropdownRootNode,\n dropdownWidth,\n}: InputSelectProps<T, V>): JSX.Element => {\n // =============================================================================\n // CONST, STATE\n // =============================================================================\n const [selected, setSelected] = useState<T | undefined>(selectedOption);\n const [showOptions, setShowOptions] = useState<boolean>(false);\n const [focused, setFocused] = useState<boolean>(false);\n const internalId = useId();\n\n const nodeRef = useRef<HTMLDivElement>(null);\n const selectorRef = useRef<HTMLButtonElement>(null);\n const labelContainerRef = useRef<HTMLDivElement>(null);\n\n // =============================================================================\n // EFFECTS\n // =============================================================================\n useEffect(() => {\n setSelected(selectedOption);\n }, [selectedOption]);\n\n // =============================================================================\n // EVENT HANDLERS\n // =============================================================================\n const handleListItemClick = (item: T, extractedValue: V) => {\n selectorRef.current?.focus();\n setSelected(item);\n setShowOptions(false);\n triggerOptionDisplayCallback(false);\n\n onSelectOption?.(item, extractedValue);\n };\n\n const handleListDismiss = () => {\n if (showOptions) {\n setShowOptions(false);\n triggerOptionDisplayCallback(false);\n }\n };\n\n const handleNodeFocus = () => {\n if (!focused && !showOptions) {\n setFocused(true);\n }\n };\n\n const handleNodeBlur = (e: React.FocusEvent) => {\n if (\n focused &&\n !showOptions &&\n nodeRef.current &&\n !nodeRef.current.contains(e.relatedTarget as Node)\n ) {\n setFocused(false);\n onBlur?.();\n }\n };\n\n const handleOpen = () => {\n setShowOptions(true);\n triggerOptionDisplayCallback(true);\n setFocused(true);\n };\n\n const handleClose = (reason: OpenChangeReason | undefined) => {\n setShowOptions(false);\n triggerOptionDisplayCallback(false);\n\n // click to toggle should not blur the input\n if (reason !== \"click\") {\n setFocused(false);\n onBlur?.();\n }\n };\n\n const handleDismiss = () => {\n selectorRef.current?.focus();\n setShowOptions(false);\n triggerOptionDisplayCallback(false);\n };\n\n // =============================================================================\n // HELPER FUNCTION\n // =============================================================================\n const getDisplayValue = (): string => {\n if (!selected) return \"\";\n\n if (displayValueExtractor) {\n return displayValueExtractor(selected);\n }\n\n if (valueExtractor) {\n const value = valueExtractor(selected);\n return valueToStringFunction\n ? valueToStringFunction(value)\n : value?.toString() ?? \"\";\n }\n\n return selected.toString();\n };\n\n const truncateValue = (value: string) => {\n if (optionTruncationType === \"middle\") {\n let widthOfElement = 0;\n if (labelContainerRef && labelContainerRef.current) {\n widthOfElement =\n labelContainerRef.current.getBoundingClientRect().width;\n }\n\n return StringHelper.truncateOneLine(value, widthOfElement, 120, 8);\n }\n return value;\n };\n\n const triggerOptionDisplayCallback = (show: boolean) => {\n if (show) {\n onShowOptions?.();\n } else {\n onHideOptions?.();\n }\n };\n\n // =============================================================================\n // RENDER FUNCTIONS\n // =============================================================================\n const renderLabel = () => {\n if (!selected) {\n return (\n <PlaceholderLabel\n variant={variant}\n truncateType={optionTruncationType}\n >\n {placeholder}\n </PlaceholderLabel>\n );\n } else if (renderCustomSelectedOption) {\n return renderCustomSelectedOption(selected);\n } else {\n return (\n <ValueLabel\n variant={variant}\n truncateType={optionTruncationType}\n >\n {truncateValue(getDisplayValue())}\n </ValueLabel>\n );\n }\n };\n\n const renderSelectorContent = () => (\n <LabelContainer ref={labelContainerRef} disabled={disabled}>\n {renderLabel()}\n </LabelContainer>\n );\n\n const renderElement = () => {\n return (\n <InputBox\n className={className}\n data-testid={testId}\n id={id}\n ref={nodeRef}\n tabIndex={-1}\n onFocus={handleNodeFocus}\n onBlur={handleNodeBlur}\n focused={focused}\n disabled={disabled}\n readOnly={readOnly}\n error={error}\n >\n <ExpandableElement\n ref={selectorRef}\n disabled={disabled}\n expanded={showOptions}\n listboxId={internalId}\n popupRole=\"listbox\"\n readOnly={readOnly}\n variant={variant}\n aria-labelledby={ariaLabelledBy}\n aria-describedby={ariaDescribedBy}\n aria-invalid={ariaInvalid}\n >\n {renderSelectorContent()}\n </ExpandableElement>\n </InputBox>\n );\n };\n\n const renderDropdown = () => {\n return (\n <DropdownList\n listboxId={internalId}\n listItems={options}\n onSelectItem={handleListItemClick}\n onDismiss={handleListDismiss}\n valueExtractor={valueExtractor}\n listExtractor={listExtractor}\n enableSearch={enableSearch}\n searchPlaceholder={searchPlaceholder}\n searchFunction={searchFunction}\n selectedItems={selected ? [selected] : []}\n onRetry={onRetry}\n itemsLoadState={optionsLoadState}\n itemTruncationType={optionTruncationType}\n renderListItem={renderListItem}\n hideNoResultsDisplay={hideNoResultsDisplay}\n noResultsDescription={noResultsDescription}\n customLabels={customLabels}\n renderCustomCallToAction={renderCustomCallToAction}\n variant={variant}\n width={dropdownWidth}\n matchElementWidth\n />\n );\n };\n\n return (\n <DropdownListState>\n <ElementWithDropdown\n enabled={!readOnly && !disabled}\n isOpen={showOptions}\n renderElement={renderElement}\n renderDropdown={renderDropdown}\n onOpen={handleOpen}\n onClose={handleClose}\n onDismiss={handleDismiss}\n clickToToggle\n offset={8}\n alignment={alignment}\n fitAvailableHeight\n customZIndex={dropdownZIndex}\n rootNode={dropdownRootNode}\n />\n </DropdownListState>\n );\n};\n"],"names":["InputSelect","selectedOption","placeholder","options","disabled","error","className","testId","id","ariaLabelledBy","ariaDescribedBy","ariaInvalid","enableSearch","searchFunction","searchPlaceholder","valueExtractor","valueToStringFunction","listExtractor","displayValueExtractor","onSelectOption","onShowOptions","onHideOptions","onRetry","optionsLoadState","optionTruncationType","renderCustomSelectedOption","renderListItem","hideNoResultsDisplay","noResultsDescription","customLabels","renderCustomCallToAction","onBlur","variant","readOnly","alignment","dropdownZIndex","dropdownRootNode","dropdownWidth","selected","setSelected","useState","showOptions","setShowOptions","focused","setFocused","internalId","useId","nodeRef","useRef","selectorRef","labelContainerRef","useEffect","handleListItemClick","item","extractedValue","_a","current","focus","triggerOptionDisplayCallback","handleListDismiss","handleNodeFocus","handleNodeBlur","e","contains","relatedTarget","getDisplayValue","value","toString","truncateValue","widthOfElement","getBoundingClientRect","width","StringHelper","truncateOneLine","show","_jsx","DropdownListState","children","ElementWithDropdown","enabled","isOpen","renderElement","InputBox","ref","tabIndex","onFocus","ExpandableElement","expanded","listboxId","popupRole","LabelContainer","ValueLabel","truncateType","PlaceholderLabel","renderDropdown","DropdownList","listItems","onSelectItem","onDismiss","selectedItems","itemsLoadState","itemTruncationType","matchElementWidth","onOpen","onClose","reason","clickToToggle","offset","fitAvailableHeight","customZIndex","rootNode"],"mappings":"qpEAoBaA,EAAc,EACvBC,iBACAC,cAAc,SACdC,UACAC,WACAC,QACAC,YACA,cAAeC,EACfC,KACA,kBAAmBC,EACnB,mBAAoBC,EACpB,eAAgBC,EAChBC,gBAAe,EACfC,iBACAC,oBACAC,iBACAC,wBACAC,gBACAC,wBACAC,iBACAC,gBACAC,gBACAC,UACAC,mBAAmB,UACnBC,uBAAuB,MACvBC,6BACAC,iBACAC,uBACAC,uBACAC,eACAC,2BACAC,SACAC,UAAU,UACVC,WACAC,YACAC,iBACAC,mBACAC,oBAKA,MAAOC,EAAUC,GAAeC,EAAwBvC,IACjDwC,EAAaC,IAAkBF,GAAkB,IACjDG,GAASC,IAAcJ,GAAkB,GAC1CK,GAAaC,IAEbC,GAAUC,EAAuB,MACjCC,GAAcD,EAA0B,MACxCE,GAAoBF,EAAuB,MAKjDG,GAAU,KACNZ,EAAYtC,EAAe,GAC5B,CAACA,IAKJ,MAAMmD,GAAsB,CAACC,EAASC,WACf,QAAnBC,EAAAN,GAAYO,eAAO,IAAAD,GAAAA,EAAEE,QACrBlB,EAAYc,GACZX,IAAe,GACfgB,IAA6B,GAE7BvC,SAAAA,EAAiBkC,EAAMC,EAAe,EAGpCK,GAAoB,KAClBlB,IACAC,IAAe,GACfgB,IAA6B,GACjC,EAGEE,GAAkB,KACfjB,IAAYF,GACbG,IAAW,EACf,EAGEiB,GAAkBC,IAEhBnB,KACCF,GACDM,GAAQS,UACPT,GAAQS,QAAQO,SAASD,EAAEE,iBAE5BpB,IAAW,GACXb,SAAAA,IACJ,EA6BEkC,GAAkB,WACpB,IAAK3B,EAAU,MAAO,GAEtB,GAAIpB,EACA,OAAOA,EAAsBoB,GAGjC,GAAIvB,EAAgB,CAChB,MAAMmD,EAAQnD,EAAeuB,GAC7B,OAAOtB,EACDA,EAAsBkD,GACL,QAAjBX,EAAAW,aAAK,EAALA,EAAOC,kBAAU,IAAAZ,EAAAA,EAAI,EAC/B,CAEA,OAAOjB,EAAS6B,UAAU,EAGxBC,GAAiBF,IACnB,GAA6B,WAAzB1C,EAAmC,CACnC,IAAI6C,EAAiB,EAMrB,OALInB,IAAqBA,GAAkBM,UACvCa,EACInB,GAAkBM,QAAQc,wBAAwBC,OAGnDC,EAAaC,gBAAgBP,EAAOG,EAAgB,IAAK,EACpE,CACA,OAAOH,CAAK,EAGVR,GAAgCgB,IAC9BA,EACAtD,SAAAA,IAEAC,SAAAA,GACJ,EAiGJ,OACIsD,EAACC,EAAiB,CAAAC,SACdF,EAACG,EAAmB,CAChBC,SAAU9C,IAAa7B,EACvB4E,OAAQvC,EACRwC,cAlEU,IAEdN,EAACO,GACG5E,UAAWA,EAAS,cACPC,EACbC,GAAIA,EACJ2E,IAAKpC,GACLqC,UAAU,EACVC,QAASzB,GACT7B,OAAQ8B,GACRlB,QAASA,GACTvC,SAAUA,EACV6B,SAAUA,EACV5B,MAAOA,WAEPsE,EAACW,GACGH,IAAKlC,GACL7C,SAAUA,EACVmF,SAAU9C,EACV+C,UAAW3C,GACX4C,UAAU,UACVxD,SAAUA,EACVD,QAASA,EAAO,kBACCvB,qBACCC,EAAe,eACnBC,EAAWkE,SA9BrCF,EAACe,EAAc,CAACP,IAAKjC,GAAmB9C,SAAUA,WAxB7CkC,EASMb,EACAA,EAA2Ba,GAG9BqC,EAACgB,GACG3D,QAASA,EACT4D,aAAcpE,EAAoBqD,SAEjCT,GAAcH,QAfnBU,EAACkB,EAAgB,CACb7D,QAASA,EACT4D,aAAcpE,EAAoBqD,SAEjC3E,UA0FL4F,eAlCW,IAEfnB,EAACoB,EAAY,CACTP,UAAW3C,GACXmD,UAAW7F,EACX8F,aAAc7C,GACd8C,UAAWvC,GACX5C,eAAgBA,EAChBE,cAAeA,EACfL,aAAcA,EACdE,kBAAmBA,EACnBD,eAAgBA,EAChBsF,cAAe7D,EAAW,CAACA,GAAY,GACvChB,QAASA,EACT8E,eAAgB7E,EAChB8E,mBAAoB7E,EACpBE,eAAgBA,EAChBC,qBAAsBA,EACtBC,qBAAsBA,EACtBC,aAAcA,EACdC,yBAA0BA,EAC1BE,QAASA,EACTuC,MAAOlC,EACPiE,mBAAiB,IAYjBC,OArKO,KACf7D,IAAe,GACfgB,IAA6B,GAC7Bd,IAAW,EAAK,EAmKR4D,QAhKSC,IACjB/D,IAAe,GACfgB,IAA6B,GAGd,UAAX+C,IACA7D,IAAW,GACXb,SAAAA,IACJ,EAyJQmE,UAtJU,WACC,QAAnB3C,EAAAN,GAAYO,eAAO,IAAAD,GAAAA,EAAEE,QACrBf,IAAe,GACfgB,IAA6B,EAAM,EAoJ3BgD,eAAa,EACbC,OAAQ,EACRzE,UAAWA,EACX0E,oBAAkB,EAClBC,aAAc1E,EACd2E,SAAU1E,KAEE"}
1
+ {"version":3,"file":"input-select.js","sources":["../../src/input-select/input-select.tsx"],"sourcesContent":["import type { OpenChangeReason } from \"@floating-ui/react\";\nimport type React from \"react\";\nimport { useEffect, useRef, useState } from \"react\";\n\nimport {\n DropdownList,\n DropdownListState,\n ExpandableElement,\n} from \"../shared/dropdown-list\";\nimport { ElementWithDropdown } from \"../shared/dropdown-wrapper\";\nimport {\n LabelContainer,\n PlaceholderLabel,\n ValueLabel,\n} from \"../shared/dropdown-wrapper/dropdown-wrapper\";\nimport { InputBox } from \"../shared/input-wrapper/input-wrapper\";\nimport { useId } from \"../util\";\nimport { StringHelper } from \"../util/string-helper\";\nimport type { InputSelectProps } from \"./types\";\n\nexport const InputSelect = <T, V>({\n selectedOption,\n placeholder = \"Select\",\n options,\n disabled,\n error,\n className,\n \"data-testid\": testId,\n id,\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": ariaDescribedBy,\n \"aria-invalid\": ariaInvalid,\n enableSearch = false,\n searchFunction,\n searchPlaceholder,\n valueExtractor,\n valueToStringFunction,\n listExtractor,\n displayValueExtractor,\n onSelectOption,\n onShowOptions,\n onHideOptions,\n onRetry,\n optionsLoadState = \"success\",\n optionTruncationType = \"end\",\n renderCustomSelectedOption,\n renderListItem,\n hideNoResultsDisplay,\n noResultsDescription,\n customLabels,\n renderCustomCallToAction,\n onBlur,\n variant = \"default\",\n readOnly,\n alignment,\n dropdownZIndex,\n dropdownRootNode,\n dropdownWidth,\n}: InputSelectProps<T, V>): JSX.Element => {\n // =============================================================================\n // CONST, STATE\n // =============================================================================\n const [selected, setSelected] = useState<T | undefined>(selectedOption);\n const [showOptions, setShowOptions] = useState<boolean>(false);\n const [focused, setFocused] = useState<boolean>(false);\n const internalId = useId();\n\n const nodeRef = useRef<HTMLDivElement>(null);\n const selectorRef = useRef<HTMLButtonElement>(null);\n const labelContainerRef = useRef<HTMLDivElement>(null);\n\n // =============================================================================\n // EFFECTS\n // =============================================================================\n useEffect(() => {\n setSelected(selectedOption);\n }, [selectedOption]);\n\n // =============================================================================\n // EVENT HANDLERS\n // =============================================================================\n const handleListItemClick = (item: T, extractedValue: V) => {\n selectorRef.current?.focus();\n setSelected(item);\n setShowOptions(false);\n triggerOptionDisplayCallback(false);\n\n onSelectOption?.(item, extractedValue);\n };\n\n const handleListDismiss = () => {\n if (showOptions) {\n setShowOptions(false);\n triggerOptionDisplayCallback(false);\n }\n };\n\n const handleNodeFocus = () => {\n if (!focused && !showOptions) {\n setFocused(true);\n }\n };\n\n const handleNodeBlur = (e: React.FocusEvent) => {\n if (\n focused &&\n !showOptions &&\n nodeRef.current &&\n !nodeRef.current.contains(e.relatedTarget as Node)\n ) {\n setFocused(false);\n onBlur?.();\n }\n };\n\n const handleOpen = () => {\n setShowOptions(true);\n triggerOptionDisplayCallback(true);\n setFocused(true);\n };\n\n const handleClose = (reason: OpenChangeReason | undefined) => {\n setShowOptions(false);\n triggerOptionDisplayCallback(false);\n\n // click to toggle should not blur the input\n if (reason !== \"click\") {\n setFocused(false);\n onBlur?.();\n }\n };\n\n const handleDismiss = () => {\n selectorRef.current?.focus();\n setShowOptions(false);\n triggerOptionDisplayCallback(false);\n };\n\n // =============================================================================\n // HELPER FUNCTION\n // =============================================================================\n const getDisplayValue = (): string => {\n if (!selected) return \"\";\n\n if (displayValueExtractor) {\n return displayValueExtractor(selected);\n }\n\n if (valueExtractor) {\n const value = valueExtractor(selected);\n return valueToStringFunction\n ? valueToStringFunction(value)\n : value?.toString() ?? \"\";\n }\n\n return selected.toString();\n };\n\n const truncateValue = (value: string) => {\n if (optionTruncationType === \"middle\") {\n let widthOfElement = 0;\n if (labelContainerRef && labelContainerRef.current) {\n widthOfElement =\n labelContainerRef.current.getBoundingClientRect().width;\n }\n\n return StringHelper.truncateOneLine(value, widthOfElement, 120, 8);\n }\n return value;\n };\n\n const triggerOptionDisplayCallback = (show: boolean) => {\n if (show) {\n onShowOptions?.();\n } else {\n onHideOptions?.();\n }\n };\n\n // =============================================================================\n // RENDER FUNCTIONS\n // =============================================================================\n const renderLabel = () => {\n if (!selected) {\n return (\n <PlaceholderLabel\n variant={variant}\n truncateType={optionTruncationType}\n >\n {placeholder}\n </PlaceholderLabel>\n );\n } else if (renderCustomSelectedOption) {\n return renderCustomSelectedOption(selected);\n } else {\n return (\n <ValueLabel\n variant={variant}\n truncateType={optionTruncationType}\n >\n {truncateValue(getDisplayValue())}\n </ValueLabel>\n );\n }\n };\n\n const renderSelectorContent = () => (\n <LabelContainer ref={labelContainerRef} disabled={disabled}>\n {renderLabel()}\n </LabelContainer>\n );\n\n const renderElement = () => {\n return (\n <InputBox\n className={className}\n data-testid={testId}\n id={id}\n ref={nodeRef}\n tabIndex={-1}\n onFocus={handleNodeFocus}\n onBlur={handleNodeBlur}\n focused={focused}\n disabled={disabled}\n readOnly={readOnly}\n error={error}\n >\n <ExpandableElement\n ref={selectorRef}\n disabled={disabled}\n expanded={showOptions}\n listboxId={internalId}\n popupRole=\"listbox\"\n readOnly={readOnly}\n variant={variant}\n aria-labelledby={ariaLabelledBy}\n aria-describedby={ariaDescribedBy}\n aria-invalid={ariaInvalid}\n >\n {renderSelectorContent()}\n </ExpandableElement>\n </InputBox>\n );\n };\n\n const renderDropdown = () => {\n return (\n <DropdownList\n listboxId={internalId}\n listItems={options}\n onSelectItem={handleListItemClick}\n onDismiss={handleListDismiss}\n valueExtractor={valueExtractor}\n listExtractor={listExtractor}\n enableSearch={enableSearch}\n searchPlaceholder={searchPlaceholder}\n searchFunction={searchFunction}\n selectedItems={selected ? [selected] : []}\n onRetry={onRetry}\n itemsLoadState={optionsLoadState}\n itemTruncationType={optionTruncationType}\n renderListItem={renderListItem}\n hideNoResultsDisplay={hideNoResultsDisplay}\n noResultsDescription={noResultsDescription}\n customLabels={customLabels}\n renderCustomCallToAction={renderCustomCallToAction}\n variant={variant}\n width={dropdownWidth}\n matchElementWidth\n />\n );\n };\n\n return (\n <DropdownListState>\n <ElementWithDropdown\n enabled={!readOnly && !disabled}\n isOpen={showOptions}\n renderElement={renderElement}\n renderDropdown={renderDropdown}\n onOpen={handleOpen}\n onClose={handleClose}\n onDismiss={handleDismiss}\n clickToToggle\n offset={8}\n alignment={alignment}\n fitAvailableHeight\n customZIndex={dropdownZIndex}\n rootNode={dropdownRootNode}\n />\n </DropdownListState>\n );\n};\n"],"names":["InputSelect","selectedOption","placeholder","options","disabled","error","className","testId","id","ariaLabelledBy","ariaDescribedBy","ariaInvalid","enableSearch","searchFunction","searchPlaceholder","valueExtractor","valueToStringFunction","listExtractor","displayValueExtractor","onSelectOption","onShowOptions","onHideOptions","onRetry","optionsLoadState","optionTruncationType","renderCustomSelectedOption","renderListItem","hideNoResultsDisplay","noResultsDescription","customLabels","renderCustomCallToAction","onBlur","variant","readOnly","alignment","dropdownZIndex","dropdownRootNode","dropdownWidth","selected","setSelected","useState","showOptions","setShowOptions","focused","setFocused","internalId","useId","nodeRef","useRef","selectorRef","labelContainerRef","useEffect","handleListItemClick","item","extractedValue","_a","current","focus","triggerOptionDisplayCallback","handleListDismiss","handleNodeFocus","handleNodeBlur","e","contains","relatedTarget","getDisplayValue","value","toString","truncateValue","widthOfElement","getBoundingClientRect","width","StringHelper","truncateOneLine","show","_jsx","DropdownListState","children","ElementWithDropdown","enabled","isOpen","renderElement","InputBox","ref","tabIndex","onFocus","ExpandableElement","expanded","listboxId","popupRole","LabelContainer","ValueLabel","truncateType","PlaceholderLabel","renderDropdown","DropdownList","listItems","onSelectItem","onDismiss","selectedItems","itemsLoadState","itemTruncationType","matchElementWidth","onOpen","onClose","reason","clickToToggle","offset","fitAvailableHeight","customZIndex","rootNode"],"mappings":"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"}
@@ -46,7 +46,7 @@ export interface InputSelectProps<T, V> extends React.HTMLAttributes<HTMLElement
46
46
  */
47
47
  dropdownRootNode?: RefObject<HTMLElement> | undefined;
48
48
  /**
49
- * Custom width for the dropdown in pixels. When specified, the dropdown will use this
49
+ * Custom width for the dropdown. When specified, the dropdown will use this
50
50
  * width instead of matching the input element width.
51
51
  */
52
52
  dropdownWidth?: string | undefined;