@pk-design/react-tailwind 1.5.4 → 1.7.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 (485) hide show
  1. package/dist/cjs/components/Accordion/Accordion.js +61 -0
  2. package/dist/cjs/components/Accordion/Accordion.js.map +1 -0
  3. package/dist/cjs/components/ActionSheet/ActionSheet.js +38 -0
  4. package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -0
  5. package/dist/cjs/components/Alert/Alert.js +34 -0
  6. package/dist/cjs/components/Alert/Alert.js.map +1 -0
  7. package/dist/cjs/components/Badge/Badge.js +33 -0
  8. package/dist/cjs/components/Badge/Badge.js.map +1 -0
  9. package/dist/cjs/components/Banner/Banner.js +41 -0
  10. package/dist/cjs/components/Banner/Banner.js.map +1 -0
  11. package/dist/cjs/components/BodyText/BodyText.js +59 -0
  12. package/dist/cjs/components/BodyText/BodyText.js.map +1 -0
  13. package/dist/cjs/components/BottomNavigation/BottomNavigation.js +52 -0
  14. package/dist/cjs/components/BottomNavigation/BottomNavigation.js.map +1 -0
  15. package/dist/cjs/components/Breadcrumb/Breadcrumb.js +63 -0
  16. package/dist/cjs/components/Breadcrumb/Breadcrumb.js.map +1 -0
  17. package/dist/cjs/components/Button/Button.js +118 -0
  18. package/dist/cjs/components/Button/Button.js.map +1 -0
  19. package/dist/cjs/components/ButtonGroup/ButtonGroup.js +100 -0
  20. package/dist/cjs/components/ButtonGroup/ButtonGroup.js.map +1 -0
  21. package/dist/cjs/components/Card/Card.js +65 -0
  22. package/dist/cjs/components/Card/Card.js.map +1 -0
  23. package/dist/cjs/components/Checkbox/Checkbox.js +64 -0
  24. package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -0
  25. package/dist/cjs/components/CheckboxGroup/CheckboxGroup.js +82 -0
  26. package/dist/cjs/components/CheckboxGroup/CheckboxGroup.js.map +1 -0
  27. package/dist/cjs/components/DataList/DataList.js +287 -0
  28. package/dist/cjs/components/DataList/DataList.js.map +1 -0
  29. package/dist/cjs/components/DataTable/DataTable.icons.js +20 -0
  30. package/dist/cjs/components/DataTable/DataTable.icons.js.map +1 -0
  31. package/dist/cjs/components/DataTable/DataTable.js +110 -0
  32. package/dist/cjs/components/DataTable/DataTable.js.map +1 -0
  33. package/dist/cjs/components/DataTable/DataTable.utils.js +87 -0
  34. package/dist/cjs/components/DataTable/DataTable.utils.js.map +1 -0
  35. package/dist/cjs/components/DetailedInformation/DetailedInformation.js +67 -0
  36. package/dist/cjs/components/DetailedInformation/DetailedInformation.js.map +1 -0
  37. package/dist/cjs/components/Dot/index.js +12 -0
  38. package/dist/cjs/components/Dot/index.js.map +1 -0
  39. package/dist/cjs/components/Drawer/Drawer.js +67 -0
  40. package/dist/cjs/components/Drawer/Drawer.js.map +1 -0
  41. package/dist/cjs/components/Dropdown/Dropdown.js +50 -0
  42. package/dist/cjs/components/Dropdown/Dropdown.js.map +1 -0
  43. package/dist/cjs/components/EmptyState/index.js +14 -0
  44. package/dist/cjs/components/EmptyState/index.js.map +1 -0
  45. package/dist/cjs/components/Flex/Flex.js +25 -0
  46. package/dist/cjs/components/Flex/Flex.js.map +1 -0
  47. package/dist/cjs/components/FloatingActionButton/FloatingActionButton.js +71 -0
  48. package/dist/cjs/components/FloatingActionButton/FloatingActionButton.js.map +1 -0
  49. package/dist/cjs/components/Grid/Grid.js +33 -0
  50. package/dist/cjs/components/Grid/Grid.js.map +1 -0
  51. package/dist/cjs/components/HeadingText/HeadingText.js +89 -0
  52. package/dist/cjs/components/HeadingText/HeadingText.js.map +1 -0
  53. package/dist/cjs/components/Icons/ArrowDownAZ.svg.js +46 -0
  54. package/dist/cjs/components/Icons/ArrowDownAZ.svg.js.map +1 -0
  55. package/dist/cjs/components/Icons/ArrowDownNarrowWide.svg.js +46 -0
  56. package/dist/cjs/components/Icons/ArrowDownNarrowWide.svg.js.map +1 -0
  57. package/dist/cjs/components/Icons/ArrowDownWideNarrow.svg.js +46 -0
  58. package/dist/cjs/components/Icons/ArrowDownWideNarrow.svg.js.map +1 -0
  59. package/dist/cjs/components/Icons/ArrowDownZA.svg.js +46 -0
  60. package/dist/cjs/components/Icons/ArrowDownZA.svg.js.map +1 -0
  61. package/dist/cjs/components/Icons/ArrowUpDown.svg.js +46 -0
  62. package/dist/cjs/components/Icons/ArrowUpDown.svg.js.map +1 -0
  63. package/dist/cjs/components/Icons/BadgeCheck.svg.js +48 -0
  64. package/dist/cjs/components/Icons/BadgeCheck.svg.js.map +1 -0
  65. package/dist/cjs/components/Icons/Check.svg.js +46 -0
  66. package/dist/cjs/components/Icons/Check.svg.js.map +1 -0
  67. package/dist/cjs/components/Icons/ChevronDown.svg.js +46 -0
  68. package/dist/cjs/components/Icons/ChevronDown.svg.js.map +1 -0
  69. package/dist/cjs/components/Icons/ChevronLeft.svg.js +46 -0
  70. package/dist/cjs/components/Icons/ChevronLeft.svg.js.map +1 -0
  71. package/dist/cjs/components/Icons/ChevronRight.svg.js +46 -0
  72. package/dist/cjs/components/Icons/ChevronRight.svg.js.map +1 -0
  73. package/dist/cjs/components/Icons/CircleAlert.svg.js +50 -0
  74. package/dist/cjs/components/Icons/CircleAlert.svg.js.map +1 -0
  75. package/dist/cjs/components/Icons/CircleCheck.svg.js +50 -0
  76. package/dist/cjs/components/Icons/CircleCheck.svg.js.map +1 -0
  77. package/dist/cjs/components/Icons/CirclePlus.svg.js +50 -0
  78. package/dist/cjs/components/Icons/CirclePlus.svg.js.map +1 -0
  79. package/dist/cjs/components/Icons/CircleX.svg.js +50 -0
  80. package/dist/cjs/components/Icons/CircleX.svg.js.map +1 -0
  81. package/dist/cjs/components/Icons/FolderPlus.svg.js +46 -0
  82. package/dist/cjs/components/Icons/FolderPlus.svg.js.map +1 -0
  83. package/dist/cjs/components/Icons/Info.svg.js +50 -0
  84. package/dist/cjs/components/Icons/Info.svg.js.map +1 -0
  85. package/dist/cjs/components/Icons/Search.svg.js +50 -0
  86. package/dist/cjs/components/Icons/Search.svg.js.map +1 -0
  87. package/dist/cjs/components/Icons/Slash.svg.js +46 -0
  88. package/dist/cjs/components/Icons/Slash.svg.js.map +1 -0
  89. package/dist/cjs/components/Icons/TriangleAlert.svg.js +46 -0
  90. package/dist/cjs/components/Icons/TriangleAlert.svg.js.map +1 -0
  91. package/dist/cjs/components/Icons/X.svg.js +46 -0
  92. package/dist/cjs/components/Icons/X.svg.js.map +1 -0
  93. package/dist/cjs/components/Input/Input.js +85 -0
  94. package/dist/cjs/components/Input/Input.js.map +1 -0
  95. package/dist/cjs/components/Label/Label.js +14 -0
  96. package/dist/cjs/components/Label/Label.js.map +1 -0
  97. package/dist/cjs/components/Loader/index.js +18 -0
  98. package/dist/cjs/components/Loader/index.js.map +1 -0
  99. package/dist/cjs/components/MobileHeader/MobileHeader.js +45 -0
  100. package/dist/cjs/components/MobileHeader/MobileHeader.js.map +1 -0
  101. package/dist/cjs/components/MobilePicker/MobilePicker.js +368 -0
  102. package/dist/cjs/components/MobilePicker/MobilePicker.js.map +1 -0
  103. package/dist/cjs/components/MobileStepper/MobileStepper.js +33 -0
  104. package/dist/cjs/components/MobileStepper/MobileStepper.js.map +1 -0
  105. package/dist/cjs/components/Pagination/Pagination.js +33 -0
  106. package/dist/cjs/components/Pagination/Pagination.js.map +1 -0
  107. package/dist/cjs/components/Pagination/usePagination.js +33 -0
  108. package/dist/cjs/components/Pagination/usePagination.js.map +1 -0
  109. package/dist/cjs/components/PasswordInput/PasswordInput.js +56 -0
  110. package/dist/cjs/components/PasswordInput/PasswordInput.js.map +1 -0
  111. package/dist/cjs/components/PinInput/PinInput.js +98 -0
  112. package/dist/cjs/components/PinInput/PinInput.js.map +1 -0
  113. package/dist/cjs/components/PullToRefresh/PullToRefresh.js +83 -0
  114. package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -0
  115. package/dist/cjs/components/QuantityStepper/QuantityStepper.js +77 -0
  116. package/dist/cjs/components/QuantityStepper/QuantityStepper.js.map +1 -0
  117. package/dist/cjs/components/Radio/Radio.js +34 -0
  118. package/dist/cjs/components/Radio/Radio.js.map +1 -0
  119. package/dist/cjs/components/RadioGroup/RadioGroup.js +50 -0
  120. package/dist/cjs/components/RadioGroup/RadioGroup.js.map +1 -0
  121. package/dist/cjs/components/RadioSwitch/RadioSwitch.js +116 -0
  122. package/dist/cjs/components/RadioSwitch/RadioSwitch.js.map +1 -0
  123. package/dist/cjs/components/RangeInput/RangeInput.js +66 -0
  124. package/dist/cjs/components/RangeInput/RangeInput.js.map +1 -0
  125. package/dist/cjs/components/RangeSlider/RangeSlider.js +167 -0
  126. package/dist/cjs/components/RangeSlider/RangeSlider.js.map +1 -0
  127. package/dist/cjs/components/SegmentedControl/SegmentedControl.js +64 -0
  128. package/dist/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -0
  129. package/dist/cjs/components/SelectBox/SelectBox.js +305 -0
  130. package/dist/cjs/components/SelectBox/SelectBox.js.map +1 -0
  131. package/dist/cjs/components/Skeleton/Skeleton.js +36 -0
  132. package/dist/cjs/components/Skeleton/Skeleton.js.map +1 -0
  133. package/dist/cjs/components/StatusPill/StatusPill.js +46 -0
  134. package/dist/cjs/components/StatusPill/StatusPill.js.map +1 -0
  135. package/dist/cjs/components/StickyActionBar/StickyActionBar.js +22 -0
  136. package/dist/cjs/components/StickyActionBar/StickyActionBar.js.map +1 -0
  137. package/dist/cjs/components/SwipeableRow/SwipeableRow.js +187 -0
  138. package/dist/cjs/components/SwipeableRow/SwipeableRow.js.map +1 -0
  139. package/dist/cjs/components/SwipeableTabs/SwipeableTabs.js +91 -0
  140. package/dist/cjs/components/SwipeableTabs/SwipeableTabs.js.map +1 -0
  141. package/dist/cjs/components/Table/Table.js +57 -0
  142. package/dist/cjs/components/Table/Table.js.map +1 -0
  143. package/dist/cjs/components/Tabs/Tabs.js +53 -0
  144. package/dist/cjs/components/Tabs/Tabs.js.map +1 -0
  145. package/dist/cjs/components/TextContent/TextContent.js +47 -0
  146. package/dist/cjs/components/TextContent/TextContent.js.map +1 -0
  147. package/dist/cjs/components/Textarea/Textarea.js +64 -0
  148. package/dist/cjs/components/Textarea/Textarea.js.map +1 -0
  149. package/dist/cjs/components/Toast/Toast.js +96 -0
  150. package/dist/cjs/components/Toast/Toast.js.map +1 -0
  151. package/dist/cjs/components/Toast/ToastProvider.js +151 -0
  152. package/dist/cjs/components/Toast/ToastProvider.js.map +1 -0
  153. package/dist/cjs/components/VirtualizedDataTable/VirtualizedDataTable.js +122 -0
  154. package/dist/cjs/components/VirtualizedDataTable/VirtualizedDataTable.js.map +1 -0
  155. package/dist/cjs/components/VirtualizedDataTable/VirtualizedRow.js +48 -0
  156. package/dist/cjs/components/VirtualizedDataTable/VirtualizedRow.js.map +1 -0
  157. package/dist/cjs/components/WheelPicker/WheelPicker.js +82 -0
  158. package/dist/cjs/components/WheelPicker/WheelPicker.js.map +1 -0
  159. package/dist/cjs/components/common-responsive.js +310 -0
  160. package/dist/cjs/components/common-responsive.js.map +1 -0
  161. package/dist/cjs/hooks/use-debounce.js +31 -0
  162. package/dist/cjs/hooks/use-debounce.js.map +1 -0
  163. package/dist/cjs/hooks/use-is-mobile.js +24 -0
  164. package/dist/cjs/hooks/use-is-mobile.js.map +1 -0
  165. package/dist/cjs/hooks/use-is-tablet-or-mobile.js +13 -0
  166. package/dist/cjs/hooks/use-is-tablet-or-mobile.js.map +1 -0
  167. package/dist/cjs/hooks/use-is-tablet.js +21 -0
  168. package/dist/cjs/hooks/use-is-tablet.js.map +1 -0
  169. package/dist/cjs/index.js +163 -0
  170. package/dist/cjs/index.js.map +1 -0
  171. package/dist/cjs/react-tailwind.css +2 -0
  172. package/dist/cjs/react-tailwind.css.map +1 -0
  173. package/dist/cjs/utils/build-classname.js +8 -0
  174. package/dist/cjs/utils/build-classname.js.map +1 -0
  175. package/dist/cjs/utils/get.js +20 -0
  176. package/dist/cjs/utils/get.js.map +1 -0
  177. package/dist/cjs/utils/is-array.js +12 -0
  178. package/dist/cjs/utils/is-array.js.map +1 -0
  179. package/dist/cjs/utils/is-empty.js +26 -0
  180. package/dist/cjs/utils/is-empty.js.map +1 -0
  181. package/dist/es/components/Accordion/Accordion.js +59 -0
  182. package/dist/es/components/Accordion/Accordion.js.map +1 -0
  183. package/dist/es/components/ActionSheet/ActionSheet.js +36 -0
  184. package/dist/es/components/ActionSheet/ActionSheet.js.map +1 -0
  185. package/dist/es/components/Alert/Alert.js +32 -0
  186. package/dist/es/components/Alert/Alert.js.map +1 -0
  187. package/dist/es/components/Badge/Badge.js +31 -0
  188. package/dist/es/components/Badge/Badge.js.map +1 -0
  189. package/dist/es/components/Banner/Banner.js +39 -0
  190. package/dist/es/components/Banner/Banner.js.map +1 -0
  191. package/dist/es/components/BodyText/BodyText.js +57 -0
  192. package/dist/es/components/BodyText/BodyText.js.map +1 -0
  193. package/dist/es/components/BottomNavigation/BottomNavigation.js +50 -0
  194. package/dist/es/components/BottomNavigation/BottomNavigation.js.map +1 -0
  195. package/dist/es/components/Breadcrumb/Breadcrumb.js +61 -0
  196. package/dist/es/components/Breadcrumb/Breadcrumb.js.map +1 -0
  197. package/dist/es/components/Button/Button.js +116 -0
  198. package/dist/es/components/Button/Button.js.map +1 -0
  199. package/dist/es/components/ButtonGroup/ButtonGroup.js +98 -0
  200. package/dist/es/components/ButtonGroup/ButtonGroup.js.map +1 -0
  201. package/dist/es/components/Card/Card.js +57 -0
  202. package/dist/es/components/Card/Card.js.map +1 -0
  203. package/dist/es/components/Checkbox/Checkbox.js +62 -0
  204. package/dist/es/components/Checkbox/Checkbox.js.map +1 -0
  205. package/dist/es/components/CheckboxGroup/CheckboxGroup.js +80 -0
  206. package/dist/es/components/CheckboxGroup/CheckboxGroup.js.map +1 -0
  207. package/dist/es/components/DataList/DataList.js +285 -0
  208. package/dist/es/components/DataList/DataList.js.map +1 -0
  209. package/dist/es/components/DataTable/DataTable.icons.js +17 -0
  210. package/dist/es/components/DataTable/DataTable.icons.js.map +1 -0
  211. package/dist/es/components/DataTable/DataTable.js +108 -0
  212. package/dist/es/components/DataTable/DataTable.js.map +1 -0
  213. package/dist/es/components/DataTable/DataTable.utils.js +83 -0
  214. package/dist/es/components/DataTable/DataTable.utils.js.map +1 -0
  215. package/dist/es/components/DetailedInformation/DetailedInformation.js +65 -0
  216. package/dist/es/components/DetailedInformation/DetailedInformation.js.map +1 -0
  217. package/dist/es/components/Dot/index.js +10 -0
  218. package/dist/es/components/Dot/index.js.map +1 -0
  219. package/dist/es/components/Drawer/Drawer.js +65 -0
  220. package/dist/es/components/Drawer/Drawer.js.map +1 -0
  221. package/dist/es/components/Dropdown/Dropdown.js +48 -0
  222. package/dist/es/components/Dropdown/Dropdown.js.map +1 -0
  223. package/dist/es/components/EmptyState/index.js +12 -0
  224. package/dist/es/components/EmptyState/index.js.map +1 -0
  225. package/dist/es/components/Flex/Flex.js +22 -0
  226. package/dist/es/components/Flex/Flex.js.map +1 -0
  227. package/dist/es/components/FloatingActionButton/FloatingActionButton.js +69 -0
  228. package/dist/es/components/FloatingActionButton/FloatingActionButton.js.map +1 -0
  229. package/dist/es/components/Grid/Grid.js +30 -0
  230. package/dist/es/components/Grid/Grid.js.map +1 -0
  231. package/dist/es/components/HeadingText/HeadingText.js +87 -0
  232. package/dist/es/components/HeadingText/HeadingText.js.map +1 -0
  233. package/dist/es/components/Icons/ArrowDownAZ.svg.js +23 -0
  234. package/dist/es/components/Icons/ArrowDownAZ.svg.js.map +1 -0
  235. package/dist/es/components/Icons/ArrowDownNarrowWide.svg.js +23 -0
  236. package/dist/es/components/Icons/ArrowDownNarrowWide.svg.js.map +1 -0
  237. package/dist/es/components/Icons/ArrowDownWideNarrow.svg.js +23 -0
  238. package/dist/es/components/Icons/ArrowDownWideNarrow.svg.js.map +1 -0
  239. package/dist/es/components/Icons/ArrowDownZA.svg.js +23 -0
  240. package/dist/es/components/Icons/ArrowDownZA.svg.js.map +1 -0
  241. package/dist/es/components/Icons/ArrowUpDown.svg.js +23 -0
  242. package/dist/es/components/Icons/ArrowUpDown.svg.js.map +1 -0
  243. package/dist/es/components/Icons/BadgeCheck.svg.js +25 -0
  244. package/dist/es/components/Icons/BadgeCheck.svg.js.map +1 -0
  245. package/dist/es/components/Icons/Check.svg.js +23 -0
  246. package/dist/es/components/Icons/Check.svg.js.map +1 -0
  247. package/dist/es/components/Icons/ChevronDown.svg.js +23 -0
  248. package/dist/es/components/Icons/ChevronDown.svg.js.map +1 -0
  249. package/dist/es/components/Icons/ChevronLeft.svg.js +23 -0
  250. package/dist/es/components/Icons/ChevronLeft.svg.js.map +1 -0
  251. package/dist/es/components/Icons/ChevronRight.svg.js +23 -0
  252. package/dist/es/components/Icons/ChevronRight.svg.js.map +1 -0
  253. package/dist/es/components/Icons/CircleAlert.svg.js +27 -0
  254. package/dist/es/components/Icons/CircleAlert.svg.js.map +1 -0
  255. package/dist/es/components/Icons/CircleCheck.svg.js +27 -0
  256. package/dist/es/components/Icons/CircleCheck.svg.js.map +1 -0
  257. package/dist/es/components/Icons/CirclePlus.svg.js +27 -0
  258. package/dist/es/components/Icons/CirclePlus.svg.js.map +1 -0
  259. package/dist/es/components/Icons/CircleX.svg.js +27 -0
  260. package/dist/es/components/Icons/CircleX.svg.js.map +1 -0
  261. package/dist/es/components/Icons/FolderPlus.svg.js +23 -0
  262. package/dist/es/components/Icons/FolderPlus.svg.js.map +1 -0
  263. package/dist/es/components/Icons/Info.svg.js +27 -0
  264. package/dist/es/components/Icons/Info.svg.js.map +1 -0
  265. package/dist/es/components/Icons/Search.svg.js +27 -0
  266. package/dist/es/components/Icons/Search.svg.js.map +1 -0
  267. package/dist/es/components/Icons/Slash.svg.js +23 -0
  268. package/dist/es/components/Icons/Slash.svg.js.map +1 -0
  269. package/dist/es/components/Icons/TriangleAlert.svg.js +23 -0
  270. package/dist/es/components/Icons/TriangleAlert.svg.js.map +1 -0
  271. package/dist/es/components/Icons/X.svg.js +23 -0
  272. package/dist/es/components/Icons/X.svg.js.map +1 -0
  273. package/dist/es/components/Input/Input.js +82 -0
  274. package/dist/es/components/Input/Input.js.map +1 -0
  275. package/dist/es/components/Label/Label.js +12 -0
  276. package/dist/es/components/Label/Label.js.map +1 -0
  277. package/dist/es/components/Loader/index.js +16 -0
  278. package/dist/es/components/Loader/index.js.map +1 -0
  279. package/dist/es/components/MobileHeader/MobileHeader.js +43 -0
  280. package/dist/es/components/MobileHeader/MobileHeader.js.map +1 -0
  281. package/dist/es/components/MobilePicker/MobilePicker.js +366 -0
  282. package/dist/es/components/MobilePicker/MobilePicker.js.map +1 -0
  283. package/dist/es/components/MobileStepper/MobileStepper.js +31 -0
  284. package/dist/es/components/MobileStepper/MobileStepper.js.map +1 -0
  285. package/dist/es/components/Pagination/Pagination.js +31 -0
  286. package/dist/es/components/Pagination/Pagination.js.map +1 -0
  287. package/dist/es/components/Pagination/usePagination.js +30 -0
  288. package/dist/es/components/Pagination/usePagination.js.map +1 -0
  289. package/dist/es/components/PasswordInput/PasswordInput.js +51 -0
  290. package/dist/es/components/PasswordInput/PasswordInput.js.map +1 -0
  291. package/dist/es/components/PinInput/PinInput.js +96 -0
  292. package/dist/es/components/PinInput/PinInput.js.map +1 -0
  293. package/dist/es/components/PullToRefresh/PullToRefresh.js +81 -0
  294. package/dist/es/components/PullToRefresh/PullToRefresh.js.map +1 -0
  295. package/dist/es/components/QuantityStepper/QuantityStepper.js +75 -0
  296. package/dist/es/components/QuantityStepper/QuantityStepper.js.map +1 -0
  297. package/dist/es/components/Radio/Radio.js +32 -0
  298. package/dist/es/components/Radio/Radio.js.map +1 -0
  299. package/dist/es/components/RadioGroup/RadioGroup.js +48 -0
  300. package/dist/es/components/RadioGroup/RadioGroup.js.map +1 -0
  301. package/dist/es/components/RadioSwitch/RadioSwitch.js +114 -0
  302. package/dist/es/components/RadioSwitch/RadioSwitch.js.map +1 -0
  303. package/dist/es/components/RangeInput/RangeInput.js +64 -0
  304. package/dist/es/components/RangeInput/RangeInput.js.map +1 -0
  305. package/dist/es/components/RangeSlider/RangeSlider.js +165 -0
  306. package/dist/es/components/RangeSlider/RangeSlider.js.map +1 -0
  307. package/dist/es/components/SegmentedControl/SegmentedControl.js +62 -0
  308. package/dist/es/components/SegmentedControl/SegmentedControl.js.map +1 -0
  309. package/dist/es/components/SelectBox/SelectBox.js +303 -0
  310. package/dist/es/components/SelectBox/SelectBox.js.map +1 -0
  311. package/dist/es/components/Skeleton/Skeleton.js +34 -0
  312. package/dist/es/components/Skeleton/Skeleton.js.map +1 -0
  313. package/dist/es/components/StatusPill/StatusPill.js +44 -0
  314. package/dist/es/components/StatusPill/StatusPill.js.map +1 -0
  315. package/dist/es/components/StickyActionBar/StickyActionBar.js +20 -0
  316. package/dist/es/components/StickyActionBar/StickyActionBar.js.map +1 -0
  317. package/dist/es/components/SwipeableRow/SwipeableRow.js +185 -0
  318. package/dist/es/components/SwipeableRow/SwipeableRow.js.map +1 -0
  319. package/dist/es/components/SwipeableTabs/SwipeableTabs.js +89 -0
  320. package/dist/es/components/SwipeableTabs/SwipeableTabs.js.map +1 -0
  321. package/dist/es/components/Table/Table.js +48 -0
  322. package/dist/es/components/Table/Table.js.map +1 -0
  323. package/dist/es/components/Tabs/Tabs.js +51 -0
  324. package/dist/es/components/Tabs/Tabs.js.map +1 -0
  325. package/dist/es/components/TextContent/TextContent.js +45 -0
  326. package/dist/es/components/TextContent/TextContent.js.map +1 -0
  327. package/dist/es/components/Textarea/Textarea.js +62 -0
  328. package/dist/es/components/Textarea/Textarea.js.map +1 -0
  329. package/dist/es/components/Toast/Toast.js +94 -0
  330. package/dist/es/components/Toast/Toast.js.map +1 -0
  331. package/dist/es/components/Toast/ToastProvider.js +148 -0
  332. package/dist/es/components/Toast/ToastProvider.js.map +1 -0
  333. package/dist/es/components/VirtualizedDataTable/VirtualizedDataTable.js +120 -0
  334. package/dist/es/components/VirtualizedDataTable/VirtualizedDataTable.js.map +1 -0
  335. package/dist/es/components/VirtualizedDataTable/VirtualizedRow.js +46 -0
  336. package/dist/es/components/VirtualizedDataTable/VirtualizedRow.js.map +1 -0
  337. package/dist/es/components/WheelPicker/WheelPicker.js +80 -0
  338. package/dist/es/components/WheelPicker/WheelPicker.js.map +1 -0
  339. package/dist/es/components/common-responsive.js +287 -0
  340. package/dist/es/components/common-responsive.js.map +1 -0
  341. package/dist/es/hooks/use-debounce.js +28 -0
  342. package/dist/es/hooks/use-debounce.js.map +1 -0
  343. package/dist/es/hooks/use-is-mobile.js +22 -0
  344. package/dist/es/hooks/use-is-mobile.js.map +1 -0
  345. package/dist/es/hooks/use-is-tablet-or-mobile.js +11 -0
  346. package/dist/es/hooks/use-is-tablet-or-mobile.js.map +1 -0
  347. package/dist/es/hooks/use-is-tablet.js +19 -0
  348. package/dist/es/hooks/use-is-tablet.js.map +1 -0
  349. package/dist/es/index.js +67 -0
  350. package/dist/es/index.js.map +1 -0
  351. package/dist/es/react-tailwind.css +2 -0
  352. package/dist/es/react-tailwind.css.map +1 -0
  353. package/dist/es/utils/build-classname.js +6 -0
  354. package/dist/es/utils/build-classname.js.map +1 -0
  355. package/dist/es/utils/get.js +18 -0
  356. package/dist/es/utils/get.js.map +1 -0
  357. package/dist/es/utils/is-array.js +10 -0
  358. package/dist/es/utils/is-array.js.map +1 -0
  359. package/dist/es/utils/is-empty.js +24 -0
  360. package/dist/es/utils/is-empty.js.map +1 -0
  361. package/dist/react-tailwind.cjs.js +3596 -630
  362. package/dist/react-tailwind.cjs.js.map +1 -1
  363. package/dist/react-tailwind.es.js +3561 -623
  364. package/dist/react-tailwind.es.js.map +1 -1
  365. package/dist/types/components/ActionSheet/ActionSheet.d.ts +5 -0
  366. package/dist/types/components/ActionSheet/ActionSheet.test.d.ts +1 -0
  367. package/dist/types/components/ActionSheet/ActionSheet.types.d.ts +44 -0
  368. package/dist/types/components/ActionSheet/index.d.ts +2 -0
  369. package/dist/types/components/Badge/Badge.types.d.ts +1 -1
  370. package/dist/types/components/BodyText/BodyText.d.ts +1 -1
  371. package/dist/types/components/BodyText/BodyText.types.d.ts +47 -8
  372. package/dist/types/components/BottomNavigation/BottomNavigation.d.ts +5 -0
  373. package/dist/types/components/BottomNavigation/BottomNavigation.test.d.ts +1 -0
  374. package/dist/types/components/BottomNavigation/BottomNavigation.types.d.ts +41 -0
  375. package/dist/types/components/BottomNavigation/index.d.ts +2 -0
  376. package/dist/types/components/Breadcrumb/Breadcrumb.d.ts +2 -3
  377. package/dist/types/components/Breadcrumb/Breadcrumb.types.d.ts +43 -10
  378. package/dist/types/components/Button/Button.types.d.ts +17 -63
  379. package/dist/types/components/ButtonGroup/ButtonGroup.types.d.ts +16 -0
  380. package/dist/types/components/Card/Card.d.ts +7 -1
  381. package/dist/types/components/Card/Card.types.d.ts +73 -42
  382. package/dist/types/components/Checkbox/Checkbox.types.d.ts +28 -1
  383. package/dist/types/components/CheckboxGroup/CheckboxGroup.types.d.ts +53 -1
  384. package/dist/types/components/DataList/DataList.d.ts +5 -0
  385. package/dist/types/components/DataList/DataList.test.d.ts +1 -0
  386. package/dist/types/components/DataList/DataList.types.d.ts +81 -0
  387. package/dist/types/components/DataList/index.d.ts +2 -0
  388. package/dist/types/components/DataTable/DataTable.d.ts +1 -1
  389. package/dist/types/components/DataTable/DataTable.types.d.ts +10 -0
  390. package/dist/types/components/DetailedInformation/DetailedInformation.d.ts +1 -1
  391. package/dist/types/components/DetailedInformation/DetailedInformation.types.d.ts +47 -3
  392. package/dist/types/components/Drawer/Drawer.types.d.ts +37 -13
  393. package/dist/types/components/Dropdown/Dropdown.types.d.ts +17 -1
  394. package/dist/types/components/Flex/Flex.d.ts +3 -0
  395. package/dist/types/components/Flex/Flex.test.d.ts +1 -0
  396. package/dist/types/components/Flex/Flex.types.d.ts +92 -0
  397. package/dist/types/components/Flex/index.d.ts +2 -0
  398. package/dist/types/components/FloatingActionButton/FloatingActionButton.d.ts +5 -0
  399. package/dist/types/components/FloatingActionButton/FloatingActionButton.test.d.ts +1 -0
  400. package/dist/types/components/FloatingActionButton/FloatingActionButton.types.d.ts +48 -0
  401. package/dist/types/components/FloatingActionButton/index.d.ts +2 -0
  402. package/dist/types/components/Grid/Grid.d.ts +3 -0
  403. package/dist/types/components/Grid/Grid.test.d.ts +1 -0
  404. package/dist/types/components/Grid/Grid.types.d.ts +136 -0
  405. package/dist/types/components/Grid/index.d.ts +2 -0
  406. package/dist/types/components/HeadingText/HeadingText.d.ts +7 -7
  407. package/dist/types/components/HeadingText/HeadingText.test.d.ts +1 -0
  408. package/dist/types/components/HeadingText/HeadingText.types.d.ts +56 -3
  409. package/dist/types/components/Input/Input.d.ts +4 -2
  410. package/dist/types/components/Input/Input.types.d.ts +36 -3
  411. package/dist/types/components/Loader/index.d.ts +1 -1
  412. package/dist/types/components/MobileHeader/MobileHeader.d.ts +5 -0
  413. package/dist/types/components/MobileHeader/MobileHeader.test.d.ts +1 -0
  414. package/dist/types/components/MobileHeader/MobileHeader.types.d.ts +49 -0
  415. package/dist/types/components/MobileHeader/index.d.ts +2 -0
  416. package/dist/types/components/MobilePicker/MobilePicker.d.ts +6 -0
  417. package/dist/types/components/MobilePicker/MobilePicker.test.d.ts +1 -0
  418. package/dist/types/components/MobilePicker/MobilePicker.types.d.ts +90 -0
  419. package/dist/types/components/MobilePicker/index.d.ts +2 -0
  420. package/dist/types/components/MobileStepper/MobileStepper.d.ts +5 -0
  421. package/dist/types/components/MobileStepper/MobileStepper.test.d.ts +1 -0
  422. package/dist/types/components/MobileStepper/MobileStepper.types.d.ts +28 -0
  423. package/dist/types/components/MobileStepper/index.d.ts +2 -0
  424. package/dist/types/components/PasswordInput/PasswordInput.d.ts +8 -4
  425. package/dist/types/components/PasswordInput/PasswordInput.types.d.ts +8 -0
  426. package/dist/types/components/PinInput/PinInput.d.ts +5 -0
  427. package/dist/types/components/PinInput/PinInput.test.d.ts +1 -0
  428. package/dist/types/components/PinInput/PinInput.types.d.ts +29 -0
  429. package/dist/types/components/PinInput/index.d.ts +2 -0
  430. package/dist/types/components/PullToRefresh/PullToRefresh.d.ts +5 -0
  431. package/dist/types/components/PullToRefresh/PullToRefresh.test.d.ts +1 -0
  432. package/dist/types/components/PullToRefresh/PullToRefresh.types.d.ts +23 -0
  433. package/dist/types/components/PullToRefresh/index.d.ts +2 -0
  434. package/dist/types/components/QuantityStepper/QuantityStepper.d.ts +3 -0
  435. package/dist/types/components/QuantityStepper/QuantityStepper.test.d.ts +1 -0
  436. package/dist/types/components/QuantityStepper/QuantityStepper.types.d.ts +66 -0
  437. package/dist/types/components/QuantityStepper/index.d.ts +2 -0
  438. package/dist/types/components/Radio/Radio.d.ts +1 -1
  439. package/dist/types/components/Radio/Radio.types.d.ts +12 -2
  440. package/dist/types/components/RadioGroup/RadioGroup.d.ts +1 -1
  441. package/dist/types/components/RadioGroup/RadioGroup.types.d.ts +41 -13
  442. package/dist/types/components/RadioSwitch/RadioSwitch.d.ts +0 -4
  443. package/dist/types/components/RadioSwitch/RadioSwitch.types.d.ts +6 -31
  444. package/dist/types/components/RangeInput/RangeInput.d.ts +1 -1
  445. package/dist/types/components/RangeInput/RangeInput.types.d.ts +14 -1
  446. package/dist/types/components/RangeSlider/RangeSlider.d.ts +1 -1
  447. package/dist/types/components/RangeSlider/RangeSlider.types.d.ts +28 -13
  448. package/dist/types/components/SegmentedControl/SegmentedControl.d.ts +3 -0
  449. package/dist/types/components/SegmentedControl/SegmentedControl.test.d.ts +1 -0
  450. package/dist/types/components/SegmentedControl/SegmentedControl.types.d.ts +53 -0
  451. package/dist/types/components/SegmentedControl/index.d.ts +2 -0
  452. package/dist/types/components/SelectBox/SelectBox.types.d.ts +32 -14
  453. package/dist/types/components/Skeleton/Skeleton.d.ts +2 -0
  454. package/dist/types/components/Skeleton/Skeleton.test.d.ts +1 -0
  455. package/dist/types/components/Skeleton/Skeleton.types.d.ts +38 -0
  456. package/dist/types/components/Skeleton/index.d.ts +2 -0
  457. package/dist/types/components/StatusPill/StatusPill.d.ts +2 -0
  458. package/dist/types/components/StatusPill/StatusPill.test.d.ts +1 -0
  459. package/dist/types/components/StatusPill/StatusPill.types.d.ts +29 -0
  460. package/dist/types/components/StatusPill/index.d.ts +2 -0
  461. package/dist/types/components/StickyActionBar/StickyActionBar.d.ts +2 -0
  462. package/dist/types/components/StickyActionBar/StickyActionBar.test.d.ts +1 -0
  463. package/dist/types/components/StickyActionBar/StickyActionBar.types.d.ts +30 -0
  464. package/dist/types/components/StickyActionBar/index.d.ts +2 -0
  465. package/dist/types/components/SwipeableRow/SwipeableRow.d.ts +3 -0
  466. package/dist/types/components/SwipeableRow/SwipeableRow.test.d.ts +1 -0
  467. package/dist/types/components/SwipeableRow/SwipeableRow.types.d.ts +42 -0
  468. package/dist/types/components/SwipeableRow/index.d.ts +2 -0
  469. package/dist/types/components/SwipeableTabs/SwipeableTabs.d.ts +5 -0
  470. package/dist/types/components/SwipeableTabs/SwipeableTabs.test.d.ts +1 -0
  471. package/dist/types/components/SwipeableTabs/SwipeableTabs.types.d.ts +38 -0
  472. package/dist/types/components/SwipeableTabs/index.d.ts +2 -0
  473. package/dist/types/components/TextContent/TextContent.d.ts +2 -2
  474. package/dist/types/components/TextContent/TextContent.types.d.ts +47 -7
  475. package/dist/types/components/Textarea/Textarea.types.d.ts +37 -3
  476. package/dist/types/components/Toast/Toast.d.ts +1 -1
  477. package/dist/types/components/Toast/Toast.types.d.ts +117 -43
  478. package/dist/types/components/Toast/ToastProvider.d.ts +3 -6
  479. package/dist/types/components/WheelPicker/WheelPicker.d.ts +5 -0
  480. package/dist/types/components/WheelPicker/WheelPicker.test.d.ts +1 -0
  481. package/dist/types/components/WheelPicker/WheelPicker.types.d.ts +35 -0
  482. package/dist/types/components/WheelPicker/index.d.ts +2 -0
  483. package/dist/types/components/common-responsive.d.ts +57 -0
  484. package/dist/types/index.d.ts +19 -0
  485. package/package.json +11 -3
