@indico-data/design-system 3.19.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 (288) 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 +1 -1
  19. package/lib/components/forms/date/iconTriggerDatePicker/IconTriggerDatePicker.d.ts +5 -5
  20. package/lib/components/forms/date/iconTriggerDatePicker/IconTriggerDatePicker.stories.d.ts +1 -1
  21. package/lib/components/forms/date/inputDatePicker/SingleInputDatePicker.d.ts +2 -2
  22. package/lib/components/forms/date/inputDatePicker/SingleInputDatePicker.stories.d.ts +1 -1
  23. package/lib/components/forms/date/inputDateRangePicker/InputDateRangePicker.d.ts +5 -5
  24. package/lib/components/forms/date/inputDateRangePicker/InputDateRangePicker.stories.d.ts +1 -1
  25. package/lib/components/forms/date/inputDateTimePicker/SingleInputDateTimePicker.d.ts +2 -2
  26. package/lib/components/forms/date/inputDateTimePicker/SingleInputDateTimePicker.stories.d.ts +1 -1
  27. package/lib/components/forms/form/Form.d.ts +1 -1
  28. package/lib/components/forms/form/Form.stories.d.ts +1 -1
  29. package/lib/components/forms/input/Input.d.ts +2 -2
  30. package/lib/components/forms/input/Input.stories.d.ts +1 -1
  31. package/lib/components/forms/numberInput/NumberInput.d.ts +2 -2
  32. package/lib/components/forms/numberInput/NumberInput.stories.d.ts +1 -1
  33. package/lib/components/forms/passwordInput/PasswordInput.d.ts +1 -1
  34. package/lib/components/forms/passwordInput/PasswordInput.stories.d.ts +1 -1
  35. package/lib/components/forms/radio/Radio.stories.d.ts +1 -1
  36. package/lib/components/forms/select/Select.d.ts +2 -2
  37. package/lib/components/forms/select/Select.stories.d.ts +4 -4
  38. package/lib/components/forms/select/types.d.ts +2 -2
  39. package/lib/components/forms/subcomponents/Label.d.ts +2 -2
  40. package/lib/components/forms/textarea/Textarea.d.ts +1 -1
  41. package/lib/components/forms/textarea/Textarea.stories.d.ts +1 -1
  42. package/lib/components/forms/timePicker/TimePicker.d.ts +1 -1
  43. package/lib/components/forms/toggle/Toggle.stories.d.ts +1 -1
  44. package/lib/components/grid/col/Col.d.ts +1 -1
  45. package/lib/components/grid/col/Col.stories.d.ts +1 -1
  46. package/lib/components/grid/container/Container.d.ts +1 -1
  47. package/lib/components/grid/container/Container.stories.d.ts +1 -1
  48. package/lib/components/grid/row/Row.d.ts +1 -1
  49. package/lib/components/grid/row/Row.stories.d.ts +1 -1
  50. package/lib/components/icons/Icon.d.ts +1 -1
  51. package/lib/components/icons/Icon.stories.d.ts +2 -2
  52. package/lib/components/icons/indicons.d.ts +1 -1
  53. package/lib/components/icons/types.d.ts +4 -4
  54. package/lib/components/loading-indicators/BarSpinner/BarSpinner.stories.d.ts +1 -1
  55. package/lib/components/loading-indicators/CirclePulse/CirclePulse.stories.d.ts +1 -1
  56. package/lib/components/menu/Menu.stories.d.ts +2 -2
  57. package/lib/components/modal/ConfirmationModal.d.ts +1 -1
  58. package/lib/components/modal/Modal.d.ts +1 -1
  59. package/lib/components/modal/Modal.stories.d.ts +2 -2
  60. package/lib/components/modal/types.d.ts +2 -2
  61. package/lib/components/pagination/Pagination.d.ts +1 -1
  62. package/lib/components/pagination/Pagination.stories.d.ts +1 -1
  63. package/lib/components/pill/Pill.d.ts +1 -1
  64. package/lib/components/pill/Pill.stories.d.ts +1 -1
  65. package/lib/components/pill/types.d.ts +2 -2
  66. package/lib/components/skeleton/Skeleton.stories.d.ts +1 -1
  67. package/lib/components/stepper/Stepper.d.ts +1 -1
  68. package/lib/components/stepper/Stepper.stories.d.ts +1 -1
  69. package/lib/components/stepper/components/Legend.d.ts +1 -1
  70. package/lib/components/stepper/types.d.ts +1 -1
  71. package/lib/components/table/Table.d.ts +1 -1
  72. package/lib/components/table/Table.stories.d.ts +2 -2
  73. package/lib/components/table/components/HorizontalStickyHeader.d.ts +1 -1
  74. package/lib/components/table/components/helpers.d.ts +1 -1
  75. package/lib/components/table/hooks/usePinnedColumnsManager.d.ts +1 -1
  76. package/lib/components/table/sampleData.d.ts +1 -1
  77. package/lib/components/table/types.d.ts +2 -2
  78. package/lib/components/table/utils/processColumns.d.ts +1 -1
  79. package/lib/components/tanstackTable/TankstackTable.types.d.ts +1 -1
  80. package/lib/components/tanstackTable/TanstackTable.d.ts +1 -1
  81. package/lib/components/tanstackTable/TanstackTable.stories.d.ts +2 -2
  82. package/lib/components/tanstackTable/__tests__/__mocks__/test-mock-data.d.ts +1 -1
  83. package/lib/components/tanstackTable/components/ActionBar/ActionBar.d.ts +2 -2
  84. package/lib/components/tanstackTable/components/ActionBar/ActionBar.stories.d.ts +1 -1
  85. package/lib/components/tanstackTable/components/TableBody/TableBody.d.ts +1 -1
  86. package/lib/components/tanstackTable/components/TableHeader/TableHeader.d.ts +1 -1
  87. package/lib/components/tanstackTable/components/TableLoading/TableLoading.d.ts +1 -1
  88. package/lib/components/tanstackTable/components/TablePagination/TablePagination.d.ts +1 -1
  89. package/lib/components/tanstackTable/docs/internalSorting/InternalClientSideSorting.stories.d.ts +2 -2
  90. package/lib/components/tanstackTable/docs/pinnedColumns/PinnedColumn.stories.d.ts +2 -2
  91. package/lib/components/tanstackTable/docs/withRowClick/WithRowClick.stories.d.ts +2 -2
  92. package/lib/components/tanstackTable/helpers.d.ts +2 -2
  93. package/lib/components/tanstackTable/mock-data/table-configuration.d.ts +2 -2
  94. package/lib/components/tanstackTable/useTanstackTable.d.ts +1 -1
  95. package/lib/components/toast/Toast.stories.d.ts +1 -1
  96. package/lib/components/tooltip/Tooltip.d.ts +2 -2
  97. package/lib/components/tooltip/Tooltip.stories.d.ts +1 -1
  98. package/lib/components/truncate/Truncate.d.ts +1 -1
  99. package/lib/components/truncate/Truncate.stories.d.ts +2 -2
  100. package/lib/components/truncate/types.d.ts +1 -1
  101. package/lib/docs/BaseColorPalette/BaseColorsPalette.stories.d.ts +1 -1
  102. package/lib/docs/SemanticTokens/ColorSwatch.d.ts +1 -1
  103. package/lib/docs/SemanticTokens/SemanticTokens.stories.d.ts +1 -1
  104. package/lib/index.d.ts +45 -45
  105. package/lib/index.esm.js +137 -124
  106. package/lib/index.esm.js.map +1 -1
  107. package/lib/index.js +137 -124
  108. package/lib/index.js.map +1 -1
  109. package/lib/setup/setupIcons.d.ts +1 -1
  110. package/lib/storybook/formArgTypes.d.ts +1 -1
  111. package/lib/stylesAndAnimations/borders/BorderColor.stories.d.ts +1 -1
  112. package/lib/stylesAndAnimations/borders/BorderRadius.stories.d.ts +1 -1
  113. package/lib/stylesAndAnimations/borders/BorderStyles.stories.d.ts +1 -1
  114. package/lib/stylesAndAnimations/borders/BorderThickness.stories.d.ts +1 -1
  115. package/lib/stylesAndAnimations/colors/UtilityClasses.stories.d.ts +1 -1
  116. package/lib/stylesAndAnimations/sizing/Sizing.stories.d.ts +1 -1
  117. package/lib/stylesAndAnimations/typography/Typography.stories.d.ts +1 -1
  118. package/lib/stylesAndAnimations/utilityClasses/UtilityClassesTable.stories.d.ts +1 -1
  119. package/lib/types.d.ts +4 -4
  120. package/package.json +8 -2
  121. package/src/components/badge/Badge.stories.tsx +4 -3
  122. package/src/components/badge/Badge.tsx +2 -1
  123. package/src/components/badge/__tests__/Badge.test.tsx +1 -0
  124. package/src/components/button/Button.stories.tsx +5 -4
  125. package/src/components/button/Button.tsx +8 -4
  126. package/src/components/button/__tests__/Button.test.tsx +1 -0
  127. package/src/components/button/types.ts +1 -1
  128. package/src/components/card/Card.stories.tsx +2 -1
  129. package/src/components/card/Card.tsx +2 -1
  130. package/src/components/card/__tests__/Card.test.tsx +1 -0
  131. package/src/components/floatUI/FloatUI.stories.tsx +3 -2
  132. package/src/components/floatUI/FloatUI.tsx +6 -7
  133. package/src/components/floatUI/__tests__/FloatUI.test.tsx +5 -3
  134. package/src/components/floatUI/types.ts +2 -2
  135. package/src/components/forms/checkbox/Checkbox.stories.tsx +3 -2
  136. package/src/components/forms/checkbox/Checkbox.tsx +1 -1
  137. package/src/components/forms/checkbox/__tests__/Checkbox.test.tsx +2 -1
  138. package/src/components/forms/date/datePicker/DatePicker.stories.tsx +2 -1
  139. package/src/components/forms/date/datePicker/DatePicker.tsx +27 -24
  140. package/src/components/forms/date/datePicker/__tests__/DatePicker.test.tsx +1 -0
  141. package/src/components/forms/date/datePicker/contants.ts +1 -1
  142. package/src/components/forms/date/datePicker/types.ts +8 -8
  143. package/src/components/forms/date/iconTriggerDatePicker/IconTriggerDatePicker.stories.tsx +6 -2
  144. package/src/components/forms/date/iconTriggerDatePicker/IconTriggerDatePicker.tsx +10 -8
  145. package/src/components/forms/date/iconTriggerDatePicker/__tests__/IconTriggerDatePicker.test.tsx +2 -1
  146. package/src/components/forms/date/inputDatePicker/SingleInputDatePicker.stories.tsx +4 -2
  147. package/src/components/forms/date/inputDatePicker/SingleInputDatePicker.tsx +14 -10
  148. package/src/components/forms/date/inputDatePicker/__tests__/SingleInputDatePicker.test.tsx +2 -2
  149. package/src/components/forms/date/inputDateRangePicker/InputDateRangePicker.stories.tsx +5 -4
  150. package/src/components/forms/date/inputDateRangePicker/InputDateRangePicker.tsx +16 -22
  151. package/src/components/forms/date/inputDateRangePicker/__tests__/InputDateRangePicker.test.tsx +2 -2
  152. package/src/components/forms/date/inputDateTimePicker/SingleInputDateTimePicker.stories.tsx +9 -5
  153. package/src/components/forms/date/inputDateTimePicker/SingleInputDateTimePicker.tsx +15 -11
  154. package/src/components/forms/form/Form.stories.tsx +7 -6
  155. package/src/components/forms/form/Form.tsx +1 -1
  156. package/src/components/forms/form/__tests__/Form.test.tsx +7 -4
  157. package/src/components/forms/input/Input.stories.tsx +6 -3
  158. package/src/components/forms/input/Input.tsx +3 -3
  159. package/src/components/forms/input/__tests__/Input.test.tsx +5 -3
  160. package/src/components/forms/numberInput/NumberInput.stories.tsx +5 -2
  161. package/src/components/forms/numberInput/NumberInput.tsx +5 -3
  162. package/src/components/forms/numberInput/__tests__/NumberInput.test.tsx +2 -1
  163. package/src/components/forms/passwordInput/PasswordInput.stories.tsx +6 -3
  164. package/src/components/forms/passwordInput/PasswordInput.tsx +5 -2
  165. package/src/components/forms/passwordInput/__tests__/PasswordInput.test.tsx +3 -4
  166. package/src/components/forms/radio/Radio.stories.tsx +5 -2
  167. package/src/components/forms/radio/__tests__/Radio.test.tsx +3 -2
  168. package/src/components/forms/select/Select.stories.tsx +5 -4
  169. package/src/components/forms/select/Select.tsx +7 -6
  170. package/src/components/forms/select/__tests__/Select.test.tsx +2 -2
  171. package/src/components/forms/select/types.ts +3 -2
  172. package/src/components/forms/subcomponents/Label.tsx +5 -2
  173. package/src/components/forms/subcomponents/__tests__/Label.test.tsx +1 -0
  174. package/src/components/forms/textarea/Textarea.stories.tsx +5 -2
  175. package/src/components/forms/textarea/Textarea.tsx +4 -4
  176. package/src/components/forms/textarea/__tests__/Textarea.test.tsx +3 -3
  177. package/src/components/forms/timePicker/TimePicker.stories.tsx +4 -2
  178. package/src/components/forms/timePicker/TimePicker.tsx +6 -5
  179. package/src/components/forms/timePicker/__tests__/TimePicker.test.tsx +2 -1
  180. package/src/components/forms/toggle/Toggle.stories.tsx +3 -2
  181. package/src/components/forms/toggle/__tests__/Toggle.test.tsx +3 -2
  182. package/src/components/grid/col/Col.stories.tsx +2 -1
  183. package/src/components/grid/col/Col.tsx +1 -1
  184. package/src/components/grid/container/Container.stories.tsx +2 -1
  185. package/src/components/grid/container/Container.tsx +1 -1
  186. package/src/components/grid/row/Row.stories.tsx +2 -1
  187. package/src/components/grid/row/Row.tsx +1 -1
  188. package/src/components/icons/Icon.stories.tsx +11 -4
  189. package/src/components/icons/Icon.tsx +4 -3
  190. package/src/components/icons/__tests__/Icon.test.tsx +1 -0
  191. package/src/components/icons/indicons.tsx +3 -3
  192. package/src/components/icons/types.ts +5 -4
  193. package/src/components/loading-indicators/BarSpinner/BarSpinner.stories.tsx +2 -1
  194. package/src/components/loading-indicators/BarSpinner/__tests__/BarSpinner.test.tsx +1 -0
  195. package/src/components/loading-indicators/CirclePulse/CirclePulse.stories.tsx +2 -1
  196. package/src/components/menu/Menu.stories.tsx +3 -2
  197. package/src/components/menu/Menu.test.tsx +1 -1
  198. package/src/components/menu/Menu.tsx +1 -1
  199. package/src/components/modal/ConfirmationModal.tsx +7 -5
  200. package/src/components/modal/Modal.stories.tsx +9 -6
  201. package/src/components/modal/Modal.tsx +2 -1
  202. package/src/components/modal/__tests__/Modal.test.tsx +1 -0
  203. package/src/components/modal/types.ts +2 -2
  204. package/src/components/pagination/Pagination.stories.tsx +3 -2
  205. package/src/components/pagination/Pagination.tsx +5 -4
  206. package/src/components/pagination/__tests__/Pagination.test.tsx +1 -0
  207. package/src/components/pill/Pill.stories.tsx +10 -6
  208. package/src/components/pill/Pill.tsx +2 -1
  209. package/src/components/pill/__tests__/Pill.test.tsx +4 -1
  210. package/src/components/pill/types.ts +4 -2
  211. package/src/components/skeleton/Skeleton.stories.tsx +2 -1
  212. package/src/components/skeleton/__tests__/Skeleton.test.tsx +1 -0
  213. package/src/components/stepper/Stepper.stories.tsx +9 -7
  214. package/src/components/stepper/Stepper.tsx +3 -2
  215. package/src/components/stepper/__tests__/Stepper.tests.tsx +5 -4
  216. package/src/components/stepper/components/Legend.tsx +4 -3
  217. package/src/components/stepper/examples/MixedExample.tsx +4 -3
  218. package/src/components/stepper/examples/OptionalStepsExample.tsx +4 -3
  219. package/src/components/stepper/examples/RequiredStepsExample.tsx +4 -3
  220. package/src/components/stepper/examples/commonExample/CommonExample.tsx +4 -3
  221. package/src/components/stepper/examples/commonExample/steps/StepOne.tsx +1 -0
  222. package/src/components/stepper/examples/commonExample/steps/StepThree.tsx +1 -0
  223. package/src/components/stepper/examples/commonExample/steps/StepTwo.tsx +1 -0
  224. package/src/components/stepper/types.ts +1 -1
  225. package/src/components/table/Table.stories.tsx +9 -5
  226. package/src/components/table/Table.tsx +5 -4
  227. package/src/components/table/__tests__/Table.test.tsx +2 -1
  228. package/src/components/table/components/HorizontalStickyHeader.tsx +3 -2
  229. package/src/components/table/components/TablePagination.tsx +1 -1
  230. package/src/components/table/components/__tests__/HorizontalStickyHeader.test.tsx +3 -3
  231. package/src/components/table/components/__tests__/TablePagination.test.tsx +1 -0
  232. package/src/components/table/components/helpers.ts +1 -1
  233. package/src/components/table/hooks/usePinnedColumnsManager.ts +6 -2
  234. package/src/components/table/sampleData.tsx +1 -3
  235. package/src/components/table/types.ts +5 -6
  236. package/src/components/table/utils/processColumns.tsx +2 -2
  237. package/src/components/tanstackTable/TankstackTable.types.ts +1 -1
  238. package/src/components/tanstackTable/TanstackTable.stories.tsx +6 -5
  239. package/src/components/tanstackTable/TanstackTable.tsx +8 -8
  240. package/src/components/tanstackTable/__tests__/TanstackTable.test.tsx +2 -1
  241. package/src/components/tanstackTable/__tests__/__mocks__/test-mock-data.tsx +2 -1
  242. package/src/components/tanstackTable/components/ActionBar/ActionBar.stories.tsx +6 -3
  243. package/src/components/tanstackTable/components/ActionBar/ActionBar.tsx +7 -3
  244. package/src/components/tanstackTable/components/ActionBar/__tests__/ActionBar.test.tsx +4 -1
  245. package/src/components/tanstackTable/components/NoResults/__tests__/NoResult.test.tsx +1 -0
  246. package/src/components/tanstackTable/components/TableBody/TableBody.tsx +2 -1
  247. package/src/components/tanstackTable/components/TableHeader/TableHeader.tsx +3 -2
  248. package/src/components/tanstackTable/components/TableLoading/TableLoading.tsx +2 -1
  249. package/src/components/tanstackTable/components/TablePagination/TablePagination.tsx +1 -1
  250. package/src/components/tanstackTable/components/TablePagination/__tests__/TablePagination.test.tsx +1 -0
  251. package/src/components/tanstackTable/docs/internalSorting/InternalClientSideSorting.stories.tsx +5 -5
  252. package/src/components/tanstackTable/docs/pinnedColumns/PinnedColumn.stories.tsx +5 -4
  253. package/src/components/tanstackTable/docs/withRowClick/WithRowClick.stories.tsx +5 -4
  254. package/src/components/tanstackTable/helpers.ts +2 -2
  255. package/src/components/tanstackTable/mock-data/table-configuration.tsx +7 -4
  256. package/src/components/tanstackTable/useTanstackTable.tsx +1 -2
  257. package/src/components/toast/Toast.stories.tsx +2 -1
  258. package/src/components/tooltip/Tooltip.stories.tsx +3 -2
  259. package/src/components/tooltip/Tooltip.tsx +2 -2
  260. package/src/components/truncate/Truncate.stories.tsx +3 -2
  261. package/src/components/truncate/Truncate.tsx +5 -4
  262. package/src/components/truncate/__tests__/Truncate.test.tsx +1 -0
  263. package/src/components/truncate/types.ts +1 -1
  264. package/src/docs/BaseColorPalette/BaseColorPalette.tsx +1 -0
  265. package/src/docs/BaseColorPalette/BaseColorsPalette.stories.tsx +2 -1
  266. package/src/docs/BaseColorPalette/Swatch.tsx +2 -1
  267. package/src/docs/SemanticTokens/ColorSwatch.tsx +1 -1
  268. package/src/docs/SemanticTokens/SemanticTokens.stories.tsx +2 -2
  269. package/src/setup/setupIcons.ts +2 -2
  270. package/src/storybook/formArgTypes.ts +2 -1
  271. package/src/storybook/iconNames.ts +1 -0
  272. package/src/stylesAndAnimations/borders/BorderColor.stories.tsx +2 -1
  273. package/src/stylesAndAnimations/borders/BorderColor.tsx +0 -1
  274. package/src/stylesAndAnimations/borders/BorderRadius.stories.tsx +2 -1
  275. package/src/stylesAndAnimations/borders/BorderRadius.tsx +0 -1
  276. package/src/stylesAndAnimations/borders/BorderStyles.stories.tsx +2 -1
  277. package/src/stylesAndAnimations/borders/BorderStyles.tsx +0 -1
  278. package/src/stylesAndAnimations/borders/BorderThickness.stories.tsx +2 -1
  279. package/src/stylesAndAnimations/borders/BorderThickness.tsx +0 -1
  280. package/src/stylesAndAnimations/colors/UtilityClasses.stories.tsx +2 -1
  281. package/src/stylesAndAnimations/colors/UtilityClasses.tsx +1 -2
  282. package/src/stylesAndAnimations/sizing/Sizing.stories.tsx +2 -1
  283. package/src/stylesAndAnimations/sizing/Sizing.tsx +0 -1
  284. package/src/stylesAndAnimations/typography/Typography.stories.tsx +2 -1
  285. package/src/stylesAndAnimations/typography/Typography.tsx +0 -1
  286. package/src/stylesAndAnimations/utilityClasses/UtilityClassesTable.stories.tsx +2 -1
  287. package/src/stylesAndAnimations/utilityClasses/UtilityClassesTable.tsx +6 -3
  288. 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,4 @@
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
2
  /** Customizable text for DatePicker. */
