@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-group-list-addon.js","sources":["../../../src/input-group/input-group-list-addon.tsx"],"sourcesContent":["import type { OpenChangeReason } from \"@floating-ui/react\";\nimport clsx from \"clsx\";\nimport React, { useEffect, useRef, useState } from \"react\";\n\nimport { Input } from \"../input\";\nimport { concatIds, VisuallyHidden } from \"../shared/accessibility\";\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\";\nimport { useId } from \"../util\";\nimport * as styles from \"./input-group-list-addon.styles\";\nimport type { InputGroupProps, ListAddon } from \"./types\";\n\nexport const Component = <T, V>(\n {\n addon,\n error,\n onChange,\n readOnly,\n disabled,\n className,\n onBlur,\n noBorder,\n \"data-testid\": testId,\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": ariaDescribedBy,\n \"aria-invalid\": ariaInvalid,\n \"aria-label\": textboxAriaLabel,\n ...otherProps\n }: InputGroupProps<T, V>,\n ref: React.Ref<HTMLInputElement>\n) => {\n const {\n /* display props */\n valueExtractor,\n listExtractor,\n /* search props */\n enableSearch,\n hideNoResultsDisplay,\n noResultsDescription,\n searchPlaceholder,\n searchFunction,\n onSearch,\n /* list addon props */\n placeholder = \"Select\",\n displayValueExtractor,\n \"data-selector-testid\": selectorTestId,\n options,\n selectedOption,\n onSelectOption,\n optionsLoadState,\n optionTruncationType,\n onRetry,\n onHideOptions,\n onShowOptions,\n dropdownZIndex,\n dropdownRootNode,\n \"aria-label\": comboboxAriaLabel,\n } = addon!.attributes as ListAddon<T, V>;\n\n const { position = \"left\" } = addon!;\n\n // =============================================================================\n // CONST, STATE, REF\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 const listboxId = `${internalId}-listbox`;\n const instructionId = `${internalId}-instruction`;\n const comboboxLabelId = `${internalId}-combobox-label`;\n const textboxLabelId = `${internalId}-textbox-label`;\n\n const nodeRef = useRef<HTMLDivElement>(null);\n const selectorRef = useRef<HTMLButtonElement>(null);\n\n // =============================================================================\n // EFFECTS\n // =============================================================================\n useEffect(() => {\n setSelected(selectedOption);\n }, [selectedOption]);\n\n // =============================================================================\n // HELPER FUNCTIONS\n // =============================================================================\n const getDisplayValue = () => {\n if (!selected) return;\n\n if (displayValueExtractor) {\n return displayValueExtractor(selected);\n }\n\n if (valueExtractor) {\n return valueExtractor(selected);\n }\n\n return selected.toString();\n };\n\n const triggerOptionDisplayCallback = (show: boolean) => {\n if (show) {\n onShowOptions?.();\n } else {\n onHideOptions?.();\n }\n };\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 handleInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (onChange) onChange(event);\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 // RENDER FUNCTIONS\n // =============================================================================\n const renderLabel = () => {\n if (selected) {\n return <ValueLabel>{getDisplayValue()}</ValueLabel>;\n }\n\n return <PlaceholderLabel>{placeholder}</PlaceholderLabel>;\n };\n\n const renderSelectorContent = () => (\n <LabelContainer disabled={disabled}>{renderLabel()}</LabelContainer>\n );\n\n const renderElement = () => {\n return (\n <div>\n <ExpandableElement\n ref={selectorRef}\n disabled={disabled}\n expanded={showOptions}\n listboxId={listboxId}\n popupRole=\"listbox\"\n readOnly={readOnly}\n aria-labelledby={concatIds(ariaLabelledBy, comboboxLabelId)}\n aria-describedby={concatIds(ariaDescribedBy, instructionId)}\n aria-invalid={ariaInvalid}\n data-position={position}\n className={clsx(\n noBorder && styles.expandableElementNoBorder\n )}\n >\n {renderSelectorContent()}\n </ExpandableElement>\n <VisuallyHidden id={instructionId}>\n Press space to open options\n </VisuallyHidden>\n </div>\n );\n };\n\n const renderDropdown = () => {\n return (\n <DropdownList\n listboxId={listboxId}\n listItems={options}\n onSelectItem={handleListItemClick}\n onDismiss={handleListDismiss}\n valueExtractor={valueExtractor}\n listExtractor={listExtractor}\n enableSearch={enableSearch}\n hideNoResultsDisplay={hideNoResultsDisplay}\n noResultsDescription={noResultsDescription}\n searchPlaceholder={searchPlaceholder}\n searchFunction={searchFunction}\n onSearch={onSearch}\n selectedItems={selected ? [selected] : []}\n itemsLoadState={optionsLoadState}\n itemTruncationType={optionTruncationType}\n onRetry={onRetry}\n matchElementWidth\n />\n );\n };\n\n const renderSelector = () => {\n if (readOnly) {\n return selected ? (\n <div\n data-testid=\"selector-label\"\n tabIndex={0}\n role=\"combobox\"\n aria-haspopup=\"listbox\"\n aria-readonly\n aria-expanded={false}\n aria-labelledby={ariaLabelledBy}\n aria-describedby={ariaDescribedBy}\n aria-invalid={ariaInvalid}\n className={styles.selectorReadOnly}\n >\n <ValueLabel>{getDisplayValue()}</ValueLabel>\n </div>\n ) : null;\n } else {\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={position === \"right\" ? \"right\" : \"left\"}\n fitAvailableHeight\n customZIndex={dropdownZIndex}\n rootNode={dropdownRootNode}\n positionRef={nodeRef}\n />\n );\n }\n };\n\n return (\n <DropdownListState>\n <InputBox\n focused={focused}\n disabled={disabled}\n readOnly={readOnly}\n error={error}\n ref={nodeRef}\n noBorder={noBorder}\n data-testid={testId}\n tabIndex={-1}\n onFocus={handleNodeFocus}\n onBlur={handleNodeBlur}\n data-position={position}\n className={clsx(styles.fieldWrapper, className)}\n >\n <VisuallyHidden aria-hidden id={comboboxLabelId}>\n {comboboxAriaLabel}\n </VisuallyHidden>\n <div\n data-testid={selectorTestId}\n className={styles.fieldSelector}\n >\n {renderSelector()}\n </div>\n <div\n data-position={position}\n className={clsx(\n styles.divider,\n readOnly && styles.dividerReadOnly\n )}\n />\n <VisuallyHidden aria-hidden id={textboxLabelId}>\n {textboxAriaLabel}\n </VisuallyHidden>\n <Input\n ref={ref}\n {...otherProps}\n readOnly={readOnly}\n disabled={disabled}\n error={error}\n onChange={handleInputChange}\n data-testid=\"input\"\n styleType=\"no-border\"\n aria-labelledby={concatIds(ariaLabelledBy, textboxLabelId)}\n aria-describedby={ariaDescribedBy}\n aria-invalid={ariaInvalid}\n data-position={position}\n className={clsx(\n readOnly && styles.fieldInputReadOnly,\n !readOnly && noBorder && styles.fieldInputNoBorder,\n !readOnly && !noBorder && styles.fieldInputPosition\n )}\n />\n </InputBox>\n </DropdownListState>\n );\n};\n\nexport const InputGroupListAddon = React.forwardRef(Component);\n"],"names":["Component","_a","ref","addon","error","onChange","readOnly","disabled","className","onBlur","noBorder","testId","ariaLabelledBy","ariaDescribedBy","ariaInvalid","textboxAriaLabel","otherProps","__rest","valueExtractor","listExtractor","enableSearch","hideNoResultsDisplay","noResultsDescription","searchPlaceholder","searchFunction","onSearch","placeholder","displayValueExtractor","selectorTestId","options","selectedOption","onSelectOption","optionsLoadState","optionTruncationType","onRetry","onHideOptions","onShowOptions","dropdownZIndex","dropdownRootNode","comboboxAriaLabel","attributes","position","selected","setSelected","useState","showOptions","setShowOptions","focused","setFocused","internalId","useId","listboxId","instructionId","comboboxLabelId","textboxLabelId","nodeRef","useRef","selectorRef","useEffect","getDisplayValue","toString","triggerOptionDisplayCallback","show","handleListItemClick","item","extractedValue","current","focus","handleListDismiss","handleOpen","handleClose","reason","handleDismiss","renderElement","_jsxs","children","_jsx","ExpandableElement","expanded","popupRole","concatIds","clsx","styles.expandableElementNoBorder","LabelContainer","ValueLabel","PlaceholderLabel","VisuallyHidden","id","renderDropdown","DropdownList","listItems","onSelectItem","onDismiss","selectedItems","itemsLoadState","itemTruncationType","matchElementWidth","DropdownListState","InputBox","tabIndex","onFocus","e","contains","relatedTarget","styles.fieldWrapper","styles.fieldSelector","role","styles.selectorReadOnly","ElementWithDropdown","enabled","isOpen","onOpen","onClose","clickToToggle","offset","alignment","fitAvailableHeight","customZIndex","rootNode","positionRef","styles.divider","styles.dividerReadOnly","Input","Object","assign","event","styleType","styles.fieldInputReadOnly","styles.fieldInputNoBorder","styles.fieldInputPosition","InputGroupListAddon","React","forwardRef"],"mappings":"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"}
1
+ {"version":3,"file":"input-group-list-addon.js","sources":["../../../src/input-group/input-group-list-addon.tsx"],"sourcesContent":["import type { OpenChangeReason } from \"@floating-ui/react\";\nimport clsx from \"clsx\";\nimport React, { useEffect, useRef, useState } from \"react\";\n\nimport { Input } from \"../input\";\nimport { concatIds, VisuallyHidden } from \"../shared/accessibility\";\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\";\nimport { useId } from \"../util\";\nimport * as styles from \"./input-group-list-addon.styles\";\nimport type { InputGroupProps, ListAddon } from \"./types\";\n\nexport const Component = <T, V>(\n {\n addon,\n error,\n onChange,\n readOnly,\n disabled,\n className,\n onBlur,\n noBorder,\n \"data-testid\": testId,\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": ariaDescribedBy,\n \"aria-invalid\": ariaInvalid,\n \"aria-label\": textboxAriaLabel,\n ...otherProps\n }: InputGroupProps<T, V>,\n ref: React.Ref<HTMLInputElement>\n) => {\n const {\n /* display props */\n valueExtractor,\n listExtractor,\n /* search props */\n enableSearch,\n hideNoResultsDisplay,\n noResultsDescription,\n searchPlaceholder,\n searchFunction,\n onSearch,\n /* list addon props */\n placeholder = \"Select\",\n displayValueExtractor,\n \"data-selector-testid\": selectorTestId,\n options,\n selectedOption,\n onSelectOption,\n optionsLoadState,\n optionTruncationType,\n onRetry,\n onHideOptions,\n onShowOptions,\n dropdownZIndex,\n dropdownRootNode,\n \"aria-label\": comboboxAriaLabel,\n } = addon!.attributes as ListAddon<T, V>;\n\n const { position = \"left\" } = addon!;\n\n // =============================================================================\n // CONST, STATE, REF\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 const listboxId = `${internalId}-listbox`;\n const instructionId = `${internalId}-instruction`;\n const comboboxLabelId = `${internalId}-combobox-label`;\n const textboxLabelId = `${internalId}-textbox-label`;\n\n const nodeRef = useRef<HTMLDivElement>(null);\n const selectorRef = useRef<HTMLButtonElement>(null);\n\n // =============================================================================\n // EFFECTS\n // =============================================================================\n useEffect(() => {\n setSelected(selectedOption);\n }, [selectedOption]);\n\n // =============================================================================\n // HELPER FUNCTIONS\n // =============================================================================\n const getDisplayValue = () => {\n if (!selected) return;\n\n if (displayValueExtractor) {\n return displayValueExtractor(selected);\n }\n\n if (valueExtractor) {\n return valueExtractor(selected);\n }\n\n return selected.toString();\n };\n\n const triggerOptionDisplayCallback = (show: boolean) => {\n if (show) {\n onShowOptions?.();\n } else {\n onHideOptions?.();\n }\n };\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 handleInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (onChange) onChange(event);\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 // RENDER FUNCTIONS\n // =============================================================================\n const renderLabel = () => {\n if (selected) {\n return <ValueLabel>{getDisplayValue()}</ValueLabel>;\n }\n\n return <PlaceholderLabel>{placeholder}</PlaceholderLabel>;\n };\n\n const renderSelectorContent = () => (\n <LabelContainer disabled={disabled}>{renderLabel()}</LabelContainer>\n );\n\n const renderElement = () => {\n return (\n <div>\n <ExpandableElement\n ref={selectorRef}\n disabled={disabled}\n expanded={showOptions}\n listboxId={listboxId}\n popupRole=\"listbox\"\n readOnly={readOnly}\n aria-labelledby={concatIds(ariaLabelledBy, comboboxLabelId)}\n aria-describedby={concatIds(ariaDescribedBy, instructionId)}\n aria-invalid={ariaInvalid}\n data-position={position}\n className={clsx(\n noBorder && styles.expandableElementNoBorder\n )}\n >\n {renderSelectorContent()}\n </ExpandableElement>\n <VisuallyHidden id={instructionId}>\n Press space to open options\n </VisuallyHidden>\n </div>\n );\n };\n\n const renderDropdown = () => {\n return (\n <DropdownList\n listboxId={listboxId}\n listItems={options}\n onSelectItem={handleListItemClick}\n onDismiss={handleListDismiss}\n valueExtractor={valueExtractor}\n listExtractor={listExtractor}\n enableSearch={enableSearch}\n hideNoResultsDisplay={hideNoResultsDisplay}\n noResultsDescription={noResultsDescription}\n searchPlaceholder={searchPlaceholder}\n searchFunction={searchFunction}\n onSearch={onSearch}\n selectedItems={selected ? [selected] : []}\n itemsLoadState={optionsLoadState}\n itemTruncationType={optionTruncationType}\n onRetry={onRetry}\n matchElementWidth\n />\n );\n };\n\n const renderSelector = () => {\n if (readOnly) {\n return selected ? (\n <div\n data-testid=\"selector-label\"\n tabIndex={0}\n role=\"combobox\"\n aria-haspopup=\"listbox\"\n aria-readonly\n aria-expanded={false}\n aria-labelledby={ariaLabelledBy}\n aria-describedby={ariaDescribedBy}\n aria-invalid={ariaInvalid}\n className={styles.selectorReadOnly}\n >\n <ValueLabel>{getDisplayValue()}</ValueLabel>\n </div>\n ) : null;\n } else {\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={position === \"right\" ? \"right\" : \"left\"}\n fitAvailableHeight\n customZIndex={dropdownZIndex}\n rootNode={dropdownRootNode}\n positionRef={nodeRef}\n />\n );\n }\n };\n\n return (\n <DropdownListState>\n <InputBox\n focused={focused}\n disabled={disabled}\n readOnly={readOnly}\n error={error}\n ref={nodeRef}\n noBorder={noBorder}\n data-testid={testId}\n tabIndex={-1}\n onFocus={handleNodeFocus}\n onBlur={handleNodeBlur}\n data-position={position}\n className={clsx(styles.fieldWrapper, className)}\n >\n <VisuallyHidden aria-hidden id={comboboxLabelId}>\n {comboboxAriaLabel}\n </VisuallyHidden>\n <div\n data-testid={selectorTestId}\n className={styles.fieldSelector}\n >\n {renderSelector()}\n </div>\n <div\n data-position={position}\n className={clsx(\n styles.divider,\n readOnly && styles.dividerReadOnly\n )}\n />\n <VisuallyHidden aria-hidden id={textboxLabelId}>\n {textboxAriaLabel}\n </VisuallyHidden>\n <div\n data-position={position}\n className={clsx(\n styles.fieldInput,\n noBorder && styles.fieldInputNoBorder,\n readOnly && styles.fieldInputReadOnly\n )}\n >\n <Input\n ref={ref}\n {...otherProps}\n readOnly={readOnly}\n disabled={disabled}\n error={error}\n onChange={handleInputChange}\n data-testid=\"input\"\n styleType=\"no-border\"\n aria-labelledby={concatIds(\n ariaLabelledBy,\n textboxLabelId\n )}\n aria-describedby={ariaDescribedBy}\n aria-invalid={ariaInvalid}\n />\n </div>\n </InputBox>\n </DropdownListState>\n );\n};\n\nexport const InputGroupListAddon = React.forwardRef(Component);\n"],"names":["Component","_a","ref","addon","error","onChange","readOnly","disabled","className","onBlur","noBorder","testId","ariaLabelledBy","ariaDescribedBy","ariaInvalid","textboxAriaLabel","otherProps","__rest","valueExtractor","listExtractor","enableSearch","hideNoResultsDisplay","noResultsDescription","searchPlaceholder","searchFunction","onSearch","placeholder","displayValueExtractor","selectorTestId","options","selectedOption","onSelectOption","optionsLoadState","optionTruncationType","onRetry","onHideOptions","onShowOptions","dropdownZIndex","dropdownRootNode","comboboxAriaLabel","attributes","position","selected","setSelected","useState","showOptions","setShowOptions","focused","setFocused","internalId","useId","listboxId","instructionId","comboboxLabelId","textboxLabelId","nodeRef","useRef","selectorRef","useEffect","getDisplayValue","toString","triggerOptionDisplayCallback","show","handleListItemClick","item","extractedValue","current","focus","handleListDismiss","handleOpen","handleClose","reason","handleDismiss","renderElement","_jsxs","children","_jsx","ExpandableElement","expanded","popupRole","concatIds","clsx","styles.expandableElementNoBorder","LabelContainer","ValueLabel","PlaceholderLabel","VisuallyHidden","id","renderDropdown","DropdownList","listItems","onSelectItem","onDismiss","selectedItems","itemsLoadState","itemTruncationType","matchElementWidth","DropdownListState","InputBox","tabIndex","onFocus","e","contains","relatedTarget","styles.fieldWrapper","styles.fieldSelector","role","styles.selectorReadOnly","ElementWithDropdown","enabled","isOpen","onOpen","onClose","clickToToggle","offset","alignment","fitAvailableHeight","customZIndex","rootNode","positionRef","styles.divider","styles.dividerReadOnly","styles.fieldInput","styles.fieldInputNoBorder","styles.fieldInputReadOnly","Input","Object","assign","event","styleType","InputGroupListAddon","React","forwardRef"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";require("./input-group-list-addon.styles_1my6j2v.css");exports.divider="d7gwol5",exports.dividerReadOnly="d181f48m",exports.expandableElementNoBorder="e135ws0j",exports.fieldInputNoBorder="f3g4d0l",exports.fieldInputPosition="fioonlm",exports.fieldInputReadOnly="f96umbl",exports.fieldSelector="faf95up",exports.fieldWrapper="fmhspm1",exports.selectorReadOnly="s1b40hsu";
1
+ "use strict";require("./input-group-list-addon.styles_17iuqtw.css");exports.divider="d7gwol5",exports.dividerReadOnly="d181f48m",exports.expandableElementNoBorder="e135ws0j",exports.fieldInput="f96umbl",exports.fieldInputNoBorder="f3g4d0l",exports.fieldInputReadOnly="fioonlm",exports.fieldSelector="faf95up",exports.fieldWrapper="fmhspm1",exports.selectorReadOnly="s1b40hsu";
2
2
  //# sourceMappingURL=input-group-list-addon.styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-group-list-addon.styles.js","sources":["../../../src/input-group/input-group-list-addon.styles.ts"],"sourcesContent":["import { css } from \"@linaria/core\";\n\nimport { Colour, Spacing } from \"../theme\";\n\n// =============================================================================\n// STYLING\n// =============================================================================\nexport const fieldWrapper = css`\n display: flex;\n align-items: center;\n\n &[data-position=\"right\"] {\n flex-direction: row-reverse;\n }\n`;\n\nexport const expandableElementNoBorder = css`\n &[data-position=\"right\"] {\n padding-right: 0;\n }\n\n &[data-position=\"left\"] {\n padding-left: 0;\n }\n`;\n\nexport const fieldSelector = css`\n flex: 0 0 auto;\n`;\n\nexport const fieldInputReadOnly = css`\n padding: 0;\n`;\n\nexport const fieldInputNoBorder = css`\n &[data-position=\"right\"] {\n padding-left: 0;\n }\n\n &[data-position=\"left\"] {\n padding-right: 0;\n }\n`;\n\nexport const fieldInputPosition = css`\n &[data-position=\"right\"] {\n padding-left: ${Spacing[\"spacing-16\"]};\n }\n\n &[data-position=\"left\"] {\n padding-right: ${Spacing[\"spacing-16\"]};\n }\n`;\n\nexport const selectorReadOnly = css`\n display: flex;\n align-items: center;\n padding: 0;\n background: transparent;\n margin-right: ${Spacing[\"spacing-12\"]};\n color: ${Colour[\"text\"]};\n`;\n\nexport const divider = css`\n width: 1px;\n background: ${Colour[\"border\"]};\n flex-shrink: 0;\n height: 1.25rem;\n\n &[data-position=\"right\"] {\n margin-left: ${Spacing[\"spacing-12\"]};\n }\n\n &[data-position=\"left\"] {\n margin-right: ${Spacing[\"spacing-12\"]};\n }\n`;\n\nexport const dividerReadOnly = css`\n display: none;\n`;\n"],"names":[],"mappings":"+GA+DoB,kCAeQ,6CA9DU,sCAkBP,qCAUA,qCAdA,gCAJL,+BAnBD,mCA+CI"}
1
+ {"version":3,"file":"input-group-list-addon.styles.js","sources":["../../../src/input-group/input-group-list-addon.styles.ts"],"sourcesContent":["import { css } from \"@linaria/core\";\n\nimport { Colour, Spacing } from \"../theme\";\n\n// =============================================================================\n// STYLING\n// =============================================================================\nexport const fieldWrapper = css`\n display: flex;\n align-items: center;\n\n &[data-position=\"right\"] {\n flex-direction: row-reverse;\n }\n`;\n\nexport const expandableElementNoBorder = css`\n &[data-position=\"right\"] {\n padding-right: 0;\n }\n\n &[data-position=\"left\"] {\n padding-left: 0;\n }\n`;\n\nexport const fieldSelector = css`\n flex: 0 0 auto;\n`;\n\nexport const fieldInput = css`\n width: 100%;\n\n &[data-position=\"right\"] {\n padding-left: ${Spacing[\"spacing-16\"]};\n }\n\n &[data-position=\"left\"] {\n padding-right: ${Spacing[\"spacing-16\"]};\n }\n`;\n\nexport const fieldInputNoBorder = css`\n &[data-position=\"right\"] {\n padding-left: 0;\n }\n\n &[data-position=\"left\"] {\n padding-right: 0;\n }\n`;\n\nexport const fieldInputReadOnly = css`\n padding: 0;\n`;\n\nexport const selectorReadOnly = css`\n display: flex;\n align-items: center;\n padding: 0;\n background: transparent;\n margin-right: ${Spacing[\"spacing-12\"]};\n color: ${Colour[\"text\"]};\n`;\n\nexport const divider = css`\n width: 1px;\n background: ${Colour[\"border\"]};\n flex-shrink: 0;\n height: 1.25rem;\n\n &[data-position=\"right\"] {\n margin-left: ${Spacing[\"spacing-12\"]};\n }\n\n &[data-position=\"left\"] {\n margin-right: ${Spacing[\"spacing-12\"]};\n }\n`;\n\nexport const dividerReadOnly = css`\n display: none;\n`;\n"],"names":[],"mappings":"+GAiEoB,kCAeQ,6CAhEU,8BAcf,qCAYQ,qCAUA,gCA1BL,+BAnBD,mCAiDI"}
@@ -1,9 +1,9 @@
1
1
  .fmhspm1{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}.fmhspm1[data-position="right"]{-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;}
2
2
  .e135ws0j[data-position="right"]{padding-right:0;}.e135ws0j[data-position="left"]{padding-left:0;}
3
3
  .faf95up{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;}
4
- .f96umbl{padding:0;}
4
+ .f96umbl{width:100%;}.f96umbl[data-position="right"]{padding-left:var(--fds-spacing-16);}.f96umbl[data-position="left"]{padding-right:var(--fds-spacing-16);}
5
5
  .f3g4d0l[data-position="right"]{padding-left:0;}.f3g4d0l[data-position="left"]{padding-right:0;}
6
- .fioonlm[data-position="right"]{padding-left:var(--fds-spacing-16);}.fioonlm[data-position="left"]{padding-right:var(--fds-spacing-16);}
6
+ .fioonlm{padding:0;}
7
7
  .s1b40hsu{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0;background:transparent;margin-right:var(--fds-spacing-12);color:var(--fds-colour-text);}
8
8
  .d7gwol5{width:1px;background:var(--fds-colour-border);-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;height:1.25rem;}.d7gwol5[data-position="right"]{margin-left:var(--fds-spacing-12);}.d7gwol5[data-position="left"]{margin-right:var(--fds-spacing-12);}
9
9
  .d181f48m{display:none;}
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("../_virtual/_tslib.js"),r=require("react/jsx-runtime"),a=require("clsx"),t=require("react"),d=require("../input/input.js"),i=require("../shared/accessibility/index.js"),s=require("../shared/input-wrapper/input-wrapper.js");require("../util/calendar-helper.js"),require("../external/dayjs/dayjs.min.js");var n=require("../util/simple-id-generator.js");require("../util/string-helper.js"),require("@react-aria/live-announcer");var l=require("./input-group.styles.js"),o=require("./input-group-list-addon.js");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var p=u(a);const c=u(t).default.forwardRef(((a,t)=>{var{addon:u,error:c,className:b,noBorder:y,"aria-label":j,"aria-labelledby":f}=a,h=e.__rest(a,["addon","error","className","noBorder","aria-label","aria-labelledby"]);const q=n.useId(),x=`${q}-addon`,m=`${q}-ariaLabelId`,v=()=>r.jsx(s.InputBox,{disabled:h.disabled,error:c,readOnly:h.readOnly,noBorder:y,"data-testid":h["data-testid"],className:p.default(l.noAddonWrapper,b),"data-read-only":h.readOnly,"data-no-border":y,children:r.jsx(d.Input,Object.assign({ref:t},h,{"data-testid":"input",styleType:"no-border"}))}),O=(e,a,n)=>r.jsxs(s.InputBox,{disabled:h.disabled,error:c,readOnly:h.readOnly,noBorder:y,"data-testid":h["data-testid"],className:p.default(l.addonWrapper,b),"data-read-only":h.readOnly,"data-no-border":y,"data-position":a,children:[r.jsx("div",{"data-testid":"addon",id:x,className:l.labelAddonContainer,"data-disabled":h.disabled,"data-read-only":h.readOnly,"data-position":a,children:e}),r.jsx(i.VisuallyHidden,{"aria-hidden":!0,id:m,children:j}),r.jsx(d.Input,Object.assign({ref:t},h,{"aria-labelledby":i.concatIds(m,f,x),allowClear:n&&"right"!==a,error:c,"data-testid":"input",styleType:"no-border"}))]});if(!u)return v();{const{type:e="label",position:a="left"}=u,{allowClear:d}=h;switch(e){case"list":{const e=u.attributes;return e.options&&e.options.length>0?r.jsx(o.InputGroupListAddon,Object.assign({ref:t,addon:u,error:c,className:b,noBorder:y,"aria-label":j,"aria-labelledby":f},h)):v()}case"custom":{const e=u.attributes;return e.children?O(e.children,a,d):v()}default:{const e=u.attributes;return e.value?O(e.value,a,d):v()}}}}));exports.InputGroup=c;
1
+ "use strict";var e=require("../_virtual/_tslib.js"),r=require("react/jsx-runtime"),a=require("clsx"),d=require("react"),t=require("../input/input.js"),i=require("../shared/accessibility/index.js"),s=require("../shared/input-wrapper/input-wrapper.js");require("../util/calendar-helper.js"),require("../external/dayjs/dayjs.min.js");var l=require("../util/simple-id-generator.js");require("../util/string-helper.js"),require("@react-aria/live-announcer");var n=require("./input-group.styles.js"),o=require("./input-group-list-addon.js");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=u(a);const p=u(d).default.forwardRef(((a,d)=>{var{addon:u,error:p,className:b,noBorder:y,"aria-label":j,"aria-labelledby":h}=a,f=e.__rest(a,["addon","error","className","noBorder","aria-label","aria-labelledby"]);const x=l.useId(),q=`${x}-addon`,m=`${x}-ariaLabelId`,v=()=>r.jsxs(s.InputBox,{disabled:f.disabled,error:p,readOnly:f.readOnly,noBorder:y,"data-testid":f["data-testid"],className:c.default(n.noAddonWrapper,b),"data-read-only":f.readOnly,"data-no-border":y,children:[r.jsx(i.VisuallyHidden,{"aria-hidden":!0,id:m,children:j}),r.jsx(t.Input,Object.assign({ref:d},f,{"data-testid":"input",styleType:"no-border","aria-labelledby":i.concatIds(m,h)}))]}),I=(e,a,l)=>r.jsxs(s.InputBox,{disabled:f.disabled,error:p,readOnly:f.readOnly,noBorder:y,"data-testid":f["data-testid"],className:c.default(n.addonWrapper,b),"data-read-only":f.readOnly,"data-no-border":y,"data-position":a,children:[r.jsx("div",{"data-testid":"addon",id:q,className:n.labelAddonContainer,"data-disabled":f.disabled,"data-read-only":f.readOnly,"data-position":a,children:e}),r.jsx(i.VisuallyHidden,{"aria-hidden":!0,id:m,children:j}),r.jsx(t.Input,Object.assign({ref:d},f,{"aria-labelledby":i.concatIds(m,h,q),allowClear:l&&"right"!==a,error:p,"data-testid":"input",styleType:"no-border"}))]});if(!u)return v();{const{type:e="label",position:a="left"}=u,{allowClear:t}=f;switch(e){case"list":{const e=u.attributes;return e.options&&e.options.length>0?r.jsx(o.InputGroupListAddon,Object.assign({ref:d,addon:u,error:p,className:b,noBorder:y,"aria-label":j,"aria-labelledby":h},f)):v()}case"custom":{const e=u.attributes;return e.children?I(e.children,a,t):v()}default:{const e=u.attributes;return e.value?I(e.value,a,t):v()}}}}));exports.InputGroup=p;
2
2
  //# sourceMappingURL=input-group.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-group.js","sources":["../../../src/input-group/input-group.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React from \"react\";\n\nimport { Input } from \"../input\";\nimport { concatIds, VisuallyHidden } from \"../shared/accessibility\";\nimport { InputBox } from \"../shared/input-wrapper\";\nimport { useId } from \"../util\";\nimport * as styles from \"./input-group.styles\";\nimport { InputGroupListAddon } from \"./input-group-list-addon\";\nimport type {\n CustomAddon,\n InputGroupProps,\n LabelAddon,\n ListAddon,\n} from \"./types\";\n\nconst Component = <T, V>(\n {\n addon,\n error,\n className,\n noBorder,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n ...otherProps\n }: InputGroupProps<T, V>,\n ref: React.Ref<HTMLInputElement>\n) => {\n // =============================================================================\n // CONST, STATE, REF\n // =============================================================================\n const internalId = useId();\n const addonId = `${internalId}-addon`;\n const ariaLabelId = `${internalId}-ariaLabelId`;\n\n // =============================================================================\n // RENDER FUNCTIONS\n // =============================================================================\n const renderNoAddons = () => (\n <InputBox\n disabled={otherProps.disabled}\n error={error}\n readOnly={otherProps.readOnly}\n noBorder={noBorder}\n data-testid={otherProps[\"data-testid\"]}\n className={clsx(styles.noAddonWrapper, className)}\n data-read-only={otherProps.readOnly}\n data-no-border={noBorder}\n >\n <Input\n ref={ref}\n {...otherProps}\n data-testid=\"input\"\n styleType=\"no-border\"\n />\n </InputBox>\n );\n\n const renderWithAddon = (\n addonContent: React.ReactNode,\n position: \"left\" | \"right\",\n allowClear?: boolean\n ) => (\n <InputBox\n disabled={otherProps.disabled}\n error={error}\n readOnly={otherProps.readOnly}\n noBorder={noBorder}\n data-testid={otherProps[\"data-testid\"]}\n className={clsx(styles.addonWrapper, className)}\n data-read-only={otherProps.readOnly}\n data-no-border={noBorder}\n data-position={position}\n >\n <div\n data-testid=\"addon\"\n id={addonId}\n className={styles.labelAddonContainer}\n data-disabled={otherProps.disabled}\n data-read-only={otherProps.readOnly}\n data-position={position}\n >\n {addonContent}\n </div>\n <VisuallyHidden aria-hidden id={ariaLabelId}>\n {ariaLabel}\n </VisuallyHidden>\n <Input\n ref={ref}\n {...otherProps}\n aria-labelledby={concatIds(\n ariaLabelId,\n ariaLabelledBy,\n addonId\n )}\n allowClear={allowClear && position !== \"right\"}\n error={error}\n data-testid=\"input\"\n styleType=\"no-border\"\n />\n </InputBox>\n );\n\n if (addon) {\n const { type = \"label\", position = \"left\" } = addon;\n const { allowClear } = otherProps;\n\n switch (type) {\n case \"list\": {\n const listAddon = addon.attributes as ListAddon<T, V>;\n if (listAddon.options && listAddon.options.length > 0) {\n return (\n <InputGroupListAddon\n ref={ref}\n addon={addon}\n error={error}\n className={className}\n noBorder={noBorder}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n {...otherProps}\n />\n );\n } else {\n return renderNoAddons();\n }\n }\n\n case \"custom\": {\n const customAddon = addon.attributes as CustomAddon;\n if (customAddon.children) {\n return renderWithAddon(\n customAddon.children,\n position,\n allowClear\n );\n } else {\n return renderNoAddons();\n }\n }\n default: {\n const labelAddon = addon.attributes as LabelAddon;\n if (labelAddon.value) {\n return renderWithAddon(\n labelAddon.value,\n position,\n allowClear\n );\n } else {\n return renderNoAddons();\n }\n }\n }\n } else {\n return renderNoAddons();\n }\n};\n\nexport const InputGroup = React.forwardRef(Component);\n"],"names":["InputGroup","React","forwardRef","_a","ref","addon","error","className","noBorder","ariaLabel","ariaLabelledBy","otherProps","__rest","internalId","useId","addonId","ariaLabelId","renderNoAddons","_jsx","InputBox","disabled","readOnly","clsx","styles.noAddonWrapper","children","Input","Object","assign","styleType","renderWithAddon","addonContent","position","allowClear","_jsxs","styles.addonWrapper","id","styles.labelAddonContainer","VisuallyHidden","concatIds","type","listAddon","attributes","options","length","InputGroupListAddon","customAddon","labelAddon","value"],"mappings":"0mBAgBA,MA8IaA,OAAaC,QAAMC,YA9Id,CACdC,EASAC,SATAC,MACIA,EAAKC,MACLA,EAAKC,UACLA,EAASC,SACTA,EACA,aAAcC,EACd,kBAAmBC,GAAcP,EAC9BQ,EAAUC,EAAAA,OAAAT,EAPjB,yEAcA,MAAMU,EAAaC,EAAAA,QACbC,EAAU,GAAGF,UACbG,EAAc,GAAGH,gBAKjBI,EAAiB,IACnBC,EAAAA,IAACC,WAAQ,CACLC,SAAUT,EAAWS,SACrBd,MAAOA,EACPe,SAAUV,EAAWU,SACrBb,SAAUA,EAAQ,cACLG,EAAW,eACxBJ,UAAWe,EAAAA,QAAKC,iBAAuBhB,GAAU,iBACjCI,EAAWU,SAAQ,iBACnBb,EAAQgB,SAExBN,EAAAA,IAACO,QAAKC,OAAAC,OAAA,CACFvB,IAAKA,GACDO,EAAU,CAAA,cACF,QACZiB,UAAU,iBAKhBC,EAAkB,CACpBC,EACAC,EACAC,IAEAC,EAAAA,KAACd,EAAAA,SAAQ,CACLC,SAAUT,EAAWS,SACrBd,MAAOA,EACPe,SAAUV,EAAWU,SACrBb,SAAUA,EAAQ,cACLG,EAAW,eACxBJ,UAAWe,EAAAA,QAAKY,EAAAA,aAAqB3B,GAAU,iBAC/BI,EAAWU,SAAQ,iBACnBb,EAAQ,gBACTuB,EAAQP,SAAA,CAEvBN,MAAA,MAAA,CAAA,cACgB,QACZiB,GAAIpB,EACJR,UAAW6B,sBAA0B,gBACtBzB,EAAWS,SAAQ,iBAClBT,EAAWU,SAAQ,gBACpBU,EAAQP,SAEtBM,IAELZ,EAAAA,IAACmB,iBAAc,CAAA,eAAA,EAAaF,GAAInB,EAAWQ,SACtCf,IAELS,MAACO,EAAAA,qBACGrB,IAAKA,GACDO,EAAU,CAAA,kBACG2B,EAAAA,UACbtB,EACAN,EACAK,GAEJiB,WAAYA,GAA2B,UAAbD,EAC1BzB,MAAOA,EAAK,cACA,QACZsB,UAAU,kBAKtB,IAAIvB,EAmDA,OAAOY,IAnDA,CACP,MAAMsB,KAAEA,EAAO,QAAOR,SAAEA,EAAW,QAAW1B,GACxC2B,WAAEA,GAAerB,EAEvB,OAAQ4B,GACJ,IAAK,OAAQ,CACT,MAAMC,EAAYnC,EAAMoC,WACxB,OAAID,EAAUE,SAAWF,EAAUE,QAAQC,OAAS,EAE5CzB,EAAAA,IAAC0B,sBAAmBlB,OAAAC,OAAA,CAChBvB,IAAKA,EACLC,MAAOA,EACPC,MAAOA,EACPC,UAAWA,EACXC,SAAUA,EAAQ,aACNC,EAAS,kBACJC,GACbC,IAILM,GAEf,CAEA,IAAK,SAAU,CACX,MAAM4B,EAAcxC,EAAMoC,WAC1B,OAAII,EAAYrB,SACLK,EACHgB,EAAYrB,SACZO,EACAC,GAGGf,GAEf,CACA,QAAS,CACL,MAAM6B,EAAazC,EAAMoC,WACzB,OAAIK,EAAWC,MACJlB,EACHiB,EAAWC,MACXhB,EACAC,GAGGf,GAEf,EAER,CAEA"}
1
+ {"version":3,"file":"input-group.js","sources":["../../../src/input-group/input-group.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React from \"react\";\n\nimport { Input } from \"../input\";\nimport { concatIds, VisuallyHidden } from \"../shared/accessibility\";\nimport { InputBox } from \"../shared/input-wrapper\";\nimport { useId } from \"../util\";\nimport * as styles from \"./input-group.styles\";\nimport { InputGroupListAddon } from \"./input-group-list-addon\";\nimport type {\n CustomAddon,\n InputGroupProps,\n LabelAddon,\n ListAddon,\n} from \"./types\";\n\nconst Component = <T, V>(\n {\n addon,\n error,\n className,\n noBorder,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n ...otherProps\n }: InputGroupProps<T, V>,\n ref: React.Ref<HTMLInputElement>\n) => {\n // =============================================================================\n // CONST, STATE, REF\n // =============================================================================\n const internalId = useId();\n const addonId = `${internalId}-addon`;\n const ariaLabelId = `${internalId}-ariaLabelId`;\n\n // =============================================================================\n // RENDER FUNCTIONS\n // =============================================================================\n const renderNoAddons = () => (\n <InputBox\n disabled={otherProps.disabled}\n error={error}\n readOnly={otherProps.readOnly}\n noBorder={noBorder}\n data-testid={otherProps[\"data-testid\"]}\n className={clsx(styles.noAddonWrapper, className)}\n data-read-only={otherProps.readOnly}\n data-no-border={noBorder}\n >\n <VisuallyHidden aria-hidden id={ariaLabelId}>\n {ariaLabel}\n </VisuallyHidden>\n <Input\n ref={ref}\n {...otherProps}\n data-testid=\"input\"\n styleType=\"no-border\"\n aria-labelledby={concatIds(ariaLabelId, ariaLabelledBy)}\n />\n </InputBox>\n );\n\n const renderWithAddon = (\n addonContent: React.ReactNode,\n position: \"left\" | \"right\",\n allowClear?: boolean\n ) => (\n <InputBox\n disabled={otherProps.disabled}\n error={error}\n readOnly={otherProps.readOnly}\n noBorder={noBorder}\n data-testid={otherProps[\"data-testid\"]}\n className={clsx(styles.addonWrapper, className)}\n data-read-only={otherProps.readOnly}\n data-no-border={noBorder}\n data-position={position}\n >\n <div\n data-testid=\"addon\"\n id={addonId}\n className={styles.labelAddonContainer}\n data-disabled={otherProps.disabled}\n data-read-only={otherProps.readOnly}\n data-position={position}\n >\n {addonContent}\n </div>\n <VisuallyHidden aria-hidden id={ariaLabelId}>\n {ariaLabel}\n </VisuallyHidden>\n <Input\n ref={ref}\n {...otherProps}\n aria-labelledby={concatIds(\n ariaLabelId,\n ariaLabelledBy,\n addonId\n )}\n allowClear={allowClear && position !== \"right\"}\n error={error}\n data-testid=\"input\"\n styleType=\"no-border\"\n />\n </InputBox>\n );\n\n if (addon) {\n const { type = \"label\", position = \"left\" } = addon;\n const { allowClear } = otherProps;\n\n switch (type) {\n case \"list\": {\n const listAddon = addon.attributes as ListAddon<T, V>;\n if (listAddon.options && listAddon.options.length > 0) {\n return (\n <InputGroupListAddon\n ref={ref}\n addon={addon}\n error={error}\n className={className}\n noBorder={noBorder}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n {...otherProps}\n />\n );\n } else {\n return renderNoAddons();\n }\n }\n\n case \"custom\": {\n const customAddon = addon.attributes as CustomAddon;\n if (customAddon.children) {\n return renderWithAddon(\n customAddon.children,\n position,\n allowClear\n );\n } else {\n return renderNoAddons();\n }\n }\n default: {\n const labelAddon = addon.attributes as LabelAddon;\n if (labelAddon.value) {\n return renderWithAddon(\n labelAddon.value,\n position,\n allowClear\n );\n } else {\n return renderNoAddons();\n }\n }\n }\n } else {\n return renderNoAddons();\n }\n};\n\nexport const InputGroup = React.forwardRef(Component);\n"],"names":["InputGroup","React","forwardRef","_a","ref","addon","error","className","noBorder","ariaLabel","ariaLabelledBy","otherProps","__rest","internalId","useId","addonId","ariaLabelId","renderNoAddons","_jsxs","InputBox","disabled","readOnly","clsx","styles.noAddonWrapper","_jsx","VisuallyHidden","id","children","Input","Object","assign","styleType","concatIds","renderWithAddon","addonContent","position","allowClear","styles.addonWrapper","styles.labelAddonContainer","type","listAddon","attributes","options","length","InputGroupListAddon","customAddon","labelAddon","value"],"mappings":"0mBAgBA,MAkJaA,OAAaC,QAAMC,YAlJd,CACdC,EASAC,SATAC,MACIA,EAAKC,MACLA,EAAKC,UACLA,EAASC,SACTA,EACA,aAAcC,EACd,kBAAmBC,GAAcP,EAC9BQ,EAAUC,EAAAA,OAAAT,EAPjB,yEAcA,MAAMU,EAAaC,EAAAA,QACbC,EAAU,GAAGF,UACbG,EAAc,GAAGH,gBAKjBI,EAAiB,IACnBC,EAAAA,KAACC,EAAAA,SAAQ,CACLC,SAAUT,EAAWS,SACrBd,MAAOA,EACPe,SAAUV,EAAWU,SACrBb,SAAUA,gBACGG,EAAW,eACxBJ,UAAWe,EAAAA,QAAKC,EAAAA,eAAuBhB,oBACvBI,EAAWU,SAAQ,iBACnBb,YAEhBgB,MAACC,EAAAA,eAAc,CAAA,eAAA,EAAaC,GAAIV,EAAWW,SACtClB,IAELe,EAAAA,IAACI,EAAAA,MAAKC,OAAAC,OAAA,CACF1B,IAAKA,GACDO,iBACQ,QACZoB,UAAU,8BACOC,EAAAA,UAAUhB,EAAaN,SAK9CuB,EAAkB,CACpBC,EACAC,EACAC,IAEAlB,EAAAA,KAACC,EAAAA,SAAQ,CACLC,SAAUT,EAAWS,SACrBd,MAAOA,EACPe,SAAUV,EAAWU,SACrBb,SAAUA,EAAQ,cACLG,EAAW,eACxBJ,UAAWe,EAAAA,QAAKe,EAAAA,aAAqB9B,GAAU,iBAC/BI,EAAWU,SAAQ,iBACnBb,EAAQ,gBACT2B,EAAQR,SAAA,CAEvBH,MAAA,MAAA,CAAA,cACgB,QACZE,GAAIX,EACJR,UAAW+B,sBAA0B,gBACtB3B,EAAWS,SAAQ,iBAClBT,EAAWU,SAAQ,gBACpBc,EAAQR,SAEtBO,IAELV,EAAAA,IAACC,iBAAc,CAAA,eAAA,EAAaC,GAAIV,EAAWW,SACtClB,IAELe,MAACI,EAAAA,qBACGxB,IAAKA,GACDO,EAAU,CAAA,kBACGqB,EAAAA,UACbhB,EACAN,EACAK,GAEJqB,WAAYA,GAA2B,UAAbD,EAC1B7B,MAAOA,EAAK,cACA,QACZyB,UAAU,kBAKtB,IAAI1B,EAmDA,OAAOY,IAnDA,CACP,MAAMsB,KAAEA,EAAO,QAAOJ,SAAEA,EAAW,QAAW9B,GACxC+B,WAAEA,GAAezB,EAEvB,OAAQ4B,GACJ,IAAK,OAAQ,CACT,MAAMC,EAAYnC,EAAMoC,WACxB,OAAID,EAAUE,SAAWF,EAAUE,QAAQC,OAAS,EAE5CnB,EAAAA,IAACoB,sBAAmBf,OAAAC,OAAA,CAChB1B,IAAKA,EACLC,MAAOA,EACPC,MAAOA,EACPC,UAAWA,EACXC,SAAUA,EAAQ,aACNC,EAAS,kBACJC,GACbC,IAILM,GAEf,CAEA,IAAK,SAAU,CACX,MAAM4B,EAAcxC,EAAMoC,WAC1B,OAAII,EAAYlB,SACLM,EACHY,EAAYlB,SACZQ,EACAC,GAGGnB,GAEf,CACA,QAAS,CACL,MAAM6B,EAAazC,EAAMoC,WACzB,OAAIK,EAAWC,MACJd,EACHa,EAAWC,MACXZ,EACAC,GAGGnB,GAEf,EAER,CAEA"}
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("../external/lodash/findIndex.js"),t=require("react");require("clsx"),require("../theme/theme-provider/index.js"),require("../theme/theme-provider/context.js"),require("../theme/tokens/border.js"),require("../theme/tokens/colour.js"),require("../theme/tokens/font.js"),require("../theme/tokens/media-query.js"),require("../util/calendar-helper.js"),require("../external/dayjs/dayjs.min.js");var s=require("../util/simple-id-generator.js");require("../util/string-helper.js"),require("@react-aria/live-announcer"),require("../shared/dropdown-list/dropdown-label.styles_1dwmd8f.css");var i=require("../shared/dropdown-list/dropdown-list.js"),a=require("../shared/dropdown-list/dropdown-list-state.js"),l=require("../shared/dropdown-list/expandable-element.js");require("@lifesg/react-icons/caret-right"),require("@lifesg/react-icons/exclamation-circle-fill"),require("@lifesg/react-icons/minus-square-fill"),require("@lifesg/react-icons/square"),require("@lifesg/react-icons/square-tick-fill"),require("@lifesg/react-icons/tick"),require("react-virtuoso"),require("../markup/markup.js"),require("../_virtual/_tslib.js"),require("../shared/component-loading-spinner/component-loading-spinner.styles_15eq02i.css");var n=require("../shared/dropdown-wrapper/element-with-dropdown.js"),o=require("../shared/input-wrapper/input-wrapper.js");require("../shared/dropdown-list/dropdown-list.styles_1qveyb9.css"),require("../shared/dropdown-list/dropdown-search.js"),require("../shared/dropdown-list/nested-dropdown-list.styles_wdhxoe.css"),require("immer"),require("../external/lodash/_getTag.js"),require("../external/lodash/isArguments.js"),require("../external/lodash/_baseGetTag.js"),require("../external/lodash/isBuffer.js"),require("../external/lodash/isTypedArray.js"),require("../external/lodash/_Stack.js"),require("../external/lodash/_SetCache.js"),require("../external/lodash/_equalByTag.js"),require("../shared/dropdown-list/virtuoso-components.js");var d=require("../shared/dropdown-wrapper/dropdown-wrapper.js");exports.InputMultiSelect=({selectedOptions:u,placeholder:c="Select",options:p,disabled:h,error:m,className:q,"data-testid":x,id:j,"aria-labelledby":b,"aria-describedby":w,"aria-invalid":f,enableSearch:g=!1,searchFunction:y,searchPlaceholder:v,valueExtractor:_,listExtractor:S,onSelectOptions:T,onShowOptions:I,onHideOptions:A,onRetry:L,optionsLoadState:k="success",optionTruncationType:C="end",renderListItem:D,hideNoResultsDisplay:E,noResultsDescription:R,customLabels:O,renderCustomCallToAction:P,onBlur:H,variant:N="default",readOnly:B,alignment:G,dropdownZIndex:M,maxSelectable:F,dropdownRootNode:W,dropdownWidth:Z})=>{const{allSelectedLabel:V,multiSelectedLabel:$}=O||{},[z,J]=t.useState(u||[]),[K,Q]=t.useState(!1),[U,X]=t.useState(!1),Y=s.useId(),ee=t.useRef(null),re=t.useRef(null);t.useEffect((()=>{J(u||[])}),[u]);const te=()=>{z&&z.length>0||F?(J([]),oe([])):(J(p),oe(p))},se=(e,t)=>{const s=[...z],i=r.default(z,(e=>(_?_(e):e)===t));i>-1?s.splice(i,1):s.push(e),J(s),oe(s)},ie=()=>{K&&(Q(!1),ne(!1))},ae=()=>{U||K||X(!0)},le=e=>{U&&!K&&ee.current&&!ee.current.contains(e.relatedTarget)&&(X(!1),null==H||H())},ne=e=>{!e&&A&&A(),e&&I&&I()},oe=e=>{T&&T(e)};return e.jsx(a.DropdownListState,{children:e.jsx(n.ElementWithDropdown,{enabled:!B&&!h,isOpen:K,renderElement:()=>e.jsx(o.InputBox,{className:q,"data-testid":x,id:j,ref:ee,tabIndex:-1,onFocus:ae,onBlur:le,focused:U,disabled:h,readOnly:B,error:m,children:e.jsx(l.ExpandableElement,{ref:re,disabled:h,expanded:K,listboxId:Y,popupRole:"listbox",readOnly:B,variant:N,"aria-labelledby":b,"aria-describedby":w,"aria-invalid":f,children:e.jsx(d.LabelContainer,{disabled:h,children:z&&0!==z.length?e.jsx(d.ValueLabel,{variant:N,truncateType:C,children:p&&z.length===p.length?V||"All selected":$||`${z.length} selected`}):e.jsx(d.PlaceholderLabel,{variant:N,truncateType:C,children:c})})})}),renderDropdown:()=>e.jsx(i.DropdownList,{listboxId:Y,listItems:p,onSelectItem:se,onDismiss:ie,valueExtractor:_,listExtractor:S,enableSearch:g,searchFunction:y,searchPlaceholder:v,multiSelect:!0,maxSelectable:F,selectedItems:z,onSelectAll:te,onRetry:L,itemsLoadState:k,itemTruncationType:C,renderListItem:D,hideNoResultsDisplay:E,noResultsDescription:R,customLabels:O,renderCustomCallToAction:P,variant:N,width:Z,matchElementWidth:!0}),onOpen:()=>{Q(!0),ne(!0),X(!0)},onClose:e=>{Q(!1),ne(!1),"click"!==e&&(X(!1),null==H||H())},onDismiss:()=>{var e;null===(e=re.current)||void 0===e||e.focus(),Q(!1),ne(!1)},clickToToggle:!0,offset:8,alignment:G,fitAvailableHeight:!0,customZIndex:M,rootNode:W})})};
1
+ "use strict";var e=require("react/jsx-runtime"),r=require("../external/lodash/findIndex.js"),t=require("react");require("clsx"),require("../theme/theme-provider/index.js"),require("../theme/theme-provider/context.js"),require("../theme/tokens/border.js"),require("../theme/tokens/colour.js"),require("../theme/tokens/font.js"),require("../theme/tokens/media-query.js"),require("../util/calendar-helper.js"),require("../external/dayjs/dayjs.min.js");var s=require("../util/simple-id-generator.js");require("../util/string-helper.js"),require("@react-aria/live-announcer"),require("../theme/utils/use-media-query.js"),require("../shared/dropdown-list/dropdown-label.styles_1dwmd8f.css");var i=require("../shared/dropdown-list/dropdown-list.js"),a=require("../shared/dropdown-list/dropdown-list-state.js"),l=require("../shared/dropdown-list/expandable-element.js");require("@lifesg/react-icons/caret-right"),require("@lifesg/react-icons/exclamation-circle-fill"),require("@lifesg/react-icons/minus-square-fill"),require("@lifesg/react-icons/square"),require("@lifesg/react-icons/square-tick-fill"),require("@lifesg/react-icons/tick"),require("react-virtuoso"),require("../markup/markup.js"),require("../_virtual/_tslib.js"),require("../shared/component-loading-spinner/component-loading-spinner.styles_15eq02i.css");var n=require("../shared/dropdown-wrapper/element-with-dropdown.js"),o=require("../shared/input-wrapper/input-wrapper.js");require("../shared/dropdown-list/dropdown-list.styles_1kt4zhf.css"),require("../shared/dropdown-list/dropdown-search.js"),require("../shared/dropdown-list/nested-dropdown-list.styles_wdhxoe.css"),require("immer"),require("../external/lodash/_getTag.js"),require("../external/lodash/isArguments.js"),require("../external/lodash/_baseGetTag.js"),require("../external/lodash/isBuffer.js"),require("../external/lodash/isTypedArray.js"),require("../external/lodash/_Stack.js"),require("../external/lodash/_SetCache.js"),require("../external/lodash/_equalByTag.js"),require("../shared/dropdown-list/virtuoso-components.js");var d=require("../shared/dropdown-wrapper/dropdown-wrapper.js");exports.InputMultiSelect=({selectedOptions:u,placeholder:c="Select",options:p,disabled:h,error:m,className:q,"data-testid":x,id:j,"aria-labelledby":b,"aria-describedby":w,"aria-invalid":f,enableSearch:g=!1,searchFunction:y,searchPlaceholder:v,valueExtractor:_,listExtractor:S,onSelectOptions:T,onShowOptions:I,onHideOptions:A,onRetry:L,optionsLoadState:k="success",optionTruncationType:C="end",renderListItem:D,hideNoResultsDisplay:E,noResultsDescription:R,customLabels:O,renderCustomCallToAction:P,onBlur:H,variant:N="default",readOnly:B,alignment:G,dropdownZIndex:M,maxSelectable:F,dropdownRootNode:W,dropdownWidth:Z})=>{const{allSelectedLabel:z,multiSelectedLabel:V}=O||{},[$,J]=t.useState(u||[]),[K,Q]=t.useState(!1),[U,X]=t.useState(!1),Y=s.useId(),ee=t.useRef(null),re=t.useRef(null);t.useEffect((()=>{J(u||[])}),[u]);const te=()=>{$&&$.length>0||F?(J([]),oe([])):(J(p),oe(p))},se=(e,t)=>{const s=[...$],i=r.default($,(e=>(_?_(e):e)===t));i>-1?s.splice(i,1):s.push(e),J(s),oe(s)},ie=()=>{K&&(Q(!1),ne(!1))},ae=()=>{U||K||X(!0)},le=e=>{U&&!K&&ee.current&&!ee.current.contains(e.relatedTarget)&&(X(!1),null==H||H())},ne=e=>{!e&&A&&A(),e&&I&&I()},oe=e=>{T&&T(e)};return e.jsx(a.DropdownListState,{children:e.jsx(n.ElementWithDropdown,{enabled:!B&&!h,isOpen:K,renderElement:()=>e.jsx(o.InputBox,{className:q,"data-testid":x,id:j,ref:ee,tabIndex:-1,onFocus:ae,onBlur:le,focused:U,disabled:h,readOnly:B,error:m,children:e.jsx(l.ExpandableElement,{ref:re,disabled:h,expanded:K,listboxId:Y,popupRole:"listbox",readOnly:B,variant:N,"aria-labelledby":b,"aria-describedby":w,"aria-invalid":f,children:e.jsx(d.LabelContainer,{disabled:h,children:$&&0!==$.length?e.jsx(d.ValueLabel,{variant:N,truncateType:C,children:p&&$.length===p.length?z||"All selected":V||`${$.length} selected`}):e.jsx(d.PlaceholderLabel,{variant:N,truncateType:C,children:c})})})}),renderDropdown:()=>e.jsx(i.DropdownList,{listboxId:Y,listItems:p,onSelectItem:se,onDismiss:ie,valueExtractor:_,listExtractor:S,enableSearch:g,searchFunction:y,searchPlaceholder:v,multiSelect:!0,maxSelectable:F,selectedItems:$,onSelectAll:te,onRetry:L,itemsLoadState:k,itemTruncationType:C,renderListItem:D,hideNoResultsDisplay:E,noResultsDescription:R,customLabels:O,renderCustomCallToAction:P,variant:N,width:Z,matchElementWidth:!0}),onOpen:()=>{Q(!0),ne(!0),X(!0)},onClose:e=>{Q(!1),ne(!1),"click"!==e&&(X(!1),null==H||H())},onDismiss:()=>{var e;null===(e=re.current)||void 0===e||e.focus(),Q(!1),ne(!1)},clickToToggle:!0,offset:8,alignment:G,fitAvailableHeight:!0,customZIndex:M,rootNode:W})})};
2
2
  //# sourceMappingURL=input-multi-select.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-multi-select.js","sources":["../../../src/input-multi-select/input-multi-select.tsx"],"sourcesContent":["import type { OpenChangeReason } from \"@floating-ui/react\";\nimport findIndex from \"lodash/findIndex\";\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 type { InputMultiSelectProps } from \"./types\";\n\nexport const InputMultiSelect = <T, V>({\n selectedOptions,\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 listExtractor,\n onSelectOptions,\n onShowOptions,\n onHideOptions,\n onRetry,\n optionsLoadState = \"success\",\n optionTruncationType = \"end\",\n renderListItem,\n hideNoResultsDisplay,\n noResultsDescription,\n customLabels,\n renderCustomCallToAction,\n onBlur,\n variant = \"default\",\n readOnly,\n alignment,\n dropdownZIndex,\n maxSelectable,\n dropdownRootNode,\n dropdownWidth,\n}: InputMultiSelectProps<T, V>): JSX.Element => {\n // =============================================================================\n // CONST, STATE\n // =============================================================================\n const { allSelectedLabel, multiSelectedLabel } = customLabels || {};\n const [selected, setSelected] = useState<T[]>(selectedOptions || []);\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\n // =============================================================================\n // EFFECTS\n // =============================================================================\n useEffect(() => {\n setSelected(selectedOptions || []);\n }, [selectedOptions]);\n\n // =============================================================================\n // EVENT HANDLERS\n // =============================================================================\n const handleSelectAllClick = () => {\n if ((selected && selected.length > 0) || maxSelectable) {\n setSelected([]);\n performOnSelectOptions([]);\n } else {\n setSelected(options);\n performOnSelectOptions(options);\n }\n };\n\n const handleListItemClick = (item: T, extractedValue: T | V) => {\n const selectedCopy = [...selected];\n\n // Check if it is a selection or deselection\n const itemIndex = findIndex(selected, (item) => {\n const valueToCompare = valueExtractor ? valueExtractor(item) : item;\n return valueToCompare === extractedValue;\n });\n\n if (itemIndex > -1) {\n // Item exists in selected. This indicates a deselection\n selectedCopy.splice(itemIndex, 1);\n } else {\n // Item does not exist in selected. This indicates a selection\n selectedCopy.push(item);\n }\n\n setSelected(selectedCopy);\n performOnSelectOptions(selectedCopy);\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 = () => {\n if (options && selected.length === options.length) {\n return allSelectedLabel || \"All selected\";\n }\n\n return multiSelectedLabel || `${selected.length} selected`;\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 const performOnSelectOptions = (options: T[]) => {\n if (onSelectOptions) {\n onSelectOptions(options);\n }\n };\n\n // =============================================================================\n // RENDER FUNCTIONS\n // =============================================================================\n const renderLabel = () => {\n if (!selected || selected.length === 0) {\n return (\n <PlaceholderLabel\n variant={variant}\n truncateType={optionTruncationType}\n >\n {placeholder}\n </PlaceholderLabel>\n );\n } else {\n return (\n <ValueLabel\n variant={variant}\n truncateType={optionTruncationType}\n >\n {getDisplayValue()}\n </ValueLabel>\n );\n }\n };\n\n const renderSelectorContent = () => (\n <LabelContainer disabled={disabled}>{renderLabel()}</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 searchFunction={searchFunction}\n searchPlaceholder={searchPlaceholder}\n multiSelect\n maxSelectable={maxSelectable}\n selectedItems={selected}\n onSelectAll={handleSelectAllClick}\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":["selectedOptions","placeholder","options","disabled","error","className","testId","id","ariaLabelledBy","ariaDescribedBy","ariaInvalid","enableSearch","searchFunction","searchPlaceholder","valueExtractor","listExtractor","onSelectOptions","onShowOptions","onHideOptions","onRetry","optionsLoadState","optionTruncationType","renderListItem","hideNoResultsDisplay","noResultsDescription","customLabels","renderCustomCallToAction","onBlur","variant","readOnly","alignment","dropdownZIndex","maxSelectable","dropdownRootNode","dropdownWidth","allSelectedLabel","multiSelectedLabel","selected","setSelected","useState","showOptions","setShowOptions","focused","setFocused","internalId","useId","nodeRef","useRef","selectorRef","useEffect","handleSelectAllClick","length","performOnSelectOptions","handleListItemClick","item","extractedValue","selectedCopy","itemIndex","findIndex","splice","push","handleListDismiss","triggerOptionDisplayCallback","handleNodeFocus","handleNodeBlur","e","current","contains","relatedTarget","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","multiSelect","selectedItems","onSelectAll","itemsLoadState","itemTruncationType","width","matchElementWidth","onOpen","onClose","reason","_a","focus","clickToToggle","offset","fitAvailableHeight","customZIndex","rootNode"],"mappings":"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"}
1
+ {"version":3,"file":"input-multi-select.js","sources":["../../../src/input-multi-select/input-multi-select.tsx"],"sourcesContent":["import type { OpenChangeReason } from \"@floating-ui/react\";\nimport findIndex from \"lodash/findIndex\";\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 type { InputMultiSelectProps } from \"./types\";\n\nexport const InputMultiSelect = <T, V>({\n selectedOptions,\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 listExtractor,\n onSelectOptions,\n onShowOptions,\n onHideOptions,\n onRetry,\n optionsLoadState = \"success\",\n optionTruncationType = \"end\",\n renderListItem,\n hideNoResultsDisplay,\n noResultsDescription,\n customLabels,\n renderCustomCallToAction,\n onBlur,\n variant = \"default\",\n readOnly,\n alignment,\n dropdownZIndex,\n maxSelectable,\n dropdownRootNode,\n dropdownWidth,\n}: InputMultiSelectProps<T, V>): JSX.Element => {\n // =============================================================================\n // CONST, STATE\n // =============================================================================\n const { allSelectedLabel, multiSelectedLabel } = customLabels || {};\n const [selected, setSelected] = useState<T[]>(selectedOptions || []);\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\n // =============================================================================\n // EFFECTS\n // =============================================================================\n useEffect(() => {\n setSelected(selectedOptions || []);\n }, [selectedOptions]);\n\n // =============================================================================\n // EVENT HANDLERS\n // =============================================================================\n const handleSelectAllClick = () => {\n if ((selected && selected.length > 0) || maxSelectable) {\n setSelected([]);\n performOnSelectOptions([]);\n } else {\n setSelected(options);\n performOnSelectOptions(options);\n }\n };\n\n const handleListItemClick = (item: T, extractedValue: T | V) => {\n const selectedCopy = [...selected];\n\n // Check if it is a selection or deselection\n const itemIndex = findIndex(selected, (item) => {\n const valueToCompare = valueExtractor ? valueExtractor(item) : item;\n return valueToCompare === extractedValue;\n });\n\n if (itemIndex > -1) {\n // Item exists in selected. This indicates a deselection\n selectedCopy.splice(itemIndex, 1);\n } else {\n // Item does not exist in selected. This indicates a selection\n selectedCopy.push(item);\n }\n\n setSelected(selectedCopy);\n performOnSelectOptions(selectedCopy);\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 = () => {\n if (options && selected.length === options.length) {\n return allSelectedLabel || \"All selected\";\n }\n\n return multiSelectedLabel || `${selected.length} selected`;\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 const performOnSelectOptions = (options: T[]) => {\n if (onSelectOptions) {\n onSelectOptions(options);\n }\n };\n\n // =============================================================================\n // RENDER FUNCTIONS\n // =============================================================================\n const renderLabel = () => {\n if (!selected || selected.length === 0) {\n return (\n <PlaceholderLabel\n variant={variant}\n truncateType={optionTruncationType}\n >\n {placeholder}\n </PlaceholderLabel>\n );\n } else {\n return (\n <ValueLabel\n variant={variant}\n truncateType={optionTruncationType}\n >\n {getDisplayValue()}\n </ValueLabel>\n );\n }\n };\n\n const renderSelectorContent = () => (\n <LabelContainer disabled={disabled}>{renderLabel()}</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 searchFunction={searchFunction}\n searchPlaceholder={searchPlaceholder}\n multiSelect\n maxSelectable={maxSelectable}\n selectedItems={selected}\n onSelectAll={handleSelectAllClick}\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":["selectedOptions","placeholder","options","disabled","error","className","testId","id","ariaLabelledBy","ariaDescribedBy","ariaInvalid","enableSearch","searchFunction","searchPlaceholder","valueExtractor","listExtractor","onSelectOptions","onShowOptions","onHideOptions","onRetry","optionsLoadState","optionTruncationType","renderListItem","hideNoResultsDisplay","noResultsDescription","customLabels","renderCustomCallToAction","onBlur","variant","readOnly","alignment","dropdownZIndex","maxSelectable","dropdownRootNode","dropdownWidth","allSelectedLabel","multiSelectedLabel","selected","setSelected","useState","showOptions","setShowOptions","focused","setFocused","internalId","useId","nodeRef","useRef","selectorRef","useEffect","handleSelectAllClick","length","performOnSelectOptions","handleListItemClick","item","extractedValue","selectedCopy","itemIndex","findIndex","splice","push","handleListDismiss","triggerOptionDisplayCallback","handleNodeFocus","handleNodeBlur","e","current","contains","relatedTarget","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","multiSelect","selectedItems","onSelectAll","itemsLoadState","itemTruncationType","width","matchElementWidth","onOpen","onClose","reason","_a","focus","clickToToggle","offset","fitAvailableHeight","customZIndex","rootNode"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("react/jsx-runtime"),t=require("../external/lodash/isEmpty.js"),r=require("../external/lodash/isEqual.js"),a=require("react");require("clsx"),require("../theme/theme-provider/index.js"),require("../theme/theme-provider/context.js"),require("../theme/tokens/border.js"),require("../theme/tokens/colour.js"),require("../theme/tokens/font.js"),require("../theme/tokens/media-query.js"),require("../util/calendar-helper.js"),require("../external/dayjs/dayjs.min.js");var l=require("../util/simple-id-generator.js"),n=require("../util/string-helper.js");require("@react-aria/live-announcer"),require("../shared/dropdown-list/dropdown-label.styles_1dwmd8f.css"),require("../shared/dropdown-list/dropdown-list.js"),require("../shared/dropdown-list/dropdown-list-state.js");var s=require("../shared/dropdown-list/expandable-element.js"),i=require("../shared/dropdown-list/nested-dropdown-list.js"),d=require("../shared/dropdown-list/nested-dropdown-list-helpers.js"),o=require("../shared/dropdown-wrapper/element-with-dropdown.js"),u=require("../shared/dropdown-wrapper/dropdown-wrapper.js"),c=require("../shared/input-wrapper/input-wrapper.js"),h=require("./helpers.js");exports.InputNestedMultiSelect=({placeholder:p="Select",options:m,disabled:b,error:y,className:w,"data-testid":j,id:S,"aria-labelledby":q,"aria-describedby":f,"aria-invalid":x,selectedKeyPaths:v,mode:P,valueToStringFunction:k,enableSearch:g,searchPlaceholder:T,hideNoResultsDisplay:I,noResultsDescription:R,customLabels:L,readOnly:E,onSearch:O,onSelectOptions:D,onShowOptions:N,onHideOptions:K,onRetry:A,onBlur:B,optionsLoadState:C="success",optionTruncationType:H="end",variant:_="default",alignment:W,dropdownZIndex:F,dropdownWidth:M,dropdownRootNode:Z})=>{const{multiSelectedLabel:G}=L||{},V=m,[$,z]=a.useState(v?d.buildKeyPathToSet(v):new Set),[J,Q]=a.useState([]),[U,X]=a.useState(!1),[Y,ee]=a.useState(!1),te=l.useId(),re=a.useRef(null),ae=a.useRef(null),le=a.useRef(null);a.useEffect((()=>{const e=v||[],t=h.getSelectedItems(V,e);z(d.buildKeyPathToSet(e)),Q(t)}),[v,V]);const ne=(e,t)=>{const r=t.map((e=>({keyPath:e.keyPath,label:e.item.label,value:e.item.value})));z(d.buildKeyPathToSet(e)),Q(r),he(e,r)},se=e=>{const t=pe(e),r=t.map((e=>e.keyPath));Q(t),z(d.buildKeyPathToSet(r)),he(r,t)},ie=()=>{Y||U||ee(!0)},de=e=>{Y&&!U&&re.current&&!re.current.contains(e.relatedTarget)&&(ee(!1),null==B||B())},oe=()=>{if(J.length>1)return G||`${J.length} selected`;const{label:e,value:t}=J[0];return k?k(t):e},ue=e=>{if("middle"===H){let t=0;return le&&le.current&&(t=le.current.getBoundingClientRect().width),n.StringHelper.truncateOneLine(e,t,120,6)}return e},ce=e=>{!e&&K&&K(),e&&N&&N()},he=(e,t)=>{if(D){const r=t.map((e=>e.value));D(e,r)}},pe=e=>{if(!0===e.checked)return J.filter((t=>{const a=t.keyPath.slice(0,e.keyPath.length);return!r.default(e.keyPath,a)}));{const t=[...J];return(e.hasSubItems?h.getSelectedSubItems(V,e.keyPath):[{value:e.item.value,label:e.item.label,keyPath:e.keyPath}]).forEach((e=>{J.find((t=>r.default(t.keyPath,e.keyPath)))||t.push(e)})),t}};return e.jsx(o.ElementWithDropdown,{enabled:!E&&!b,isOpen:U,renderElement:()=>e.jsx(c.InputBox,{className:w,"data-testid":j,id:S,ref:re,tabIndex:-1,onFocus:ie,onBlur:de,focused:Y,disabled:b,readOnly:E,error:y,children:e.jsx(s.ExpandableElement,{ref:ae,disabled:b,expanded:U,listboxId:te,popupRole:"tree",readOnly:E,variant:_,"aria-labelledby":q,"aria-describedby":f,"aria-invalid":x,children:e.jsx(u.LabelContainer,{ref:le,disabled:b,children:t.default(J)?e.jsx(u.PlaceholderLabel,{truncateType:H,children:p}):e.jsx(u.ValueLabel,{truncateType:H,children:ue(oe())})})})}),renderDropdown:()=>e.jsx(i.NestedDropdownList,{listboxId:te,listItems:V,multiSelect:!0,selectedKeyPaths:$,itemsLoadState:C,itemTruncationType:H,enableSearch:g,searchPlaceholder:T,hideNoResultsDisplay:I,noResultsDescription:R,customLabels:L,onSelectItem:se,onSelectAll:ne,onRetry:A,onSearch:O,variant:_,mode:P,width:M,matchElementWidth:!0}),onOpen:()=>{X(!0),ce(!0),ee(!0)},onClose:e=>{X(!1),ce(!1),"click"!==e&&(ee(!1),null==B||B())},onDismiss:()=>{var e;null===(e=ae.current)||void 0===e||e.focus(),X(!1),ce(!1)},clickToToggle:!0,offset:8,alignment:W,fitAvailableHeight:!0,customZIndex:F,rootNode:Z})};
1
+ "use strict";var e=require("react/jsx-runtime"),t=require("../external/lodash/isEmpty.js"),r=require("../external/lodash/isEqual.js"),a=require("react");require("clsx"),require("../theme/theme-provider/index.js"),require("../theme/theme-provider/context.js"),require("../theme/tokens/border.js"),require("../theme/tokens/colour.js"),require("../theme/tokens/font.js"),require("../theme/tokens/media-query.js"),require("../util/calendar-helper.js"),require("../external/dayjs/dayjs.min.js");var l=require("../util/simple-id-generator.js"),s=require("../util/string-helper.js");require("@react-aria/live-announcer"),require("../theme/utils/use-media-query.js"),require("../shared/dropdown-list/dropdown-label.styles_1dwmd8f.css"),require("../shared/dropdown-list/dropdown-list.js"),require("../shared/dropdown-list/dropdown-list-state.js");var n=require("../shared/dropdown-list/expandable-element.js"),i=require("../shared/dropdown-list/nested-dropdown-list.js"),d=require("../shared/dropdown-list/nested-dropdown-list-helpers.js"),o=require("../shared/dropdown-wrapper/element-with-dropdown.js"),u=require("../shared/dropdown-wrapper/dropdown-wrapper.js"),c=require("../shared/input-wrapper/input-wrapper.js"),h=require("./helpers.js");exports.InputNestedMultiSelect=({placeholder:p="Select",options:m,disabled:b,error:y,className:j,"data-testid":w,id:q,"aria-labelledby":S,"aria-describedby":f,"aria-invalid":x,selectedKeyPaths:v,mode:P,valueToStringFunction:k,enableSearch:g,searchPlaceholder:T,hideNoResultsDisplay:I,noResultsDescription:R,customLabels:L,readOnly:E,onSearch:O,onSelectOptions:D,onShowOptions:N,onHideOptions:K,onRetry:A,onBlur:B,optionsLoadState:C="success",optionTruncationType:H="end",variant:_="default",alignment:W,dropdownZIndex:F,dropdownWidth:M,dropdownRootNode:Z})=>{const{multiSelectedLabel:G}=L||{},V=m,[$,z]=a.useState(v?d.buildKeyPathToSet(v):new Set),[J,Q]=a.useState([]),[U,X]=a.useState(!1),[Y,ee]=a.useState(!1),te=l.useId(),re=a.useRef(null),ae=a.useRef(null),le=a.useRef(null);a.useEffect((()=>{const e=v||[],t=h.getSelectedItems(V,e);z(d.buildKeyPathToSet(e)),Q(t)}),[v,V]);const se=(e,t)=>{const r=t.map((e=>({keyPath:e.keyPath,label:e.item.label,value:e.item.value})));z(d.buildKeyPathToSet(e)),Q(r),he(e,r)},ne=e=>{const t=pe(e),r=t.map((e=>e.keyPath));Q(t),z(d.buildKeyPathToSet(r)),he(r,t)},ie=()=>{Y||U||ee(!0)},de=e=>{Y&&!U&&re.current&&!re.current.contains(e.relatedTarget)&&(ee(!1),null==B||B())},oe=()=>{if(J.length>1)return G||`${J.length} selected`;const{label:e,value:t}=J[0];return k?k(t):e},ue=e=>{if("middle"===H){let t=0;return le&&le.current&&(t=le.current.getBoundingClientRect().width),s.StringHelper.truncateOneLine(e,t,120,6)}return e},ce=e=>{!e&&K&&K(),e&&N&&N()},he=(e,t)=>{if(D){const r=t.map((e=>e.value));D(e,r)}},pe=e=>{if(!0===e.checked)return J.filter((t=>{const a=t.keyPath.slice(0,e.keyPath.length);return!r.default(e.keyPath,a)}));{const t=[...J];return(e.hasSubItems?h.getSelectedSubItems(V,e.keyPath):[{value:e.item.value,label:e.item.label,keyPath:e.keyPath}]).forEach((e=>{J.find((t=>r.default(t.keyPath,e.keyPath)))||t.push(e)})),t}};return e.jsx(o.ElementWithDropdown,{enabled:!E&&!b,isOpen:U,renderElement:()=>e.jsx(c.InputBox,{className:j,"data-testid":w,id:q,ref:re,tabIndex:-1,onFocus:ie,onBlur:de,focused:Y,disabled:b,readOnly:E,error:y,children:e.jsx(n.ExpandableElement,{ref:ae,disabled:b,expanded:U,listboxId:te,popupRole:"tree",readOnly:E,variant:_,"aria-labelledby":S,"aria-describedby":f,"aria-invalid":x,children:e.jsx(u.LabelContainer,{ref:le,disabled:b,children:t.default(J)?e.jsx(u.PlaceholderLabel,{truncateType:H,children:p}):e.jsx(u.ValueLabel,{truncateType:H,children:ue(oe())})})})}),renderDropdown:()=>e.jsx(i.NestedDropdownList,{listboxId:te,listItems:V,multiSelect:!0,selectedKeyPaths:$,itemsLoadState:C,itemTruncationType:H,enableSearch:g,searchPlaceholder:T,hideNoResultsDisplay:I,noResultsDescription:R,customLabels:L,onSelectItem:ne,onSelectAll:se,onRetry:A,onSearch:O,variant:_,mode:P,width:M,matchElementWidth:!0}),onOpen:()=>{X(!0),ce(!0),ee(!0)},onClose:e=>{X(!1),ce(!1),"click"!==e&&(ee(!1),null==B||B())},onDismiss:()=>{var e;null===(e=ae.current)||void 0===e||e.focus(),X(!1),ce(!1)},clickToToggle:!0,offset:8,alignment:W,fitAvailableHeight:!0,customZIndex:F,rootNode:Z})};
2
2
  //# sourceMappingURL=input-nested-multi-select.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-nested-multi-select.js","sources":["../../../src/input-nested-multi-select/input-nested-multi-select.tsx"],"sourcesContent":["import type { OpenChangeReason } from \"@floating-ui/react\";\nimport isEmpty from \"lodash/isEmpty\";\nimport isEqual from \"lodash/isEqual\";\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 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 { SelectedItem } from \"./helpers\";\nimport { getSelectedItems, getSelectedSubItems } from \"./helpers\";\nimport type { InputNestedMultiSelectProps } from \"./types\";\n\nexport const InputNestedMultiSelect = <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 selectedKeyPaths: _selectedKeyPaths,\n mode,\n valueToStringFunction,\n enableSearch,\n searchPlaceholder,\n hideNoResultsDisplay,\n noResultsDescription,\n customLabels,\n readOnly,\n onSearch,\n onSelectOptions,\n onShowOptions,\n onHideOptions,\n onRetry,\n onBlur,\n optionsLoadState = \"success\",\n optionTruncationType = \"end\",\n variant = \"default\",\n alignment,\n dropdownZIndex,\n dropdownWidth,\n dropdownRootNode,\n}: InputNestedMultiSelectProps<V1, V2, V3>): JSX.Element => {\n // =========================================================================\n // CONST, STATE\n // =========================================================================\n const { multiSelectedLabel } = customLabels || {};\n const options = _options as NestedDropdownListItemProps<V1 | V2 | V3>[];\n const [selectedKeyPaths, setSelectedKeyPaths] = useState<Set<string>>(\n _selectedKeyPaths\n ? buildKeyPathToSet(_selectedKeyPaths)\n : new Set<string>()\n );\n const [selectedItems, setSelectedItems] = useState<\n SelectedItem<V1 | V2 | V3>[]\n >([]);\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 const newKeyPath = _selectedKeyPaths || [];\n const selectedItems = getSelectedItems(options, newKeyPath);\n\n setSelectedKeyPaths(buildKeyPathToSet(newKeyPath));\n setSelectedItems(selectedItems);\n }, [_selectedKeyPaths, options]);\n\n // =========================================================================\n // EVENT HANDLERS\n // =========================================================================\n const handleSelectAll = (\n keyPaths: string[][],\n items: NestedDropdownListLocalItem<V1 | V2 | V3>[]\n ) => {\n const selectedItems = items.map((item) => ({\n keyPath: item.keyPath,\n label: item.item.label,\n value: item.item.value,\n }));\n setSelectedKeyPaths(buildKeyPathToSet(keyPaths));\n setSelectedItems(selectedItems);\n performOnSelectOptions(keyPaths, selectedItems);\n };\n\n const handleListItemClick = (\n listItem: NestedDropdownListLocalItem<V1 | V2 | V3>\n ) => {\n const newSelectedItems: SelectedItem<V1 | V2 | V3>[] =\n getNewSelection(listItem);\n const newKeyPaths = newSelectedItems.map((item) => item.keyPath);\n setSelectedItems(newSelectedItems);\n setSelectedKeyPaths(buildKeyPathToSet(newKeyPaths));\n performOnSelectOptions(newKeyPaths, newSelectedItems);\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 (selectedItems.length > 1) {\n return multiSelectedLabel || `${selectedItems.length} selected`;\n }\n\n const { label, value } = selectedItems[0];\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 const performOnSelectOptions = (\n keyPaths: string[][],\n items: SelectedItem<V1 | V2 | V3>[]\n ) => {\n if (onSelectOptions) {\n const returnValue = items.map((item) => item.value);\n onSelectOptions(keyPaths, returnValue);\n }\n };\n\n const getNewSelection = (\n item: NestedDropdownListLocalItem<V1 | V2 | V3>\n ): SelectedItem<V1 | V2 | V3>[] => {\n if (item.checked === true) {\n // remove item or subitems\n return selectedItems.filter((selectedItem) => {\n const ancestorKeyPath = selectedItem.keyPath.slice(\n 0,\n item.keyPath.length\n );\n return !isEqual(item.keyPath, ancestorKeyPath);\n });\n } else {\n // select item or all subitems\n const nextSelection = [...selectedItems];\n const newItemsToAdd = item.hasSubItems\n ? getSelectedSubItems(options, item.keyPath)\n : [\n {\n value: item.item.value,\n label: item.item.label,\n keyPath: item.keyPath,\n },\n ];\n newItemsToAdd.forEach((addedItem) => {\n if (\n !selectedItems.find((selectedItem) =>\n isEqual(selectedItem.keyPath, addedItem.keyPath)\n )\n ) {\n nextSelection.push(addedItem);\n }\n });\n return nextSelection;\n }\n };\n\n // =========================================================================\n // RENDER FUNCTION\n // =========================================================================\n const renderLabel = () => {\n if (isEmpty(selectedItems)) {\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 multiSelect\n selectedKeyPaths={selectedKeyPaths}\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 onSelectAll={handleSelectAll}\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":["placeholder","options","_options","disabled","error","className","testId","id","ariaLabelledBy","ariaDescribedBy","ariaInvalid","selectedKeyPaths","_selectedKeyPaths","mode","valueToStringFunction","enableSearch","searchPlaceholder","hideNoResultsDisplay","noResultsDescription","customLabels","readOnly","onSearch","onSelectOptions","onShowOptions","onHideOptions","onRetry","onBlur","optionsLoadState","optionTruncationType","variant","alignment","dropdownZIndex","dropdownWidth","dropdownRootNode","multiSelectedLabel","setSelectedKeyPaths","useState","buildKeyPathToSet","Set","selectedItems","setSelectedItems","showOptions","setShowOptions","focused","setFocused","internalId","useId","nodeRef","useRef","selectorRef","labelContainerRef","useEffect","newKeyPath","getSelectedItems","handleSelectAll","keyPaths","items","map","item","keyPath","label","value","performOnSelectOptions","handleListItemClick","listItem","newSelectedItems","getNewSelection","newKeyPaths","handleNodeFocus","handleNodeBlur","e","current","contains","relatedTarget","getDisplayValue","length","truncateValue","widthOfElement","getBoundingClientRect","width","StringHelper","truncateOneLine","triggerOptionDisplayCallback","show","returnValue","checked","filter","selectedItem","ancestorKeyPath","slice","isEqual","nextSelection","hasSubItems","getSelectedSubItems","forEach","addedItem","find","push","_jsx","ElementWithDropdown","enabled","isOpen","renderElement","InputBox","ref","tabIndex","onFocus","ExpandableElement","expanded","listboxId","popupRole","children","LabelContainer","isEmpty","PlaceholderLabel","truncateType","ValueLabel","renderDropdown","NestedDropdownList","listItems","multiSelect","itemsLoadState","itemTruncationType","onSelectItem","onSelectAll","matchElementWidth","onOpen","onClose","reason","onDismiss","_a","focus","clickToToggle","offset","fitAvailableHeight","customZIndex","rootNode"],"mappings":"otCA2BsC,EAClCA,cAAc,SACdC,QAASC,EACTC,WACAC,QACAC,YACA,cAAeC,EACfC,KACA,kBAAmBC,EACnB,mBAAoBC,EACpB,eAAgBC,EAChBC,iBAAkBC,EAClBC,OACAC,wBACAC,eACAC,oBACAC,uBACAC,uBACAC,eACAC,WACAC,WACAC,kBACAC,gBACAC,gBACAC,UACAC,SACAC,mBAAmB,UACnBC,uBAAuB,MACvBC,UAAU,UACVC,YACAC,iBACAC,gBACAC,uBAKA,MAAMC,mBAAEA,GAAuBf,GAAgB,CAAA,EACzClB,EAAUC,GACTS,EAAkBwB,GAAuBC,WAC5CxB,EACMyB,EAAAA,kBAAkBzB,GAClB,IAAI0B,MAEPC,EAAeC,GAAoBJ,EAAAA,SAExC,KAEKK,EAAaC,GAAkBN,EAAAA,UAAkB,IACjDO,EAASC,IAAcR,EAAAA,UAAkB,GAC1CS,GAAaC,EAAAA,QAEbC,GAAUC,EAAAA,OAAuB,MACjCC,GAAcD,EAAAA,OAA0B,MACxCE,GAAoBF,EAAAA,OAAuB,MAKjDG,EAAAA,WAAU,KACN,MAAMC,EAAaxC,GAAqB,GAClC2B,EAAgBc,EAAAA,iBAAiBpD,EAASmD,GAEhDjB,EAAoBE,EAAAA,kBAAkBe,IACtCZ,EAAiBD,EAAc,GAChC,CAAC3B,EAAmBX,IAKvB,MAAMqD,GAAkB,CACpBC,EACAC,KAEA,MAAMjB,EAAgBiB,EAAMC,KAAKC,IAAI,CACjCC,QAASD,EAAKC,QACdC,MAAOF,EAAKA,KAAKE,MACjBC,MAAOH,EAAKA,KAAKG,UAErB1B,EAAoBE,EAAAA,kBAAkBkB,IACtCf,EAAiBD,GACjBuB,GAAuBP,EAAUhB,EAAc,EAG7CwB,GACFC,IAEA,MAAMC,EACFC,GAAgBF,GACdG,EAAcF,EAAiBR,KAAKC,GAASA,EAAKC,UACxDnB,EAAiByB,GACjB9B,EAAoBE,EAAAA,kBAAkB8B,IACtCL,GAAuBK,EAAaF,EAAiB,EAGnDG,GAAkB,KACfzB,GAAYF,GACbG,IAAW,EACf,EAGEyB,GAAkBC,IAEhB3B,IACCF,GACDM,GAAQwB,UACPxB,GAAQwB,QAAQC,SAASF,EAAEG,iBAE5B7B,IAAW,GACXlB,SAAAA,IACJ,EA6BEgD,GAAkB,KACpB,GAAInC,EAAcoC,OAAS,EACvB,OAAOzC,GAAsB,GAAGK,EAAcoC,kBAGlD,MAAMf,MAAEA,EAAKC,MAAEA,GAAUtB,EAAc,GACvC,OAAIzB,EACOA,EAAsB+C,GAEtBD,CACX,EAGEgB,GAAiBf,IACnB,GAA6B,WAAzBjC,EAAmC,CACnC,IAAIiD,EAAiB,EAKrB,OAJI3B,IAAqBA,GAAkBqB,UACvCM,EACI3B,GAAkBqB,QAAQO,wBAAwBC,OAEnDC,EAAAA,aAAaC,gBAAgBpB,EAAOgB,EAAgB,IAAK,EACpE,CAEA,OAAOhB,CAAK,EAGVqB,GAAgCC,KAC7BA,GAAQ3D,GACTA,IAGA2D,GAAQ5D,GACRA,GACJ,EAGEuC,GAAyB,CAC3BP,EACAC,KAEA,GAAIlC,EAAiB,CACjB,MAAM8D,EAAc5B,EAAMC,KAAKC,GAASA,EAAKG,QAC7CvC,EAAgBiC,EAAU6B,EAC9B,GAGElB,GACFR,IAEA,IAAqB,IAAjBA,EAAK2B,QAEL,OAAO9C,EAAc+C,QAAQC,IACzB,MAAMC,EAAkBD,EAAa5B,QAAQ8B,MACzC,EACA/B,EAAKC,QAAQgB,QAEjB,OAAQe,EAAAA,QAAQhC,EAAKC,QAAS6B,EAAgB,IAE/C,CAEH,MAAMG,EAAgB,IAAIpD,GAmB1B,OAlBsBmB,EAAKkC,YACrBC,sBAAoB5F,EAASyD,EAAKC,SAClC,CACI,CACIE,MAAOH,EAAKA,KAAKG,MACjBD,MAAOF,EAAKA,KAAKE,MACjBD,QAASD,EAAKC,WAGdmC,SAASC,IAEdxD,EAAcyD,MAAMT,GACjBG,EAAAA,QAAQH,EAAa5B,QAASoC,EAAUpC,YAG5CgC,EAAcM,KAAKF,EACvB,IAEGJ,CACX,GAuFJ,OACIO,EAAAA,IAACC,EAAAA,oBAAmB,CAChBC,SAAUhF,IAAajB,EACvBkG,OAAQ5D,EACR6D,cA/Dc,IAEdJ,MAACK,EAAAA,UACGlG,UAAWA,EAAS,cACPC,EACbC,GAAIA,EACJiG,IAAKzD,GACL0D,UAAU,EACVC,QAAStC,GACT1C,OAAQ2C,GACR1B,QAASA,EACTxC,SAAUA,EACViB,SAAUA,EACVhB,MAAOA,WAEP8F,MAACS,EAAAA,mBACGH,IAAKvD,GACL9C,SAAUA,EACVyG,SAAUnE,EACVoE,UAAWhE,GACXiE,UAAU,OACV1F,SAAUA,EACVS,QAASA,EAAO,kBACCrB,qBACCC,EAAe,eACnBC,EAAWqG,SA9BrCb,MAACc,EAAAA,eAAc,CAACR,IAAKtD,GAAmB/C,SAAUA,WAhB9C8G,EAAAA,QAAQ1E,GAEJ2D,EAAAA,IAACgB,EAAAA,iBAAgB,CAACC,aAAcvF,EAAoBmF,SAC/C/G,IAKLkG,EAAAA,IAACkB,aAAU,CAACD,aAAcvF,EAAoBmF,SACzCnC,GAAcF,cA4EvB2C,eA/Be,IAEfnB,EAAAA,IAACoB,EAAAA,mBAAkB,CACfT,UAAWhE,GACX0E,UAAWtH,EACXuH,aAAW,EACX7G,iBAAkBA,EAClB8G,eAAgB9F,EAChB+F,mBAAoB9F,EACpBb,aAAcA,EACdC,kBAAmBA,EACnBC,qBAAsBA,EACtBC,qBAAsBA,EACtBC,aAAcA,EACdwG,aAAc5D,GACd6D,YAAatE,GACb7B,QAASA,EACTJ,SAAUA,EACVQ,QAASA,EACThB,KAAMA,EACNkE,MAAO/C,EACP6F,mBAAiB,IAWrBC,OAvMW,KACfpF,GAAe,GACfwC,IAA6B,GAC7BtC,IAAW,EAAK,EAqMZmF,QAlMaC,IACjBtF,GAAe,GACfwC,IAA6B,GAGd,UAAX8C,IACApF,IAAW,GACXlB,SAAAA,IACJ,EA2LIuG,UAxLc,WACC,QAAnBC,EAAAjF,GAAYsB,eAAO,IAAA2D,GAAAA,EAAEC,QACrBzF,GAAe,GACfwC,IAA6B,EAAM,EAsL/BkD,eAAa,EACbC,OAAQ,EACRvG,UAAWA,EACXwG,oBAAkB,EAClBC,aAAcxG,EACdyG,SAAUvG,GACZ"}
1
+ {"version":3,"file":"input-nested-multi-select.js","sources":["../../../src/input-nested-multi-select/input-nested-multi-select.tsx"],"sourcesContent":["import type { OpenChangeReason } from \"@floating-ui/react\";\nimport isEmpty from \"lodash/isEmpty\";\nimport isEqual from \"lodash/isEqual\";\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 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 { SelectedItem } from \"./helpers\";\nimport { getSelectedItems, getSelectedSubItems } from \"./helpers\";\nimport type { InputNestedMultiSelectProps } from \"./types\";\n\nexport const InputNestedMultiSelect = <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 selectedKeyPaths: _selectedKeyPaths,\n mode,\n valueToStringFunction,\n enableSearch,\n searchPlaceholder,\n hideNoResultsDisplay,\n noResultsDescription,\n customLabels,\n readOnly,\n onSearch,\n onSelectOptions,\n onShowOptions,\n onHideOptions,\n onRetry,\n onBlur,\n optionsLoadState = \"success\",\n optionTruncationType = \"end\",\n variant = \"default\",\n alignment,\n dropdownZIndex,\n dropdownWidth,\n dropdownRootNode,\n}: InputNestedMultiSelectProps<V1, V2, V3>): JSX.Element => {\n // =========================================================================\n // CONST, STATE\n // =========================================================================\n const { multiSelectedLabel } = customLabels || {};\n const options = _options as NestedDropdownListItemProps<V1 | V2 | V3>[];\n const [selectedKeyPaths, setSelectedKeyPaths] = useState<Set<string>>(\n _selectedKeyPaths\n ? buildKeyPathToSet(_selectedKeyPaths)\n : new Set<string>()\n );\n const [selectedItems, setSelectedItems] = useState<\n SelectedItem<V1 | V2 | V3>[]\n >([]);\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 const newKeyPath = _selectedKeyPaths || [];\n const selectedItems = getSelectedItems(options, newKeyPath);\n\n setSelectedKeyPaths(buildKeyPathToSet(newKeyPath));\n setSelectedItems(selectedItems);\n }, [_selectedKeyPaths, options]);\n\n // =========================================================================\n // EVENT HANDLERS\n // =========================================================================\n const handleSelectAll = (\n keyPaths: string[][],\n items: NestedDropdownListLocalItem<V1 | V2 | V3>[]\n ) => {\n const selectedItems = items.map((item) => ({\n keyPath: item.keyPath,\n label: item.item.label,\n value: item.item.value,\n }));\n setSelectedKeyPaths(buildKeyPathToSet(keyPaths));\n setSelectedItems(selectedItems);\n performOnSelectOptions(keyPaths, selectedItems);\n };\n\n const handleListItemClick = (\n listItem: NestedDropdownListLocalItem<V1 | V2 | V3>\n ) => {\n const newSelectedItems: SelectedItem<V1 | V2 | V3>[] =\n getNewSelection(listItem);\n const newKeyPaths = newSelectedItems.map((item) => item.keyPath);\n setSelectedItems(newSelectedItems);\n setSelectedKeyPaths(buildKeyPathToSet(newKeyPaths));\n performOnSelectOptions(newKeyPaths, newSelectedItems);\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 (selectedItems.length > 1) {\n return multiSelectedLabel || `${selectedItems.length} selected`;\n }\n\n const { label, value } = selectedItems[0];\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 const performOnSelectOptions = (\n keyPaths: string[][],\n items: SelectedItem<V1 | V2 | V3>[]\n ) => {\n if (onSelectOptions) {\n const returnValue = items.map((item) => item.value);\n onSelectOptions(keyPaths, returnValue);\n }\n };\n\n const getNewSelection = (\n item: NestedDropdownListLocalItem<V1 | V2 | V3>\n ): SelectedItem<V1 | V2 | V3>[] => {\n if (item.checked === true) {\n // remove item or subitems\n return selectedItems.filter((selectedItem) => {\n const ancestorKeyPath = selectedItem.keyPath.slice(\n 0,\n item.keyPath.length\n );\n return !isEqual(item.keyPath, ancestorKeyPath);\n });\n } else {\n // select item or all subitems\n const nextSelection = [...selectedItems];\n const newItemsToAdd = item.hasSubItems\n ? getSelectedSubItems(options, item.keyPath)\n : [\n {\n value: item.item.value,\n label: item.item.label,\n keyPath: item.keyPath,\n },\n ];\n newItemsToAdd.forEach((addedItem) => {\n if (\n !selectedItems.find((selectedItem) =>\n isEqual(selectedItem.keyPath, addedItem.keyPath)\n )\n ) {\n nextSelection.push(addedItem);\n }\n });\n return nextSelection;\n }\n };\n\n // =========================================================================\n // RENDER FUNCTION\n // =========================================================================\n const renderLabel = () => {\n if (isEmpty(selectedItems)) {\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 multiSelect\n selectedKeyPaths={selectedKeyPaths}\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 onSelectAll={handleSelectAll}\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":["placeholder","options","_options","disabled","error","className","testId","id","ariaLabelledBy","ariaDescribedBy","ariaInvalid","selectedKeyPaths","_selectedKeyPaths","mode","valueToStringFunction","enableSearch","searchPlaceholder","hideNoResultsDisplay","noResultsDescription","customLabels","readOnly","onSearch","onSelectOptions","onShowOptions","onHideOptions","onRetry","onBlur","optionsLoadState","optionTruncationType","variant","alignment","dropdownZIndex","dropdownWidth","dropdownRootNode","multiSelectedLabel","setSelectedKeyPaths","useState","buildKeyPathToSet","Set","selectedItems","setSelectedItems","showOptions","setShowOptions","focused","setFocused","internalId","useId","nodeRef","useRef","selectorRef","labelContainerRef","useEffect","newKeyPath","getSelectedItems","handleSelectAll","keyPaths","items","map","item","keyPath","label","value","performOnSelectOptions","handleListItemClick","listItem","newSelectedItems","getNewSelection","newKeyPaths","handleNodeFocus","handleNodeBlur","e","current","contains","relatedTarget","getDisplayValue","length","truncateValue","widthOfElement","getBoundingClientRect","width","StringHelper","truncateOneLine","triggerOptionDisplayCallback","show","returnValue","checked","filter","selectedItem","ancestorKeyPath","slice","isEqual","nextSelection","hasSubItems","getSelectedSubItems","forEach","addedItem","find","push","_jsx","ElementWithDropdown","enabled","isOpen","renderElement","InputBox","ref","tabIndex","onFocus","ExpandableElement","expanded","listboxId","popupRole","children","LabelContainer","isEmpty","PlaceholderLabel","truncateType","ValueLabel","renderDropdown","NestedDropdownList","listItems","multiSelect","itemsLoadState","itemTruncationType","onSelectItem","onSelectAll","matchElementWidth","onOpen","onClose","reason","onDismiss","_a","focus","clickToToggle","offset","fitAvailableHeight","customZIndex","rootNode"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("../external/lodash/isEmpty.js"),t=require("react");require("clsx"),require("../theme/theme-provider/index.js"),require("../theme/theme-provider/context.js"),require("../theme/tokens/border.js"),require("../theme/tokens/colour.js"),require("../theme/tokens/font.js"),require("../theme/tokens/media-query.js"),require("../util/calendar-helper.js"),require("../external/dayjs/dayjs.min.js");var n=require("../util/simple-id-generator.js"),s=require("../util/string-helper.js");require("@react-aria/live-announcer"),require("../shared/dropdown-list/dropdown-label.styles_1dwmd8f.css"),require("../shared/dropdown-list/dropdown-list.js"),require("../shared/dropdown-list/dropdown-list-state.js");var a=require("../shared/dropdown-list/expandable-element.js"),l=require("../shared/dropdown-list/nested-dropdown-list.js"),d=require("../shared/dropdown-list/nested-dropdown-list-helpers.js"),o=require("../shared/dropdown-wrapper/element-with-dropdown.js"),i=require("../shared/dropdown-wrapper/dropdown-wrapper.js"),u=require("../shared/input-wrapper/input-wrapper.js");exports.InputNestedSelect=({placeholder:c="Select",options:p,disabled:h,error:m,className:b,"data-testid":w,id:y,"aria-labelledby":j,"aria-describedby":q,"aria-invalid":x,selectedKeyPath:S,mode:f,valueToStringFunction:v,enableSearch:g,searchPlaceholder:T,selectableCategory:I,hideNoResultsDisplay:R,noResultsDescription:P,customLabels:L,readOnly:O,onBlur:D,onSearch:N,onSelectOption:k,onShowOptions:E,onHideOptions:C,onRetry:K,optionsLoadState:B="success",optionTruncationType:H="end",variant:_="default",alignment:A,dropdownZIndex:W,dropdownWidth:F,dropdownRootNode:Z})=>{const G=p,[M,V]=t.useState(S?d.buildKeyPathToSet([S]):new Set),[z,J]=t.useState(),[Q,U]=t.useState(!1),[X,Y]=t.useState(!1),$=n.useId(),ee=t.useRef(null),re=t.useRef(null),te=t.useRef(null);t.useEffect((()=>{V(S?d.buildKeyPathToSet([S]):new Set);const e=d.findItemByKeyPath(G,S||[]);J(null!=e?e:void 0)}),[S,G]);const ne=e=>{var r;const{keyPath:t,item:{label:n,value:s}}=e;V(d.buildKeyPathToSet([t])),J({label:n,value:s}),U(!1),oe(!1),null===(r=re.current)||void 0===r||r.focus(),null==k||k(t,s)},se=()=>{X||Q||Y(!0)},ae=e=>{X&&!Q&&ee.current&&!ee.current.contains(e.relatedTarget)&&(Y(!1),null==D||D())},le=()=>{if(!z)return"";const{label:e,value:r}=z;return v?v(r):e},de=e=>{if("middle"===H){let r=0;return te&&te.current&&(r=te.current.getBoundingClientRect().width),s.StringHelper.truncateOneLine(e,r,120,6)}return e},oe=e=>{!e&&C&&C(),e&&E&&E()};return e.jsx(o.ElementWithDropdown,{enabled:!O&&!h,isOpen:Q,renderElement:()=>e.jsx(u.InputBox,{className:b,"data-testid":w,id:y,ref:ee,tabIndex:-1,onFocus:se,onBlur:ae,focused:X,disabled:h,readOnly:O,error:m,children:e.jsx(a.ExpandableElement,{ref:re,disabled:h,expanded:Q,listboxId:$,popupRole:"tree",readOnly:O,variant:_,"aria-labelledby":j,"aria-describedby":q,"aria-invalid":x,children:e.jsx(i.LabelContainer,{ref:te,disabled:h,children:r.default(z)?e.jsx(i.PlaceholderLabel,{truncateType:H,children:c}):e.jsx(i.ValueLabel,{truncateType:H,children:de(le())})})})}),renderDropdown:()=>e.jsx(l.NestedDropdownList,{listboxId:$,listItems:G,selectedKeyPaths:M,selectableCategory:I,itemsLoadState:B,itemTruncationType:H,enableSearch:g,searchPlaceholder:T,hideNoResultsDisplay:R,noResultsDescription:P,customLabels:L,onSelectItem:ne,onRetry:K,onSearch:N,variant:_,mode:f,width:F,matchElementWidth:!0}),onOpen:()=>{U(!0),oe(!0),Y(!0)},onClose:e=>{U(!1),oe(!1),"click"!==e&&(Y(!1),null==D||D())},onDismiss:()=>{var e;null===(e=re.current)||void 0===e||e.focus(),U(!1),oe(!1)},clickToToggle:!0,offset:8,alignment:A,fitAvailableHeight:!0,customZIndex:W,rootNode:Z})};
1
+ "use strict";var e=require("react/jsx-runtime"),r=require("../external/lodash/isEmpty.js"),t=require("react");require("clsx"),require("../theme/theme-provider/index.js"),require("../theme/theme-provider/context.js"),require("../theme/tokens/border.js"),require("../theme/tokens/colour.js"),require("../theme/tokens/font.js"),require("../theme/tokens/media-query.js"),require("../util/calendar-helper.js"),require("../external/dayjs/dayjs.min.js");var n=require("../util/simple-id-generator.js"),s=require("../util/string-helper.js");require("@react-aria/live-announcer"),require("../theme/utils/use-media-query.js"),require("../shared/dropdown-list/dropdown-label.styles_1dwmd8f.css"),require("../shared/dropdown-list/dropdown-list.js"),require("../shared/dropdown-list/dropdown-list-state.js");var a=require("../shared/dropdown-list/expandable-element.js"),l=require("../shared/dropdown-list/nested-dropdown-list.js"),d=require("../shared/dropdown-list/nested-dropdown-list-helpers.js"),i=require("../shared/dropdown-wrapper/element-with-dropdown.js"),o=require("../shared/dropdown-wrapper/dropdown-wrapper.js"),u=require("../shared/input-wrapper/input-wrapper.js");exports.InputNestedSelect=({placeholder:c="Select",options:p,disabled:h,error:m,className:b,"data-testid":w,id:y,"aria-labelledby":j,"aria-describedby":q,"aria-invalid":x,selectedKeyPath:S,mode:f,valueToStringFunction:v,enableSearch:g,searchPlaceholder:T,selectableCategory:I,hideNoResultsDisplay:R,noResultsDescription:P,customLabels:L,readOnly:O,onBlur:D,onSearch:N,onSelectOption:k,onShowOptions:E,onHideOptions:C,onRetry:K,optionsLoadState:B="success",optionTruncationType:H="end",variant:_="default",alignment:A,dropdownZIndex:W,dropdownWidth:F,dropdownRootNode:Z})=>{const G=p,[M,V]=t.useState(S?d.buildKeyPathToSet([S]):new Set),[z,J]=t.useState(),[Q,U]=t.useState(!1),[X,Y]=t.useState(!1),$=n.useId(),ee=t.useRef(null),re=t.useRef(null),te=t.useRef(null);t.useEffect((()=>{V(S?d.buildKeyPathToSet([S]):new Set);const e=d.findItemByKeyPath(G,S||[]);J(null!=e?e:void 0)}),[S,G]);const ne=e=>{var r;const{keyPath:t,item:{label:n,value:s}}=e;V(d.buildKeyPathToSet([t])),J({label:n,value:s}),U(!1),ie(!1),null===(r=re.current)||void 0===r||r.focus(),null==k||k(t,s)},se=()=>{X||Q||Y(!0)},ae=e=>{X&&!Q&&ee.current&&!ee.current.contains(e.relatedTarget)&&(Y(!1),null==D||D())},le=()=>{if(!z)return"";const{label:e,value:r}=z;return v?v(r):e},de=e=>{if("middle"===H){let r=0;return te&&te.current&&(r=te.current.getBoundingClientRect().width),s.StringHelper.truncateOneLine(e,r,120,6)}return e},ie=e=>{!e&&C&&C(),e&&E&&E()};return e.jsx(i.ElementWithDropdown,{enabled:!O&&!h,isOpen:Q,renderElement:()=>e.jsx(u.InputBox,{className:b,"data-testid":w,id:y,ref:ee,tabIndex:-1,onFocus:se,onBlur:ae,focused:X,disabled:h,readOnly:O,error:m,children:e.jsx(a.ExpandableElement,{ref:re,disabled:h,expanded:Q,listboxId:$,popupRole:"tree",readOnly:O,variant:_,"aria-labelledby":j,"aria-describedby":q,"aria-invalid":x,children:e.jsx(o.LabelContainer,{ref:te,disabled:h,children:r.default(z)?e.jsx(o.PlaceholderLabel,{truncateType:H,children:c}):e.jsx(o.ValueLabel,{truncateType:H,children:de(le())})})})}),renderDropdown:()=>e.jsx(l.NestedDropdownList,{listboxId:$,listItems:G,selectedKeyPaths:M,selectableCategory:I,itemsLoadState:B,itemTruncationType:H,enableSearch:g,searchPlaceholder:T,hideNoResultsDisplay:R,noResultsDescription:P,customLabels:L,onSelectItem:ne,onRetry:K,onSearch:N,variant:_,mode:f,width:F,matchElementWidth:!0}),onOpen:()=>{U(!0),ie(!0),Y(!0)},onClose:e=>{U(!1),ie(!1),"click"!==e&&(Y(!1),null==D||D())},onDismiss:()=>{var e;null===(e=re.current)||void 0===e||e.focus(),U(!1),ie(!1)},clickToToggle:!0,offset:8,alignment:A,fitAvailableHeight:!0,customZIndex:W,rootNode:Z})};
2
2
  //# sourceMappingURL=input-nested-select.js.map
@@ -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":["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":["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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"}