@@ -0,0 +1,66 @@
1
+ import type { InputHTMLAttributes, ReactNode } from 'react';
2
+ export type QuantityStepperSize = 'sm' | 'md' | 'lg';
3
+ export interface QuantityStepperProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'onChange' | 'value' | 'size' | 'prefix'> {
4
+ /**
5
+ * Numeric value of the stepper
6
+ */
7
+ value: number;
8
+ /**
9
+ * Callback fired when value changes
10
+ */
11
+ onChange: (value: number) => void;
12
+ /**
13
+ * Minimum allowable value
14
+ * @default 0
15
+ */
16
+ min?: number;
17
+ /**
18
+ * Maximum allowable value
19
+ * @default 99999
20
+ */
21
+ max?: number;
22
+ /**
23
+ * Increment/decrement step interval
24
+ * @default 1
25
+ */
26
+ step?: number;
27
+ /**
28
+ * Optional field label text
29
+ */
30
+ label?: string;
31
+ /**
32
+ * Optional label hint text displayed next to label
33
+ */
34
+ labelHint?: string;
35
+ /**
36
+ * Optional helper text rendered beneath the field
37
+ */
38
+ helperText?: string;
39
+ /**
40
+ * Error message text. Setting this marks field as invalid.
41
+ */
42
+ error?: string;
43
+ /**
44
+ * Show or hide the error message text underneath
45
+ * @default true
46
+ */
47
+ showErrorMessage?: boolean;
48
+ /**
49
+ * Size variant matching Input component dimensions
50
+ * @default "md"
51
+ */
52
+ size?: QuantityStepperSize;
53
+ /**
54
+ * Optional prefix icon or element
55
+ */
56
+ prefix?: ReactNode;
57
+ /**
58
+ * Optional suffix element (e.g. unit label like "kg", "items")
59
+ */
60
+ suffix?: ReactNode;
61
+ /**
62
+ * Disabled state for input and controls
63
+ * @default false
64
+ */
65
+ disabled?: boolean;
66
+ }
@@ -0,0 +1,2 @@
1
+ export * from './QuantityStepper';
2
+ export * from './QuantityStepper.types';
@@ -1,2 +1,2 @@
1
- import { RadioProps } from './Radio.types';
1
+ import type { RadioProps } from './Radio.types';
2
2
  export declare const Radio: import("react").ForwardRefExoticComponent<RadioProps & import("react").RefAttributes<HTMLInputElement>>;
