@lifesg/react-design-system 4.0.0-alpha.6 → 4.0.0-alpha.7

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 (684) hide show
  1. package/accordion/accordion.js.map +1 -1
  2. package/alert/alert.js.map +1 -1
  3. package/alert/types.d.ts +2 -0
  4. package/animations/loading-dots/loading-dots.d.ts +5 -2
  5. package/animations/loading-dots/loading-dots.js.map +1 -1
  6. package/animations/loading-dots-spinner/loading-dots-spinner.d.ts +3 -0
  7. package/animations/loading-dots-spinner/loading-dots-spinner.js.map +1 -1
  8. package/animations/loading-dots-spinner/lottie-animation.d.ts +2 -2
  9. package/animations/loading-dots-spinner/lottie-animation.js.map +1 -1
  10. package/animations/loading-spinner/loading-spinner.d.ts +5 -2
  11. package/animations/loading-spinner/loading-spinner.js.map +1 -1
  12. package/animations/themed-loading-spinner/themed-loading-spinner.d.ts +5 -2
  13. package/animations/themed-loading-spinner/themed-loading-spinner.js.map +1 -1
  14. package/animations/types.d.ts +13 -6
  15. package/avatar/avatar.js.map +1 -1
  16. package/badge/badge.js.map +1 -1
  17. package/badge/types.d.ts +13 -2
  18. package/box-container/box-container.js.map +1 -1
  19. package/box-container/types.d.ts +2 -0
  20. package/breadcrumb/breadcrumb.js.map +1 -1
  21. package/breadcrumb/types.d.ts +7 -2
  22. package/button/button.js.map +1 -1
  23. package/button/types.d.ts +5 -0
  24. package/calendar/calendar.js.map +1 -1
  25. package/calendar/types.d.ts +3 -3
  26. package/card/card.js.map +1 -1
  27. package/checkbox/checkbox.js.map +1 -1
  28. package/checkbox/types.d.ts +4 -0
  29. package/cjs/accordion/accordion.js.map +1 -1
  30. package/cjs/alert/alert.js.map +1 -1
  31. package/cjs/animations/loading-dots/loading-dots.js.map +1 -1
  32. package/cjs/animations/loading-dots-spinner/loading-dots-spinner.js.map +1 -1
  33. package/cjs/animations/loading-dots-spinner/lottie-animation.js.map +1 -1
  34. package/cjs/animations/loading-spinner/loading-spinner.js.map +1 -1
  35. package/cjs/animations/themed-loading-spinner/themed-loading-spinner.js.map +1 -1
  36. package/cjs/avatar/avatar.js.map +1 -1
  37. package/cjs/badge/badge.js.map +1 -1
  38. package/cjs/box-container/box-container.js.map +1 -1
  39. package/cjs/breadcrumb/breadcrumb.js.map +1 -1
  40. package/cjs/button/button.js.map +1 -1
  41. package/cjs/calendar/calendar.js.map +1 -1
  42. package/cjs/card/card.js.map +1 -1
  43. package/cjs/checkbox/checkbox.js.map +1 -1
  44. package/cjs/countdown-timer/countdown-timer.js.map +1 -1
  45. package/cjs/dashed-border/dashed-border.js.map +1 -1
  46. package/cjs/data-table/data-table.js.map +1 -1
  47. package/cjs/date-input/date-input.js.map +1 -1
  48. package/cjs/date-navigator/date-navigator.js.map +1 -1
  49. package/cjs/date-range-input/date-range-input.js.map +1 -1
  50. package/cjs/divider/divider.js.map +1 -1
  51. package/cjs/drawer/drawer.js.map +1 -1
  52. package/cjs/e-signature/e-signature.js.map +1 -1
  53. package/cjs/error-display/error-display.js.map +1 -1
  54. package/cjs/feedback-rating/feedback-rating.js.map +1 -1
  55. package/cjs/file-download/file-download.js.map +1 -1
  56. package/cjs/file-upload/file-item-edit.js.map +1 -1
  57. package/cjs/file-upload/file-list/file-list.js.map +1 -1
  58. package/cjs/file-upload/file-list-item/file-list-item.js.map +1 -1
  59. package/cjs/file-upload/file-list-item/file-list-item.styles.js +1 -1
  60. package/cjs/file-upload/file-list-item/file-list-item.styles.js.map +1 -1
  61. package/cjs/file-upload/file-list-item/{file-list-item.styles_o8000f.css → file-list-item.styles_kgtfke.css} +1 -1
  62. package/cjs/file-upload/file-upload.js.map +1 -1
  63. package/cjs/filter/addons/filter-item-checkbox-helpers.js.map +1 -1
  64. package/cjs/filter/addons/filter-item-checkbox.js.map +1 -1
  65. package/cjs/filter/filter-item.js +1 -1
  66. package/cjs/filter/filter-item.js.map +1 -1
  67. package/cjs/filter/filter.js.map +1 -1
  68. package/cjs/footer/footer.js.map +1 -1
  69. package/cjs/form/form-custom-field/form-custom-field.js +2 -0
  70. package/cjs/form/form-custom-field/form-custom-field.js.map +1 -0
  71. package/cjs/form/form-date-input/form-date-input.js +2 -0
  72. package/cjs/form/form-date-input/form-date-input.js.map +1 -0
  73. package/cjs/form/form-date-range-input/form-date-range-input.js +2 -0
  74. package/cjs/form/form-date-range-input/form-date-range-input.js.map +1 -0
  75. package/cjs/form/form-e-signature/form-e-signature.js +2 -0
  76. package/cjs/form/form-e-signature/form-e-signature.js.map +1 -0
  77. package/cjs/form/form-histogram-slider/form-histogram-slider.js +2 -0
  78. package/cjs/form/form-histogram-slider/form-histogram-slider.js.map +1 -0
  79. package/cjs/form/form-input/form-input.js +2 -0
  80. package/cjs/form/form-input/form-input.js.map +1 -0
  81. package/cjs/form/form-input-group/form-input-group.js +2 -0
  82. package/cjs/form/form-input-group/form-input-group.js.map +1 -0
  83. package/cjs/form/form-label/form-label-addon.js +2 -0
  84. package/cjs/form/form-label/form-label-addon.js.map +1 -0
  85. package/cjs/form/form-label/form-label-addon.styles.js +2 -0
  86. package/cjs/form/form-label/form-label-addon.styles.js.map +1 -0
  87. package/cjs/form/form-label/form-label-addon.styles_aztasj.css +1 -0
  88. package/cjs/form/form-label/form-label.js +2 -0
  89. package/cjs/form/form-label/form-label.js.map +1 -0
  90. package/cjs/form/form-label/form-label.styles.js +2 -0
  91. package/cjs/form/form-label/form-label.styles.js.map +1 -0
  92. package/cjs/form/form-label/form-label.styles_180zf7j.css +6 -0
  93. package/cjs/form/form-masked-input/form-masked-input.js +2 -0
  94. package/cjs/form/form-masked-input/form-masked-input.js.map +1 -0
  95. package/cjs/form/form-multi-select/form-multi-select.js +2 -0
  96. package/cjs/form/form-multi-select/form-multi-select.js.map +1 -0
  97. package/cjs/form/form-nested-multi-select/form-nested-multi-select.js +2 -0
  98. package/cjs/form/form-nested-multi-select/form-nested-multi-select.js.map +1 -0
  99. package/cjs/form/form-nested-select/form-nested-select.js +2 -0
  100. package/cjs/form/form-nested-select/form-nested-select.js.map +1 -0
  101. package/cjs/form/form-otp-verification/form-otp-verification.js +2 -0
  102. package/cjs/form/form-otp-verification/form-otp-verification.js.map +1 -0
  103. package/cjs/form/form-phone-number-input/form-phone-number-input.js +2 -0
  104. package/cjs/form/form-phone-number-input/form-phone-number-input.js.map +1 -0
  105. package/cjs/form/form-predictive-text-input/form-predictive-text-input.js +2 -0
  106. package/cjs/form/form-predictive-text-input/form-predictive-text-input.js.map +1 -0
  107. package/cjs/form/form-range-select/form-range-select.js +2 -0
  108. package/cjs/form/form-range-select/form-range-select.js.map +1 -0
  109. package/cjs/form/form-range-slider/form-range-slider.js +2 -0
  110. package/cjs/form/form-range-slider/form-range-slider.js.map +1 -0
  111. package/cjs/form/form-select/form-select.js +2 -0
  112. package/cjs/form/form-select/form-select.js.map +1 -0
  113. package/cjs/form/form-select-histogram/form-select-histogram.js +2 -0
  114. package/cjs/form/form-select-histogram/form-select-histogram.js.map +1 -0
  115. package/cjs/form/form-slider/form-slider.js +2 -0
  116. package/cjs/form/form-slider/form-slider.js.map +1 -0
  117. package/cjs/form/form-textarea/form-textarea.js +2 -0
  118. package/cjs/form/form-textarea/form-textarea.js.map +1 -0
  119. package/cjs/form/form-textarea/form-textarea.styles.js +2 -0
  120. package/cjs/form/form-textarea/form-textarea.styles.js.map +1 -0
  121. package/cjs/form/form-textarea/form-textarea.styles_1kneyif.css +3 -0
  122. package/cjs/form/form-time-range-picker/form-time-range-picker.js +2 -0
  123. package/cjs/form/form-time-range-picker/form-time-range-picker.js.map +1 -0
  124. package/cjs/form/form-timepicker/form-timepicker.js +2 -0
  125. package/cjs/form/form-timepicker/form-timepicker.js.map +1 -0
  126. package/cjs/form/form-unit-number-input/form-unit-number-input.js +2 -0
  127. package/cjs/form/form-unit-number-input/form-unit-number-input.js.map +1 -0
  128. package/cjs/form/form-wrapper.js +1 -1
  129. package/cjs/form/form-wrapper.js.map +1 -1
  130. package/cjs/form/index.js +1 -1
  131. package/cjs/form/index.js.map +1 -1
  132. package/cjs/fullscreen-image-carousel/fullscreen-image-carousel.js.map +1 -1
  133. package/cjs/histogram-slider/histogram-slider.js.map +1 -1
  134. package/cjs/image-button/image-button.js.map +1 -1
  135. package/cjs/input/input.js.map +1 -1
  136. package/cjs/input-group/input-group.js.map +1 -1
  137. package/cjs/input-multi-select/input-multi-select.js.map +1 -1
  138. package/cjs/input-nested-multi-select/input-nested-multi-select.js.map +1 -1
  139. package/cjs/input-nested-select/input-nested-select.js.map +1 -1
  140. package/cjs/input-range-select/input-range-select.js.map +1 -1
  141. package/cjs/input-range-slider/input-range-slider.js.map +1 -1
  142. package/cjs/input-select/input-select.js.map +1 -1
  143. package/cjs/input-slider/input-slider.js.map +1 -1
  144. package/cjs/input-textarea/textarea.js.map +1 -1
  145. package/cjs/input-textarea/textarea.styles.js +1 -1
  146. package/cjs/input-textarea/textarea.styles.js.map +1 -1
  147. package/cjs/input-textarea/{textarea.styles_22z4n3.css → textarea.styles_q77m5x.css} +1 -1
  148. package/cjs/language-switcher/language-switcher.js.map +1 -1
  149. package/cjs/layout/index.js.map +1 -1
  150. package/cjs/link-list/components/common.js.map +1 -1
  151. package/cjs/link-list/components/link-list-eager.js.map +1 -1
  152. package/cjs/link-list/components/link-list-lazy.js.map +1 -1
  153. package/cjs/link-list/link-list.js.map +1 -1
  154. package/cjs/local-nav/local-nav-dropdown/local-nav-dropdown.js.map +1 -1
  155. package/cjs/local-nav/local-nav-menu/local-nav-menu.js.map +1 -1
  156. package/cjs/markup/markup.js.map +1 -1
  157. package/cjs/masked-input/masked-input.js.map +1 -1
  158. package/cjs/masthead/masthead.js.map +1 -1
  159. package/cjs/menu/menu.js.map +1 -1
  160. package/cjs/modal/index.js.map +1 -1
  161. package/cjs/modal-v2/modal-v2.js.map +1 -1
  162. package/cjs/navbar/navbar.js.map +1 -1
  163. package/cjs/notification-banner/notification-banner.js.map +1 -1
  164. package/cjs/otp-input/otp-input.js +1 -1
  165. package/cjs/otp-input/otp-input.js.map +1 -1
  166. package/cjs/otp-verification/contact-input-section.js +1 -1
  167. package/cjs/otp-verification/contact-input-section.js.map +1 -1
  168. package/cjs/otp-verification/otp-verification.js.map +1 -1
  169. package/cjs/otp-verification/verification-section.js +1 -1
  170. package/cjs/otp-verification/verification-section.js.map +1 -1
  171. package/cjs/overlay/overlay.js.map +1 -1
  172. package/cjs/pagination/pagination.js.map +1 -1
  173. package/cjs/phone-number-input/phone-number-input.js.map +1 -1
  174. package/cjs/pill/pill.js.map +1 -1
  175. package/cjs/popover/popover-inline/popover-inline.js.map +1 -1
  176. package/cjs/popover/popover.js.map +1 -1
  177. package/cjs/predictive-text-input/predictive-text-input.js +1 -1
  178. package/cjs/predictive-text-input/predictive-text-input.js.map +1 -1
  179. package/cjs/progress-indicator/progress-indicator.js.map +1 -1
  180. package/cjs/radio-button/radio-button.js.map +1 -1
  181. package/cjs/schedule/schedule.js.map +1 -1
  182. package/cjs/select-histogram/select-histogram.js.map +1 -1
  183. package/cjs/shared/dropdown-list/dropdown-list.js +1 -1
  184. package/cjs/shared/dropdown-list/dropdown-list.js.map +1 -1
  185. package/cjs/shared/dropdown-wrapper/element-with-dropdown.js +1 -1
  186. package/cjs/shared/dropdown-wrapper/element-with-dropdown.js.map +1 -1
  187. package/cjs/sidenav/sidenav.js.map +1 -1
  188. package/cjs/singpass-button/singpass-button.js.map +1 -1
  189. package/cjs/smart-app-banner/smart-app-banner.js.map +1 -1
  190. package/cjs/tab/tab.js.map +1 -1
  191. package/cjs/table/table.js.map +1 -1
  192. package/cjs/tag/tag.js.map +1 -1
  193. package/cjs/text-list/index.js.map +1 -1
  194. package/cjs/theme/theme-provider/hooks.js.map +1 -1
  195. package/cjs/theme/theme-provider/index.js.map +1 -1
  196. package/cjs/theme/tokens/border.js.map +1 -1
  197. package/cjs/theme/tokens/breakpoint.js.map +1 -1
  198. package/cjs/theme/tokens/colour.js.map +1 -1
  199. package/cjs/theme/tokens/component.js.map +1 -1
  200. package/cjs/theme/tokens/font.js.map +1 -1
  201. package/cjs/theme/tokens/media-query.js.map +1 -1
  202. package/cjs/theme/tokens/motion.js.map +1 -1
  203. package/cjs/theme/tokens/radius.js.map +1 -1
  204. package/cjs/theme/tokens/shadow.js.map +1 -1
  205. package/cjs/theme/tokens/spacing.js.map +1 -1
  206. package/cjs/theme/utils/use-apply-styles.js.map +1 -1
  207. package/cjs/theme/utils/use-design-token.js.map +1 -1
  208. package/cjs/theme/utils/use-media-query.js.map +1 -1
  209. package/cjs/time-range-picker/combobox-picker/combobox-picker.js +1 -1
  210. package/cjs/time-range-picker/combobox-picker/combobox-picker.js.map +1 -1
  211. package/cjs/time-range-picker/time-range-picker.js.map +1 -1
  212. package/cjs/time-slot-bar/time-slot-bar.js.map +1 -1
  213. package/cjs/time-slot-bar-week/time-slot-bar-week.js.map +1 -1
  214. package/cjs/time-slot-week-view/time-slot-week-view.js.map +1 -1
  215. package/cjs/timeline/timeline.js.map +1 -1
  216. package/cjs/timepicker/timepicker.js.map +1 -1
  217. package/cjs/timetable/timetable.js.map +1 -1
  218. package/cjs/toast/toast.js.map +1 -1
  219. package/cjs/toggle/toggle.js.map +1 -1
  220. package/cjs/typography/index.js.map +1 -1
  221. package/cjs/uneditable-section/index.js.map +1 -1
  222. package/cjs/uneditable-section/section-item.js +1 -1
  223. package/cjs/uneditable-section/section-item.js.map +1 -1
  224. package/cjs/unit-number/unit-number-input.js.map +1 -1
  225. package/countdown-timer/countdown-timer.js.map +1 -1
  226. package/countdown-timer/types.d.ts +3 -3
  227. package/dashed-border/dashed-border.js.map +1 -1
  228. package/data-table/data-table.js.map +1 -1
  229. package/date-input/date-input.js.map +1 -1
  230. package/date-input/types.d.ts +1 -1
  231. package/date-navigator/date-navigator.js.map +1 -1
  232. package/date-navigator/types.d.ts +1 -1
  233. package/date-range-input/date-range-input.js.map +1 -1
  234. package/date-range-input/types.d.ts +1 -1
  235. package/divider/divider.js.map +1 -1
  236. package/divider/types.d.ts +1 -1
  237. package/docs/component-catalog.json +644 -0
  238. package/drawer/drawer.js.map +1 -1
  239. package/e-signature/e-signature.js.map +1 -1
  240. package/error-display/error-display.js.map +1 -1
  241. package/feedback-rating/feedback-rating.js.map +1 -1
  242. package/file-download/file-download.js.map +1 -1
  243. package/file-download/types.d.ts +6 -1
  244. package/file-upload/file-item-edit.d.ts +1 -1
  245. package/file-upload/file-item-edit.js.map +1 -1
  246. package/file-upload/file-list/file-list.d.ts +1 -1
  247. package/file-upload/file-list/file-list.js.map +1 -1
  248. package/file-upload/file-list-item/file-list-item.d.ts +1 -1
  249. package/file-upload/file-list-item/file-list-item.js.map +1 -1
  250. package/file-upload/file-list-item/file-list-item.styles.js +1 -1
  251. package/file-upload/file-list-item/file-list-item.styles.js.map +1 -1
  252. package/file-upload/file-list-item/{file-list-item.styles_o8000f.css → file-list-item.styles_kgtfke.css} +1 -1
  253. package/file-upload/file-upload.js.map +1 -1
  254. package/file-upload/types.d.ts +6 -2
  255. package/filter/addons/filter-item-checkbox-helpers.d.ts +2 -2
  256. package/filter/addons/filter-item-checkbox-helpers.js.map +1 -1
  257. package/filter/addons/filter-item-checkbox.d.ts +1 -1
  258. package/filter/addons/filter-item-checkbox.js.map +1 -1
  259. package/filter/addons/internal-types.d.ts +12 -0
  260. package/filter/addons/types.d.ts +60 -9
  261. package/filter/filter-item.js +1 -1
  262. package/filter/filter-item.js.map +1 -1
  263. package/filter/filter.d.ts +1 -1
  264. package/filter/filter.js.map +1 -1
  265. package/filter/index.d.ts +1 -0
  266. package/filter/types.d.ts +31 -63
  267. package/footer/footer.js.map +1 -1
  268. package/form/form-custom-field/form-custom-field.js +2 -0
  269. package/form/form-custom-field/form-custom-field.js.map +1 -0
  270. package/form/form-custom-field/index.d.ts +2 -0
  271. package/form/form-custom-field/types.d.ts +7 -0
  272. package/form/form-date-input/form-date-input.js +2 -0
  273. package/form/form-date-input/form-date-input.js.map +1 -0
  274. package/form/form-date-input/index.d.ts +2 -0
  275. package/form/form-date-input/types.d.ts +8 -0
  276. package/form/form-date-range-input/form-date-range-input.js +2 -0
  277. package/form/form-date-range-input/form-date-range-input.js.map +1 -0
  278. package/form/form-date-range-input/index.d.ts +2 -0
  279. package/form/form-date-range-input/types.d.ts +8 -0
  280. package/form/form-e-signature/form-e-signature.js +2 -0
  281. package/form/form-e-signature/form-e-signature.js.map +1 -0
  282. package/form/form-e-signature/index.d.ts +2 -0
  283. package/form/form-e-signature/types.d.ts +8 -0
  284. package/form/form-histogram-slider/form-histogram-slider.js +2 -0
  285. package/form/form-histogram-slider/form-histogram-slider.js.map +1 -0
  286. package/form/form-histogram-slider/index.d.ts +2 -0
  287. package/form/form-histogram-slider/types.d.ts +8 -0
  288. package/form/form-input/form-input.js +2 -0
  289. package/form/form-input/form-input.js.map +1 -0
  290. package/form/form-input/index.d.ts +2 -0
  291. package/form/form-input/types.d.ts +8 -0
  292. package/form/form-input-group/form-input-group.js +2 -0
  293. package/form/form-input-group/form-input-group.js.map +1 -0
  294. package/form/form-input-group/index.d.ts +2 -0
  295. package/form/form-input-group/types.d.ts +10 -0
  296. package/form/form-label/form-label-addon.js +2 -0
  297. package/form/form-label/form-label-addon.js.map +1 -0
  298. package/form/form-label/form-label-addon.styles.js +2 -0
  299. package/form/form-label/form-label-addon.styles.js.map +1 -0
  300. package/form/form-label/form-label-addon.styles_aztasj.css +1 -0
  301. package/form/form-label/form-label.js +2 -0
  302. package/form/form-label/form-label.js.map +1 -0
  303. package/form/form-label/form-label.styles.js +2 -0
  304. package/form/form-label/form-label.styles.js.map +1 -0
  305. package/form/form-label/form-label.styles_180zf7j.css +6 -0
  306. package/form/form-label/index.d.ts +2 -0
  307. package/form/form-label/types.d.ts +39 -0
  308. package/form/form-masked-input/form-masked-input.js +2 -0
  309. package/form/form-masked-input/form-masked-input.js.map +1 -0
  310. package/form/form-masked-input/index.d.ts +2 -0
  311. package/form/form-masked-input/types.d.ts +8 -0
  312. package/form/form-multi-select/form-multi-select.js +2 -0
  313. package/form/form-multi-select/form-multi-select.js.map +1 -0
  314. package/form/form-multi-select/index.d.ts +2 -0
  315. package/form/form-multi-select/types.d.ts +10 -0
  316. package/form/form-nested-multi-select/form-nested-multi-select.js +2 -0
  317. package/form/form-nested-multi-select/form-nested-multi-select.js.map +1 -0
  318. package/form/form-nested-multi-select/index.d.ts +2 -0
  319. package/form/form-nested-multi-select/types.d.ts +11 -0
  320. package/form/form-nested-select/form-nested-select.js +2 -0
  321. package/form/form-nested-select/form-nested-select.js.map +1 -0
  322. package/form/form-nested-select/index.d.ts +2 -0
  323. package/form/form-nested-select/types.d.ts +11 -0
  324. package/form/{form-otp-verification.d.ts → form-otp-verification/form-otp-verification.d.ts} +1 -1
  325. package/form/form-otp-verification/form-otp-verification.js +2 -0
  326. package/form/form-otp-verification/form-otp-verification.js.map +1 -0
  327. package/form/form-otp-verification/index.d.ts +2 -0
  328. package/form/form-otp-verification/types.d.ts +1 -0
  329. package/form/form-phone-number-input/form-phone-number-input.js +2 -0
  330. package/form/form-phone-number-input/form-phone-number-input.js.map +1 -0
  331. package/form/form-phone-number-input/index.d.ts +2 -0
  332. package/form/form-phone-number-input/types.d.ts +8 -0
  333. package/form/form-predictive-text-input/form-predictive-text-input.js +2 -0
  334. package/form/form-predictive-text-input/form-predictive-text-input.js.map +1 -0
  335. package/form/form-predictive-text-input/index.d.ts +2 -0
  336. package/form/form-predictive-text-input/types.d.ts +10 -0
  337. package/form/form-range-select/form-range-select.js +2 -0
  338. package/form/form-range-select/form-range-select.js.map +1 -0
  339. package/form/form-range-select/index.d.ts +2 -0
  340. package/form/form-range-select/types.d.ts +10 -0
  341. package/form/form-range-slider/form-range-slider.js +2 -0
  342. package/form/form-range-slider/form-range-slider.js.map +1 -0
  343. package/form/form-range-slider/index.d.ts +2 -0
  344. package/form/form-range-slider/types.d.ts +8 -0
  345. package/form/form-select/form-select.js +2 -0
  346. package/form/form-select/form-select.js.map +1 -0
  347. package/form/form-select/index.d.ts +2 -0
  348. package/form/form-select/types.d.ts +10 -0
  349. package/form/form-select-histogram/form-select-histogram.js +2 -0
  350. package/form/form-select-histogram/form-select-histogram.js.map +1 -0
  351. package/form/form-select-histogram/index.d.ts +2 -0
  352. package/form/form-select-histogram/types.d.ts +8 -0
  353. package/form/form-slider/form-slider.js +2 -0
  354. package/form/form-slider/form-slider.js.map +1 -0
  355. package/form/form-slider/index.d.ts +2 -0
  356. package/form/form-slider/types.d.ts +8 -0
  357. package/form/form-textarea/form-textarea.js +2 -0
  358. package/form/form-textarea/form-textarea.js.map +1 -0
  359. package/form/form-textarea/form-textarea.styles.js +2 -0
  360. package/form/form-textarea/form-textarea.styles.js.map +1 -0
  361. package/form/form-textarea/form-textarea.styles_1kneyif.css +3 -0
  362. package/form/form-textarea/index.d.ts +2 -0
  363. package/form/form-textarea/types.d.ts +8 -0
  364. package/form/form-time-range-picker/form-time-range-picker.js +2 -0
  365. package/form/form-time-range-picker/form-time-range-picker.js.map +1 -0
  366. package/form/form-time-range-picker/index.d.ts +2 -0
  367. package/form/form-time-range-picker/types.d.ts +8 -0
  368. package/form/form-timepicker/form-timepicker.js +2 -0
  369. package/form/form-timepicker/form-timepicker.js.map +1 -0
  370. package/form/form-timepicker/index.d.ts +2 -0
  371. package/form/form-timepicker/types.d.ts +8 -0
  372. package/form/form-unit-number-input/form-unit-number-input.js +2 -0
  373. package/form/form-unit-number-input/form-unit-number-input.js.map +1 -0
  374. package/form/form-unit-number-input/index.d.ts +2 -0
  375. package/form/form-unit-number-input/types.d.ts +8 -0
  376. package/form/form-wrapper.js +1 -1
  377. package/form/form-wrapper.js.map +1 -1
  378. package/form/index.d.ts +47 -24
  379. package/form/index.js +1 -1
  380. package/form/index.js.map +1 -1
  381. package/form/types.d.ts +1 -208
  382. package/fullscreen-image-carousel/fullscreen-image-carousel.js.map +1 -1
  383. package/histogram-slider/histogram-slider.js.map +1 -1
  384. package/image-button/image-button.js.map +1 -1
  385. package/input/input.js.map +1 -1
  386. package/input-group/input-group.js.map +1 -1
  387. package/input-group/types.d.ts +1 -1
  388. package/input-multi-select/input-multi-select.js.map +1 -1
  389. package/input-multi-select/types.d.ts +1 -1
  390. package/input-nested-multi-select/input-nested-multi-select.js.map +1 -1
  391. package/input-nested-select/input-nested-select.js.map +1 -1
  392. package/input-nested-select/types.d.ts +1 -1
  393. package/input-range-select/input-range-select.js.map +1 -1
  394. package/input-range-select/types.d.ts +1 -1
  395. package/input-range-slider/input-range-slider.js.map +1 -1
  396. package/input-select/input-select.js.map +1 -1
  397. package/input-select/types.d.ts +1 -1
  398. package/input-slider/input-slider.js.map +1 -1
  399. package/input-slider/types.d.ts +1 -1
  400. package/input-textarea/textarea.js.map +1 -1
  401. package/input-textarea/textarea.styles.js +1 -1
  402. package/input-textarea/textarea.styles.js.map +1 -1
  403. package/input-textarea/{textarea.styles_22z4n3.css → textarea.styles_q77m5x.css} +1 -1
  404. package/language-switcher/language-switcher.js.map +1 -1
  405. package/layout/index.js.map +1 -1
  406. package/link-list/components/common.d.ts +1 -1
  407. package/link-list/components/common.js.map +1 -1
  408. package/link-list/components/link-list-eager.d.ts +2 -2
  409. package/link-list/components/link-list-eager.js.map +1 -1
  410. package/link-list/components/link-list-lazy.d.ts +2 -2
  411. package/link-list/components/link-list-lazy.js.map +1 -1
  412. package/link-list/link-list.js.map +1 -1
  413. package/link-list/types.d.ts +89 -3
  414. package/local-nav/local-nav-dropdown/local-nav-dropdown.js.map +1 -1
  415. package/local-nav/local-nav-menu/local-nav-menu.js.map +1 -1
  416. package/markup/markup.js.map +1 -1
  417. package/masked-input/masked-input.js.map +1 -1
  418. package/masthead/masthead.js.map +1 -1
  419. package/menu/menu.js.map +1 -1
  420. package/menu/types.d.ts +17 -1
  421. package/modal/index.js.map +1 -1
  422. package/modal/types.d.ts +3 -1
  423. package/modal-v2/modal-v2.js.map +1 -1
  424. package/modal-v2/types.d.ts +17 -0
  425. package/navbar/navbar.js.map +1 -1
  426. package/navbar/types.d.ts +1 -0
  427. package/notification-banner/notification-banner.js.map +1 -1
  428. package/otp-input/otp-input.js +1 -1
  429. package/otp-input/otp-input.js.map +1 -1
  430. package/otp-input/types.d.ts +14 -9
  431. package/otp-verification/contact-input-section.js +1 -1
  432. package/otp-verification/contact-input-section.js.map +1 -1
  433. package/otp-verification/otp-verification.js.map +1 -1
  434. package/otp-verification/verification-section.js +1 -1
  435. package/otp-verification/verification-section.js.map +1 -1
  436. package/overlay/overlay.js.map +1 -1
  437. package/package.json +1 -1
  438. package/pagination/pagination.js.map +1 -1
  439. package/phone-number-input/phone-number-input.js.map +1 -1
  440. package/pill/pill.js.map +1 -1
  441. package/popover/popover-inline/index.d.ts +1 -0
  442. package/popover/popover-inline/popover-inline.d.ts +1 -1
  443. package/popover/popover-inline/popover-inline.js.map +1 -1
  444. package/popover/popover-inline/types.d.ts +36 -0
  445. package/popover/popover.js.map +1 -1
  446. package/popover/types.d.ts +2 -35
  447. package/predictive-text-input/predictive-text-input.js +1 -1
  448. package/predictive-text-input/predictive-text-input.js.map +1 -1
  449. package/predictive-text-input/types.d.ts +1 -1
  450. package/progress-indicator/progress-indicator.js.map +1 -1
  451. package/radio-button/radio-button.js.map +1 -1
  452. package/radio-button/types.d.ts +3 -0
  453. package/schedule/schedule.js.map +1 -1
  454. package/select-histogram/select-histogram.js.map +1 -1
  455. package/select-histogram/types.d.ts +1 -1
  456. package/shared/dropdown-list/dropdown-list.js +1 -1
  457. package/shared/dropdown-list/dropdown-list.js.map +1 -1
  458. package/shared/dropdown-wrapper/element-with-dropdown.d.ts +5 -4
  459. package/shared/dropdown-wrapper/element-with-dropdown.js +1 -1
  460. package/shared/dropdown-wrapper/element-with-dropdown.js.map +1 -1
  461. package/sidenav/sidenav.js.map +1 -1
  462. package/sidenav/types.d.ts +1 -0
  463. package/singpass-button/singpass-button.js.map +1 -1
  464. package/smart-app-banner/smart-app-banner.js.map +1 -1
  465. package/smart-app-banner/types.d.ts +2 -0
  466. package/tab/tab.js.map +1 -1
  467. package/table/table.d.ts +9 -8
  468. package/table/table.js.map +1 -1
  469. package/table/types.d.ts +35 -0
  470. package/tag/tag.js.map +1 -1
  471. package/text-list/index.js.map +1 -1
  472. package/theme/theme-provider/hooks.js.map +1 -1
  473. package/theme/theme-provider/index.js.map +1 -1
  474. package/theme/tokens/border.d.ts +9 -3
  475. package/theme/tokens/border.js.map +1 -1
  476. package/theme/tokens/breakpoint.js.map +1 -1
  477. package/theme/tokens/colour.d.ts +9 -3
  478. package/theme/tokens/colour.js.map +1 -1
  479. package/theme/tokens/component.d.ts +3 -1
  480. package/theme/tokens/component.js.map +1 -1
  481. package/theme/tokens/font.d.ts +6 -2
  482. package/theme/tokens/font.js.map +1 -1
  483. package/theme/tokens/media-query.d.ts +3 -1
  484. package/theme/tokens/media-query.js.map +1 -1
  485. package/theme/tokens/motion.d.ts +3 -1
  486. package/theme/tokens/motion.js.map +1 -1
  487. package/theme/tokens/radius.d.ts +3 -1
  488. package/theme/tokens/radius.js.map +1 -1
  489. package/theme/tokens/shadow.d.ts +3 -1
  490. package/theme/tokens/shadow.js.map +1 -1
  491. package/theme/tokens/spacing.d.ts +3 -1
  492. package/theme/tokens/spacing.js.map +1 -1
  493. package/theme/utils/use-apply-styles.js.map +1 -1
  494. package/theme/utils/use-design-token.js.map +1 -1
  495. package/theme/utils/use-media-query.js.map +1 -1
  496. package/time-range-picker/combobox-picker/combobox-picker.js +1 -1
  497. package/time-range-picker/combobox-picker/combobox-picker.js.map +1 -1
  498. package/time-range-picker/time-range-picker.js.map +1 -1
  499. package/time-range-picker/types.d.ts +1 -1
  500. package/time-slot-bar/time-slot-bar.js.map +1 -1
  501. package/time-slot-bar/types.d.ts +5 -1
  502. package/time-slot-bar-week/time-slot-bar-week.js.map +1 -1
  503. package/time-slot-bar-week/types.d.ts +6 -0
  504. package/time-slot-week-view/time-slot-week-view.js.map +1 -1
  505. package/time-slot-week-view/types.d.ts +2 -0
  506. package/timeline/timeline.js.map +1 -1
  507. package/timeline/types.d.ts +1 -1
  508. package/timepicker/timepicker.js.map +1 -1
  509. package/timepicker/types.d.ts +2 -2
  510. package/timetable/timetable.js.map +1 -1
  511. package/toast/toast.js.map +1 -1
  512. package/toast/types.d.ts +2 -0
  513. package/toggle/toggle.js.map +1 -1
  514. package/tools/shared/generated-file-formatter.d.ts +6 -0
  515. package/tools/shared/jsdoc-parser.d.ts +36 -0
  516. package/tools/shared/ts-morph-project-factory.d.ts +9 -0
  517. package/tools/shared/typescript-source-provider.d.ts +9 -0
  518. package/tools/storybook-argtypes/adapters/file-system-adapter.d.ts +69 -0
  519. package/tools/storybook-argtypes/arg-types-generator.d.ts +85 -0
  520. package/tools/storybook-argtypes/config/arg-types-config.d.ts +31 -0
  521. package/tools/storybook-argtypes/index.d.ts +11 -0
  522. package/tools/storybook-argtypes/services/arg-types-row-builder.d.ts +43 -0
  523. package/tools/storybook-argtypes/services/file-path-resolver.d.ts +118 -0
  524. package/tools/storybook-argtypes/services/index.d.ts +6 -0
  525. package/tools/storybook-argtypes/services/jsdoc-metadata-extractor.d.ts +33 -0
  526. package/tools/storybook-argtypes/services/story-registry-generator.d.ts +27 -0
  527. package/tools/storybook-argtypes/services/type-dependency-resolver.d.ts +46 -0
  528. package/tools/storybook-argtypes/services/type-formatting-service.d.ts +27 -0
  529. package/tools/storybook-argtypes/types.d.ts +102 -0
  530. package/typography/index.js.map +1 -1
  531. package/uneditable-section/index.js.map +1 -1
  532. package/uneditable-section/section-item.js +1 -1
  533. package/uneditable-section/section-item.js.map +1 -1
  534. package/uneditable-section/types.d.ts +2 -2
  535. package/unit-number/unit-number-input.js.map +1 -1
  536. package/cjs/form/form-custom-field.js +0 -2
  537. package/cjs/form/form-custom-field.js.map +0 -1
  538. package/cjs/form/form-date-input.js +0 -2
  539. package/cjs/form/form-date-input.js.map +0 -1
  540. package/cjs/form/form-date-range-input.js +0 -2
  541. package/cjs/form/form-date-range-input.js.map +0 -1
  542. package/cjs/form/form-e-signature.js +0 -2
  543. package/cjs/form/form-e-signature.js.map +0 -1
  544. package/cjs/form/form-histogram.js +0 -2
  545. package/cjs/form/form-histogram.js.map +0 -1
  546. package/cjs/form/form-input-group.js +0 -2
  547. package/cjs/form/form-input-group.js.map +0 -1
  548. package/cjs/form/form-input.js +0 -2
  549. package/cjs/form/form-input.js.map +0 -1
  550. package/cjs/form/form-label-addon.js +0 -2
  551. package/cjs/form/form-label-addon.js.map +0 -1
  552. package/cjs/form/form-label-addon.styles.js +0 -2
  553. package/cjs/form/form-label-addon.styles.js.map +0 -1
  554. package/cjs/form/form-label-addon.styles_b00z8p.css +0 -1
  555. package/cjs/form/form-label.js +0 -2
  556. package/cjs/form/form-label.js.map +0 -1
  557. package/cjs/form/form-label.styles.js +0 -2
  558. package/cjs/form/form-label.styles.js.map +0 -1
  559. package/cjs/form/form-label.styles_1nbe0bm.css +0 -6
  560. package/cjs/form/form-masked-input.js +0 -2
  561. package/cjs/form/form-masked-input.js.map +0 -1
  562. package/cjs/form/form-multi-select.js +0 -2
  563. package/cjs/form/form-multi-select.js.map +0 -1
  564. package/cjs/form/form-nested-multi-select.js +0 -2
  565. package/cjs/form/form-nested-multi-select.js.map +0 -1
  566. package/cjs/form/form-nested-select.js +0 -2
  567. package/cjs/form/form-nested-select.js.map +0 -1
  568. package/cjs/form/form-otp-verification.js +0 -2
  569. package/cjs/form/form-otp-verification.js.map +0 -1
  570. package/cjs/form/form-phone-number-input.js +0 -2
  571. package/cjs/form/form-phone-number-input.js.map +0 -1
  572. package/cjs/form/form-predictive-text-input.js +0 -2
  573. package/cjs/form/form-predictive-text-input.js.map +0 -1
  574. package/cjs/form/form-range-select.js +0 -2
  575. package/cjs/form/form-range-select.js.map +0 -1
  576. package/cjs/form/form-range-slider.js +0 -2
  577. package/cjs/form/form-range-slider.js.map +0 -1
  578. package/cjs/form/form-select-histogram.js +0 -2
  579. package/cjs/form/form-select-histogram.js.map +0 -1
  580. package/cjs/form/form-select.js +0 -2
  581. package/cjs/form/form-select.js.map +0 -1
  582. package/cjs/form/form-slider.js +0 -2
  583. package/cjs/form/form-slider.js.map +0 -1
  584. package/cjs/form/form-textarea.js +0 -2
  585. package/cjs/form/form-textarea.js.map +0 -1
  586. package/cjs/form/form-textarea.styles.js +0 -2
  587. package/cjs/form/form-textarea.styles.js.map +0 -1
  588. package/cjs/form/form-textarea.styles_3p9qoy.css +0 -3
  589. package/cjs/form/form-time-range-picker.js +0 -2
  590. package/cjs/form/form-time-range-picker.js.map +0 -1
  591. package/cjs/form/form-timepicker.js +0 -2
  592. package/cjs/form/form-timepicker.js.map +0 -1
  593. package/cjs/form/form-unit-number-input.js +0 -2
  594. package/cjs/form/form-unit-number-input.js.map +0 -1
  595. package/form/form-custom-field.js +0 -2
  596. package/form/form-custom-field.js.map +0 -1
  597. package/form/form-date-input.js +0 -2
  598. package/form/form-date-input.js.map +0 -1
  599. package/form/form-date-range-input.js +0 -2
  600. package/form/form-date-range-input.js.map +0 -1
  601. package/form/form-e-signature.js +0 -2
  602. package/form/form-e-signature.js.map +0 -1
  603. package/form/form-histogram.js +0 -2
  604. package/form/form-histogram.js.map +0 -1
  605. package/form/form-input-group.js +0 -2
  606. package/form/form-input-group.js.map +0 -1
  607. package/form/form-input.js +0 -2
  608. package/form/form-input.js.map +0 -1
  609. package/form/form-label-addon.js +0 -2
  610. package/form/form-label-addon.js.map +0 -1
  611. package/form/form-label-addon.styles.js +0 -2
  612. package/form/form-label-addon.styles.js.map +0 -1
  613. package/form/form-label-addon.styles_b00z8p.css +0 -1
  614. package/form/form-label.js +0 -2
  615. package/form/form-label.js.map +0 -1
  616. package/form/form-label.styles.js +0 -2
  617. package/form/form-label.styles.js.map +0 -1
  618. package/form/form-label.styles_1nbe0bm.css +0 -6
  619. package/form/form-masked-input.js +0 -2
  620. package/form/form-masked-input.js.map +0 -1
  621. package/form/form-multi-select.js +0 -2
  622. package/form/form-multi-select.js.map +0 -1
  623. package/form/form-nested-multi-select.js +0 -2
  624. package/form/form-nested-multi-select.js.map +0 -1
  625. package/form/form-nested-select.js +0 -2
  626. package/form/form-nested-select.js.map +0 -1
  627. package/form/form-otp-verification.js +0 -2
  628. package/form/form-otp-verification.js.map +0 -1
  629. package/form/form-phone-number-input.js +0 -2
  630. package/form/form-phone-number-input.js.map +0 -1
  631. package/form/form-predictive-text-input.js +0 -2
  632. package/form/form-predictive-text-input.js.map +0 -1
  633. package/form/form-range-select.js +0 -2
  634. package/form/form-range-select.js.map +0 -1
  635. package/form/form-range-slider.js +0 -2
  636. package/form/form-range-slider.js.map +0 -1
  637. package/form/form-select-histogram.js +0 -2
  638. package/form/form-select-histogram.js.map +0 -1
  639. package/form/form-select.js +0 -2
  640. package/form/form-select.js.map +0 -1
  641. package/form/form-slider.js +0 -2
  642. package/form/form-slider.js.map +0 -1
  643. package/form/form-textarea.js +0 -2
  644. package/form/form-textarea.js.map +0 -1
  645. package/form/form-textarea.styles.js +0 -2
  646. package/form/form-textarea.styles.js.map +0 -1
  647. package/form/form-textarea.styles_3p9qoy.css +0 -3
  648. package/form/form-time-range-picker.js +0 -2
  649. package/form/form-time-range-picker.js.map +0 -1
  650. package/form/form-timepicker.js +0 -2
  651. package/form/form-timepicker.js.map +0 -1
  652. package/form/form-unit-number-input.js +0 -2
  653. package/form/form-unit-number-input.js.map +0 -1
  654. package/link-list/internal-types.d.ts +0 -85
  655. /package/{codemod-utils.d.ts → codemods/codemod-utils.d.ts} +0 -0
  656. /package/{migrate-popover → codemods/migrate-popover}/index.d.ts +0 -0
  657. /package/{run-codemod.d.ts → codemods/run-codemod.d.ts} +0 -0
  658. /package/form/{form-custom-field.d.ts → form-custom-field/form-custom-field.d.ts} +0 -0
  659. /package/form/{form-date-input.d.ts → form-date-input/form-date-input.d.ts} +0 -0
  660. /package/form/{form-date-range-input.d.ts → form-date-range-input/form-date-range-input.d.ts} +0 -0
  661. /package/form/{form-e-signature.d.ts → form-e-signature/form-e-signature.d.ts} +0 -0
  662. /package/form/{form-histogram.d.ts → form-histogram-slider/form-histogram-slider.d.ts} +0 -0
  663. /package/form/{form-input.d.ts → form-input/form-input.d.ts} +0 -0
  664. /package/form/{form-input-group.d.ts → form-input-group/form-input-group.d.ts} +0 -0
  665. /package/form/{form-label-addon.d.ts → form-label/form-label-addon.d.ts} +0 -0
  666. /package/form/{form-label-addon.styles.d.ts → form-label/form-label-addon.styles.d.ts} +0 -0
  667. /package/form/{form-label.d.ts → form-label/form-label.d.ts} +0 -0
  668. /package/form/{form-label.styles.d.ts → form-label/form-label.styles.d.ts} +0 -0
  669. /package/form/{form-masked-input.d.ts → form-masked-input/form-masked-input.d.ts} +0 -0
  670. /package/form/{form-multi-select.d.ts → form-multi-select/form-multi-select.d.ts} +0 -0
  671. /package/form/{form-nested-multi-select.d.ts → form-nested-multi-select/form-nested-multi-select.d.ts} +0 -0
  672. /package/form/{form-nested-select.d.ts → form-nested-select/form-nested-select.d.ts} +0 -0
  673. /package/form/{form-phone-number-input.d.ts → form-phone-number-input/form-phone-number-input.d.ts} +0 -0
  674. /package/form/{form-predictive-text-input.d.ts → form-predictive-text-input/form-predictive-text-input.d.ts} +0 -0
  675. /package/form/{form-range-select.d.ts → form-range-select/form-range-select.d.ts} +0 -0
  676. /package/form/{form-range-slider.d.ts → form-range-slider/form-range-slider.d.ts} +0 -0
  677. /package/form/{form-select.d.ts → form-select/form-select.d.ts} +0 -0
  678. /package/form/{form-select-histogram.d.ts → form-select-histogram/form-select-histogram.d.ts} +0 -0
  679. /package/form/{form-slider.d.ts → form-slider/form-slider.d.ts} +0 -0
  680. /package/form/{form-textarea.d.ts → form-textarea/form-textarea.d.ts} +0 -0
  681. /package/form/{form-textarea.styles.d.ts → form-textarea/form-textarea.styles.d.ts} +0 -0
  682. /package/form/{form-time-range-picker.d.ts → form-time-range-picker/form-time-range-picker.d.ts} +0 -0
  683. /package/form/{form-timepicker.d.ts → form-timepicker/form-timepicker.d.ts} +0 -0
  684. /package/form/{form-unit-number-input.d.ts → form-unit-number-input/form-unit-number-input.d.ts} +0 -0
