@indico-data/design-system 3.18.0 → 3.20.0

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 (310) hide show
  1. package/.eslintrc.js +87 -2
  2. package/.husky/pre-commit +2 -0
  3. package/.vscode/settings.json +10 -1
  4. package/lib/components/badge/Badge.d.ts +1 -1
  5. package/lib/components/badge/Badge.stories.d.ts +1 -1
  6. package/lib/components/button/Button.d.ts +2 -2
  7. package/lib/components/button/Button.stories.d.ts +1 -1
  8. package/lib/components/button/types.d.ts +1 -1
  9. package/lib/components/card/Card.d.ts +1 -1
  10. package/lib/components/card/Card.stories.d.ts +1 -1
  11. package/lib/components/floatUI/FloatUI.d.ts +1 -1
  12. package/lib/components/floatUI/FloatUI.stories.d.ts +2 -2
  13. package/lib/components/floatUI/types.d.ts +2 -2
  14. package/lib/components/forms/checkbox/Checkbox.stories.d.ts +1 -1
  15. package/lib/components/forms/date/datePicker/DatePicker.d.ts +1 -1
  16. package/lib/components/forms/date/datePicker/DatePicker.stories.d.ts +1 -1
  17. package/lib/components/forms/date/datePicker/contants.d.ts +1 -1
  18. package/lib/components/forms/date/datePicker/types.d.ts +8 -1
  19. package/lib/components/forms/date/iconTriggerDatePicker/IconTriggerDatePicker.d.ts +7 -4
  20. package/lib/components/forms/date/iconTriggerDatePicker/IconTriggerDatePicker.stories.d.ts +1 -1
  21. package/lib/components/forms/date/iconTriggerDatePicker/types.d.ts +5 -0
  22. package/lib/components/forms/date/inputDatePicker/SingleInputDatePicker.d.ts +4 -3
  23. package/lib/components/forms/date/inputDatePicker/SingleInputDatePicker.stories.d.ts +1 -1
  24. package/lib/components/forms/date/inputDateRangePicker/InputDateRangePicker.d.ts +7 -4
  25. package/lib/components/forms/date/inputDateRangePicker/InputDateRangePicker.stories.d.ts +1 -1
  26. package/lib/components/forms/date/inputDateRangePicker/types.d.ts +7 -0
  27. package/lib/components/forms/date/inputDateTimePicker/SingleInputDateTimePicker.d.ts +4 -3
  28. package/lib/components/forms/date/inputDateTimePicker/SingleInputDateTimePicker.stories.d.ts +1 -1
  29. package/lib/components/forms/form/Form.d.ts +1 -1
  30. package/lib/components/forms/form/Form.stories.d.ts +1 -1
  31. package/lib/components/forms/input/Input.d.ts +2 -2
  32. package/lib/components/forms/input/Input.stories.d.ts +1 -1
  33. package/lib/components/forms/numberInput/NumberInput.d.ts +2 -2
  34. package/lib/components/forms/numberInput/NumberInput.stories.d.ts +1 -1
  35. package/lib/components/forms/passwordInput/PasswordInput.d.ts +1 -1
  36. package/lib/components/forms/passwordInput/PasswordInput.stories.d.ts +1 -1
  37. package/lib/components/forms/radio/Radio.stories.d.ts +1 -1
  38. package/lib/components/forms/select/Select.d.ts +4 -2
  39. package/lib/components/forms/select/Select.stories.d.ts +4 -4
  40. package/lib/components/forms/select/types.d.ts +11 -1
  41. package/lib/components/forms/subcomponents/Label.d.ts +5 -1
  42. package/lib/components/forms/subcomponents/types.d.ts +5 -0
  43. package/lib/components/forms/textarea/Textarea.d.ts +1 -1
  44. package/lib/components/forms/textarea/Textarea.stories.d.ts +1 -1
  45. package/lib/components/forms/timePicker/TimePicker.d.ts +4 -1
  46. package/lib/components/forms/timePicker/types.d.ts +5 -0
  47. package/lib/components/forms/toggle/Toggle.stories.d.ts +1 -1
  48. package/lib/components/grid/col/Col.d.ts +1 -1
  49. package/lib/components/grid/col/Col.stories.d.ts +1 -1
  50. package/lib/components/grid/container/Container.d.ts +1 -1
  51. package/lib/components/grid/container/Container.stories.d.ts +1 -1
  52. package/lib/components/grid/row/Row.d.ts +1 -1
  53. package/lib/components/grid/row/Row.stories.d.ts +1 -1
  54. package/lib/components/icons/Icon.d.ts +1 -1
  55. package/lib/components/icons/Icon.stories.d.ts +2 -2
  56. package/lib/components/icons/indicons.d.ts +1 -1
  57. package/lib/components/icons/types.d.ts +4 -4
  58. package/lib/components/loading-indicators/BarSpinner/BarSpinner.stories.d.ts +1 -1
  59. package/lib/components/loading-indicators/CirclePulse/CirclePulse.stories.d.ts +1 -1
  60. package/lib/components/menu/Menu.stories.d.ts +2 -2
  61. package/lib/components/modal/ConfirmationModal.d.ts +2 -2
  62. package/lib/components/modal/Modal.d.ts +2 -2
  63. package/lib/components/modal/Modal.stories.d.ts +6 -2
  64. package/lib/components/modal/types.d.ts +21 -7
  65. package/lib/components/pagination/Pagination.d.ts +2 -2
  66. package/lib/components/pagination/Pagination.stories.d.ts +1 -1
  67. package/lib/components/pagination/index.d.ts +1 -0
  68. package/lib/components/pagination/types.d.ts +13 -0
  69. package/lib/components/pill/Pill.d.ts +1 -1
  70. package/lib/components/pill/Pill.stories.d.ts +1 -1
  71. package/lib/components/pill/types.d.ts +2 -2
  72. package/lib/components/skeleton/Skeleton.stories.d.ts +1 -1
  73. package/lib/components/stepper/Stepper.d.ts +2 -2
  74. package/lib/components/stepper/Stepper.stories.d.ts +1 -1
  75. package/lib/components/stepper/components/BackNavigation.d.ts +2 -1
  76. package/lib/components/stepper/components/Legend.d.ts +1 -1
  77. package/lib/components/stepper/components/NextNavigation.d.ts +3 -1
  78. package/lib/components/stepper/types.d.ts +12 -1
  79. package/lib/components/table/LoadingComponent.d.ts +5 -1
  80. package/lib/components/table/Table.d.ts +1 -1
  81. package/lib/components/table/Table.stories.d.ts +2 -2
  82. package/lib/components/table/components/HorizontalStickyHeader.d.ts +4 -1
  83. package/lib/components/table/components/helpers.d.ts +1 -1
  84. package/lib/components/table/hooks/usePinnedColumnsManager.d.ts +2 -2
  85. package/lib/components/table/sampleData.d.ts +1 -1
  86. package/lib/components/table/types.d.ts +20 -2
  87. package/lib/components/table/utils/processColumns.d.ts +2 -2
  88. package/lib/components/tanstackTable/TankstackTable.types.d.ts +20 -3
  89. package/lib/components/tanstackTable/TanstackTable.d.ts +2 -2
  90. package/lib/components/tanstackTable/TanstackTable.stories.d.ts +2 -2
  91. package/lib/components/tanstackTable/__tests__/__mocks__/test-mock-data.d.ts +1 -1
  92. package/lib/components/tanstackTable/components/ActionBar/ActionBar.d.ts +2 -2
  93. package/lib/components/tanstackTable/components/ActionBar/ActionBar.stories.d.ts +1 -1
  94. package/lib/components/tanstackTable/components/NoResults/NoResults.d.ts +2 -1
  95. package/lib/components/tanstackTable/components/TableBody/TableBody.d.ts +1 -1
  96. package/lib/components/tanstackTable/components/TableHeader/TableHeader.d.ts +1 -1
  97. package/lib/components/tanstackTable/components/TableLoading/TableLoading.d.ts +1 -1
  98. package/lib/components/tanstackTable/components/TablePagination/TablePagination.d.ts +3 -1
  99. package/lib/components/tanstackTable/docs/internalSorting/InternalClientSideSorting.stories.d.ts +2 -2
  100. package/lib/components/tanstackTable/docs/pinnedColumns/PinnedColumn.stories.d.ts +2 -2
  101. package/lib/components/tanstackTable/docs/withRowClick/WithRowClick.stories.d.ts +2 -2
  102. package/lib/components/tanstackTable/helpers.d.ts +2 -2
  103. package/lib/components/tanstackTable/mock-data/table-configuration.d.ts +2 -2
  104. package/lib/components/tanstackTable/useTanstackTable.d.ts +1 -1
  105. package/lib/components/toast/Toast.stories.d.ts +1 -1
  106. package/lib/components/tooltip/Tooltip.d.ts +2 -2
  107. package/lib/components/tooltip/Tooltip.stories.d.ts +1 -1
  108. package/lib/components/truncate/Truncate.d.ts +1 -1
  109. package/lib/components/truncate/Truncate.stories.d.ts +2 -2
  110. package/lib/components/truncate/types.d.ts +1 -1
  111. package/lib/docs/BaseColorPalette/BaseColorsPalette.stories.d.ts +1 -1
  112. package/lib/docs/SemanticTokens/ColorSwatch.d.ts +1 -1
  113. package/lib/docs/SemanticTokens/SemanticTokens.stories.d.ts +1 -1
  114. package/lib/index.d.ts +165 -45
  115. package/lib/index.esm.js +253 -170
  116. package/lib/index.esm.js.map +1 -1
  117. package/lib/index.js +253 -170
  118. package/lib/index.js.map +1 -1
  119. package/lib/setup/setupIcons.d.ts +1 -1
  120. package/lib/storybook/formArgTypes.d.ts +1 -1
  121. package/lib/stylesAndAnimations/borders/BorderColor.stories.d.ts +1 -1
  122. package/lib/stylesAndAnimations/borders/BorderRadius.stories.d.ts +1 -1
  123. package/lib/stylesAndAnimations/borders/BorderStyles.stories.d.ts +1 -1
  124. package/lib/stylesAndAnimations/borders/BorderThickness.stories.d.ts +1 -1
  125. package/lib/stylesAndAnimations/colors/UtilityClasses.stories.d.ts +1 -1
  126. package/lib/stylesAndAnimations/sizing/Sizing.stories.d.ts +1 -1
  127. package/lib/stylesAndAnimations/typography/Typography.stories.d.ts +1 -1
  128. package/lib/stylesAndAnimations/utilityClasses/UtilityClassesTable.stories.d.ts +1 -1
  129. package/lib/types.d.ts +4 -4
  130. package/package.json +8 -2
  131. package/src/components/badge/Badge.stories.tsx +4 -3
  132. package/src/components/badge/Badge.tsx +2 -1
  133. package/src/components/badge/__tests__/Badge.test.tsx +1 -0
  134. package/src/components/button/Button.stories.tsx +5 -4
  135. package/src/components/button/Button.tsx +12 -22
  136. package/src/components/button/__tests__/Button.test.tsx +31 -28
  137. package/src/components/button/types.ts +1 -1
  138. package/src/components/card/Card.stories.tsx +2 -1
  139. package/src/components/card/Card.tsx +2 -1
  140. package/src/components/card/__tests__/Card.test.tsx +1 -0
  141. package/src/components/floatUI/FloatUI.stories.tsx +3 -2
  142. package/src/components/floatUI/FloatUI.tsx +6 -7
  143. package/src/components/floatUI/__tests__/FloatUI.test.tsx +5 -3
  144. package/src/components/floatUI/types.ts +2 -2
  145. package/src/components/forms/checkbox/Checkbox.stories.tsx +3 -2
  146. package/src/components/forms/checkbox/Checkbox.tsx +1 -1
  147. package/src/components/forms/checkbox/__tests__/Checkbox.test.tsx +2 -1
  148. package/src/components/forms/date/datePicker/DatePicker.stories.tsx +12 -1
  149. package/src/components/forms/date/datePicker/DatePicker.tsx +35 -25
  150. package/src/components/forms/date/datePicker/__tests__/DatePicker.test.tsx +1 -0
  151. package/src/components/forms/date/datePicker/contants.ts +1 -1
  152. package/src/components/forms/date/datePicker/types.ts +16 -8
  153. package/src/components/forms/date/iconTriggerDatePicker/IconTriggerDatePicker.stories.tsx +16 -2
  154. package/src/components/forms/date/iconTriggerDatePicker/IconTriggerDatePicker.tsx +21 -8
  155. package/src/components/forms/date/iconTriggerDatePicker/__tests__/IconTriggerDatePicker.test.tsx +2 -1
  156. package/src/components/forms/date/iconTriggerDatePicker/types.ts +5 -0
  157. package/src/components/forms/date/inputDatePicker/SingleInputDatePicker.stories.tsx +4 -2
  158. package/src/components/forms/date/inputDatePicker/SingleInputDatePicker.tsx +18 -13
  159. package/src/components/forms/date/inputDatePicker/__tests__/SingleInputDatePicker.test.tsx +4 -2
  160. package/src/components/forms/date/inputDateRangePicker/InputDateRangePicker.stories.tsx +15 -4
  161. package/src/components/forms/date/inputDateRangePicker/InputDateRangePicker.tsx +29 -23
  162. package/src/components/forms/date/inputDateRangePicker/__tests__/InputDateRangePicker.test.tsx +2 -2
  163. package/src/components/forms/date/inputDateRangePicker/types.ts +7 -0
  164. package/src/components/forms/date/inputDateTimePicker/SingleInputDateTimePicker.stories.tsx +9 -5
  165. package/src/components/forms/date/inputDateTimePicker/SingleInputDateTimePicker.tsx +18 -13
  166. package/src/components/forms/form/Form.stories.tsx +7 -6
  167. package/src/components/forms/form/Form.tsx +1 -1
  168. package/src/components/forms/form/__tests__/Form.test.tsx +7 -4
  169. package/src/components/forms/input/Input.stories.tsx +6 -3
  170. package/src/components/forms/input/Input.tsx +4 -3
  171. package/src/components/forms/input/__tests__/Input.test.tsx +5 -3
  172. package/src/components/forms/numberInput/NumberInput.stories.tsx +5 -2
  173. package/src/components/forms/numberInput/NumberInput.tsx +6 -3
  174. package/src/components/forms/numberInput/__tests__/NumberInput.test.tsx +2 -1
  175. package/src/components/forms/passwordInput/PasswordInput.stories.tsx +6 -3
  176. package/src/components/forms/passwordInput/PasswordInput.tsx +12 -3
  177. package/src/components/forms/passwordInput/__tests__/PasswordInput.test.tsx +3 -4
  178. package/src/components/forms/radio/Radio.stories.tsx +5 -2
  179. package/src/components/forms/radio/__tests__/Radio.test.tsx +3 -2
  180. package/src/components/forms/select/Select.stories.tsx +11 -9
  181. package/src/components/forms/select/Select.tsx +21 -6
  182. package/src/components/forms/select/__tests__/Select.test.tsx +2 -2
  183. package/src/components/forms/select/types.ts +13 -1
  184. package/src/components/forms/subcomponents/Label.tsx +24 -4
  185. package/src/components/forms/subcomponents/__tests__/Label.test.tsx +1 -0
  186. package/src/components/forms/subcomponents/types.ts +5 -0
  187. package/src/components/forms/textarea/Textarea.stories.tsx +5 -2
  188. package/src/components/forms/textarea/Textarea.tsx +5 -4
  189. package/src/components/forms/textarea/__tests__/Textarea.test.tsx +3 -3
  190. package/src/components/forms/timePicker/TimePicker.stories.tsx +14 -2
  191. package/src/components/forms/timePicker/TimePicker.tsx +15 -5
  192. package/src/components/forms/timePicker/__tests__/TimePicker.test.tsx +2 -1
  193. package/src/components/forms/timePicker/types.ts +5 -0
  194. package/src/components/forms/toggle/Toggle.stories.tsx +3 -2
  195. package/src/components/forms/toggle/__tests__/Toggle.test.tsx +3 -2
  196. package/src/components/grid/col/Col.stories.tsx +2 -1
  197. package/src/components/grid/col/Col.tsx +1 -1
  198. package/src/components/grid/container/Container.stories.tsx +2 -1
  199. package/src/components/grid/container/Container.tsx +1 -1
  200. package/src/components/grid/row/Row.stories.tsx +2 -1
  201. package/src/components/grid/row/Row.tsx +1 -1
  202. package/src/components/icons/Icon.stories.tsx +11 -4
  203. package/src/components/icons/Icon.tsx +4 -3
  204. package/src/components/icons/__tests__/Icon.test.tsx +1 -0
  205. package/src/components/icons/indicons.tsx +3 -3
  206. package/src/components/icons/types.ts +5 -4
  207. package/src/components/loading-indicators/BarSpinner/BarSpinner.stories.tsx +2 -1
  208. package/src/components/loading-indicators/BarSpinner/__tests__/BarSpinner.test.tsx +1 -0
  209. package/src/components/loading-indicators/CirclePulse/CirclePulse.stories.tsx +2 -1
  210. package/src/components/menu/Menu.stories.tsx +3 -2
  211. package/src/components/menu/Menu.test.tsx +1 -1
  212. package/src/components/menu/Menu.tsx +1 -1
  213. package/src/components/modal/ConfirmationModal.tsx +25 -18
  214. package/src/components/modal/Modal.stories.tsx +62 -28
  215. package/src/components/modal/Modal.tsx +9 -2
  216. package/src/components/modal/__tests__/Modal.test.tsx +1 -0
  217. package/src/components/modal/types.ts +23 -7
  218. package/src/components/pagination/Pagination.stories.tsx +14 -2
  219. package/src/components/pagination/Pagination.tsx +18 -8
  220. package/src/components/pagination/__tests__/Pagination.test.tsx +1 -0
  221. package/src/components/pagination/index.ts +1 -0
  222. package/src/components/pagination/types.ts +14 -0
  223. package/src/components/pill/Pill.stories.tsx +10 -6
  224. package/src/components/pill/Pill.tsx +2 -1
  225. package/src/components/pill/__tests__/Pill.test.tsx +4 -1
  226. package/src/components/pill/types.ts +4 -2
  227. package/src/components/skeleton/Skeleton.stories.tsx +2 -1
  228. package/src/components/skeleton/__tests__/Skeleton.test.tsx +1 -0
  229. package/src/components/stepper/Stepper.stories.tsx +20 -7
  230. package/src/components/stepper/Stepper.tsx +18 -3
  231. package/src/components/stepper/__tests__/Stepper.tests.tsx +5 -4
  232. package/src/components/stepper/components/BackNavigation.tsx +5 -3
  233. package/src/components/stepper/components/Legend.tsx +4 -3
  234. package/src/components/stepper/components/NextNavigation.tsx +15 -5
  235. package/src/components/stepper/examples/MixedExample.tsx +4 -3
  236. package/src/components/stepper/examples/OptionalStepsExample.tsx +4 -3
  237. package/src/components/stepper/examples/RequiredStepsExample.tsx +4 -3
  238. package/src/components/stepper/examples/commonExample/CommonExample.tsx +4 -3
  239. package/src/components/stepper/examples/commonExample/steps/StepOne.tsx +1 -0
  240. package/src/components/stepper/examples/commonExample/steps/StepThree.tsx +1 -0
  241. package/src/components/stepper/examples/commonExample/steps/StepTwo.tsx +1 -0
  242. package/src/components/stepper/types.ts +13 -1
  243. package/src/components/table/LoadingComponent.tsx +6 -2
  244. package/src/components/table/Table.stories.tsx +19 -5
  245. package/src/components/table/Table.tsx +16 -5
  246. package/src/components/table/__tests__/Table.test.tsx +2 -1
  247. package/src/components/table/components/HorizontalStickyHeader.tsx +14 -2
  248. package/src/components/table/components/TablePagination.tsx +1 -1
  249. package/src/components/table/components/__tests__/HorizontalStickyHeader.test.tsx +3 -3
  250. package/src/components/table/components/__tests__/TablePagination.test.tsx +1 -0
  251. package/src/components/table/components/helpers.ts +1 -1
  252. package/src/components/table/hooks/usePinnedColumnsManager.ts +7 -2
  253. package/src/components/table/sampleData.tsx +1 -3
  254. package/src/components/table/types.ts +25 -6
  255. package/src/components/table/utils/processColumns.tsx +4 -2
  256. package/src/components/tanstackTable/TankstackTable.types.ts +21 -3
  257. package/src/components/tanstackTable/TanstackTable.stories.tsx +14 -11
  258. package/src/components/tanstackTable/TanstackTable.tsx +28 -18
  259. package/src/components/tanstackTable/__tests__/TanstackTable.test.tsx +2 -1
  260. package/src/components/tanstackTable/__tests__/__mocks__/test-mock-data.tsx +2 -1
  261. package/src/components/tanstackTable/components/ActionBar/ActionBar.stories.tsx +6 -3
  262. package/src/components/tanstackTable/components/ActionBar/ActionBar.tsx +7 -3
  263. package/src/components/tanstackTable/components/ActionBar/__tests__/ActionBar.test.tsx +4 -1
  264. package/src/components/tanstackTable/components/NoResults/NoResults.tsx +9 -3
  265. package/src/components/tanstackTable/components/NoResults/__tests__/NoResult.test.tsx +1 -0
  266. package/src/components/tanstackTable/components/TableBody/TableBody.tsx +2 -1
  267. package/src/components/tanstackTable/components/TableHeader/TableHeader.tsx +3 -2
  268. package/src/components/tanstackTable/components/TableLoading/TableLoading.tsx +2 -1
  269. package/src/components/tanstackTable/components/TablePagination/TablePagination.tsx +4 -1
  270. package/src/components/tanstackTable/components/TablePagination/__tests__/TablePagination.test.tsx +1 -0
  271. package/src/components/tanstackTable/docs/internalSorting/InternalClientSideSorting.stories.tsx +5 -5
  272. package/src/components/tanstackTable/docs/pinnedColumns/PinnedColumn.stories.tsx +5 -4
  273. package/src/components/tanstackTable/docs/withRowClick/WithRowClick.stories.tsx +5 -4
  274. package/src/components/tanstackTable/helpers.ts +2 -2
  275. package/src/components/tanstackTable/mock-data/table-configuration.tsx +7 -4
  276. package/src/components/tanstackTable/useTanstackTable.tsx +1 -2
  277. package/src/components/toast/Toast.stories.tsx +2 -1
  278. package/src/components/tooltip/Tooltip.stories.tsx +3 -2
  279. package/src/components/tooltip/Tooltip.tsx +2 -2
  280. package/src/components/truncate/Truncate.stories.tsx +3 -2
  281. package/src/components/truncate/Truncate.tsx +5 -4
  282. package/src/components/truncate/__tests__/Truncate.test.tsx +1 -0
  283. package/src/components/truncate/types.ts +1 -1
  284. package/src/docs/BaseColorPalette/BaseColorPalette.tsx +1 -0
  285. package/src/docs/BaseColorPalette/BaseColorsPalette.stories.tsx +2 -1
  286. package/src/docs/BaseColorPalette/Swatch.tsx +2 -1
  287. package/src/docs/SemanticTokens/ColorSwatch.tsx +1 -1
  288. package/src/docs/SemanticTokens/SemanticTokens.stories.tsx +2 -2
  289. package/src/index.ts +1 -1
  290. package/src/setup/setupIcons.ts +2 -2
  291. package/src/storybook/formArgTypes.ts +12 -1
  292. package/src/storybook/iconNames.ts +1 -0
  293. package/src/storybookDocs/Permafrost.mdx +8 -0
  294. package/src/stylesAndAnimations/borders/BorderColor.stories.tsx +2 -1
  295. package/src/stylesAndAnimations/borders/BorderColor.tsx +0 -1
  296. package/src/stylesAndAnimations/borders/BorderRadius.stories.tsx +2 -1
  297. package/src/stylesAndAnimations/borders/BorderRadius.tsx +0 -1
  298. package/src/stylesAndAnimations/borders/BorderStyles.stories.tsx +2 -1
  299. package/src/stylesAndAnimations/borders/BorderStyles.tsx +0 -1
  300. package/src/stylesAndAnimations/borders/BorderThickness.stories.tsx +2 -1
  301. package/src/stylesAndAnimations/borders/BorderThickness.tsx +0 -1
  302. package/src/stylesAndAnimations/colors/UtilityClasses.stories.tsx +2 -1
  303. package/src/stylesAndAnimations/colors/UtilityClasses.tsx +1 -2
  304. package/src/stylesAndAnimations/sizing/Sizing.stories.tsx +2 -1
  305. package/src/stylesAndAnimations/sizing/Sizing.tsx +0 -1
  306. package/src/stylesAndAnimations/typography/Typography.stories.tsx +2 -1
  307. package/src/stylesAndAnimations/typography/Typography.tsx +0 -1
  308. package/src/stylesAndAnimations/utilityClasses/UtilityClassesTable.stories.tsx +2 -1
  309. package/src/stylesAndAnimations/utilityClasses/UtilityClassesTable.tsx +6 -3
  310. package/src/types.ts +12 -6