@@ -1,14 +1,24 @@
1
1
  import type { InputHTMLAttributes, ReactNode } from 'react';
2
2
  import type { InputCustomProps } from '../common-type';
3
- export interface RadioProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type'>, Omit<InputCustomProps, 'labelHint'> {
4
- /** Force type to checkbox only */
3
+ export type RadioSize = 'sm' | 'md' | 'lg';
4
+ export type RadioTheme = 'primary' | 'success' | 'danger';
5
+ export interface RadioProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'size'>, Omit<InputCustomProps, 'labelHint'> {
6
+ /** Force type to radio only */
5
7
  type?: 'radio';
8
+ /** Optional subtext description below radio label */
9
+ description?: ReactNode;
10
+ /** Size variant ('sm' | 'md' | 'lg') @default "md" */
11
+ size?: RadioSize;
12
+ /** Color accent theme ('primary' | 'success' | 'danger') @default "primary" */
13
+ theme?: RadioTheme;
6
14
  /** Extra class for outer wrapper */
7
15
  wrapperClass?: string;
8
16
  /** Input container class */
9
17
  containerClass?: string;
10
18
  /** Label class */
11
19
  labelClass?: string;
20
+ /** Description subtext class */
21
+ descriptionClass?: string;
12
22
  /** Error message */
13
23
  error?: string | ReactNode;
14
24
  }