package/filter/types.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import type { CSSProperties, ReactNode } from "react";
2
2
  import type { ButtonStyleType } from "../button/types";
3
- import type { FormLabelAddonProps } from "../form/types";
3
+ import type { FormLabelAddonProps } from "../form/form-label/types";
4
4
  import type { Insets } from "../shared/types";
5
5
  /**
6
6
  * Rendering context for the filter panel.
@@ -9,13 +9,43 @@ import type { Insets } from "../shared/types";
9
9
  */
10
10
  export type Mode = "default" | "mobile";
11
11
  interface FilterSidebarCustomLabelProps {
12
+ /**
13
+ * The title of the filter header
14
+ *
15
+ * @default "Filters"
16
+ */
12
17
  headerTitle?: string | undefined;
18
+ /**
19
+ * The display label of the `Clear` button
20
+ *
21
+ * @default "Clear"
22
+ */
13
23
  clearButtonLabel?: string | undefined;
14
24
  }
15
25
  interface FilterModalCustomLabelProps {
26
+ /**
27
+ * The title of the filter header
28
+ *
29
+ * @default "Filters"
30
+ */
16
31
  headerTitle?: string | undefined;
32
+ /**
33
+ * The display label of the filter toggle button (in mobile)
34
+ *
35
+ * @default "Filters"
36
+ */
17
37
  toggleFilterButtonLabel?: string | undefined;
38
+ /**
39
+ * The display label of the `Done` button (in mobile)
40
+ *
41
+ * @default "Done"
42
+ */
18
43
  doneButtonLabel?: string | undefined;
44
+ /**
45
+ * The display label of the `Clear` button
46
+ *
47
+ * @default "Clear"
48
+ */
19
49
  clearButtonLabel?: string | undefined;
20
50
  }