package/.eslintrc.js CHANGED
@@ -7,6 +7,7 @@ module.exports = {
7
7
  'eslint:recommended',
8
8
  'plugin:@typescript-eslint/recommended',
9
9
  'plugin:react/recommended',
10
+ 'plugin:react/jsx-runtime',
10
11
  ],
11
12
  settings: {
12
13
  react: {
@@ -23,13 +24,38 @@ module.exports = {
23
24
  sourceType: 'script',
24
25
  },
25
26
  },
27
+ // Relaxed rules for test files, stories, examples, and documentation
28
+ {
29
+ files: [
30
+ '**/*.test.ts',
31
+ '**/*.test.tsx',
32
+ '**/*.stories.ts',
33
+ '**/*.stories.tsx',
34
+ '**/__tests__/**',
35
+ '**/*.mdx',
36
+ '**/examples/**',
37
+ '**/mock-data/**',
38
+ '**/sampleData.*',
39
+ '**/docs/**',
40
+ '**/stylesAndAnimations/**',
41
+ ],
42
+ rules: {
43
+ // i18n rules off for demo/doc files
44
+ 'i18next/no-literal-string': 'off',
45
+ '@sanity/i18n/no-attribute-string-literals': 'off',
46
+ // Allow hooks in Storybook render functions (common pattern)
47
+ 'react-hooks/rules-of-hooks': 'off',
48
+ // Allow console in stories for demos
49
+ 'no-console': 'off',
50
+ },
51
+ },
26
52
  ],