@@ -1,3 +1,3 @@
1
1
  import React from 'react';
2
- import { RadioGroupProps } from './RadioGroup.types';
2
+ import type { RadioGroupProps } from './RadioGroup.types';
3
3
  export declare const RadioGroup: React.FC<RadioGroupProps>;
@@ -1,4 +1,7 @@
1
1
  import type { ChangeEvent, ReactNode } from 'react';
2
+ import type { RadioSize, RadioTheme } from '../Radio/Radio.types';
3
+ export type RadioGroupVariant = 'default' | 'cards';
4
+ export type RadioGroupColumns = 1 | 2 | 3 | 4;
2
5
  export type RadionGroupItem = {
3
6
  /**
4
7
  * The display label shown next to the radio button.
@@ -6,19 +9,43 @@ export type RadionGroupItem = {
6
9
  label: string;
7
10
  /**
8
11
  * The underlying value associated with the option.
9
- * Can be any type, including string, number, or object.
10
12
  */
11
13
  value: any;
14
+ /**
15
+ * Optional subtext description for rich option items.
16
+ */
17
+ description?: ReactNode;
18
+ /**
19
+ * Optional icon displayed next to the item label.
20
+ */
21
+ icon?: ReactNode;
22
+ /**
23
+ * Disable individual option item
24
+ */
25
+ disabled?: boolean;
12
26
  };