3
3
  export interface DatePickerText {
4
4
  /** Label for "Select Time" text. Default: "Select Time" */
@@ -1,8 +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';
5
- import { IconTriggerDatePickerText } from './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';
6
6
  interface Props {
7
7
  /** Allows you to select a single day, a range of days, or multiple days. */
8
8
  mode?: Mode;
@@ -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>;
@@ -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;
@@ -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,8 +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';
5
- import { InputDateRangePickerText } from './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';
6
6
  interface InputDateRangePickerProps {
7
7
  /** A label for assistive technologies. */
8
8
  ariaLabel: string;
@@ -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>;
@@ -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;
@@ -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, SelectText } 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[];
@@ -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,5 +1,5 @@
1
- import { ReactNode } from 'react';
2
- import { FormLabelText } from '../subcomponents/Label';
1
+ import { type ReactNode } from 'react';
2
+ import { type FormLabelText } from '../subcomponents/Label';
3
3
  export type SelectOption = {
4
4
  label: string;
5
5
  value: string;
@@ -1,5 +1,5 @@
1
- import React from 'react';
2
- import { FormLabelText } from './types';
1
+ import { type FormLabelText } from './types';
2
+ import type React from 'react';
3
3
  export type { FormLabelText } from './types';
4
4
  export interface LabelProps {
5
5
  label?: string;
@@ -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,4 +1,4 @@
1
- import { TimePickerText } from './types';
1
+ import { type TimePickerText } from './types';
2
2
  interface TimePickerProps {
3
3
  ref?: React.LegacyRef<HTMLInputElement>;
4
4
  /** The time value to be displayed in the input field */
@@ -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;
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from '@storybook/react';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
2
  import { Row } from '@/components';
3
3
  declare const meta: Meta;
4
4
  export default meta;
@@ -1,2 +1,2 @@
1
- import { IconProps } from './types';
1
+ import { type IconProps } from './types';
2
2
  export declare const Icon: ({ name, size, className, ariaLabel, faPrefix, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element | null;
@@ -1,5 +1,5 @@
1
- import { Meta, StoryObj } from '@storybook/react';
2
- import { IconProps } from './types';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
+ import { type IconProps } from './types';
3
3
  declare const meta: Meta;
4
4
  export default meta;
5
5
  type Story = StoryObj<IconProps>;
@@ -1,4 +1,4 @@
1
- import { IconDefinition } from '@fortawesome/fontawesome-svg-core';
1
+ import { type IconDefinition } from '@fortawesome/fontawesome-svg-core';
2
2
  declare const indicons: {
3
3
  'indico-o-white': import("react/jsx-runtime").JSX.Element;
4
4
  account: import("react/jsx-runtime").JSX.Element;
@@ -1,7 +1,7 @@
1
- import { MouseEventHandler, CSSProperties } from 'react';
2
- import { PermafrostComponent } from '../../types';
3
- import { IconName as FAIconName, IconPrefix } from '@fortawesome/fontawesome-svg-core';
4
- import { indicons } from './indicons';
1
+ import { type IconName as FAIconName, type IconPrefix } from '@fortawesome/fontawesome-svg-core';
2
+ import { type MouseEventHandler, type CSSProperties } from 'react';
3
+ import { type indicons } from './indicons';
4
+ import { type PermafrostComponent } from '../../types';
5
5
  export type IconSizes = 'xxs' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl';
6
6
  export type IndiconName = keyof typeof indicons;
7
7
  export type IconName = IndiconName | `fa-${FAIconName}`;
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from '@storybook/react';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
2
  import { BarSpinner } from './BarSpinner';
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 { CirclePulse } from './CirclePulse';
3
3
  declare const meta: Meta;
4
4
  export default meta;
@@ -1,5 +1,5 @@
1
- import { Meta, StoryObj } from '@storybook/react';
2
- import { Menu, MenuProps } from './Menu';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
2
+ import { Menu, type MenuProps } from './Menu';
3
3
  declare const meta: Meta<typeof Menu>;
4
4
  export default meta;
5
5
  type Story = StoryObj<MenuProps>;
@@ -1,2 +1,2 @@
1
- import { ConfirmationModalProps } from './types';
1
+ import { type ConfirmationModalProps } from './types';
2
2
  export declare const ConfirmationModal: ({ className, overlayClassName, testId, isOpen, onRequestClose, portalClassName, appElement, parentSelector, shouldCloseOnOverlayClick, shouldCloseOnEsc, contentElement, overlayElement, footer, children, onConfirmRequest, onCancelRequest, confirmationButtonVariant, icon, title, status, maxWidthInPixels, hasDontShowAgainCheckbox, text: textProp, }: ConfirmationModalProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,2 +1,2 @@
1
- import { ModalProps } from './types';
1
+ import { type ModalProps } from './types';
2
2
  export declare const Modal: ({ className, children, isOpen, onRequestClose, portalClassName, overlayClassName, appElement, shouldCloseOnOverlayClick, shouldCloseOnEsc, testId, contentElement, overlayElement, position, parentSelector, title, subtitle, footer, maxWidthInPixels, text: textProp, ...rest }: ModalProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,6 +1,6 @@
1
- import { Meta, StoryObj } from '@storybook/react';
2
- import { Modal } from './Modal';
1
+ import { type Meta, type StoryObj } from '@storybook/react';
3
2
  import { ConfirmationModal } from './ConfirmationModal';
3
+ import { Modal } from './Modal';
4
4
  declare const meta: Meta;
5
5
  export default meta;
6
6
  type Story = StoryObj<typeof Modal>;
@@ -1,5 +1,5 @@
1
- import { ButtonVariants } from '../button/types';
2
- import { IconName } from '../icons/types';
1
+ import { type ButtonVariants } from '../button/types';
2
+ import { type IconName } from '../icons/types';
3
3
  /** Customizable text for Modal. */
4
4
  export interface ModalText {
5
5
  /** Aria label for the close button. Default: "Close" */
@@ -1,2 +1,2 @@
1
- import { PaginationProps } from './types';
1
+ import { type PaginationProps } from './types';
2
2
  export declare const Pagination: ({ totalPages, currentPage, onChange, className, text: textProp, ...rest }: PaginationProps) => import("react/jsx-runtime").JSX.Element;