27
53
  parser: '@typescript-eslint/parser',
28
54
  parserOptions: {
29
55
  ecmaVersion: 'latest',
30
56
  sourceType: 'module',
31
57
  },
32
- plugins: ['@typescript-eslint', 'react', 'react-hooks', 'react/jsx-runtime'],
58
+ plugins: ['@typescript-eslint', 'react', 'react-hooks', 'i18next', '@sanity/i18n', 'import'],
33
59
  rules: {
34
60
  'no-debugger': 'error',
35
61
  'no-console': ['error', { allow: ['warn', 'error', 'info'] }],
@@ -51,7 +77,10 @@ module.exports = {
51
77
  '@typescript-eslint/ban-ts-comment': 'off',
52
78
  '@typescript-eslint/ban-types': 'off',
53
79
  '@typescript-eslint/no-this-alias': 'off',
54
- '@typescript-eslint/no-unused-vars': ['error', { args: 'after-used', argsIgnorePattern: '^_' }],
80
+ '@typescript-eslint/no-unused-vars': [
81
+ 'error',
82
+ { args: 'after-used', argsIgnorePattern: '^_', varsIgnorePattern: '^_' },
83
+ ],
55
84
  '@typescript-eslint/no-non-null-assertion': 'off',
56
85
  'max-len': [
57
86
  'warn',
@@ -64,5 +93,61 @@ module.exports = {
64
93
  ignoreTemplateLiterals: true,
65
94
  },
66
95
  ],
96
+ // prevent hardcoded strings
97
+ 'i18next/no-literal-string': [
98
+ 'warn',
99
+ {
100
+ markupOnly: false,
101
+ validateTemplate: true,
102
+ onlyAttribute: [
103
+ 'label',
104
+ 'placeholder',
105
+ 'title',
106
+ 'alt',
107
+ 'aria-label',
108
+ 'ariaLabel',
109
+ 'tooltip',
110
+ ],
111
+ ignoreCallee: ['console', 'styled', 'css', 'classNames', 'classnames'],
112
+ ignoreProperty: ['displayName', 'name', 'testId', 'data-testid', 'className'],
113
+ },
114
+ ],
115
+ '@sanity/i18n/no-attribute-string-literals': [
116
+ 'warn',
117
+ {
118
+ only: {
119
+ attributes: [
120
+ 'label',
121
+ 'placeholder',
122
+ 'title',
123
+ 'alt',
124
+ 'aria-label',
125
+ 'ariaLabel',
126
+ 'tooltip',
127
+ ],
128
+ },
129
+ },
130
+ ],
131
+ 'import/order': [
132
+ 'warn',
133
+ {
134
+ 'newlines-between': 'always',
135
+ groups: ['builtin', 'external', 'internal', ['parent', 'sibling', 'index'], 'type'],
136
+ pathGroups: [
137
+ {
138
+ pattern: '@/**',
139
+ group: 'internal',
140
+ },
141
+ ],
142
+ alphabetize: { order: 'asc', caseInsensitive: true },
143
+ },
144
+ ],
145
+ '@typescript-eslint/consistent-type-imports': [
146
+ 'warn',
147
+ {
148
+ prefer: 'type-imports',
149
+ fixStyle: 'inline-type-imports',
150
+ },
151
+ ],
67
152
  },
68
153
  };