13
27
  export interface RadioGroupProps {
14
28
  /**
15
29
  * The name attribute shared by all radio buttons in the group.
16
- * Ensures only one option can be selected at a time.
17
30
  */
18
31
  name: string;
19
32
  /**
20
- * Optional label displayed above the radio button group.
21
- * Can be a string or a custom ReactNode.
33
+ * Visual variant mode: 'default' or 'cards' (rich selectable card tiles)
34
+ * @default "default"
35
+ */
36
+ variant?: RadioGroupVariant;
37
+ /**
38
+ * Size variant for all radios in the group ('sm' | 'md' | 'lg')
39
+ * @default "md"
40
+ */
41
+ size?: RadioSize;
42
+ /**
43
+ * Theme accent color ('primary' | 'success' | 'danger')
44
+ * @default "primary"
45
+ */
46
+ theme?: RadioTheme;
47
+ /**
48
+ * Optional label displayed above the radio group.
22
49
  */
23
50
  label?: ReactNode;
24
51
  /**
@@ -31,33 +58,34 @@ export interface RadioGroupProps {
31
58
  labelWrapperClass?: string;
32
59
  /**
33
60
  * Optional hint content displayed beside the label.
34
- * Useful for showing small guidance text.
35
61
  */
36
62
  labelHint?: ReactNode;
37
63
  /**
38
- * Custom CSS classes applied to the outer container
39
- * that wraps the entire radio group.
64
+ * Custom CSS classes applied to the outer container.
40
65
  */
41
66
  containerClass?: string;
42
67
  /**
43
68
  * The currently selected value.
44
- * When provided, the component becomes controlled.
45
69
  */
46
70
  value?: any;
47
71
  /**
48
72
  * The list of options to render.
49
- * - Strings → converted to { label, value } internally
50
- * - Objects → must follow RadionButtonGroupItem structure
51
73
  */
52
74
  options: string[] | RadionGroupItem[];
75
+ /**
76
+ * Grid column layout when variant="cards" or row=true (1 | 2 | 3 | 4)
77
+ */
78
+ columns?: RadioGroupColumns;
79
+ /**
80
+ * Disables all options in the radio group.
81
+ */
82
+ disabled?: boolean;
53
83
  /**
54
84
  * Whether to display radio buttons horizontally in a row.
55
- * Defaults to vertical column layout.
56
85
  */
57
86
  row?: boolean;
58
87
  /**
59
- * Change handler called when the selected radio button changes.
60
- * Receives the native ChangeEvent from the input element.
88
+ * Change handler called when selected value changes.
61
89
  */
62
90
  onChange?: (e: ChangeEvent<HTMLInputElement>) => void;
63
91
  error?: string | null;
@@ -1,7 +1,3 @@
1
1
  import React from 'react';
2
2
  import type { RadioSwitchProps } from './RadioSwitch.types';
3
- /**
4
- * GPU-accelerated Radio Switch with perfect highlight alignment.
5
- * Supports wrapping, icons, descriptions, and dark mode.
6
- */
7
3
  export declare const RadioSwitch: React.FC<RadioSwitchProps>;
@@ -1,45 +1,20 @@
1
1
  import type { RadioGroupProps } from '@headlessui/react';
2
- /**
3
- * A single item in the RadioSwitch component.
4
- * Can be:
5
- * - a string → used as both label & value
6
- * - an object → allows custom label, value, and an optional description
7
- */
2
+ export type RadioSwitchSize = 'sm' | 'md' | 'lg';
3
+ export type RadioSwitchTheme = 'primary' | 'secondary' | 'dark';
8
4
  export type RadioSwitchItem = string | {
9
- /** Text shown inside the switch option */
10
5
  label: string;
11
- /** The underlying value for this option */
12
6
  value: string;
13
- /** Optional description shown below the label (small text) */
14
7
  description?: string;
8
+ disabled?: boolean;
15
9
  };
16
- /**
17
- * Props for the RadioSwitch component.
18
- * Extends HeadlessUI's RadioGroupProps.
19
- */
20
10
  export type RadioSwitchProps = RadioGroupProps & {
21
- /**
22
- * Accessible label for the group.
23
- * Used internally for aria-label.
24
- */
25
11
  label?: string;
26
- /**
27
- * The currently selected value.
28
- * Makes this a controlled component.
29
- */
30
12
  selected: string;
31
- /**
32
- * Callback fired when selection changes.
33
- * Receives the selected string value.
34
- */
35
13
  onChange: (value: string) => void;
36
- /**
37
- * List of switch options.
38
- * Can be:
39
- * - an array of strings
40
- * - an array of objects with label/value/description
41
- */
42
14
  items: RadioSwitchItem[];
15
+ size?: RadioSwitchSize;
16
+ theme?: RadioSwitchTheme;
17
+ disabled?: boolean;
43
18
  switchClass?: string;
44
19
  wrapperClass?: string;
45
20
  contentClass?: string;
@@ -1,2 +1,2 @@
1
- import { RangeInputProps } from './RangeInput.types';
1
+ import type { RangeInputProps } from './RangeInput.types';
2
2
  export declare const RangeInput: import("react").ForwardRefExoticComponent<RangeInputProps & import("react").RefAttributes<HTMLInputElement>>;
@@ -1,6 +1,11 @@
1
1
  import type { InputHTMLAttributes, ReactNode } from 'react';
2
2
  import type { InputCustomProps } from '../common-type';
3
- export interface RangeInputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type'>, InputCustomProps {
3
+ export type RangeInputSize = 'sm' | 'md' | 'lg';
4
+ export interface RangeInputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'size'>, InputCustomProps {
5
+ /**
6
+ * Size scale of the slider (`"sm"` | `"md"` | `"lg"`). Defaults to `"md"`.
7
+ */
8
+ size?: RangeInputSize;
4
9
  /** Extra class for outer wrapper */
5
10
  wrapperClass?: string;
6
11
  /** Input container class */
@@ -9,6 +14,14 @@ export interface RangeInputProps extends Omit<InputHTMLAttributes<HTMLInputEleme
9
14
  labelClass?: string;
10
15
  /** Error message */
11
16
  error?: string | ReactNode;
17
+ /** Helper guidance message rendered below the slider */
18
+ helperText?: ReactNode;
19
+ /** Whether to display current value on the right side of the slider. Defaults to `true`. */
12
20
  showValue?: boolean;
21
+ /** String suffix appended to value display (e.g. `"%"`, `"px"`, `"₹"`) */
13
22
  valueSuffix?: string;
23
+ /** Floating value tooltip popup badge displayed above the thumb on hover or drag */
24
+ showTooltip?: boolean;
25
+ /** Step tick marks displayed along slider track (boolean or map of values to labels) */
26
+ marks?: boolean | Record<number, string>;
14
27
  }
@@ -1,3 +1,3 @@
1
1
  import React from 'react';
2
- import { RangeSliderProps } from './RangeSlider.types';
2
+ import type { RangeSliderProps } from './RangeSlider.types';
3
3
  export declare const RangeSlider: React.FC<RangeSliderProps>;
@@ -1,32 +1,35 @@
1
+ import type { ReactNode } from 'react';
2
+ export type RangeSliderSize = 'sm' | 'md' | 'lg';
1
3
  /**
2
4
  * Props for the RangeSlider component.
3
5
  * A dual-thumb, draggable range selector with support for labels,
4
- * error display, and smooth animated thumb movement.
6
+ * step increments, marks, tooltips, keyboard navigation, and error display.
5
7
  */
6
8
  export interface RangeSliderProps {
7
9
  /**
8
10
  * Top label displayed above the slider.
9
- * Useful for identifying the field in forms.
10
11
  */
11
12
  label?: string;
12
13
  /**
13
14
  * Optional hint displayed to the right of the label.
14
- * Often used for contextual help or inline descriptions.
15
15
  */
16
- labelHint?: React.ReactNode;
16
+ labelHint?: ReactNode;
17
17
  /**
18
18
  * Custom Tailwind classes applied to the label element.
19
19
  */
20
20
  labelClass?: string;
21
21
  /**
22
- * Custom Tailwind classes applied to the outer container
23
- * that wraps the entire slider component.
22
+ * Custom Tailwind classes applied to the outer container.
24
23
  */
25
24
  containerClass?: string;
26
25
  /**
27
26
  * Custom Tailwind classes applied to the slider thumbs.
28
27
  */
29
28
  className?: string;
29
+ /**
30
+ * Size scale of the range slider (`"sm"` | `"md"` | `"lg"`). Defaults to `"md"`.
31
+ */
32
+ size?: RangeSliderSize;
30
33
  /**
31
34
  * The minimum allowed numeric value of the slider.
32
35
  */
@@ -35,31 +38,43 @@ export interface RangeSliderProps {
35
38
  * The maximum allowed numeric value of the slider.
36
39
  */
37
40
  max: number;
41
+ /**
42
+ * Step increment precision for thumbs (e.g. `1`, `5`, `10`, `0.5`).
43
+ * Defaults to `1`.
44
+ */
45
+ step?: number;
38
46
  /**
39
47
  * The current selected minimum value (left thumb).
40
- * This makes the component fully controlled.
41
48
  */
42
49
  valueMin: number;
43
50
  /**
44
51
  * The current selected maximum value (right thumb).
45
- * This makes the component fully controlled.
46
52
  */
47
53
  valueMax: number;
48
54
  /**
49
55
  * Callback triggered whenever either thumb moves.
50
- * Receives the updated min and max values.
51
56
  */
52
57
  onChange: (min: number, max: number) => void;
53
58
  /**
54
- * Optional string appended to displayed values.
55
- * Example: "kg", "₹", "cm", "hrs", "%".
59
+ * Optional string appended to displayed values (e.g. `"kg"`, `"₹"`, `"%"`, `"hrs"`).
56
60
  */
57
61
  valueSuffix?: string;
62
+ /**
63
+ * Floating value tooltip popups displayed above active thumbs on drag or hover.
64
+ */
65
+ showTooltips?: boolean;
66
+ /**
67
+ * Custom tick marks and labels displayed along slider track (e.g. `{ 0: '$0', 50: '$50', 100: '$100' }`).
68
+ */
69
+ marks?: Record<number, string>;
58
70
  /**
59
71
  * Error message to display below the slider.
60
- * If provided, the slider is styled with an error state.
61
72
  */
62
- error?: string | null;
73
+ error?: string | ReactNode;
74
+ /**
75
+ * Guidance helper text rendered below the slider.
76
+ */
77
+ helperText?: ReactNode;
63
78
  /**
64
79
  * Whether the error message should be shown.
65
80
  * Defaults to true.
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ import type { SegmentedControlProps } from './SegmentedControl.types';
3
+ export declare const SegmentedControl: React.ForwardRefExoticComponent<SegmentedControlProps<string> & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,53 @@
1
+ import type { HTMLAttributes, ReactNode } from 'react';
2
+ export interface SegmentedControlOption<T extends string = string> {
3
+ /**
4
+ * Visible label or element for the segment option
5
+ */
6
+ label: ReactNode;
7
+ /**
8
+ * Unique value associated with the option
9
+ */
10
+ value: T;
11
+ /**
12
+ * Optional tooltip or title text
13
+ */
14
+ title?: string;
15
+ /**
16
+ * Optional icon rendered before the label
17
+ */
18
+ icon?: ReactNode;
19
+ /**
20
+ * Defines if option is disabled
21
+ */
22
+ disabled?: boolean;
23
+ }
24
+ export type SegmentedControlSize = 'sm' | 'md' | 'lg';
25
+ export interface SegmentedControlProps<T extends string = string> extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange' | 'value'> {
26
+ /**
27
+ * Options list to display in the control
28
+ */
29
+ options: SegmentedControlOption<T>[];
30
+ /**
31
+ * Currently selected value
32
+ */
33
+ value: T;
34
+ /**
35
+ * Callback triggered when selection changes
36
+ */
37
+ onChange: (value: T) => void;
38
+ /**
39
+ * Global disabled state for the entire control
40
+ * @default false
41
+ */
42
+ disabled?: boolean;
43
+ /**
44
+ * Size variant controlling padding and text size
45
+ * @default "md"
46
+ */
47
+ size?: SegmentedControlSize;
48
+ /**
49
+ * Expand control to span full container width
50
+ * @default false
51
+ */
52
+ fullWidth?: boolean;
53
+ }
@@ -0,0 +1,2 @@
1
+ export * from './SegmentedControl';
2
+ export * from './SegmentedControl.types';
@@ -1,4 +1,5 @@
1
1
  import { type ReactNode } from 'react';
2
+ export type SelectBoxSize = 'sm' | 'md' | 'lg';
2
3
  export type BaseOption = {
3
4
  /** Unique value for the option (used for selection comparison) */
4
5
  value: string;
@@ -9,15 +10,25 @@ export type BaseOption = {
9
10
  /** Additional metadata fields allowed on the option */
10
11
  [k: string]: any;
11
12
  };
13
+ export type OptionGroup<T = BaseOption> = {
14
+ /** Section header label for the group */
15
+ group: string;
16
+ /** Options belonging to this group */
17
+ options: T[];
18
+ };
12
19
  export interface SelectBoxProps<T extends BaseOption | string = BaseOption> {
13
20
  /** List of options to display in the dropdown */
14
- options: T[];
21
+ options?: T[];
22
+ /** List of option groups to display in the dropdown (alternative to options) */
23
+ groups?: OptionGroup<T>[];
15
24
  /**
16
25
  * Currently selected option(s).
17
26
  * - For single select: a single T or null
18
27
  * - For multi-select: T[]
19
28
  */
20
29
  selected?: T | T[] | null;
30
+ /** Size scale of the SelectBox component (`"sm"` | `"md"` | `"lg"`). Defaults to `"md"`. */
31
+ size?: SelectBoxSize;
21
32
  /** Name of the field inside option objects to use as the label (defaults to "label") */
22
33
  labelKey?: string;
23
34
  /** Name of the field inside option objects to use as the value (defaults to "value") */
@@ -49,13 +60,7 @@ export interface SelectBoxProps<T extends BaseOption | string = BaseOption> {
49
60
  /** CSS classes applied to the dropdown options container */
50
61
  dropdownContainerClass?: string;
51
62
  /**
52
- * Whether the open dropdown traps focus and makes the rest of the page
53
- * inert (Headless UI's default Combobox behavior). Disabled by default so
54
- * elements rendered inside the control itself — like the `allowClear`
55
- * button — and the rest of the page stay interactive while the dropdown
56
- * is open, matching common combobox libraries (e.g. react-select). Set to
57
- * `true` to restore Headless UI's modal focus-trapping behavior.
58
- *
63
+ * Whether the open dropdown traps focus and makes the rest of the page inert.
59
64
  * @default false
60
65
  */
61
66
  modalDropdown?: boolean;
@@ -63,15 +68,24 @@ export interface SelectBoxProps<T extends BaseOption | string = BaseOption> {
63
68
  multiple?: boolean;
64
69
  /** Maximum number of selections allowed in multi-select mode */
65
70
  maxSelection?: number;
71
+ /**
72
+ * Automatically renders a "Select All" / "Clear All" action header inside multi-select dropdowns.
73
+ */
74
+ showSelectAll?: boolean;
66
75
  /**
67
76
  * Whether to commit value selection immediately when clicking options.
68
- * Headless UI uses "immediate" to control Combobox selection behavior.
69
77
  */
70
78
  immediate?: boolean;
71
79
  /** Whether to show an error message below the field */
72
80
  showErrorMessage?: boolean;
73
81
  /** Error message displayed below the component */
74
82
  error?: string | ReactNode;
83
+ /** Helper guidance message rendered below the field */
84
+ helperText?: ReactNode;
85
+ /** Optional icon or element displayed on the left side of the input */
86
+ leftGroup?: ReactNode;
87
+ /** Custom option renderer function */
88
+ renderOption?: (option: T, isSelected: boolean) => ReactNode;
75
89
  /**
76
90
  * Enables async search mode:
77
91
  * - Component will not filter options locally
@@ -100,13 +114,17 @@ export interface SelectBoxProps<T extends BaseOption | string = BaseOption> {
100
114
  noOptionsText?: string;
101
115
  /**
102
116
  * Callback when the user chooses the "create/add" option.
103
- *
104
- * It may:
105
- * - return void (do nothing automatically)
106
- * - return a string or BaseOption → the component will auto-add/select it
107
- * - return a Promise resolving to the above
108
117
  */
109
118
  onAdd?: (value: string) => Promise<T | string | void> | T | string | void;
110
119
  /** Show a clear (X) button for single-select mode */
111
120
  allowClear?: boolean;
121
+ /**
122
+ * Allows typing freeform text that is not present in the options list.
123
+ * Commits typed text as selected value on Enter or Blur.
124
+ */
125
+ allowFreeText?: boolean;
126
+ /** Renders the select dropdown as a mobile-optimized slide-up bottom sheet */
127
+ asBottomSheet?: boolean;
128
+ /** Mobile presentation mode (`"dropdown"` or `"sheet"`) */
129
+ mobileMode?: 'dropdown' | 'sheet';
112
130
  }
@@ -0,0 +1,2 @@
1
+ import type { SkeletonComponent } from './Skeleton.types';
2
+ export declare const Skeleton: SkeletonComponent;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,38 @@
1
+ import type { ComponentPropsWithoutRef, ElementType, JSX } from 'react';
2
+ import type { PolymorphicRef } from '../common-type';
3
+ export type SkeletonVariant = 'text' | 'circular' | 'rectangular' | 'rounded';
4
+ export type SkeletonAnimation = 'pulse' | 'wave' | 'none';
5
+ export interface SkeletonBaseProps {
6
+ /**
7
+ * Shape variant of the skeleton element
8
+ * @default "text"
9
+ */
10
+ variant?: SkeletonVariant;
11
+ /**
12
+ * Animation style for the placeholder shimmer
13
+ * @default "pulse"
14
+ */
15
+ animation?: SkeletonAnimation;
16
+ /**
17
+ * Explicit width (number in px or CSS string like "100%", "200px")
18
+ */
19
+ width?: number | string;
20
+ /**
21
+ * Explicit height (number in px or CSS string like "1rem", "40px")
22
+ */
23
+ height?: number | string;
24
+ /**
25
+ * Optional custom border radius override
26
+ */
27
+ borderRadius?: number | string;
28
+ }
29
+ export type PolymorphicSkeletonProps<C extends ElementType, Props = {}> = Props & {
30
+ as?: C;
31
+ } & Omit<ComponentPropsWithoutRef<C>, keyof Props | 'as'>;
32
+ export type SkeletonProps<C extends ElementType = 'div'> = PolymorphicSkeletonProps<C, SkeletonBaseProps>;
33
+ export interface SkeletonComponent {
34
+ <C extends ElementType = 'div'>(props: SkeletonProps<C> & {
35
+ ref?: PolymorphicRef<C>;
36
+ }): JSX.Element;
37
+ displayName?: string;
38
+ }
@@ -0,0 +1,2 @@
1
+ export * from './Skeleton';
2
+ export * from './Skeleton.types';
@@ -0,0 +1,2 @@
1
+ import type { StatusPillProps } from './StatusPill.types';
2
+ export declare const StatusPill: import("react").ForwardRefExoticComponent<StatusPillProps & import("react").RefAttributes<HTMLSpanElement>>;
@@ -0,0 +1,29 @@
1
+ import type { HTMLAttributes, ReactNode } from 'react';
2
+ export type StatusPillTheme = 'success' | 'warning' | 'danger' | 'info' | 'secondary';
3
+ export type StatusPillSize = 'sm' | 'md';
4
+ export interface StatusPillProps extends HTMLAttributes<HTMLSpanElement> {
5
+ /**
6
+ * Status theme tone
7
+ * @default "secondary"
8
+ */
9
+ theme?: StatusPillTheme;
10
+ /**
11
+ * Size variant controlling padding and text size
12
+ * @default "sm"
13
+ */
14
+ size?: StatusPillSize;
15
+ /**
16
+ * Display indicator dot inside the status pill
17
+ * @default true
18
+ */
19
+ dot?: boolean;
20
+ /**
21
+ * Enable pulsing animation on indicator dot
22
+ * @default false
23
+ */
24
+ pulse?: boolean;
25
+ /**
26
+ * Label content of the status pill
27
+ */
28
+ children: ReactNode;
29
+ }
@@ -0,0 +1,2 @@
1
+ export * from './StatusPill';
2
+ export * from './StatusPill.types';
@@ -0,0 +1,2 @@
1
+ import type { StickyActionBarProps } from './StickyActionBar.types';
2
+ export declare const StickyActionBar: import("react").ForwardRefExoticComponent<StickyActionBarProps & import("react").RefAttributes<HTMLDivElement>>;