21
51
  /**
@@ -181,66 +211,4 @@ export interface FilterPageProps {
181
211
  /** Called when the done button is pressed. */
182
212
  onDone?: (() => void) | undefined;
183
213
  }
184
- /**
185
- * Default shape for a checkbox option in `Filter.Checkbox`.
186
- *
187
- * Nest `options` to create hierarchical groups with parent-level
188
- * select/deselect all behavior.
189
- */
190
- export interface FilterItemCheckboxOptionProps {
191
- value: any;
192
- label: string;
193
- /** Nested child options. Providing children makes this item a parent node. */
194
- options?: FilterItemCheckboxOptionProps[] | undefined;
195
- }
196
- /**
197
- * Props for the `Filter.Checkbox` sub-component.
198
- *
199
- * Supply a generic type `T` to use a custom option shape together with
200
- * `labelExtractor` and `valueExtractor`.
201
- */
202
- export interface FilterItemCheckboxProps<T = FilterItemCheckboxOptionProps> extends Omit<FilterItemProps, "children"> {
203
- /** The full list of selectable options. */
204
- options: T[];
205
- /**
206
- * The currently selected options. When provided, the component syncs its
207
- * internal selection state to this value.
208
- */
209
- selectedOptions?: T[] | undefined;
210
- /**
211
- * Called when the selection changes.
212
- *
213
- * @param options The updated array of selected options.
214
- */
215
- onSelect?: ((options: T[]) => void) | undefined;
216
- /**
217
- * Derives the display label from an option item.
218
- * Falls back to `item.label` when not provided.
219
- */
220
- labelExtractor?: ((item: T) => React.ReactNode) | undefined;
221
- /**
222
- * Derives the unique value key from an option item.
223
- * Falls back to `item.value` when not provided.
224
- */
225
- valueExtractor?: ((item: T) => string) | undefined;
226
- /**
227
- * When `true`, toggle chips in mobile mode grow to fit their content width
228
- * instead of stretching to a fixed minimum width.
229
- */
230
- useToggleContentWidth?: boolean | undefined;
231
- /**
232
- * When `true`, renders checkboxes instead of toggle chips in mobile mode.
233
- * Has no effect for nested option trees, which always use checkboxes.
234
- *
235
- * @default false
236
- */
237
- showAsCheckboxInMobile?: boolean | undefined;
238
- /**
239
- * When `true`, shows a "View more / View less" button when there are more
240
- * options than the minimised threshold.
241
- *
242
- * @default true
243
- */
244
- minimisableOptions?: boolean | undefined;
245
- }
246
214
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"footer.js","sources":["../../src/footer/footer.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport type React from \"react\";\nimport { useContext } from \"react\";\n\nimport { Divider } from \"../divider\";\nimport { Layout } from \"../layout\";\nimport { ThemeContext } from \"../theme/theme-provider/context\";\nimport { Typography } from \"../typography\";\nimport * as styles from \"./footer.styles\";\nimport { DownloadApp } from \"./footer-download-app\";\nimport type { InternalDisclaimerLinks } from \"./footer-helper\";\nimport { FooterHelper } from \"./footer-helper\";\nimport { ResourceAddon } from \"./footer-resource-addon\";\nimport type { FooterLinkProps, FooterProps } from \"./types\";\n\n/**\n * Site-wide footer with navigation links, branding, and legal copy.\n *\n * Use `Footer` at the bottom of a page to surface navigation links grouped\n * into columns, a theme-appropriate logo, download-app or resource add-ons,\n * and disclaimer links with auto-generated copyright text.\n */\nexport const Footer = <T,>({\n children,\n links,\n lastUpdated,\n disclaimerLinks,\n showDownloadAddon,\n showResourceAddon,\n logoSrc,\n logoAlt = \"\",\n copyrightInfo,\n onFooterLinkClick,\n layout = \"default\",\n hideLogo,\n className,\n ...otherProps\n}: FooterProps<T>) => {\n // =============================================================================\n // CONST, STATE, REFS\n // =============================================================================\n const isStretch = layout === \"stretch\";\n const theme = useContext(ThemeContext);\n // =============================================================================\n // EVENT HANDLERS\n // =============================================================================\n const handleLinkClick = <K extends T>(\n event: React.MouseEvent<HTMLAnchorElement>,\n item: FooterLinkProps<K>\n ) => {\n /**\n * Individual link onClick will override\n * the onFooterLinkClick callback\n */\n if (item.onClick) {\n event.preventDefault();\n item.onClick(event);\n } else if (onFooterLinkClick) {\n event.preventDefault();\n onFooterLinkClick(item);\n } else {\n // do nothing, let default behaviour happen\n }\n };\n\n // =============================================================================\n // RENDER FUNCTIONS\n // =============================================================================\n const renderDisclaimerLinks = () => {\n const links = FooterHelper.getDisclaimerLinks(\n theme?.theme,\n disclaimerLinks\n );\n\n return (Object.keys(links) as (keyof InternalDisclaimerLinks)[]).map(\n (key) => {\n return (\n <Typography.LinkXS\n key={key}\n underlineStyle=\"none\"\n className={styles.disclaimerTextLink}\n {...links[key]}\n />\n );\n }\n );\n };\n\n const renderFooterLinks = (links: FooterLinkProps<T>[]) => {\n return links.map((link, index) => {\n const { \"data-options\": _options, ...otherProps } = link;\n\n return (\n <li key={index}>\n <Typography.LinkMD\n underlineStyle=\"none\"\n className={styles.footerLink}\n {...otherProps}\n onClick={(event) => handleLinkClick(event, link)}\n />\n </li>\n );\n });\n };\n\n const renderTopSection = () => {\n let component: React.ReactNode = null;\n\n if (children) {\n return children;\n }\n\n if (links || showDownloadAddon) {\n const { src, alt, logoType, ...otherLogoAttributes } =\n FooterHelper.getFooterLogoAttribute(theme?.theme);\n component = (\n <>\n {(logoSrc || src) && !hideLogo && (\n <div\n data-testid=\"logo-section\"\n className={styles.logoSection}\n >\n <img\n src={logoSrc || src}\n data-testid=\"logo\"\n className={clsx(\n styles.logoImage,\n logoType && styles.logoSize[logoType]\n )}\n alt={logoAlt || alt}\n {...otherLogoAttributes}\n />\n </div>\n )}\n <div className={styles.linkSectionWrapper}>\n {links?.map((columnLinks, columnIndex) => (\n <ul\n key={`link-col-${columnIndex}`}\n data-testid={`link-col-${columnIndex}`}\n className={styles.linkSection}\n >\n {renderFooterLinks(columnLinks)}\n </ul>\n ))}\n </div>\n {showDownloadAddon && (\n <div className={styles.addonSection}>\n <DownloadApp />\n </div>\n )}\n {/* when showDownloadAddon and showResourceAddon are enabled, showDownloadAddon should take priority to being rendered */}\n {!showDownloadAddon && showResourceAddon && (\n <div className={styles.addonSection}>\n <ResourceAddon />\n </div>\n )}\n </>\n );\n }\n\n if (component) {\n return (\n <>\n <Layout.Content\n className={styles.topSection}\n stretch={isStretch}\n >\n {component}\n </Layout.Content>\n <Divider className={styles.fullWidthDivider} />\n </>\n );\n }\n\n return null;\n };\n return (\n <footer {...otherProps} className={clsx(styles.baseFooter, className)}>\n {renderTopSection()}\n <Layout.Content\n className={styles.bottomSection}\n stretch={isStretch}\n >\n <div key=\"disclaimer\" className={styles.bottomSectionContent}>\n {renderDisclaimerLinks()}\n </div>\n <div\n key=\"copyright\"\n className={clsx(\n styles.bottomSectionContent,\n styles.copyrightSection\n )}\n >\n <Typography.BodyXS\n data-testid={\"copyright-text\"}\n className={styles.copyrightText}\n >\n {copyrightInfo || (\n <>\n &copy;{\" \"}\n {FooterHelper.getCopyrightInfo(\n lastUpdated,\n theme?.theme\n )}\n </>\n )}\n </Typography.BodyXS>\n </div>\n </Layout.Content>\n </footer>\n );\n};\n"],"names":["Footer","_a","children","links","lastUpdated","disclaimerLinks","showDownloadAddon","showResourceAddon","logoSrc","logoAlt","copyrightInfo","onFooterLinkClick","layout","hideLogo","className","otherProps","__rest","isStretch","theme","useContext","ThemeContext","renderFooterLinks","map","link","index","_options","_jsx","Typography","LinkMD","Object","assign","underlineStyle","styles.footerLink","onClick","event","item","preventDefault","handleLinkClick","_jsxs","clsx","styles.baseFooter","component","FooterHelper","getFooterLogoAttribute","src","alt","logoType","otherLogoAttributes","_Fragment","styles.logoSection","styles.logoImage","styles.logoSize","styles.linkSectionWrapper","columnLinks","columnIndex","styles.linkSection","styles.addonSection","DownloadApp","ResourceAddon","Layout","Content","styles.topSection","stretch","Divider","styles.fullWidthDivider","renderTopSection","styles.bottomSection","styles.bottomSectionContent","getDisclaimerLinks","keys","key","LinkXS","styles.disclaimerTextLink","renderDisclaimerLinks","styles.copyrightSection","BodyXS","styles.copyrightText","getCopyrightInfo"],"mappings":"y1BAsBO,MAAMA,EAAcC,IAAA,IAAAC,SACvBA,EAAQC,MACRA,EAAKC,YACLA,EAAWC,gBACXA,EAAeC,kBACfA,EAAiBC,kBACjBA,EAAiBC,QACjBA,EAAOC,QACPA,EAAU,GAAEC,cACZA,EAAaC,kBACbA,EAAiBC,OACjBA,EAAS,UAASC,SAClBA,EAAQC,UACRA,GAASb,EACNc,EAAUC,EAAAf,EAdU,sLAmBvB,MAAMgB,EAAuB,YAAXL,EACZM,EAAQC,EAAWC,GA8CnBC,EAAqBlB,GAChBA,EAAMmB,KAAI,CAACC,EAAMC,KACpB,MAAQ,eAAgBC,GAA4BF,EAAfR,EAAUC,EAAKO,EAA9C,CAAA,iBAEN,OACIG,EAAA,KAAA,CAAAxB,SACIwB,EAACC,EAAWC,OAAMC,OAAAC,OAAA,CACdC,eAAe,OACfjB,UAAWkB,GACPjB,EAAU,CACdkB,QAAUC,GApDN,EACpBA,EACAC,KAMIA,EAAKF,SACLC,EAAME,iBACND,EAAKF,QAAQC,IACNvB,IACPuB,EAAME,iBACNzB,EAAkBwB,GACf,EAsC6BE,CAAgBH,EAAOX,OAL1CC,EAOJ,IA4EjB,OACIc,4BAAYvB,EAAU,CAAED,UAAWyB,EAAKC,EAAmB1B,aAxEtC,MACrB,IAAI2B,EAA6B,KAEjC,GAAIvC,EACA,OAAOA,EAGX,GAAIC,GAASG,EAAmB,CAC5B,MAAML,EACFyC,EAAaC,uBAAuBzB,aAAK,EAALA,EAAOA,QADzC0B,IAAEA,EAAGC,IAAEA,EAAGC,SAAEA,GAAQ7C,EAAK8C,EAAmB/B,EAAAf,EAA5C,CAAA,MAAA,MAAA,aAENwC,EACIH,EAAAU,EAAA,CAAA9C,SAAA,EACMM,GAAWoC,KAAS/B,GAClBa,uBACgB,eACZZ,UAAWmC,EAAkB/C,SAE7BwB,uBACIkB,IAAKpC,GAAWoC,EAAG,cACP,OACZ9B,UAAWyB,EACPW,EACAJ,GAAYK,EAAgBL,IAEhCD,IAAKpC,GAAWoC,GACZE,MAIhBrB,EAAA,MAAA,CAAKZ,UAAWsC,EAAyBlD,SACpCC,aAAK,EAALA,EAAOmB,KAAI,CAAC+B,EAAaC,IACtB5B,EAAA,KAAA,CAAA,cAEiB,YAAY4B,IACzBxC,UAAWyC,EAAkBrD,SAE5BmB,EAAkBgC,IAJd,YAAYC,SAQ5BhD,GACGoB,EAAA,MAAA,CAAKZ,UAAW0C,EAAmBtD,SAC/BwB,EAAC+B,EAAW,OAIlBnD,GAAqBC,GACnBmB,EAAA,MAAA,CAAKZ,UAAW0C,EAAmBtD,SAC/BwB,EAACgC,EAAa,QAKlC,CAEA,OAAIjB,EAEIH,EAAAU,EAAA,CAAA9C,SAAA,CACIwB,EAACiC,EAAOC,QAAO,CACX9C,UAAW+C,EACXC,QAAS7C,EAASf,SAEjBuC,IAELf,EAACqC,EAAO,CAACjD,UAAWkD,OAKzB,IAAI,EAINC,GACD3B,EAACqB,EAAOC,QAAO,CACX9C,UAAWoD,EACXJ,QAAS7C,EAASf,SAAA,CAElBwB,EAAA,MAAA,CAAsBZ,UAAWqD,EAA2BjE,SAnH1C,MAC1B,MAAMC,EAAQuC,EAAa0B,mBACvBlD,aAAK,EAALA,EAAOA,MACPb,GAGJ,OAAQwB,OAAOwC,KAAKlE,GAA6CmB,KAC5DgD,GAEO5C,EAACC,EAAW4C,sBAERxC,eAAe,OACfjB,UAAW0D,GACPrE,EAAMmE,IAHLA,IAOpB,EAmGYG,IADI,cAGT/C,EAAA,MAAA,CAEIZ,UAAWyB,EACP4B,EACAO,GACHxE,SAEDwB,EAACC,EAAWgD,sBACK,iBACb7D,UAAW8D,EAAoB1E,SAE9BQ,GACG4B,EAAAU,EAAA,CAAA9C,SAAA,CAAA,IACW,IACNwC,EAAamC,iBACVzE,EACAc,aAAK,EAALA,EAAOA,aAfnB,mBAsBP"}
1
+ {"version":3,"file":"footer.js","sources":["../../src/footer/footer.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport type React from \"react\";\nimport { useContext } from \"react\";\n\nimport { Divider } from \"../divider\";\nimport { Layout } from \"../layout\";\nimport { ThemeContext } from \"../theme/theme-provider/context\";\nimport { Typography } from \"../typography\";\nimport * as styles from \"./footer.styles\";\nimport { DownloadApp } from \"./footer-download-app\";\nimport type { InternalDisclaimerLinks } from \"./footer-helper\";\nimport { FooterHelper } from \"./footer-helper\";\nimport { ResourceAddon } from \"./footer-resource-addon\";\nimport type { FooterLinkProps, FooterProps } from \"./types\";\n\n// @catalog\n/**\n * Site-wide footer with navigation links, branding, and legal copy.\n *\n * Use `Footer` at the bottom of a page to surface navigation links grouped\n * into columns, a theme-appropriate logo, download-app or resource add-ons,\n * and disclaimer links with auto-generated copyright text.\n */\nexport const Footer = <T,>({\n children,\n links,\n lastUpdated,\n disclaimerLinks,\n showDownloadAddon,\n showResourceAddon,\n logoSrc,\n logoAlt = \"\",\n copyrightInfo,\n onFooterLinkClick,\n layout = \"default\",\n hideLogo,\n className,\n ...otherProps\n}: FooterProps<T>) => {\n // =============================================================================\n // CONST, STATE, REFS\n // =============================================================================\n const isStretch = layout === \"stretch\";\n const theme = useContext(ThemeContext);\n // =============================================================================\n // EVENT HANDLERS\n // =============================================================================\n const handleLinkClick = <K extends T>(\n event: React.MouseEvent<HTMLAnchorElement>,\n item: FooterLinkProps<K>\n ) => {\n /**\n * Individual link onClick will override\n * the onFooterLinkClick callback\n */\n if (item.onClick) {\n event.preventDefault();\n item.onClick(event);\n } else if (onFooterLinkClick) {\n event.preventDefault();\n onFooterLinkClick(item);\n } else {\n // do nothing, let default behaviour happen\n }\n };\n\n // =============================================================================\n // RENDER FUNCTIONS\n // =============================================================================\n const renderDisclaimerLinks = () => {\n const links = FooterHelper.getDisclaimerLinks(\n theme?.theme,\n disclaimerLinks\n );\n\n return (Object.keys(links) as (keyof InternalDisclaimerLinks)[]).map(\n (key) => {\n return (\n <Typography.LinkXS\n key={key}\n underlineStyle=\"none\"\n className={styles.disclaimerTextLink}\n {...links[key]}\n />\n );\n }\n );\n };\n\n const renderFooterLinks = (links: FooterLinkProps<T>[]) => {\n return links.map((link, index) => {\n const { \"data-options\": _options, ...otherProps } = link;\n\n return (\n <li key={index}>\n <Typography.LinkMD\n underlineStyle=\"none\"\n className={styles.footerLink}\n {...otherProps}\n onClick={(event) => handleLinkClick(event, link)}\n />\n </li>\n );\n });\n };\n\n const renderTopSection = () => {\n let component: React.ReactNode = null;\n\n if (children) {\n return children;\n }\n\n if (links || showDownloadAddon) {\n const { src, alt, logoType, ...otherLogoAttributes } =\n FooterHelper.getFooterLogoAttribute(theme?.theme);\n component = (\n <>\n {(logoSrc || src) && !hideLogo && (\n <div\n data-testid=\"logo-section\"\n className={styles.logoSection}\n >\n <img\n src={logoSrc || src}\n data-testid=\"logo\"\n className={clsx(\n styles.logoImage,\n logoType && styles.logoSize[logoType]\n )}\n alt={logoAlt || alt}\n {...otherLogoAttributes}\n />\n </div>\n )}\n <div className={styles.linkSectionWrapper}>\n {links?.map((columnLinks, columnIndex) => (\n <ul\n key={`link-col-${columnIndex}`}\n data-testid={`link-col-${columnIndex}`}\n className={styles.linkSection}\n >\n {renderFooterLinks(columnLinks)}\n </ul>\n ))}\n </div>\n {showDownloadAddon && (\n <div className={styles.addonSection}>\n <DownloadApp />\n </div>\n )}\n {/* when showDownloadAddon and showResourceAddon are enabled, showDownloadAddon should take priority to being rendered */}\n {!showDownloadAddon && showResourceAddon && (\n <div className={styles.addonSection}>\n <ResourceAddon />\n </div>\n )}\n </>\n );\n }\n\n if (component) {\n return (\n <>\n <Layout.Content\n className={styles.topSection}\n stretch={isStretch}\n >\n {component}\n </Layout.Content>\n <Divider className={styles.fullWidthDivider} />\n </>\n );\n }\n\n return null;\n };\n return (\n <footer {...otherProps} className={clsx(styles.baseFooter, className)}>\n {renderTopSection()}\n <Layout.Content\n className={styles.bottomSection}\n stretch={isStretch}\n >\n <div key=\"disclaimer\" className={styles.bottomSectionContent}>\n {renderDisclaimerLinks()}\n </div>\n <div\n key=\"copyright\"\n className={clsx(\n styles.bottomSectionContent,\n styles.copyrightSection\n )}\n >\n <Typography.BodyXS\n data-testid={\"copyright-text\"}\n className={styles.copyrightText}\n >\n {copyrightInfo || (\n <>\n &copy;{\" \"}\n {FooterHelper.getCopyrightInfo(\n lastUpdated,\n theme?.theme\n )}\n </>\n )}\n </Typography.BodyXS>\n </div>\n </Layout.Content>\n </footer>\n );\n};\n"],"names":["Footer","_a","children","links","lastUpdated","disclaimerLinks","showDownloadAddon","showResourceAddon","logoSrc","logoAlt","copyrightInfo","onFooterLinkClick","layout","hideLogo","className","otherProps","__rest","isStretch","theme","useContext","ThemeContext","renderFooterLinks","map","link","index","_options","_jsx","Typography","LinkMD","Object","assign","underlineStyle","styles.footerLink","onClick","event","item","preventDefault","handleLinkClick","_jsxs","clsx","styles.baseFooter","component","FooterHelper","getFooterLogoAttribute","src","alt","logoType","otherLogoAttributes","_Fragment","styles.logoSection","styles.logoImage","styles.logoSize","styles.linkSectionWrapper","columnLinks","columnIndex","styles.linkSection","styles.addonSection","DownloadApp","ResourceAddon","Layout","Content","styles.topSection","stretch","Divider","styles.fullWidthDivider","renderTopSection","styles.bottomSection","styles.bottomSectionContent","getDisclaimerLinks","keys","key","LinkXS","styles.disclaimerTextLink","renderDisclaimerLinks","styles.copyrightSection","BodyXS","styles.copyrightText","getCopyrightInfo"],"mappings":"y1BAuBO,MAAMA,EAAcC,IAAA,IAAAC,SACvBA,EAAQC,MACRA,EAAKC,YACLA,EAAWC,gBACXA,EAAeC,kBACfA,EAAiBC,kBACjBA,EAAiBC,QACjBA,EAAOC,QACPA,EAAU,GAAEC,cACZA,EAAaC,kBACbA,EAAiBC,OACjBA,EAAS,UAASC,SAClBA,EAAQC,UACRA,GAASb,EACNc,EAAUC,EAAAf,EAdU,sLAmBvB,MAAMgB,EAAuB,YAAXL,EACZM,EAAQC,EAAWC,GA8CnBC,EAAqBlB,GAChBA,EAAMmB,KAAI,CAACC,EAAMC,KACpB,MAAQ,eAAgBC,GAA4BF,EAAfR,EAAUC,EAAKO,EAA9C,CAAA,iBAEN,OACIG,EAAA,KAAA,CAAAxB,SACIwB,EAACC,EAAWC,OAAMC,OAAAC,OAAA,CACdC,eAAe,OACfjB,UAAWkB,GACPjB,EAAU,CACdkB,QAAUC,GApDN,EACpBA,EACAC,KAMIA,EAAKF,SACLC,EAAME,iBACND,EAAKF,QAAQC,IACNvB,IACPuB,EAAME,iBACNzB,EAAkBwB,GACf,EAsC6BE,CAAgBH,EAAOX,OAL1CC,EAOJ,IA4EjB,OACIc,4BAAYvB,EAAU,CAAED,UAAWyB,EAAKC,EAAmB1B,aAxEtC,MACrB,IAAI2B,EAA6B,KAEjC,GAAIvC,EACA,OAAOA,EAGX,GAAIC,GAASG,EAAmB,CAC5B,MAAML,EACFyC,EAAaC,uBAAuBzB,aAAK,EAALA,EAAOA,QADzC0B,IAAEA,EAAGC,IAAEA,EAAGC,SAAEA,GAAQ7C,EAAK8C,EAAmB/B,EAAAf,EAA5C,CAAA,MAAA,MAAA,aAENwC,EACIH,EAAAU,EAAA,CAAA9C,SAAA,EACMM,GAAWoC,KAAS/B,GAClBa,uBACgB,eACZZ,UAAWmC,EAAkB/C,SAE7BwB,uBACIkB,IAAKpC,GAAWoC,EAAG,cACP,OACZ9B,UAAWyB,EACPW,EACAJ,GAAYK,EAAgBL,IAEhCD,IAAKpC,GAAWoC,GACZE,MAIhBrB,EAAA,MAAA,CAAKZ,UAAWsC,EAAyBlD,SACpCC,aAAK,EAALA,EAAOmB,KAAI,CAAC+B,EAAaC,IACtB5B,EAAA,KAAA,CAAA,cAEiB,YAAY4B,IACzBxC,UAAWyC,EAAkBrD,SAE5BmB,EAAkBgC,IAJd,YAAYC,SAQ5BhD,GACGoB,EAAA,MAAA,CAAKZ,UAAW0C,EAAmBtD,SAC/BwB,EAAC+B,EAAW,OAIlBnD,GAAqBC,GACnBmB,EAAA,MAAA,CAAKZ,UAAW0C,EAAmBtD,SAC/BwB,EAACgC,EAAa,QAKlC,CAEA,OAAIjB,EAEIH,EAAAU,EAAA,CAAA9C,SAAA,CACIwB,EAACiC,EAAOC,QAAO,CACX9C,UAAW+C,EACXC,QAAS7C,EAASf,SAEjBuC,IAELf,EAACqC,EAAO,CAACjD,UAAWkD,OAKzB,IAAI,EAINC,GACD3B,EAACqB,EAAOC,QAAO,CACX9C,UAAWoD,EACXJ,QAAS7C,EAASf,SAAA,CAElBwB,EAAA,MAAA,CAAsBZ,UAAWqD,EAA2BjE,SAnH1C,MAC1B,MAAMC,EAAQuC,EAAa0B,mBACvBlD,aAAK,EAALA,EAAOA,MACPb,GAGJ,OAAQwB,OAAOwC,KAAKlE,GAA6CmB,KAC5DgD,GAEO5C,EAACC,EAAW4C,sBAERxC,eAAe,OACfjB,UAAW0D,GACPrE,EAAMmE,IAHLA,IAOpB,EAmGYG,IADI,cAGT/C,EAAA,MAAA,CAEIZ,UAAWyB,EACP4B,EACAO,GACHxE,SAEDwB,EAACC,EAAWgD,sBACK,iBACb7D,UAAW8D,EAAoB1E,SAE9BQ,GACG4B,EAAAU,EAAA,CAAA9C,SAAA,CAAA,IACW,IACNwC,EAAamC,iBACVzE,EACAc,aAAK,EAALA,EAAOA,aAfnB,mBAsBP"}
@@ -0,0 +1,2 @@
1
+ import{__rest as r}from"../../_virtual/_tslib.js";import{jsx as t}from"react/jsx-runtime";import"../../util/calendar-helper.js";import"../../external/dayjs/dayjs.min.js";import"react";import{useId as i}from"../../util/simple-id-generator.js";import"../../util/string-helper.js";import"@react-aria/live-announcer";import{FormWrapper as e}from"../form-wrapper.js";const a=a=>{var{id:o,"data-error-testid":d,"data-testid":s,children:m}=a,l=r(a,["id","data-error-testid","data-testid","children"]);const n=i(),p=null!=o?o:`form-custom-field-${n}`;return t(e,Object.assign({id:p,"data-testid":s,"data-error-testid":d},l,{children:m}))};export{a as FormCustomField};
2
+ //# sourceMappingURL=form-custom-field.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-custom-field.js","sources":["../../../src/form/form-custom-field/form-custom-field.tsx"],"sourcesContent":["import { useId } from \"../../util\";\nimport { FormWrapper } from \"../form-wrapper\";\nimport type { FormCustomFieldProps } from \"./types\";\n\nexport const FormCustomField = ({\n id,\n \"data-error-testid\": errorTestId,\n \"data-testid\": testId,\n children,\n ...otherProps\n}: FormCustomFieldProps): JSX.Element => {\n const internalId = useId();\n\n const inputId = id ?? `form-custom-field-${internalId}`;\n\n return (\n <FormWrapper\n id={inputId}\n data-testid={testId}\n data-error-testid={errorTestId}\n {...otherProps}\n >\n {children}\n </FormWrapper>\n );\n};\n"],"names":["FormCustomField","_a","id","errorTestId","testId","children","otherProps","__rest","internalId","useId","inputId","_jsx","FormWrapper","Object","assign"],"mappings":"0WAIO,MAAMA,EAAmBC,IAAA,IAAAC,GAC5BA,EACA,oBAAqBC,EACrB,cAAeC,EAAMC,SACrBA,GAAQJ,EACLK,EAAUC,EAAAN,EALe,qDAO5B,MAAMO,EAAaC,IAEbC,EAAUR,QAAAA,EAAM,qBAAqBM,IAE3C,OACIG,EAACC,EAAWC,OAAAC,OAAA,CACRZ,GAAIQ,EAAO,cACEN,EAAM,oBACAD,GACfG,YAEHD,IACS"}
@@ -0,0 +1,2 @@
1
+ export { FormCustomField } from "./form-custom-field";
2
+ export type { FormCustomFieldProps } from "./types";
@@ -0,0 +1,7 @@
1
+ import type { BaseFormElementProps, FormWrapperProps } from "../types";
2
+ /**
3
+ * Props for `Form.CustomField`, which wraps any custom input element with a
4
+ * shared label, subtitle, and inline error message layout.
5
+ */
6
+ export interface FormCustomFieldProps extends FormWrapperProps, BaseFormElementProps {
7
+ }
@@ -0,0 +1,2 @@
1
+ import{__rest as r}from"../../_virtual/_tslib.js";import{jsx as s}from"react/jsx-runtime";import{DateInput as l}from"../../date-input/date-input.js";import"../../util/calendar-helper.js";import"../../external/dayjs/dayjs.min.js";import"react";import{useId as t}from"../../util/simple-id-generator.js";import"../../util/string-helper.js";import"@react-aria/live-announcer";import{FormWrapper as e}from"../form-wrapper.js";const o=o=>{var{label:a,errorMessage:i,id:d,"data-error-testid":m,"data-testid":p,layoutType:x,xxsCols:C,xsCols:n,smCols:u,mdCols:j,lgCols:b,xlCols:c,xxlCols:g}=o,y=r(o,["label","errorMessage","id","data-error-testid","data-testid","layoutType","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols"]);const f=t(),h=null!=d?d:`form-date-input-${f}`;return s(e,{id:h,label:a,errorMessage:i,"data-error-testid":m,layoutType:x,xxsCols:C,xsCols:n,smCols:u,mdCols:j,lgCols:b,xlCols:c,xxlCols:g,children:s(l,Object.assign({id:`${h}-base`,"data-testid":p||d,"aria-labelledby":`${h}-label`,error:!!i},y))})};export{o as FormDateInput};
2
+ //# sourceMappingURL=form-date-input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-date-input.js","sources":["../../../src/form/form-date-input/form-date-input.tsx"],"sourcesContent":["import { DateInput } from \"../../date-input\";\nimport { useId } from \"../../util\";\nimport { FormWrapper } from \"../form-wrapper\";\nimport type { FormDateInputProps } from \"./types\";\n\nexport const FormDateInput = ({\n label,\n errorMessage,\n id,\n \"data-error-testid\": errorTestId,\n \"data-testid\": testId,\n layoutType,\n xxsCols,\n xsCols,\n smCols,\n mdCols,\n lgCols,\n xlCols,\n xxlCols,\n ...otherProps\n}: FormDateInputProps): JSX.Element => {\n const internalId = useId();\n const inputId = id ?? `form-date-input-${internalId}`;\n\n return (\n <FormWrapper\n id={inputId}\n label={label}\n errorMessage={errorMessage}\n data-error-testid={errorTestId}\n layoutType={layoutType}\n xxsCols={xxsCols}\n xsCols={xsCols}\n smCols={smCols}\n mdCols={mdCols}\n lgCols={lgCols}\n xlCols={xlCols}\n xxlCols={xxlCols}\n >\n <DateInput\n id={`${inputId}-base`}\n data-testid={testId || id}\n aria-labelledby={`${inputId}-label`}\n error={!!errorMessage}\n {...otherProps}\n />\n </FormWrapper>\n );\n};\n"],"names":["FormDateInput","_a","label","errorMessage","id","errorTestId","testId","layoutType","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols","otherProps","__rest","internalId","useId","inputId","_jsx","FormWrapper","children","DateInput","Object","assign","error"],"mappings":"qaAKO,MAAMA,EAAiBC,IAAA,IAAAC,MAC1BA,EAAKC,aACLA,EAAYC,GACZA,EACA,oBAAqBC,EACrB,cAAeC,EAAMC,WACrBA,EAAUC,QACVA,EAAOC,OACPA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,QACNA,GAAOb,EACJc,EAAUC,EAAAf,EAda,+IAgB1B,MAAMgB,EAAaC,IACbC,EAAUf,QAAAA,EAAM,mBAAmBa,IAEzC,OACIG,EAACC,EAAW,CACRjB,GAAIe,EACJjB,MAAOA,EACPC,aAAcA,sBACKE,EACnBE,WAAYA,EACZC,QAASA,EACTC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,QAASA,EAAOQ,SAEhBF,EAACG,EAASC,OAAAC,OAAA,CACNrB,GAAI,GAAGe,SAAc,cACRb,GAAUF,EAAE,kBACR,GAAGe,UACpBO,QAASvB,GACLY,KAEE"}
@@ -0,0 +1,2 @@
1
+ export { FormDateInput } from "./form-date-input";
2
+ export type { FormDateInputProps } from "./types";
@@ -0,0 +1,8 @@
1
+ import type { DateInputProps } from "../../date-input/types";
2
+ import type { BaseFormElementProps } from "../types";
3
+ /**
4
+ * Props for `Form.DateInput`, combining date input props with the shared form
5
+ * field layout.
6
+ */
7
+ export interface FormDateInputProps extends DateInputProps, BaseFormElementProps {
8
+ }
@@ -0,0 +1,2 @@
1
+ import{__rest as r}from"../../_virtual/_tslib.js";import{jsx as s}from"react/jsx-runtime";import{DateRangeInput as l}from"../../date-range-input/date-range-input.js";import"../../util/calendar-helper.js";import"../../external/dayjs/dayjs.min.js";import"react";import{useId as e}from"../../util/simple-id-generator.js";import"../../util/string-helper.js";import"@react-aria/live-announcer";import{FormWrapper as o}from"../form-wrapper.js";const t=t=>{var{label:a,errorMessage:i,id:d,"data-error-testid":m,"data-testid":p,layoutType:n,xxsCols:x,xsCols:C,smCols:u,mdCols:g,lgCols:j,xlCols:b,xxlCols:c}=t,y=r(t,["label","errorMessage","id","data-error-testid","data-testid","layoutType","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols"]);const f=e(),v=null!=d?d:`form-date-range-input-${f}`;return s(o,{id:v,label:a,errorMessage:i,"data-error-testid":m,layoutType:n,xxsCols:x,xsCols:C,smCols:u,mdCols:g,lgCols:j,xlCols:b,xxlCols:c,children:s(l,Object.assign({id:`${d}-base`,"data-testid":p?`${p}-base`:void 0,"aria-labelledby":`${v}-label`,error:!!i},y))})};export{t as FormDateRangeInput};
2
+ //# sourceMappingURL=form-date-range-input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-date-range-input.js","sources":["../../../src/form/form-date-range-input/form-date-range-input.tsx"],"sourcesContent":["import { DateRangeInput } from \"../../date-range-input\";\nimport { useId } from \"../../util\";\nimport { FormWrapper } from \"../form-wrapper\";\nimport type { FormDateRangeInputProps } from \"./types\";\n\nexport const FormDateRangeInput = ({\n label,\n errorMessage,\n id,\n \"data-error-testid\": errorTestId,\n \"data-testid\": testId,\n layoutType,\n xxsCols,\n xsCols,\n smCols,\n mdCols,\n lgCols,\n xlCols,\n xxlCols,\n ...otherProps\n}: FormDateRangeInputProps): JSX.Element => {\n const internalId = useId();\n const inputId = id ?? `form-date-range-input-${internalId}`;\n\n return (\n <FormWrapper\n id={inputId}\n label={label}\n errorMessage={errorMessage}\n data-error-testid={errorTestId}\n layoutType={layoutType}\n xxsCols={xxsCols}\n xsCols={xsCols}\n smCols={smCols}\n mdCols={mdCols}\n lgCols={lgCols}\n xlCols={xlCols}\n xxlCols={xxlCols}\n >\n <DateRangeInput\n id={`${id}-base`}\n data-testid={testId ? `${testId}-base` : undefined}\n aria-labelledby={`${inputId}-label`}\n error={!!errorMessage}\n {...otherProps}\n />\n </FormWrapper>\n );\n};\n"],"names":["FormDateRangeInput","_a","label","errorMessage","id","errorTestId","testId","layoutType","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols","otherProps","__rest","internalId","useId","inputId","_jsx","FormWrapper","children","DateRangeInput","Object","assign","undefined","error"],"mappings":"sbAKO,MAAMA,EAAsBC,IAAA,IAAAC,MAC/BA,EAAKC,aACLA,EAAYC,GACZA,EACA,oBAAqBC,EACrB,cAAeC,EAAMC,WACrBA,EAAUC,QACVA,EAAOC,OACPA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,QACNA,GAAOb,EACJc,EAAUC,EAAAf,EAdkB,+IAgB/B,MAAMgB,EAAaC,IACbC,EAAUf,QAAAA,EAAM,yBAAyBa,IAE/C,OACIG,EAACC,GACGjB,GAAIe,EACJjB,MAAOA,EACPC,aAAcA,EAAY,oBACPE,EACnBE,WAAYA,EACZC,QAASA,EACTC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,QAASA,EAAOQ,SAEhBF,EAACG,EAAcC,OAAAC,OAAA,CACXrB,GAAI,GAAGA,uBACME,EAAS,GAAGA,cAAgBoB,EAAS,kBACjC,GAAGP,UACpBQ,QAASxB,GACLY,KAEE"}
@@ -0,0 +1,2 @@
1
+ export { FormDateRangeInput } from "./form-date-range-input";
2
+ export type { FormDateRangeInputProps } from "./types";
@@ -0,0 +1,8 @@
1
+ import type { DateRangeInputProps } from "../../date-range-input/types";
2
+ import type { BaseFormElementProps } from "../types";
3
+ /**
4
+ * Props for `Form.DateRangeInput`, combining date-range input props with the
5
+ * shared form field layout.
6
+ */
7
+ export interface FormDateRangeInputProps extends DateRangeInputProps, BaseFormElementProps {
8
+ }
@@ -0,0 +1,2 @@
1
+ import{__rest as s}from"../../_virtual/_tslib.js";import{jsx as l}from"react/jsx-runtime";import{ESignature as o}from"../../e-signature/e-signature.js";import{FormWrapper as r}from"../form-wrapper.js";const e=e=>{const{label:t,errorMessage:a,id:i="form-field","data-error-testid":d,"data-testid":C,layoutType:x,xxsCols:m,xsCols:p,smCols:g,mdCols:n,lgCols:u,xlCols:f,xxlCols:b}=e,y=s(e,["label","errorMessage","id","data-error-testid","data-testid","layoutType","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols"]);return l(r,{id:i,label:t,errorMessage:a,"data-error-testid":d,layoutType:x,xxsCols:m,xsCols:p,smCols:g,mdCols:n,lgCols:u,xlCols:f,xxlCols:b,children:l(o,Object.assign({id:`${i}-base`,"data-testid":C||i},y))})};export{e as FormESignature};
2
+ //# sourceMappingURL=form-e-signature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-e-signature.js","sources":["../../../src/form/form-e-signature/form-e-signature.tsx"],"sourcesContent":["import { ESignature } from \"../../e-signature\";\nimport { FormWrapper } from \"../form-wrapper\";\nimport type { FormESignatureProps } from \"./types\";\n\nexport const FormESignature = (props: FormESignatureProps) => {\n const {\n label,\n errorMessage,\n id = \"form-field\",\n \"data-error-testid\": errorTestId,\n \"data-testid\": testId,\n layoutType,\n xxsCols,\n xsCols,\n smCols,\n mdCols,\n lgCols,\n xlCols,\n xxlCols,\n ...otherProps\n } = props;\n\n return (\n <FormWrapper\n id={id}\n label={label}\n errorMessage={errorMessage}\n data-error-testid={errorTestId}\n layoutType={layoutType}\n xxsCols={xxsCols}\n xsCols={xsCols}\n smCols={smCols}\n mdCols={mdCols}\n lgCols={lgCols}\n xlCols={xlCols}\n xxlCols={xxlCols}\n >\n <ESignature\n id={`${id}-base`}\n data-testid={testId || id}\n {...otherProps}\n />\n </FormWrapper>\n );\n};\n"],"names":["FormESignature","props","label","errorMessage","id","errorTestId","testId","layoutType","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols","otherProps","__rest","_jsx","FormWrapper","children","ESignature","Object","assign"],"mappings":"yMAIO,MAAMA,EAAkBC,IAC3B,MAAMC,MACFA,EAAKC,aACLA,EAAYC,GACZA,EAAK,aACL,oBAAqBC,EACrB,cAAeC,EAAMC,WACrBA,EAAUC,QACVA,EAAOC,OACPA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,QACNA,GAEAb,EADGc,EAAUC,EACbf,EAfE,CAAA,QAAA,eAAA,KAAA,oBAAA,cAAA,aAAA,UAAA,SAAA,SAAA,SAAA,SAAA,SAAA,YAiBN,OACIgB,EAACC,EAAW,CACRd,GAAIA,EACJF,MAAOA,EACPC,aAAcA,EAAY,oBACPE,EACnBE,WAAYA,EACZC,QAASA,EACTC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,QAASA,EAAOK,SAEhBF,EAACG,EAAUC,OAAAC,OAAA,CACPlB,GAAI,GAAGA,SAAS,cACHE,GAAUF,GACnBW,KAEE"}
@@ -0,0 +1,2 @@
1
+ export { FormESignature } from "./form-e-signature";
2
+ export type { FormESignatureProps } from "./types";
@@ -0,0 +1,8 @@
1
+ import type { EsignatureProps } from "../../e-signature/types";
2
+ import type { BaseFormElementProps } from "../types";
3
+ /**
4
+ * Props for `Form.ESignature`, combining e-signature props with the shared
5
+ * form field layout.
6
+ */
7
+ export interface FormESignatureProps extends EsignatureProps, BaseFormElementProps {
8
+ }
@@ -0,0 +1,2 @@
1
+ import{__rest as s}from"../../_virtual/_tslib.js";import{jsx as r}from"react/jsx-runtime";import{HistogramSlider as l}from"../../histogram-slider/histogram-slider.js";import"../../util/calendar-helper.js";import"../../external/dayjs/dayjs.min.js";import"react";import{useId as o}from"../../util/simple-id-generator.js";import"../../util/string-helper.js";import"@react-aria/live-announcer";import{FormWrapper as t}from"../form-wrapper.js";const e=e=>{var{label:a,errorMessage:i,id:d,"data-error-testid":m,"data-testid":x,layoutType:C,xxsCols:p,xsCols:n,smCols:g,mdCols:j,lgCols:u,xlCols:c,xxlCols:y}=e,b=s(e,["label","errorMessage","id","data-error-testid","data-testid","layoutType","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols"]);const f=o(),h=null!=d?d:`form-histogram-slider-${f}`;return r(t,{id:h,label:a,errorMessage:i,"data-testid":x,"data-error-testid":m,layoutType:C,xxsCols:p,xsCols:n,smCols:g,mdCols:j,lgCols:u,xlCols:c,xxlCols:y,children:r(l,Object.assign({id:`${h}-base`,"data-testid":x?`${x}-base`:void 0},b))})};export{e as FormHistogramSlider};
2
+ //# sourceMappingURL=form-histogram-slider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-histogram-slider.js","sources":["../../../src/form/form-histogram-slider/form-histogram-slider.tsx"],"sourcesContent":["import { HistogramSlider } from \"../../histogram-slider\";\nimport { useId } from \"../../util\";\nimport { FormWrapper } from \"../form-wrapper\";\nimport type { FormHistogramSliderProps } from \"./types\";\n\nexport const FormHistogramSlider = ({\n label,\n errorMessage,\n id,\n \"data-error-testid\": errorTestId,\n \"data-testid\": testId,\n layoutType,\n xxsCols,\n xsCols,\n smCols,\n mdCols,\n lgCols,\n xlCols,\n xxlCols,\n ...otherProps\n}: FormHistogramSliderProps): JSX.Element => {\n const internalId = useId();\n const inputId = id ?? `form-histogram-slider-${internalId}`;\n\n return (\n <FormWrapper\n id={inputId}\n label={label}\n errorMessage={errorMessage}\n data-testid={testId}\n data-error-testid={errorTestId}\n layoutType={layoutType}\n xxsCols={xxsCols}\n xsCols={xsCols}\n smCols={smCols}\n mdCols={mdCols}\n lgCols={lgCols}\n xlCols={xlCols}\n xxlCols={xxlCols}\n >\n <HistogramSlider\n id={`${inputId}-base`}\n data-testid={testId ? `${testId}-base` : undefined}\n {...otherProps}\n />\n </FormWrapper>\n );\n};\n"],"names":["FormHistogramSlider","_a","label","errorMessage","id","errorTestId","testId","layoutType","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols","otherProps","__rest","internalId","useId","inputId","_jsx","FormWrapper","children","HistogramSlider","Object","assign","undefined"],"mappings":"ubAKO,MAAMA,EAAuBC,IAAA,IAAAC,MAChCA,EAAKC,aACLA,EAAYC,GACZA,EACA,oBAAqBC,EACrB,cAAeC,EAAMC,WACrBA,EAAUC,QACVA,EAAOC,OACPA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,QACNA,GAAOb,EACJc,EAAUC,EAAAf,EAdmB,+IAgBhC,MAAMgB,EAAaC,IACbC,EAAUf,QAAAA,EAAM,yBAAyBa,IAE/C,OACIG,EAACC,EAAW,CACRjB,GAAIe,EACJjB,MAAOA,EACPC,aAAcA,gBACDG,EAAM,oBACAD,EACnBE,WAAYA,EACZC,QAASA,EACTC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,QAASA,EAAOQ,SAEhBF,EAACG,EAAeC,OAAAC,OAAA,CACZrB,GAAI,GAAGe,uBACMb,EAAS,GAAGA,cAAgBoB,GACrCX,KAEE"}
@@ -0,0 +1,2 @@
1
+ export { FormHistogramSlider } from "./form-histogram-slider";
2
+ export type { FormHistogramSliderProps } from "./types";
@@ -0,0 +1,8 @@
1
+ import type { HistogramSliderProps } from "../../histogram-slider";
2
+ import type { BaseFormElementProps } from "../types";
3
+ /**
4
+ * Props for `Form.HistogramSlider`, combining histogram slider props with the
5
+ * shared form field layout.
6
+ */
7
+ export interface FormHistogramSliderProps extends HistogramSliderProps, BaseFormElementProps {
8
+ }
@@ -0,0 +1,2 @@
1
+ import{__rest as r}from"../../_virtual/_tslib.js";import{jsx as s}from"react/jsx-runtime";import o from"react";import{Input as l}from"../../input/input.js";import"../../util/calendar-helper.js";import"../../external/dayjs/dayjs.min.js";import{useId as t}from"../../util/simple-id-generator.js";import"../../util/string-helper.js";import"@react-aria/live-announcer";import{FormWrapper as e}from"../form-wrapper.js";const a=o.forwardRef(((o,a)=>{const{label:i,errorMessage:d,id:m,"data-error-testid":p,"data-testid":x,layoutType:C,xxsCols:n,xsCols:u,smCols:f,mdCols:j,lgCols:c,xlCols:g,xxlCols:y}=o,b=r(o,["label","errorMessage","id","data-error-testid","data-testid","layoutType","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols"]),h=t(),v=null!=m?m:`form-field-${h}`;return s(e,{id:v,"data-testid":x,label:i,errorMessage:d,"data-error-testid":p,layoutType:C,xxsCols:n,xsCols:u,smCols:f,mdCols:j,lgCols:c,xlCols:g,xxlCols:y,children:s(l,Object.assign({id:`${v}-base`,"data-testid":x?`${x}-base`:void 0,ref:a,error:!!d},b))})}));export{a as FormInput};
2
+ //# sourceMappingURL=form-input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-input.js","sources":["../../../src/form/form-input/form-input.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { Input } from \"../../input\";\nimport type { InputRef } from \"../../input/types\";\nimport { useId } from \"../../util\";\nimport { FormWrapper } from \"../form-wrapper\";\nimport type { FormInputProps } from \"./types\";\n\nconst Component = (props: FormInputProps, ref: InputRef): JSX.Element => {\n const {\n label,\n errorMessage,\n id,\n \"data-error-testid\": errorTestId,\n \"data-testid\": testId,\n layoutType,\n xxsCols,\n xsCols,\n smCols,\n mdCols,\n lgCols,\n xlCols,\n xxlCols,\n ...otherProps\n } = props;\n\n const internalId = useId();\n const inputId = id ?? `form-field-${internalId}`;\n\n return (\n <FormWrapper\n id={inputId}\n data-testid={testId}\n label={label}\n errorMessage={errorMessage}\n data-error-testid={errorTestId}\n layoutType={layoutType}\n xxsCols={xxsCols}\n xsCols={xsCols}\n smCols={smCols}\n mdCols={mdCols}\n lgCols={lgCols}\n xlCols={xlCols}\n xxlCols={xxlCols}\n >\n <Input\n id={`${inputId}-base`}\n data-testid={testId ? `${testId}-base` : undefined}\n ref={ref}\n error={!!errorMessage}\n {...otherProps}\n />\n </FormWrapper>\n );\n};\n\nexport const FormInput = React.forwardRef(Component);\n"],"names":["FormInput","React","forwardRef","props","ref","label","errorMessage","id","errorTestId","testId","layoutType","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols","otherProps","__rest","internalId","useId","inputId","_jsx","FormWrapper","Input","undefined","error"],"mappings":"8ZAQA,MAgDaA,EAAYC,EAAMC,YAhDb,CAACC,EAAuBC,KACtC,MAAMC,MACFA,EAAKC,aACLA,EAAYC,GACZA,EACA,oBAAqBC,EACrB,cAAeC,EAAMC,WACrBA,EAAUC,QACVA,EAAOC,OACPA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,QACNA,GAEAd,EADGe,EAAUC,EACbhB,EAfE,CAAA,QAAA,eAAA,KAAA,oBAAA,cAAA,aAAA,UAAA,SAAA,SAAA,SAAA,SAAA,SAAA,YAiBAiB,EAAaC,IACbC,EAAUf,QAAAA,EAAM,cAAca,IAEpC,OACIG,EAACC,GACGjB,GAAIe,EAAO,cACEb,EACbJ,MAAOA,EACPC,aAAcA,sBACKE,EACnBE,WAAYA,EACZC,QAASA,EACTC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,QAASA,WAETM,EAACE,iBACGlB,GAAI,GAAGe,uBACMb,EAAS,GAAGA,cAAgBiB,EACzCtB,IAAKA,EACLuB,QAASrB,GACLY,KAEE"}
@@ -0,0 +1,2 @@
1
+ export { FormInput } from "./form-input";
2
+ export type { FormInputProps } from "./types";
@@ -0,0 +1,8 @@
1
+ import type { InputPartialProps } from "../../input/types";
2
+ import type { BaseFormElementProps } from "../types";
3
+ /**
4
+ * Props for `Form.Input`, combining text input props with the shared form
5
+ * field layout.
6
+ */
7
+ export interface FormInputProps extends InputPartialProps, BaseFormElementProps {
8
+ }
@@ -0,0 +1,2 @@
1
+ import{__rest as r}from"../../_virtual/_tslib.js";import{jsx as s}from"react/jsx-runtime";import l from"react";import{InputGroup as o}from"../../input-group/input-group.js";import"../../util/calendar-helper.js";import"../../external/dayjs/dayjs.min.js";import{useId as e}from"../../util/simple-id-generator.js";import"../../util/string-helper.js";import"@react-aria/live-announcer";import{FormWrapper as t}from"../form-wrapper.js";const a=l.forwardRef(((l,a)=>{const{label:i,errorMessage:d,id:m,"data-error-testid":p,"data-testid":x,layoutType:C,xxsCols:n,xsCols:u,smCols:f,mdCols:g,lgCols:j,xlCols:b,xxlCols:c}=l,y=r(l,["label","errorMessage","id","data-error-testid","data-testid","layoutType","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols"]),$=e(),h=null!=m?m:`form-field-${$}`;return s(t,{id:h,"data-testid":x,label:i,errorMessage:d,"data-error-testid":p,layoutType:C,xxsCols:n,xsCols:u,smCols:f,mdCols:g,lgCols:j,xlCols:b,xxlCols:c,children:s(o,Object.assign({ref:a,id:`${h}-base`,"data-testid":x?`${x}-base`:void 0,"aria-labelledby":`${h}-label`,error:!!d},y))})}));export{a as FormInputGroup};
2
+ //# sourceMappingURL=form-input-group.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-input-group.js","sources":["../../../src/form/form-input-group/form-input-group.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { InputGroup } from \"../../input-group\";\nimport { useId } from \"../../util\";\nimport { FormWrapper } from \"../form-wrapper\";\nimport type { FormInputGroupProps } from \"./types\";\n\nconst Component = <T, V>(\n props: FormInputGroupProps<T, V>,\n ref: React.Ref<HTMLInputElement>\n): JSX.Element => {\n const {\n label,\n errorMessage,\n id,\n \"data-error-testid\": errorTestId,\n \"data-testid\": testId,\n layoutType,\n xxsCols,\n xsCols,\n smCols,\n mdCols,\n lgCols,\n xlCols,\n xxlCols,\n ...otherProps\n } = props;\n\n const internalId = useId();\n const inputId = id ?? `form-field-${internalId}`;\n\n return (\n <FormWrapper\n id={inputId}\n data-testid={testId}\n label={label}\n errorMessage={errorMessage}\n data-error-testid={errorTestId}\n layoutType={layoutType}\n xxsCols={xxsCols}\n xsCols={xsCols}\n smCols={smCols}\n mdCols={mdCols}\n lgCols={lgCols}\n xlCols={xlCols}\n xxlCols={xxlCols}\n >\n <InputGroup\n ref={ref}\n id={`${inputId}-base`}\n data-testid={testId ? `${testId}-base` : undefined}\n aria-labelledby={`${inputId}-label`}\n error={!!errorMessage}\n {...otherProps}\n />\n </FormWrapper>\n );\n};\n\nexport const FormInputGroup = React.forwardRef(Component);\n"],"names":["FormInputGroup","React","forwardRef","props","ref","label","errorMessage","id","errorTestId","testId","layoutType","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols","otherProps","__rest","internalId","useId","inputId","_jsx","FormWrapper","InputGroup","undefined","error"],"mappings":"+aAOA,MAoDaA,EAAiBC,EAAMC,YApDlB,CACdC,EACAC,KAEA,MAAMC,MACFA,EAAKC,aACLA,EAAYC,GACZA,EACA,oBAAqBC,EACrB,cAAeC,EAAMC,WACrBA,EAAUC,QACVA,EAAOC,OACPA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,QACNA,GAEAd,EADGe,EAAUC,EACbhB,EAfE,CAAA,QAAA,eAAA,KAAA,oBAAA,cAAA,aAAA,UAAA,SAAA,SAAA,SAAA,SAAA,SAAA,YAiBAiB,EAAaC,IACbC,EAAUf,QAAAA,EAAM,cAAca,IAEpC,OACIG,EAACC,GACGjB,GAAIe,EAAO,cACEb,EACbJ,MAAOA,EACPC,aAAcA,EAAY,oBACPE,EACnBE,WAAYA,EACZC,QAASA,EACTC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,QAASA,WAETM,EAACE,iBACGrB,IAAKA,EACLG,GAAI,GAAGe,SAAc,cACRb,EAAS,GAAGA,cAAgBiB,EAAS,kBACjC,GAAGJ,UACpBK,QAASrB,GACLY,KAEE"}
@@ -0,0 +1,2 @@
1
+ export { FormInputGroup } from "./form-input-group";
2
+ export type { FormInputGroupProps } from "./types";
@@ -0,0 +1,10 @@
1
+ import type { InputGroupPartialProps } from "../../input-group/types";
2
+ import type { BaseFormElementProps } from "../types";
3
+ /**
4
+ * Props for `Form.InputGroup`, combining input group props with the shared
5
+ * form field layout.
6
+ *
7
+ * `T` is the option item type. `V` is the selected value type.
8
+ */
9
+ export interface FormInputGroupProps<T, V> extends InputGroupPartialProps<T, V>, BaseFormElementProps {
10
+ }
@@ -0,0 +1,2 @@
1
+ import{jsx as o}from"react/jsx-runtime";import{ICircleFillIcon as e}from"@lifesg/react-icons/i-circle-fill";import{PopoverInline as t}from"../../popover/popover-inline/popover-inline.js";import{addonWrapper as i}from"./form-label-addon.styles.js";const r=({addon:r,rootNode:n})=>{const{content:d,type:a,icon:c,id:l,zIndex:p,"data-testid":s}=r;return o("div",{className:i,children:o(t,{trigger:"click",id:l,"data-testid":s,popoverContent:d,rootNode:n,zIndex:p,icon:null!=c?c:o(e,{"data-testid":`${a}-icon`}),ariaLabel:"More info"})})};export{r as PopoverAddon};
2
+ //# sourceMappingURL=form-label-addon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-label-addon.js","sources":["../../../src/form/form-label/form-label-addon.tsx"],"sourcesContent":["import { ICircleFillIcon } from \"@lifesg/react-icons/i-circle-fill\";\nimport type { RefObject } from \"react\";\n\nimport { PopoverInline } from \"../../popover/popover-inline\";\nimport * as styles from \"./form-label-addon.styles\";\nimport type { FormLabelAddonProps } from \"./types\";\n\n// =============================================================================\n// POPOVER ADDON COMPONENT\n// Note: We need to re-construct as using with the HOC causes some rendering\n// issues\n// =============================================================================\ninterface PopoverAddonProps {\n addon: FormLabelAddonProps;\n rootNode?: RefObject<HTMLElement>;\n}\n\nexport const PopoverAddon = ({\n addon,\n rootNode,\n}: PopoverAddonProps): JSX.Element => {\n // =========================================================================\n // CONST, STATE, REF\n // =========================================================================\n const { content, type, icon, id, zIndex, \"data-testid\": testId } = addon;\n\n // =========================================================================\n // RENDER FUNCTION\n // =========================================================================\n return (\n <div className={styles.addonWrapper}>\n <PopoverInline\n trigger=\"click\"\n id={id}\n data-testid={testId}\n popoverContent={content}\n rootNode={rootNode}\n zIndex={zIndex}\n icon={icon ?? <ICircleFillIcon data-testid={`${type}-icon`} />}\n ariaLabel=\"More info\"\n />\n </div>\n );\n};\n"],"names":["PopoverAddon","addon","rootNode","content","type","icon","id","zIndex","testId","_jsx","className","styles.addonWrapper","children","PopoverInline","trigger","popoverContent","ICircleFillIcon","ariaLabel"],"mappings":"uPAiBO,MAAMA,EAAe,EACxBC,QACAC,eAKA,MAAMC,QAAEA,EAAOC,KAAEA,EAAIC,KAAEA,EAAIC,GAAEA,EAAEC,OAAEA,EAAQ,cAAeC,GAAWP,EAKnE,OACIQ,EAAA,MAAA,CAAKC,UAAWC,EAAmBC,SAC/BH,EAACI,EAAa,CACVC,QAAQ,QACRR,GAAIA,EAAE,cACOE,EACbO,eAAgBZ,EAChBD,SAAUA,EACVK,OAAQA,EACRF,KAAMA,QAAAA,EAAQI,EAACO,EAAe,CAAA,cAAc,GAAGZ,WAC/Ca,UAAU,eAEZ"}
@@ -0,0 +1,2 @@
1
+ import"./form-label-addon.styles_aztasj.css";const o="a1vtv2lw";export{o as addonWrapper};
2
+ //# sourceMappingURL=form-label-addon.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-label-addon.styles.js","sources":["../../../src/form/form-label/form-label-addon.styles.ts"],"sourcesContent":["import { css } from \"@linaria/core\";\n\nimport { Spacing } from \"../../theme\";\n\nexport const addonWrapper = css`\n padding-left: ${Spacing[\"spacing-4\"]};\n display: inline;\n`;\n"],"names":["addonWrapper"],"mappings":"4EAIO,MAAMA,EAAY"}
@@ -0,0 +1 @@
1
+ @layer fds{.a1vtv2lw{padding-left:var(--fds-spacing-4);display:inline;}}
@@ -0,0 +1,2 @@
1
+ import{__rest as s}from"../../_virtual/_tslib.js";import{jsxs as e,jsx as t}from"react/jsx-runtime";import{ExclamationCircleFillIcon as a}from"@lifesg/react-icons";import i from"clsx";import{Markup as l}from"../../markup/markup.js";import{errorIcon as r,errorMessage as d,errorMessageContainer as m,label as o,subtitle as n,labelContainer as c}from"./form-label.styles.js";import{PopoverAddon as p}from"./form-label-addon.js";const u=a=>{var{id:r,children:d,addon:m,subtitle:u,"data-testid":b,className:f,style:N}=a,v=s(a,["id","children","addon","subtitle","data-testid","className","style"]);return e("div",{className:i(c,f),style:N,"data-testid":b,children:[t("label",Object.assign({id:r,className:o},v,{children:e(l,{inline:!0,children:[d,(null==m?void 0:m.type)&&("popover"===(null==m?void 0:m.type)?t(p,{addon:m}):null)]})})),"string"==typeof u?t("span",{id:r?`${r}-subtitle`:void 0,className:n,"data-testid":b?`${b}-subtitle`:"subtitle",children:u}):u]})},b=l=>{var{className:o}=l,n=s(l,["className"]);return e("div",{className:i(m,o),children:[t(a,{className:r,"aria-hidden":!0}),t("p",Object.assign({className:d},n))]})};export{b as FormErrorMessage,u as FormLabel};
2
+ //# sourceMappingURL=form-label.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-label.js","sources":["../../../src/form/form-label/form-label.tsx"],"sourcesContent":["import { ExclamationCircleFillIcon } from \"@lifesg/react-icons\";\nimport clsx from \"clsx\";\nimport type React from \"react\";\n\nimport { Markup } from \"../../markup\";\nimport * as styles from \"./form-label.styles\";\nimport { PopoverAddon } from \"./form-label-addon\";\nimport type { FormLabelProps } from \"./types\";\n\nexport const FormLabel = ({\n id,\n children,\n addon,\n subtitle,\n \"data-testid\": testId,\n className,\n style,\n ...otherProps\n}: FormLabelProps): JSX.Element => {\n // -------------------------------------------------------------------------\n // RENDER FUNCTIONS\n // -------------------------------------------------------------------------\n const renderAddon = () => {\n switch (addon?.type) {\n case \"popover\":\n return <PopoverAddon addon={addon} />;\n default:\n return null;\n }\n };\n\n return (\n <div\n className={clsx(styles.labelContainer, className)}\n style={style}\n data-testid={testId}\n >\n <label id={id} className={styles.label} {...otherProps}>\n <Markup inline>\n {children}\n {addon?.type && renderAddon()}\n </Markup>\n </label>\n {typeof subtitle === \"string\" ? (\n <span\n id={id ? `${id}-subtitle` : undefined}\n className={styles.subtitle}\n data-testid={testId ? `${testId}-subtitle` : \"subtitle\"}\n >\n {subtitle}\n </span>\n ) : (\n subtitle\n )}\n </div>\n );\n};\n\nexport const FormErrorMessage = ({\n className,\n ...otherProps\n}: React.HTMLAttributes<HTMLElement>): JSX.Element => {\n return (\n <div className={clsx(styles.errorMessageContainer, className)}>\n <ExclamationCircleFillIcon\n className={styles.errorIcon}\n aria-hidden\n />\n <p className={styles.errorMessage} {...otherProps} />\n </div>\n );\n};\n"],"names":["FormLabel","_a","id","children","addon","subtitle","testId","className","style","otherProps","__rest","_jsxs","clsx","styles.labelContainer","_jsx","Object","assign","styles.label","Markup","inline","type","PopoverAddon","undefined","styles.subtitle","FormErrorMessage","styles.errorMessageContainer","ExclamationCircleFillIcon","styles.errorIcon","styles.errorMessage"],"mappings":"0aASO,MAAMA,EAAaC,QAAAC,GACtBA,EAAEC,SACFA,EAAQC,MACRA,EAAKC,SACLA,EACA,cAAeC,EAAMC,UACrBA,EAASC,MACTA,GAAKP,EACFQ,EAAUC,EAAAT,EARS,wEAsBtB,OACIU,SACIJ,UAAWK,EAAKC,EAAuBN,GACvCC,MAAOA,EAAK,cACCF,YAEbQ,EAAA,QAAAC,OAAAC,OAAA,CAAOd,GAAIA,EAAIK,UAAWU,GAAkBR,YACxCE,EAACO,EAAM,CAACC,QAAM,EAAAhB,SAAA,CACTA,GACAC,aAAK,EAALA,EAAOgB,QAhBX,aADDhB,aAAK,EAALA,EAAOgB,MAEAN,EAACO,EAAY,CAACjB,MAAOA,IAErB,YAgBU,iBAAbC,EACJS,EAAA,OAAA,CACIZ,GAAIA,EAAK,GAAGA,kBAAgBoB,EAC5Bf,UAAWgB,EAAe,cACbjB,EAAS,GAAGA,aAAoB,oBAE5CD,IACE,IAIT,EAIDmB,EAAoBvB,IAAA,IAAAM,UAC7BA,GAASN,EACNQ,EAAUC,EAAAT,EAFgB,eAI7B,OACIU,EAAA,MAAA,CAAKJ,UAAWK,EAAKa,EAA8BlB,GAAUJ,SAAA,CACzDW,EAACY,EAAyB,CACtBnB,UAAWoB,EAAgB,eAAA,IAG/Bb,qBAAGP,UAAWqB,GAAyBnB,MACrC"}
@@ -0,0 +1,2 @@
1
+ import"./form-label.styles_180zf7j.css";const e="l1tkqesw",l="l1twplde",s="e1e3hk6g",o="e1g4xpi9",t="e12a59lq",m="sgjbjlm";export{s as errorIcon,t as errorMessage,o as errorMessageContainer,l as label,e as labelContainer,m as subtitle};
2
+ //# sourceMappingURL=form-label.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-label.styles.js","sources":["../../../src/form/form-label/form-label.styles.ts"],"sourcesContent":["import { css } from \"@linaria/core\";\n\nimport { Colour, Font, Spacing } from \"../../theme\";\n\n// =============================================================================\n// STYLING\n// =============================================================================\nexport const labelContainer = css`\n margin-bottom: ${Spacing[\"spacing-8\"]};\n display: flex;\n flex-direction: column;\n gap: ${Spacing[\"spacing-4\"]};\n`;\n\nexport const label = css`\n color: ${Colour[\"text-subtle\"]};\n display: inline-block;\n ${Font[\"form-label\"]}\n font-weight: ${Font.Spec[\"weight-semibold\"]};\n`;\n\nexport const errorIcon = css`\n height: 1lh;\n width: 1em;\n flex-shrink: 0;\n color: ${Colour[\"icon-error-strong\"]};\n`;\n\nexport const errorMessageContainer = css`\n ${Font[\"body-sm-semibold\"]}\n display: flex;\n gap: ${Spacing[\"spacing-4\"]};\n margin-top: ${Spacing[\"spacing-8\"]};\n`;\n\nexport const errorMessage = css`\n color: ${Colour[\"text-error\"]};\n ${Font[\"body-sm-semibold\"]}\n margin-bottom: 0;\n outline: none;\n`;\n\nexport const subtitle = css`\n ${Font[\"form-description\"]}\n color: ${Colour[\"text-subtler\"]};\n display: block;\n`;\n"],"names":["labelContainer","label","errorIcon","errorMessageContainer","errorMessage","subtitle"],"mappings":"uEAOO,MAAMA,EAAc,WAOdC,EAAK,WAOLC,EAAS,WAOTC,EAAqB,WAOrBC,EAAY,WAOZC,EAAQ"}
@@ -0,0 +1,6 @@
1
+ @layer fds{.l1tkqesw{margin-bottom:var(--fds-spacing-8);display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:var(--fds-spacing-4);}
2
+ .l1twplde{color:var(--fds-colour-text-subtle);display:inline-block;font-family:var(--fds-font-family-body);font-variant:var(--fds-font-variant);font-size:var(--fds-font-form-label-size);font-weight:var(--fds-font-weight-semibold);line-height:var(--fds-font-form-label-lh);letter-spacing:var(--fds-font-form-label-ls);font-weight:var(--fds-font-weight-semibold);}
3
+ .e1e3hk6g{height:1lh;width:1em;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;color:var(--fds-colour-icon-error-strong);}
4
+ .e1g4xpi9{font-family:var(--fds-font-family-body);font-variant:var(--fds-font-variant);font-size:var(--fds-font-body-size-sm);font-weight:var(--fds-font-weight-semibold);line-height:var(--fds-font-body-lh-sm);letter-spacing:var(--fds-font-body-ls-sm);display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;gap:var(--fds-spacing-4);margin-top:var(--fds-spacing-8);}
5
+ .e12a59lq{color:var(--fds-colour-text-error);font-family:var(--fds-font-family-body);font-variant:var(--fds-font-variant);font-size:var(--fds-font-body-size-sm);font-weight:var(--fds-font-weight-semibold);line-height:var(--fds-font-body-lh-sm);letter-spacing:var(--fds-font-body-ls-sm);margin-bottom:0;outline:none;}
6
+ .sgjbjlm{font-family:var(--fds-font-family-body);font-variant:var(--fds-font-variant);font-size:var(--fds-font-form-description-size);font-weight:var(--fds-font-weight-regular);line-height:var(--fds-font-form-description-lh);letter-spacing:var(--fds-font-form-description-ls);color:var(--fds-colour-text-subtler);display:block;}}
@@ -0,0 +1,2 @@
1
+ export { FormErrorMessage, FormLabel } from "./form-label";
2
+ export type { FormLabelAddonProps, FormLabelAddonType, FormLabelProps, } from "./types";
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Display mechanism for the form label addon.
3
+ *
4
+ * - `"popover"` renders an icon that triggers a popover.
5
+ * - `"tooltip"` is currently unsupported.
6
+ */
7
+ export type FormLabelAddonType = "tooltip" | "popover";
8
+ /**
9
+ * Configuration for an informational icon rendered inline with a form label.
10
+ */
11
+ export interface FormLabelAddonProps {
12
+ /** Text or element displayed inside the popover overlay. */
13
+ content: string | JSX.Element;
14
+ /**
15
+ * Display mechanism for the addon.
16
+ * Omit to render no addon icon.
17
+ */
18
+ type?: FormLabelAddonType | undefined;
19
+ /**
20
+ * Custom icon element.
21
+ *
22
+ * @default <ICircleFillIcon />
23
+ */
24
+ icon?: JSX.Element | undefined;
25
+ id?: string | undefined;
26
+ /** Stacking order of the popover overlay. */
27
+ zIndex?: number | undefined;
28
+ "data-testid"?: string | undefined;
29
+ }
30
+ /**
31
+ * Props for a form field label or `Form.Label` component.
32
+ */
33
+ export interface FormLabelProps extends React.LabelHTMLAttributes<HTMLLabelElement> {
34
+ /** Informational icon and popover rendered inline with the label text. */
35
+ addon?: FormLabelAddonProps | undefined;
36
+ /** Supporting description rendered below the label. */
37
+ subtitle?: string | JSX.Element | undefined;
38
+ "data-testid"?: string | undefined;
39
+ }
@@ -0,0 +1,2 @@
1
+ import{__rest as s}from"../../_virtual/_tslib.js";import{jsx as r}from"react/jsx-runtime";import o from"react";import{MaskedInput as e}from"../../masked-input/masked-input.js";import"../../util/calendar-helper.js";import"../../external/dayjs/dayjs.min.js";import{useId as l}from"../../util/simple-id-generator.js";import"../../util/string-helper.js";import"@react-aria/live-announcer";import{FormWrapper as t}from"../form-wrapper.js";const a=o.forwardRef(((o,a)=>{const{label:i,errorMessage:d,id:m,"data-error-testid":p,"data-testid":x,layoutType:C,xxsCols:n,xsCols:u,smCols:f,mdCols:j,lgCols:c,xlCols:g,xxlCols:y}=o,b=s(o,["label","errorMessage","id","data-error-testid","data-testid","layoutType","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols"]),h=l(),k=null!=m?m:`form-field-masked-input-${h}`;return r(t,{id:k,"data-testid":x,label:i,errorMessage:d,"data-error-testid":p,layoutType:C,xxsCols:n,xsCols:u,smCols:f,mdCols:j,lgCols:c,xlCols:g,xxlCols:y,children:r(e,Object.assign({ref:a,id:`${k}-base`,"data-testid":x?`${x}-base`:void 0,error:!!d},b))})}));export{a as FormMaskedInput};
2
+ //# sourceMappingURL=form-masked-input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-masked-input.js","sources":["../../../src/form/form-masked-input/form-masked-input.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { MaskedInput } from \"../../masked-input/masked-input\";\nimport { useId } from \"../../util\";\nimport { FormWrapper } from \"../form-wrapper\";\nimport type { FormMaskedInputProps } from \"./types\";\n\nconst Component = (\n props: FormMaskedInputProps,\n ref: React.Ref<HTMLInputElement>\n): JSX.Element => {\n const {\n label,\n errorMessage,\n id,\n \"data-error-testid\": errorTestId,\n \"data-testid\": testId,\n layoutType,\n xxsCols,\n xsCols,\n smCols,\n mdCols,\n lgCols,\n xlCols,\n xxlCols,\n ...otherProps\n } = props;\n\n const internalId = useId();\n const inputId = id ?? `form-field-masked-input-${internalId}`;\n\n return (\n <FormWrapper\n id={inputId}\n data-testid={testId}\n label={label}\n errorMessage={errorMessage}\n data-error-testid={errorTestId}\n layoutType={layoutType}\n xxsCols={xxsCols}\n xsCols={xsCols}\n smCols={smCols}\n mdCols={mdCols}\n lgCols={lgCols}\n xlCols={xlCols}\n xxlCols={xxlCols}\n >\n <MaskedInput\n ref={ref}\n id={`${inputId}-base`}\n data-testid={testId ? `${testId}-base` : undefined}\n error={!!errorMessage}\n {...otherProps}\n />\n </FormWrapper>\n );\n};\n\nexport const FormMaskedInput = React.forwardRef(Component);\n"],"names":["FormMaskedInput","React","forwardRef","props","ref","label","errorMessage","id","errorTestId","testId","layoutType","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols","otherProps","__rest","internalId","useId","inputId","_jsx","FormWrapper","MaskedInput","undefined","error"],"mappings":"kbAOA,MAmDaA,EAAkBC,EAAMC,YAnDnB,CACdC,EACAC,KAEA,MAAMC,MACFA,EAAKC,aACLA,EAAYC,GACZA,EACA,oBAAqBC,EACrB,cAAeC,EAAMC,WACrBA,EAAUC,QACVA,EAAOC,OACPA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,QACNA,GAEAd,EADGe,EAAUC,EACbhB,EAfE,CAAA,QAAA,eAAA,KAAA,oBAAA,cAAA,aAAA,UAAA,SAAA,SAAA,SAAA,SAAA,SAAA,YAiBAiB,EAAaC,IACbC,EAAUf,QAAAA,EAAM,2BAA2Ba,IAEjD,OACIG,EAACC,GACGjB,GAAIe,EAAO,cACEb,EACbJ,MAAOA,EACPC,aAAcA,sBACKE,EACnBE,WAAYA,EACZC,QAASA,EACTC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,QAASA,WAETM,EAACE,iBACGrB,IAAKA,EACLG,GAAI,GAAGe,SAAc,cACRb,EAAS,GAAGA,cAAgBiB,EACzCC,QAASrB,GACLY,KAEE"}
@@ -0,0 +1,2 @@
1
+ export { FormMaskedInput } from "./form-masked-input";
2
+ export type { FormMaskedInputProps } from "./types";
@@ -0,0 +1,8 @@
1
+ import type { MaskedInputPartialProps } from "../../masked-input/types";
2
+ import type { BaseFormElementProps } from "../types";
3
+ /**
4
+ * Props for `Form.MaskedInput`, combining masked input props with the shared
5
+ * form field layout.
6
+ */
7
+ export interface FormMaskedInputProps extends MaskedInputPartialProps, BaseFormElementProps {
8
+ }
@@ -0,0 +1,2 @@
1
+ import{__rest as r}from"../../_virtual/_tslib.js";import{jsx as s}from"react/jsx-runtime";import{InputMultiSelect as e}from"../../input-multi-select/input-multi-select.js";import"../../util/calendar-helper.js";import"../../external/dayjs/dayjs.min.js";import"react";import{useId as l}from"../../util/simple-id-generator.js";import"../../util/string-helper.js";import"@react-aria/live-announcer";import{FormWrapper as t}from"../form-wrapper.js";const o=o=>{var{label:a,errorMessage:i,id:d,"data-error-testid":m,"data-testid":n,enableSearch:p=!1,layoutType:x,xxsCols:C,xsCols:u,smCols:c,mdCols:j,lgCols:b,xlCols:g,xxlCols:f,variant:y}=o,v=r(o,["label","errorMessage","id","data-error-testid","data-testid","enableSearch","layoutType","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols","variant"]);const h=l(),M=null!=d?d:`form-field-${h}`;return s(t,{id:M,"data-testid":n,label:a,errorMessage:i,"data-error-testid":m,layoutType:x,xxsCols:C,xsCols:u,smCols:c,mdCols:j,lgCols:b,xlCols:g,xxlCols:f,children:s(e,Object.assign({id:`${M}-base`,"data-testid":n?`${n}-base`:void 0,error:!!i,enableSearch:p,variant:y},v))})};export{o as FormMultiSelect};
2
+ //# sourceMappingURL=form-multi-select.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-multi-select.js","sources":["../../../src/form/form-multi-select/form-multi-select.tsx"],"sourcesContent":["import { InputMultiSelect } from \"../../input-multi-select/input-multi-select\";\nimport { useId } from \"../../util\";\nimport { FormWrapper } from \"../form-wrapper\";\nimport type { FormMultiSelectProps } from \"./types\";\n\nexport const FormMultiSelect = <T, V>({\n label,\n errorMessage,\n id,\n \"data-error-testid\": errorTestId,\n \"data-testid\": testId,\n enableSearch = false,\n layoutType,\n xxsCols,\n xsCols,\n smCols,\n mdCols,\n lgCols,\n xlCols,\n xxlCols,\n variant,\n ...otherProps\n}: FormMultiSelectProps<T, V>): JSX.Element => {\n const internalId = useId();\n const inputId = id ?? `form-field-${internalId}`;\n return (\n <FormWrapper\n id={inputId}\n data-testid={testId}\n label={label}\n errorMessage={errorMessage}\n data-error-testid={errorTestId}\n layoutType={layoutType}\n xxsCols={xxsCols}\n xsCols={xsCols}\n smCols={smCols}\n mdCols={mdCols}\n lgCols={lgCols}\n xlCols={xlCols}\n xxlCols={xxlCols}\n >\n <InputMultiSelect\n id={`${inputId}-base`}\n data-testid={testId ? `${testId}-base` : undefined}\n error={!!errorMessage}\n enableSearch={enableSearch}\n variant={variant}\n {...otherProps}\n />\n </FormWrapper>\n );\n};\n"],"names":["FormMultiSelect","_a","label","errorMessage","id","errorTestId","testId","enableSearch","layoutType","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols","variant","otherProps","__rest","internalId","useId","inputId","_jsx","FormWrapper","InputMultiSelect","undefined","error"],"mappings":"4bAKO,MAAMA,EAAyBC,IAAA,IAAAC,MAClCA,EAAKC,aACLA,EAAYC,GACZA,EACA,oBAAqBC,EACrB,cAAeC,EAAMC,aACrBA,GAAe,EAAKC,WACpBA,EAAUC,QACVA,EAAOC,OACPA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,QACNA,EAAOC,QACPA,GAAOf,EACJgB,EAAUC,EAAAjB,EAhBqB,wKAkBlC,MAAMkB,EAAaC,IACbC,EAAUjB,QAAAA,EAAM,cAAce,IACpC,OACIG,EAACC,GACGnB,GAAIiB,EAAO,cACEf,EACbJ,MAAOA,EACPC,aAAcA,EAAY,oBACPE,EACnBG,WAAYA,EACZC,QAASA,EACTC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,QAASA,WAETO,EAACE,iBACGpB,GAAI,GAAGiB,uBACMf,EAAS,GAAGA,cAAgBmB,EACzCC,QAASvB,EACTI,aAAcA,EACdS,QAASA,GACLC,KAEE"}
@@ -0,0 +1,2 @@
1
+ export { FormMultiSelect } from "./form-multi-select";
2
+ export type { FormMultiSelectProps } from "./types";
@@ -0,0 +1,10 @@
1
+ import type { InputMultiSelectPartialProps } from "../../input-multi-select/types";
2
+ import type { BaseFormElementProps } from "../types";
3
+ /**
4
+ * Props for `Form.MultiSelect`, combining multi-select input props with the
5
+ * shared form field layout.
6
+ *
7
+ * `T` is the option item type. `V` is the selected value type.
8
+ */
9
+ export interface FormMultiSelectProps<T, V> extends InputMultiSelectPartialProps<T, V>, BaseFormElementProps {
10
+ }
@@ -0,0 +1,2 @@
1
+ import{__rest as s}from"../../_virtual/_tslib.js";import{jsx as r}from"react/jsx-runtime";import{InputNestedMultiSelect as t}from"../../input-nested-multi-select/input-nested-multi-select.js";import"../../util/calendar-helper.js";import"../../external/dayjs/dayjs.min.js";import"react";import{useId as e}from"../../util/simple-id-generator.js";import"../../util/string-helper.js";import"@react-aria/live-announcer";import{FormWrapper as l}from"../form-wrapper.js";const o=o=>{var{label:a,errorMessage:i,id:d,"data-error-testid":m,"data-testid":p,layoutType:x,xxsCols:C,xsCols:n,smCols:u,mdCols:c,lgCols:j,xlCols:g,xxlCols:f}=o,y=s(o,["label","errorMessage","id","data-error-testid","data-testid","layoutType","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols"]);const b=e(),v=null!=d?d:`form-field-${b}`;return r(l,{id:v,"data-testid":p,label:a,errorMessage:i,"data-error-testid":m,layoutType:x,xxsCols:C,xsCols:n,smCols:u,mdCols:c,lgCols:j,xlCols:g,xxlCols:f,children:r(t,Object.assign({id:`${v}-base`,"data-testid":p?`${p}-base`:void 0,error:!!i},y))})};export{o as FormNestedMultiSelect};
2
+ //# sourceMappingURL=form-nested-multi-select.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-nested-multi-select.js","sources":["../../../src/form/form-nested-multi-select/form-nested-multi-select.tsx"],"sourcesContent":["import { InputNestedMultiSelect } from \"../../input-nested-multi-select\";\nimport { useId } from \"../../util\";\nimport { FormWrapper } from \"../form-wrapper\";\nimport type { FormNestedMultiSelectProps } from \"./types\";\n\nexport const FormNestedMultiSelect = <V1, V2, V3>({\n label,\n errorMessage,\n id,\n \"data-error-testid\": errorTestId,\n \"data-testid\": testId,\n layoutType,\n xxsCols,\n xsCols,\n smCols,\n mdCols,\n lgCols,\n xlCols,\n xxlCols,\n ...otherProps\n}: FormNestedMultiSelectProps<V1, V2, V3>): JSX.Element => {\n const internalId = useId();\n const inputId = id ?? `form-field-${internalId}`;\n return (\n <FormWrapper\n id={inputId}\n data-testid={testId}\n label={label}\n errorMessage={errorMessage}\n data-error-testid={errorTestId}\n layoutType={layoutType}\n xxsCols={xxsCols}\n xsCols={xsCols}\n smCols={smCols}\n mdCols={mdCols}\n lgCols={lgCols}\n xlCols={xlCols}\n xxlCols={xxlCols}\n >\n <InputNestedMultiSelect\n id={`${inputId}-base`}\n data-testid={testId ? `${testId}-base` : undefined}\n error={!!errorMessage}\n {...otherProps}\n />\n </FormWrapper>\n );\n};\n"],"names":["FormNestedMultiSelect","_a","label","errorMessage","id","errorTestId","testId","layoutType","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols","otherProps","__rest","internalId","useId","inputId","_jsx","FormWrapper","children","InputNestedMultiSelect","undefined","error"],"mappings":"gdAKO,MAAMA,EAAqCC,IAAA,IAAAC,MAC9CA,EAAKC,aACLA,EAAYC,GACZA,EACA,oBAAqBC,EACrB,cAAeC,EAAMC,WACrBA,EAAUC,QACVA,EAAOC,OACPA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,OACNA,EAAMC,QACNA,GAAOb,EACJc,EAAUC,EAAAf,EAdiC,+IAgB9C,MAAMgB,EAAaC,IACbC,EAAUf,QAAAA,EAAM,cAAca,IACpC,OACIG,EAACC,EAAW,CACRjB,GAAIe,EAAO,cACEb,EACbJ,MAAOA,EACPC,aAAcA,EAAY,oBACPE,EACnBE,WAAYA,EACZC,QAASA,EACTC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,OAAQA,EACRC,QAASA,EAAOQ,SAEhBF,EAACG,iBACGnB,GAAI,GAAGe,uBACMb,EAAS,GAAGA,cAAgBkB,EACzCC,QAAStB,GACLY,KAEE"}
@@ -0,0 +1,2 @@
1
+ export { FormNestedMultiSelect } from "./form-nested-multi-select";
2
+ export type { FormNestedMultiSelectProps } from "./types";
@@ -0,0 +1,11 @@
1
+ import type { InputNestedMultiSelectPartialProps } from "../../input-nested-multi-select";
2
+ import type { BaseFormElementProps } from "../types";
3
+ /**
4
+ * Props for `Form.NestedMultiSelect`, combining nested multi-select input
5
+ * props with the shared form field layout.
6
+ *
7
+ * `V1`, `V2`, and `V3` are the value types for the first, second, and third
8
+ * nesting levels respectively.
9
+ */
10
+ export interface FormNestedMultiSelectProps<V1, V2, V3> extends InputNestedMultiSelectPartialProps<V1, V2, V3>, BaseFormElementProps {
11
+ }