@@ -0,0 +1,2 @@
1
+ #!/bin/sh
2
+ npx lint-staged
@@ -7,5 +7,14 @@
7
7
  "prettier.prettierPath": ".yarn/sdks/prettier/index.cjs",
8
8
  "typescript.tsdk": ".yarn/sdks/typescript/lib",
9
9
  "typescript.enablePromptUseWorkspaceTsdk": true,
10
- "testing.automaticallyOpenTestResults": "neverOpen"
10
+ "testing.automaticallyOpenTestResults": "neverOpen",
11
+ "editor.formatOnSave": true,
12
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
13
+ "editor.codeActionsOnSave": {
14
+ "source.fixAll.eslint": "explicit",
15
+ "source.organizeImports": "never",
16
+ "source.sortImports": "never"
17
+ },
18
+ "eslint.format.enable": false,
19
+ "prettier.requireConfig": true
11
20
  }
@@ -1,2 +1,2 @@
1
- import { BadgeProps } from './types';
1
+ import { type BadgeProps } from './types';
2
2
  export declare const Badge: ({ className, children, size, string, ...rest }: BadgeProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from '@storybook/react';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
2
  import { Badge } from './Badge';
3
3
  declare const meta: Meta;
4
4
  export default meta;
@@ -1,3 +1,3 @@
1
- import React from 'react';
2
- import { ButtonProps } from './types';
1
+ import { type ButtonProps } from './types';
2
+ import type React from 'react';
3
3
  export declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement>>;
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from '@storybook/react';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
2
  import { Button } from '@/components';
3
3
  declare const meta: Meta;
4
4
  type Story = StoryObj<typeof Button>;
@@ -1,4 +1,4 @@
1
- import { IconName } from '../../types';
1
+ import { type IconName } from '../../types';
2
2
  export type ButtonVariants = 'solid' | 'outline' | 'link' | 'action' | 'destructive' | 'soft';
3
3
  export type ButtonSizes = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
4
4
  export type ButtonTypes = 'button' | 'submit' | 'reset';
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import type React from 'react';
2
2
  type Props = {
3
3
  /** Additional classes for the card component */
4
4
  className?: string;
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from '@storybook/react';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
2
  import { Card } from './Card';
3
3
  declare const meta: Meta;
4
4
  export default meta;
@@ -1,2 +1,2 @@
1
- import { FloatUIProps } from './types';
1
+ import { type FloatUIProps } from './types';
2
2
  export declare function FloatUI({ children, ariaLabel, isOpen: controlledIsOpen, setIsOpen: controlledSetIsOpen, isPortal, portalOptions, floatingOptions, className, hover, onOpenChange, disableAutoUpdate, }: FloatUIProps): import("react/jsx-runtime").JSX.Element;
@@ -1,6 +1,6 @@
1
- import { Meta, StoryObj } from '@storybook/react';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
2
  import { FloatUI } from './FloatUI';
3
- import { FloatUIProps } from './types';
3
+ import { type FloatUIProps } from './types';
4
4
  declare const meta: Meta<typeof FloatUI>;
5
5
  export default meta;
6
6
  type Story = StoryObj<FloatUIProps>;
@@ -1,5 +1,5 @@
1
- import { ReactElement } from 'react';
2
- import { UseFloatingOptions } from '@floating-ui/react-dom';
1
+ import { type UseFloatingOptions } from '@floating-ui/react-dom';
2
+ import { type ReactElement } from 'react';
3
3
  export type FloatUIProps = {
4
4
  /** An array of exactly two elements: the first element is the trigger that opens the FloatUI, and the second element is the content displayed within the FloatUI. */
5
5
  children: [ReactElement, ReactElement];
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from '@storybook/react';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
2
  import { Checkbox } from './Checkbox';
3
3
  declare const meta: Meta;
4
4
  export default meta;
@@ -1,3 +1,3 @@
1
1
  import 'react-day-picker/style.css';
2
- import { DatePickerProps } from './types';
2
+ import { type DatePickerProps } from './types';
3
3
  export declare const DatePicker: (props: DatePickerProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from '@storybook/react';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
2
  import { DatePicker } from './DatePicker';
3
3
  declare const meta: Meta;
4
4
  export default meta;
@@ -1,4 +1,4 @@
1
- import { CommonProps } from './types';
1
+ import { type CommonProps } from './types';
2
2
  export declare const getCommonProps: (props: CommonProps) => {
3
3
  className: string | undefined;
4
4
  id: string | undefined;
@@ -1,4 +1,9 @@
1
- import { CustomComponents, DateRange, DayEventHandler, Formatters, Matcher, Mode, MonthChangeEventHandler, OnSelectHandler } from 'react-day-picker';
1
+ import { type CustomComponents, type DateRange, type DayEventHandler, type Formatters, type Matcher, type Mode, type MonthChangeEventHandler, type OnSelectHandler } from 'react-day-picker';
2
+ /** Customizable text for DatePicker. */
3
+ export interface DatePickerText {
4
+ /** Label for "Select Time" text. Default: "Select Time" */
5
+ selectTime?: string;
6
+ }
2
7
  export interface DatePickerProps {
3
8
  ref?: React.LegacyRef<HTMLInputElement>;
4
9
  /** The selected day(s). */
@@ -41,6 +46,8 @@ export interface DatePickerProps {
41
46
  isReadOnly?: boolean;
42
47
  timeTabIndex?: number;
43
48
  dateTabIndex?: number;
49
+ /** Customizable display text. */
50
+ text?: DatePickerText;
44
51
  }
45
52
  export interface CommonProps {
46
53
  className?: string;
@@ -1,7 +1,8 @@
1
- import { DateRange, Mode } from 'react-day-picker';
2
- import { IconName, IconSizes } from '../../../icons/types';
3
- import { UseFloatingOptions } from '@floating-ui/react-dom';
4
- import { PortalOptions } from '../datePicker/types';
1
+ import { type UseFloatingOptions } from '@floating-ui/react-dom';
2
+ import { type DateRange, type Mode } from 'react-day-picker';
3
+ import { type IconTriggerDatePickerText } from './types';
4
+ import { type IconName, type IconSizes } from '../../../icons/types';
5
+ import { type PortalOptions } from '../datePicker/types';
5
6
  interface Props {
6
7
  /** Allows you to select a single day, a range of days, or multiple days. */
7
8
  mode?: Mode;
@@ -38,6 +39,8 @@ interface Props {
38
39
  isPortal?: boolean;
39
40
  /** The floating options for the date picker. Follows floating-ui options. */
40
41
  floatingOptions?: UseFloatingOptions;
42
+ /** Customizable display text. */
43
+ text?: IconTriggerDatePickerText;
41
44
  }
42
45
  export declare const IconTriggerDatePicker: (props: Props) => import("react/jsx-runtime").JSX.Element;
43
46
  export {};
@@ -1,5 +1,5 @@
1
- import type { Meta, StoryObj } from '@storybook/react';
2
1
  import { IconTriggerDatePicker } from '@/components/forms/date/iconTriggerDatePicker';
2
+ import type { Meta, StoryObj } from '@storybook/react';
3
3
  declare const meta: Meta<typeof IconTriggerDatePicker>;
4
4
  export default meta;
5
5
  type Story = StoryObj<typeof IconTriggerDatePicker>;
@@ -0,0 +1,5 @@
1
+ /** Customizable text for IconTriggerDatePicker. */
2
+ export interface IconTriggerDatePickerText {
3
+ /** Aria label for the trigger icon. Default: "Open date picker" */
4
+ triggerIcon?: string;
5
+ }
@@ -1,6 +1,6 @@
1
+ import { type UseFloatingOptions } from '@floating-ui/react-dom';
2
+ import { type PortalOptions } from '../datePicker/types';
1
3
  import type { IconName } from '../../../icons/types';
2
- import { UseFloatingOptions } from '@floating-ui/react-dom';
3
- import { PortalOptions } from '../datePicker/types';
4
4
  export interface SingleInputDatePickerProps {
5
5
  /** A label for assistive technologies. */
6
6
  ariaLabel: string;
@@ -10,7 +10,8 @@ export interface SingleInputDatePickerProps {
10
10
  /** The layout of the caption. Enables you to add or remove the dropdown navigation for months/years */
11
11
  captionLayout?: 'dropdown' | 'dropdown-months' | 'dropdown-years' | 'label';
12
12
  id?: string;
13
- label?: string;
13
+ /** The label for the input field. */
14
+ label: string;
14
15
  onSelect: (selected: Date | undefined) => void;
15
16
  initialMonth?: Date;
16
17
  selected?: Date;
@@ -1,5 +1,5 @@
1
- import type { Meta, StoryObj } from '@storybook/react';
2
1
  import { SingleInputDatePicker } from './SingleInputDatePicker';
2
+ import type { Meta, StoryObj } from '@storybook/react';
3
3
  declare const meta: Meta<typeof SingleInputDatePicker>;
4
4
  export default meta;
5
5
  type Story = StoryObj<typeof SingleInputDatePicker>;
@@ -1,7 +1,8 @@
1
- import { IconName } from '../../../icons/types';
2
- import { DateRange } from 'react-day-picker';
3
- import { UseFloatingOptions } from '@floating-ui/react-dom';
4
- import { PortalOptions } from '../datePicker/types';
1
+ import { type UseFloatingOptions } from '@floating-ui/react-dom';
2
+ import { type DateRange } from 'react-day-picker';
3
+ import { type InputDateRangePickerText } from './types';
4
+ import { type IconName } from '../../../icons/types';
5
+ import { type PortalOptions } from '../datePicker/types';
5
6
  interface InputDateRangePickerProps {
6
7
  /** A label for assistive technologies. */
7
8
  ariaLabel: string;
@@ -43,6 +44,8 @@ interface InputDateRangePickerProps {
43
44
  floatingOptions?: UseFloatingOptions;
44
45
  /** Whether the date picker is a portal. */
45
46
  isPortal?: boolean;
47
+ /** Customizable display text. */
48
+ text?: InputDateRangePickerText;
46
49
  }
47
50
  export declare function InputDateRangePicker(props: InputDateRangePickerProps): import("react/jsx-runtime").JSX.Element;
48
51
  export {};
@@ -1,5 +1,5 @@
1
- import type { Meta, StoryObj } from '@storybook/react';
2
1
  import { InputDateRangePicker } from './InputDateRangePicker';
2
+ import type { Meta, StoryObj } from '@storybook/react';
3
3
  declare const meta: Meta<typeof InputDateRangePicker>;
4
4
  export default meta;
5
5
  type Story = StoryObj<typeof InputDateRangePicker>;
@@ -0,0 +1,7 @@
1
+ /** Customizable text for InputDateRangePicker. */
2
+ export interface InputDateRangePickerText {
3
+ /** Label for the "from" date input. Default: "From Date" */
4
+ fromDate?: string;
5
+ /** Label for the "to" date input. Default: "To Date" */
6
+ toDate?: string;
7
+ }
@@ -1,6 +1,6 @@
1
+ import { type UseFloatingOptions } from '@floating-ui/react-dom';
2
+ import { type PortalOptions } from '../datePicker/types';
1
3
  import type { IconName } from '../../../icons/types';
2
- import { UseFloatingOptions } from '@floating-ui/react-dom';
3
- import { PortalOptions } from '../datePicker/types';
4
4
  export interface SingleInputDateTimePickerProps {
5
5
  /** A label for assistive technologies. */
6
6
  ariaLabel: string;
@@ -9,7 +9,8 @@ export interface SingleInputDateTimePickerProps {
9
9
  isDisabled?: boolean;
10
10
  captionLayout?: 'dropdown' | 'dropdown-months' | 'dropdown-years' | 'label';
11
11
  id?: string;
12
- label?: string;
12
+ /** The label for the date input field. */
13
+ label: string;
13
14
  onSelect: (selected: Date | undefined) => void;
14
15
  initialMonth?: Date;
15
16
  selected?: Date;
@@ -1,5 +1,5 @@
1
- import type { Meta, StoryObj } from '@storybook/react';
2
1
  import { SingleInputDateTimePicker } from './SingleInputDateTimePicker';
2
+ import type { Meta, StoryObj } from '@storybook/react';
3
3
  declare const meta: Meta<typeof SingleInputDateTimePicker>;
4
4
  export default meta;
5
5
  type Story = StoryObj<typeof SingleInputDateTimePicker>;
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import type React from 'react';
2
2
  export interface FormProps {
3
3
  children: React.ReactNode;
4
4
  className?: string;
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from '@storybook/react';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
2
  import { Form } from './Form';
3
3
  declare const meta: Meta;
4
4
  export default meta;
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import { IconName } from '../../../components/icons/types';
3
- import { LabelProps } from '../subcomponents/Label';
2
+ import { type IconName } from '../../../components/icons/types';
3
+ import { type LabelProps } from '../subcomponents/Label';
4
4
  export interface BaseInputProps {
5
5
  id?: string;
6
6
  value?: string | undefined;
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from '@storybook/react';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
2
  import { Input } from './Input';
3
3
  declare const meta: Meta;
4
4
  export default meta;
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import { LabelProps } from '../subcomponents/Label';
3
- import { BaseInputProps } from '../input/Input';
2
+ import { type BaseInputProps } from '../input/Input';
3
+ import { type LabelProps } from '../subcomponents/Label';
4
4
  export interface NumberInputProps extends Omit<BaseInputProps, 'value'>, LabelProps {
5
5
  /** The value for the input field */
6
6
  value?: number | '';
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from '@storybook/react';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
2
  import { NumberInput } from './NumberInput';
3
3
  declare const meta: Meta;
4
4
  export default meta;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { LabelProps } from '../subcomponents/Label';
2
+ import { type LabelProps } from '../subcomponents/Label';
3
3
  export interface PasswordInputProps extends LabelProps {
4
4
  ref?: React.LegacyRef<HTMLInputElement>;
5
5
  value?: string | undefined;
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from '@storybook/react';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
2
  import { PasswordInput } from './PasswordInput';
3
3
  declare const meta: Meta;
4
4
  export default meta;
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from '@storybook/react';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
2
  import { Radio } from './Radio';
3
3
  declare const meta: Meta;
4
4
  export default meta;
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import { Props as ReactSelectProps } from 'react-select';
3
- import { SelectOption } from './types';
2
+ import { type Props as ReactSelectProps } from 'react-select';
3
+ import { type SelectOption, type SelectText } from './types';
4
4
  export interface SelectProps<OptionType extends SelectOption> extends ReactSelectProps<OptionType> {
5
5
  /** Options for the select component */
6
6
  options: OptionType[];
@@ -16,6 +16,8 @@ export interface SelectProps<OptionType extends SelectOption> extends ReactSelec
16
16
  classNamePrefix?: string;
17
17
  /** Event handler for when the selected value changes */
18
18
  onChange?: (newValue: any, actionMeta: any) => void;
19
+ /** Customizable display text. */
20
+ text?: SelectText;
19
21
  }
20
22
  declare const LabeledSelect: React.ForwardRefExoticComponent<Omit<SelectProps<SelectOption> & {
21
23
  ref?: React.Ref<any>;
@@ -1,7 +1,7 @@
1
- import { Meta, StoryObj } from '@storybook/react';
2
- import { SelectProps } from './Select';
3
- import { SelectOption } from './types';
4
- import { LabelProps } from '../subcomponents/Label';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
+ import { type SelectProps } from './Select';
3
+ import { type SelectOption } from './types';
4
+ import { type LabelProps } from '../subcomponents/Label';
5
5
  declare const meta: Meta<SelectProps<SelectOption> & LabelProps>;
6
6
  export default meta;
7
7
  type Story = StoryObj<SelectProps<SelectOption>>;
@@ -1,7 +1,17 @@
1
- import { ReactNode } from 'react';
1
+ import { type ReactNode } from 'react';
2
+ import { type FormLabelText } from '../subcomponents/Label';
2
3
  export type SelectOption = {
3
4
  label: string;
4
5
  value: string;
5
6
  detail?: ReactNode;
6
7
  [key: string]: any;
7
8
  };
9
+ /** Customizable text for Select. Extends FormLabelText for label-related text. */
10
+ export interface SelectText extends FormLabelText {
11
+ /** Placeholder text when no option is selected. Default: "Select..." */
12
+ placeholder?: string;
13
+ /** Text when there are no options. Default: "No options" */
14
+ noOptions?: string;
15
+ /** Text while loading options. Default: "Loading..." */
16
+ loading?: string;
17
+ }
@@ -1,9 +1,13 @@
1
- import React from 'react';
1
+ import { type FormLabelText } from './types';
2
+ import type React from 'react';
3
+ export type { FormLabelText } from './types';
2
4
  export interface LabelProps {
3
5
  label?: string;
4
6
  name: string;
5
7
  isRequired?: boolean;
6
8
  hasHiddenLabel?: boolean;
9
+ /** Customizable display text. */
10
+ text?: FormLabelText;
7
11
  }
8
12
  export declare const Label: ({ label, name, isRequired }: LabelProps) => import("react/jsx-runtime").JSX.Element;
9
13
  export declare function withLabel<P extends object>(WrappedComponent: React.ComponentType<P>): React.ForwardRefExoticComponent<React.PropsWithoutRef<P & LabelProps> & React.RefAttributes<any>>;
@@ -0,0 +1,5 @@
1
+ /** Customizable text for form Label. */
2
+ export interface FormLabelText {
3
+ /** Text appended to aria-label for required fields. Default: "(required)" */
4
+ required?: string;
5
+ }
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { LabelProps } from '../subcomponents/Label';
2
+ import { type LabelProps } from '../subcomponents/Label';
3
3
  export interface TextareaProps extends LabelProps {
4
4
  ref?: React.LegacyRef<HTMLTextAreaElement>;
5
5
  placeholder?: string;
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from '@storybook/react';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
2
  import { Textarea } from './Textarea';
3
3
  declare const meta: Meta;
4
4
  export default meta;
@@ -1,3 +1,4 @@
1
+ import { type TimePickerText } from './types';
1
2
  interface TimePickerProps {
2
3
  ref?: React.LegacyRef<HTMLInputElement>;
3
4
  /** The time value to be displayed in the input field */
@@ -14,7 +15,9 @@ interface TimePickerProps {
14
15
  isReadOnly?: boolean;
15
16
  isDisabled?: boolean;
16
17
  tabIndex?: number;
18
+ /** Customizable display text. */
19
+ text?: TimePickerText;
17
20
  [key: string]: unknown;
18
21
  }
19
- export declare const TimePicker: ({ ref, timeValue, label, name, hasHiddenLabel, onTimeChange, className, isDisabled, isReadOnly, tabIndex, ...rest }: TimePickerProps) => import("react/jsx-runtime").JSX.Element;
22
+ export declare const TimePicker: ({ ref, timeValue, label, name, hasHiddenLabel, onTimeChange, className, isDisabled, isReadOnly, tabIndex, text: textProp, ...rest }: TimePickerProps) => import("react/jsx-runtime").JSX.Element;
20
23
  export {};
@@ -0,0 +1,5 @@
1
+ /** Customizable text for TimePicker. */
2
+ export interface TimePickerText {
3
+ /** Aria label for the validation error tooltip. Default: "Time validation error" */
4
+ validationError?: string;
5
+ }
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from '@storybook/react';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
2
  import { Toggle } from './Toggle';
3
3
  declare const meta: Meta;
4
4
  export default meta;
@@ -1,2 +1,2 @@
1
- import { ColProps } from 'react-grid-system';
1
+ import { type ColProps } from 'react-grid-system';
2
2
  export declare const Col: ({ ref: _ref, ...rest }: ColProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from '@storybook/react';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
2
  import { Col } from '@/components';
3
3
  declare const meta: Meta;
4
4
  export default meta;
@@ -1,2 +1,2 @@
1
- import { ContainerProps } from 'react-grid-system';
1
+ import { type ContainerProps } from 'react-grid-system';
2
2
  export declare const Container: ({ ref: _ref, ...rest }: ContainerProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from '@storybook/react';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
2
  import { Container } from '@/components';
3
3
  declare const meta: Meta;
4
4
  export default meta;
@@ -1,2 +1,2 @@
1
- import { RowProps } from 'react-grid-system';
1
+ import { type RowProps } from 'react-grid-system';
2
2
  export declare const Row: ({ ref: _ref, ...rest }: RowProps) => import("react/jsx-runtime").JSX.Element;