@gearbox-protocol/permissionless-ui 1.2.33 → 1.4.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 (515) hide show
  1. package/README.md +120 -1
  2. package/dist/cjs/components/asset-line.js +117 -0
  3. package/dist/cjs/components/assets-list-cell.js +73 -0
  4. package/dist/cjs/components/assets-ratio.js +98 -0
  5. package/dist/cjs/components/auth/siwe-provider.js +4 -4
  6. package/dist/cjs/components/base-link.js +61 -0
  7. package/dist/cjs/components/block-sync.js +118 -0
  8. package/dist/cjs/components/breadcrumbs.js +77 -0
  9. package/dist/cjs/components/buttons/back-button.js +37 -19
  10. package/dist/cjs/components/buttons/button.js +4 -4
  11. package/dist/cjs/components/buttons/filter-button.js +68 -0
  12. package/dist/cjs/components/buttons/index.js +4 -0
  13. package/dist/cjs/components/buttons/navigation-button.js +2 -2
  14. package/dist/cjs/components/buttons/range-buttons.js +63 -0
  15. package/dist/cjs/components/card-grid.js +127 -0
  16. package/dist/cjs/components/card.js +176 -0
  17. package/dist/cjs/components/checkbox-item.js +82 -0
  18. package/dist/cjs/components/compound-apy.js +232 -0
  19. package/dist/cjs/components/credit-session-status.js +67 -0
  20. package/dist/cjs/components/description.js +48 -0
  21. package/dist/cjs/components/detailed-page-title.js +96 -0
  22. package/dist/cjs/components/dialog/dialog-container.js +75 -0
  23. package/dist/cjs/components/dialog/dialog-content.js +66 -0
  24. package/dist/cjs/components/dialog/dialog-description.js +50 -0
  25. package/dist/cjs/components/dialog/dialog-footer.js +53 -0
  26. package/dist/cjs/components/dialog/dialog-header.js +53 -0
  27. package/dist/cjs/components/dialog/dialog-overlay.js +53 -0
  28. package/dist/cjs/components/dialog/dialog-title.js +50 -0
  29. package/dist/cjs/components/dialog/dialog.js +45 -0
  30. package/dist/cjs/components/dialog/index.js +36 -0
  31. package/dist/cjs/components/dropdown-menu/dropdown-menu-checkbox-item.js +63 -0
  32. package/dist/cjs/components/dropdown-menu/dropdown-menu-content.js +55 -0
  33. package/dist/cjs/components/dropdown-menu/dropdown-menu-item.js +54 -0
  34. package/dist/cjs/components/dropdown-menu/dropdown-menu-label.js +54 -0
  35. package/dist/cjs/components/dropdown-menu/dropdown-menu-radio-item.js +58 -0
  36. package/dist/cjs/components/dropdown-menu/dropdown-menu-separator.js +50 -0
  37. package/dist/cjs/components/dropdown-menu/dropdown-menu-shortcut.js +52 -0
  38. package/dist/cjs/components/dropdown-menu/dropdown-menu-sub-content.js +53 -0
  39. package/dist/cjs/components/dropdown-menu/dropdown-menu-sub-trigger.js +59 -0
  40. package/dist/cjs/components/dropdown-menu/dropdown-menu.js +54 -0
  41. package/dist/cjs/components/dropdown-menu/index.js +40 -0
  42. package/dist/cjs/components/error-message.js +70 -0
  43. package/dist/cjs/components/filter/filter-block.js +52 -0
  44. package/dist/cjs/components/filter/filter-checkbox-item.js +59 -0
  45. package/dist/cjs/components/filter/filter-chip.js +74 -0
  46. package/dist/cjs/components/filter/filter-chips.js +84 -0
  47. package/dist/cjs/components/filter/filter-dropdown-item.js +54 -0
  48. package/dist/cjs/components/filter/filter-group.js +43 -0
  49. package/dist/cjs/components/filter/filter-label.js +54 -0
  50. package/dist/cjs/components/filter/filter-modal-item.js +55 -0
  51. package/dist/cjs/components/filter/filter-modal.js +242 -0
  52. package/dist/cjs/components/filter/filter-radio-item.js +58 -0
  53. package/dist/cjs/components/filter/filter-separator.js +50 -0
  54. package/dist/cjs/components/filter/index.js +44 -0
  55. package/dist/cjs/components/filter/interface.js +16 -0
  56. package/dist/cjs/components/filter/variants.js +41 -0
  57. package/dist/cjs/components/form/form-field.js +67 -0
  58. package/dist/cjs/components/{editable-table → form}/index.js +4 -8
  59. package/dist/cjs/components/graph/default-config.js +158 -0
  60. package/dist/cjs/components/graph/formatters.js +175 -0
  61. package/dist/cjs/components/graph/graph-current-value.js +54 -0
  62. package/dist/cjs/components/graph/graph-tooltip.js +142 -0
  63. package/dist/cjs/components/graph/graph-view.js +233 -0
  64. package/dist/cjs/components/graph/graph.js +637 -0
  65. package/dist/cjs/components/graph/index.js +44 -0
  66. package/dist/cjs/components/graph/plugins/vertical-line.js +127 -0
  67. package/dist/cjs/components/guard.js +34 -0
  68. package/dist/cjs/components/health-factor.js +100 -0
  69. package/dist/cjs/components/help-center-container.js +107 -0
  70. package/dist/cjs/components/hide-on.js +66 -0
  71. package/dist/cjs/components/horizontal-indicator.js +63 -0
  72. package/dist/cjs/components/image.js +56 -0
  73. package/dist/cjs/components/index.js +93 -9
  74. package/dist/cjs/components/input.js +43 -21
  75. package/dist/cjs/components/label.js +29 -5
  76. package/dist/cjs/components/layout/app-logo.js +7 -17
  77. package/dist/cjs/components/layout/col.js +192 -0
  78. package/dist/cjs/components/layout/container.js +75 -0
  79. package/dist/cjs/components/layout/footer.js +137 -52
  80. package/dist/cjs/components/layout/grid.js +217 -0
  81. package/dist/cjs/components/layout/header.js +75 -13
  82. package/dist/cjs/components/layout/index.js +8 -0
  83. package/dist/cjs/components/layout/layout.js +65 -0
  84. package/dist/cjs/components/layout/legal-disclaimer.js +4 -14
  85. package/dist/cjs/components/liquidation/index.js +28 -0
  86. package/dist/cjs/components/liquidation/liquidation-assets-table.js +95 -0
  87. package/dist/cjs/components/liquidation/liquidation-graph-legend.js +41 -0
  88. package/dist/cjs/components/liquidation/liquidation-graph-tip.js +93 -0
  89. package/dist/cjs/components/liquidation/liquidation-graph.js +214 -0
  90. package/dist/cjs/components/loader-guard.js +47 -0
  91. package/dist/cjs/components/loading-guard.js +55 -0
  92. package/dist/cjs/components/markdown-viewer.js +4 -2
  93. package/dist/cjs/components/navbar-indicator-context.js +94 -0
  94. package/dist/cjs/components/navbar.js +131 -0
  95. package/dist/cjs/components/navitem.js +148 -0
  96. package/dist/cjs/components/next/back-button.js +43 -0
  97. package/dist/cjs/components/next/index.js +40 -0
  98. package/dist/cjs/components/next/siwe-provider.js +35 -0
  99. package/dist/cjs/components/next/token-icon.js +43 -0
  100. package/dist/cjs/components/next/web3-providers.js +116 -0
  101. package/dist/cjs/components/not-found.js +58 -0
  102. package/dist/cjs/components/options-list.js +88 -0
  103. package/dist/cjs/components/page-title.js +116 -0
  104. package/dist/cjs/components/percent-indicator.js +56 -0
  105. package/dist/cjs/components/pool-points-indicator.js +107 -0
  106. package/dist/cjs/components/search-bar.js +1 -0
  107. package/dist/cjs/components/search-line.js +225 -0
  108. package/dist/cjs/components/select.js +30 -9
  109. package/dist/cjs/components/short-string.js +58 -0
  110. package/dist/cjs/components/signatures/vertical-timeline.js +1 -0
  111. package/dist/cjs/components/skeleton.js +56 -3
  112. package/dist/cjs/components/stat-badge.js +189 -0
  113. package/dist/cjs/components/tab-control.js +254 -0
  114. package/dist/cjs/components/table/editable-grid-table.js +131 -0
  115. package/dist/cjs/components/{editable-table → table}/editable-table.js +1 -1
  116. package/dist/cjs/components/table/grid-error-line.js +60 -0
  117. package/dist/cjs/components/table/grid-loading-line.js +64 -0
  118. package/dist/cjs/components/table/grid-table-loader.js +56 -0
  119. package/dist/cjs/components/table/grid-table.js +203 -0
  120. package/dist/cjs/components/table/index.js +46 -0
  121. package/dist/cjs/components/table/sortable-head-cell.js +48 -0
  122. package/dist/cjs/components/table/table-loader-guard.js +55 -0
  123. package/dist/cjs/components/table/table-loader.js +46 -0
  124. package/dist/cjs/components/table/table-sm.js +93 -0
  125. package/dist/cjs/components/{table.js → table/table.js} +78 -22
  126. package/dist/cjs/components/textarea.js +27 -7
  127. package/dist/cjs/components/theme-provider.js +127 -0
  128. package/dist/cjs/components/theme-toggle.js +85 -0
  129. package/dist/cjs/components/token-icon.js +69 -20
  130. package/dist/cjs/components/token-symbol.js +84 -0
  131. package/dist/cjs/components/tooltip.js +1 -1
  132. package/dist/cjs/components/typed-intl/index.js +57 -0
  133. package/dist/cjs/components/vspace.js +31 -0
  134. package/dist/cjs/components/with-filter-button.js +84 -0
  135. package/dist/cjs/configs/design-tokens.js +109 -0
  136. package/dist/cjs/configs/index.js +48 -0
  137. package/dist/cjs/configs/tailwind-preset.js +162 -0
  138. package/dist/cjs/configs/tailwind.config.js +20 -67
  139. package/dist/cjs/configs/variants.js +58 -0
  140. package/dist/cjs/hooks/index.js +34 -0
  141. package/dist/cjs/hooks/use-controllable-state.js +50 -0
  142. package/dist/cjs/hooks/use-debounce.js +68 -0
  143. package/dist/cjs/hooks/use-filter.js +80 -0
  144. package/dist/cjs/hooks/use-hf.js +62 -0
  145. package/dist/cjs/hooks/use-liquidation/index.js +204 -0
  146. package/dist/cjs/hooks/use-liquidation/types.js +16 -0
  147. package/dist/cjs/hooks/use-liquidation/utils.js +253 -0
  148. package/dist/cjs/hooks/use-media-query.js +51 -0
  149. package/dist/cjs/hooks/use-previous.js +36 -0
  150. package/dist/cjs/index.js +157 -3
  151. package/dist/cjs/types/component-props.js +16 -0
  152. package/dist/cjs/types/filter.js +16 -0
  153. package/dist/cjs/types/footer.js +16 -0
  154. package/dist/cjs/types/graph.js +16 -0
  155. package/dist/cjs/types/help.js +16 -0
  156. package/dist/cjs/types/index.js +16 -0
  157. package/dist/cjs/types/range-item.js +16 -0
  158. package/dist/cjs/utils/a11y.js +39 -0
  159. package/dist/cjs/utils/bn-to-input-view.js +60 -0
  160. package/dist/cjs/utils/colors.js +96 -0
  161. package/dist/cjs/utils/format-asset-amount.js +43 -0
  162. package/dist/cjs/utils/format-money.js +68 -0
  163. package/dist/cjs/utils/index.js +29 -2
  164. package/dist/cjs/utils/interface.js +16 -0
  165. package/dist/cjs/utils/react.js +105 -0
  166. package/dist/cjs/utils/short-sha.js +28 -0
  167. package/dist/cjs/utils/sort.js +16 -0
  168. package/dist/cjs/utils/templates.js +50 -0
  169. package/dist/esm/components/asset-line.js +83 -0
  170. package/dist/esm/components/assets-list-cell.js +39 -0
  171. package/dist/esm/components/assets-ratio.js +64 -0
  172. package/dist/esm/components/auth/siwe-provider.js +4 -4
  173. package/dist/esm/components/base-link.js +27 -0
  174. package/dist/esm/components/block-sync.js +99 -0
  175. package/dist/esm/components/breadcrumbs.js +43 -0
  176. package/dist/esm/components/buttons/back-button.js +35 -8
  177. package/dist/esm/components/buttons/button.js +4 -4
  178. package/dist/esm/components/buttons/filter-button.js +34 -0
  179. package/dist/esm/components/buttons/index.js +2 -0
  180. package/dist/esm/components/buttons/navigation-button.js +2 -2
  181. package/dist/esm/components/buttons/range-buttons.js +29 -0
  182. package/dist/esm/components/card-grid.js +92 -0
  183. package/dist/esm/components/card.js +133 -0
  184. package/dist/esm/components/checkbox-item.js +48 -0
  185. package/dist/esm/components/compound-apy.js +203 -0
  186. package/dist/esm/components/credit-session-status.js +33 -0
  187. package/dist/esm/components/description.js +14 -0
  188. package/dist/esm/components/detailed-page-title.js +67 -0
  189. package/dist/esm/components/dialog/dialog-container.js +41 -0
  190. package/dist/esm/components/dialog/dialog-content.js +32 -0
  191. package/dist/esm/components/dialog/dialog-description.js +16 -0
  192. package/dist/esm/components/dialog/dialog-footer.js +19 -0
  193. package/dist/esm/components/dialog/dialog-header.js +19 -0
  194. package/dist/esm/components/dialog/dialog-overlay.js +19 -0
  195. package/dist/esm/components/dialog/dialog-title.js +16 -0
  196. package/dist/esm/components/dialog/dialog.js +9 -0
  197. package/dist/esm/components/dialog/index.js +8 -0
  198. package/dist/esm/components/dropdown-menu/dropdown-menu-checkbox-item.js +29 -0
  199. package/dist/esm/components/dropdown-menu/dropdown-menu-content.js +21 -0
  200. package/dist/esm/components/dropdown-menu/dropdown-menu-item.js +20 -0
  201. package/dist/esm/components/dropdown-menu/dropdown-menu-label.js +20 -0
  202. package/dist/esm/components/dropdown-menu/dropdown-menu-radio-item.js +24 -0
  203. package/dist/esm/components/dropdown-menu/dropdown-menu-separator.js +16 -0
  204. package/dist/esm/components/dropdown-menu/dropdown-menu-shortcut.js +18 -0
  205. package/dist/esm/components/dropdown-menu/dropdown-menu-sub-content.js +19 -0
  206. package/dist/esm/components/dropdown-menu/dropdown-menu-sub-trigger.js +25 -0
  207. package/dist/esm/components/dropdown-menu/dropdown-menu.js +15 -0
  208. package/dist/esm/components/dropdown-menu/index.js +10 -0
  209. package/dist/esm/components/error-message.js +36 -0
  210. package/dist/esm/components/filter/filter-block.js +18 -0
  211. package/dist/esm/components/filter/filter-checkbox-item.js +25 -0
  212. package/dist/esm/components/filter/filter-chip.js +40 -0
  213. package/dist/esm/components/filter/filter-chips.js +50 -0
  214. package/dist/esm/components/filter/filter-dropdown-item.js +20 -0
  215. package/dist/esm/components/filter/filter-group.js +9 -0
  216. package/dist/esm/components/filter/filter-label.js +20 -0
  217. package/dist/esm/components/filter/filter-modal-item.js +21 -0
  218. package/dist/esm/components/filter/filter-modal.js +214 -0
  219. package/dist/esm/components/filter/filter-radio-item.js +24 -0
  220. package/dist/esm/components/filter/filter-separator.js +16 -0
  221. package/dist/esm/components/filter/index.js +12 -0
  222. package/dist/esm/components/filter/interface.js +0 -0
  223. package/dist/esm/components/filter/variants.js +17 -0
  224. package/dist/esm/components/form/form-field.js +43 -0
  225. package/dist/esm/components/form/index.js +1 -0
  226. package/dist/esm/components/graph/default-config.js +129 -0
  227. package/dist/esm/components/graph/formatters.js +150 -0
  228. package/dist/esm/components/graph/graph-current-value.js +30 -0
  229. package/dist/esm/components/graph/graph-tooltip.js +118 -0
  230. package/dist/esm/components/graph/graph-view.js +196 -0
  231. package/dist/esm/components/graph/graph.js +606 -0
  232. package/dist/esm/components/graph/index.js +15 -0
  233. package/dist/esm/components/graph/plugins/vertical-line.js +103 -0
  234. package/dist/esm/components/guard.js +10 -0
  235. package/dist/esm/components/health-factor.js +63 -0
  236. package/dist/esm/components/help-center-container.js +83 -0
  237. package/dist/esm/components/hide-on.js +41 -0
  238. package/dist/esm/components/horizontal-indicator.js +34 -0
  239. package/dist/esm/components/image.js +32 -0
  240. package/dist/esm/components/index.js +46 -4
  241. package/dist/esm/components/input.js +41 -20
  242. package/dist/esm/components/label.js +27 -4
  243. package/dist/esm/components/layout/app-logo.js +5 -5
  244. package/dist/esm/components/layout/col.js +158 -0
  245. package/dist/esm/components/layout/container.js +41 -0
  246. package/dist/esm/components/layout/footer.js +134 -52
  247. package/dist/esm/components/layout/grid.js +183 -0
  248. package/dist/esm/components/layout/header.js +65 -13
  249. package/dist/esm/components/layout/index.js +4 -0
  250. package/dist/esm/components/layout/layout.js +31 -0
  251. package/dist/esm/components/layout/legal-disclaimer.js +4 -4
  252. package/dist/esm/components/liquidation/index.js +4 -0
  253. package/dist/esm/components/liquidation/liquidation-assets-table.js +71 -0
  254. package/dist/esm/components/liquidation/liquidation-graph-legend.js +17 -0
  255. package/dist/esm/components/liquidation/liquidation-graph-tip.js +72 -0
  256. package/dist/esm/components/liquidation/liquidation-graph.js +191 -0
  257. package/dist/esm/components/loader-guard.js +23 -0
  258. package/dist/esm/components/loading-guard.js +31 -0
  259. package/dist/esm/components/markdown-viewer.js +4 -2
  260. package/dist/esm/components/navbar-indicator-context.js +76 -0
  261. package/dist/esm/components/navbar.js +98 -0
  262. package/dist/esm/components/navitem.js +113 -0
  263. package/dist/esm/components/next/back-button.js +11 -0
  264. package/dist/esm/components/next/index.js +12 -0
  265. package/dist/esm/components/next/siwe-provider.js +11 -0
  266. package/dist/esm/components/next/token-icon.js +11 -0
  267. package/dist/esm/components/next/web3-providers.js +92 -0
  268. package/dist/esm/components/not-found.js +24 -0
  269. package/dist/esm/components/options-list.js +53 -0
  270. package/dist/esm/components/page-title.js +80 -0
  271. package/dist/esm/components/percent-indicator.js +22 -0
  272. package/dist/esm/components/pool-points-indicator.js +73 -0
  273. package/dist/esm/components/search-bar.js +1 -0
  274. package/dist/esm/components/search-line.js +188 -0
  275. package/dist/esm/components/select.js +28 -8
  276. package/dist/esm/components/short-string.js +39 -0
  277. package/dist/esm/components/signatures/vertical-timeline.js +1 -0
  278. package/dist/esm/components/skeleton.js +54 -2
  279. package/dist/esm/components/stat-badge.js +155 -0
  280. package/dist/esm/components/tab-control.js +216 -0
  281. package/dist/esm/components/table/editable-grid-table.js +105 -0
  282. package/dist/esm/components/{editable-table → table}/editable-table.js +1 -1
  283. package/dist/esm/components/table/grid-error-line.js +36 -0
  284. package/dist/esm/components/table/grid-loading-line.js +30 -0
  285. package/dist/esm/components/table/grid-table-loader.js +22 -0
  286. package/dist/esm/components/table/grid-table.js +159 -0
  287. package/dist/esm/components/table/index.js +13 -0
  288. package/dist/esm/components/table/sortable-head-cell.js +24 -0
  289. package/dist/esm/components/table/table-loader-guard.js +31 -0
  290. package/dist/esm/components/table/table-loader.js +22 -0
  291. package/dist/esm/components/table/table-sm.js +58 -0
  292. package/dist/esm/components/{table.js → table/table.js} +74 -21
  293. package/dist/esm/components/textarea.js +25 -6
  294. package/dist/esm/components/theme-provider.js +108 -0
  295. package/dist/esm/components/theme-toggle.js +61 -0
  296. package/dist/esm/components/token-icon.js +70 -11
  297. package/dist/esm/components/token-symbol.js +50 -0
  298. package/dist/esm/components/tooltip.js +1 -1
  299. package/dist/esm/components/typed-intl/index.js +32 -0
  300. package/dist/esm/components/vspace.js +7 -0
  301. package/dist/esm/components/with-filter-button.js +50 -0
  302. package/dist/esm/configs/design-tokens.js +85 -0
  303. package/dist/esm/configs/index.js +9 -0
  304. package/dist/esm/configs/tailwind-preset.js +128 -0
  305. package/dist/esm/configs/tailwind.config.js +16 -57
  306. package/dist/esm/configs/variants.js +31 -0
  307. package/dist/esm/hooks/index.js +7 -0
  308. package/dist/esm/hooks/use-controllable-state.js +26 -0
  309. package/dist/esm/hooks/use-debounce.js +43 -0
  310. package/dist/esm/hooks/use-filter.js +52 -0
  311. package/dist/esm/hooks/use-hf.js +38 -0
  312. package/dist/esm/hooks/use-liquidation/index.js +188 -0
  313. package/dist/esm/hooks/use-liquidation/types.js +0 -0
  314. package/dist/esm/hooks/use-liquidation/utils.js +215 -0
  315. package/dist/esm/hooks/use-media-query.js +24 -0
  316. package/dist/esm/hooks/use-previous.js +12 -0
  317. package/dist/esm/index.js +84 -1
  318. package/dist/esm/types/component-props.js +0 -0
  319. package/dist/esm/types/filter.js +0 -0
  320. package/dist/esm/types/footer.js +0 -0
  321. package/dist/esm/types/graph.js +0 -0
  322. package/dist/esm/types/help.js +0 -0
  323. package/dist/esm/types/index.js +0 -0
  324. package/dist/esm/types/range-item.js +0 -0
  325. package/dist/esm/utils/a11y.js +14 -0
  326. package/dist/esm/utils/bn-to-input-view.js +36 -0
  327. package/dist/esm/utils/colors.js +69 -0
  328. package/dist/esm/utils/format-asset-amount.js +19 -0
  329. package/dist/esm/utils/format-money.js +40 -0
  330. package/dist/esm/utils/index.js +21 -1
  331. package/dist/esm/utils/interface.js +0 -0
  332. package/dist/esm/utils/react.js +70 -0
  333. package/dist/esm/utils/short-sha.js +4 -0
  334. package/dist/esm/utils/sort.js +0 -0
  335. package/dist/esm/utils/templates.js +24 -0
  336. package/dist/globals.css +230 -52
  337. package/dist/grid-safelist.css +264 -0
  338. package/dist/types/components/asset-line.d.ts +59 -0
  339. package/dist/types/components/assets-list-cell.d.ts +48 -0
  340. package/dist/types/components/assets-ratio.d.ts +9 -0
  341. package/dist/types/components/auth/signin-required.d.ts +1 -1
  342. package/dist/types/components/auth/siwe-provider.d.ts +2 -1
  343. package/dist/types/components/badge.d.ts +1 -1
  344. package/dist/types/components/base-link.d.ts +58 -0
  345. package/dist/types/components/block-sync.d.ts +8 -0
  346. package/dist/types/components/breadcrumbs.d.ts +24 -0
  347. package/dist/types/components/buttons/back-button.d.ts +15 -20
  348. package/dist/types/components/buttons/button.d.ts +37 -3
  349. package/dist/types/components/buttons/filter-button.d.ts +52 -0
  350. package/dist/types/components/buttons/index.d.ts +2 -0
  351. package/dist/types/components/buttons/range-buttons.d.ts +49 -0
  352. package/dist/types/components/card-grid.d.ts +25 -0
  353. package/dist/types/components/card.d.ts +116 -0
  354. package/dist/types/components/cards/card.d.ts +2 -2
  355. package/dist/types/components/checkbox-item.d.ts +56 -0
  356. package/dist/types/components/compound-apy.d.ts +80 -0
  357. package/dist/types/components/credit-session-status.d.ts +7 -0
  358. package/dist/types/components/description.d.ts +26 -0
  359. package/dist/types/components/detailed-page-title.d.ts +31 -0
  360. package/dist/types/components/dialog/dialog-container.d.ts +12 -0
  361. package/dist/types/components/dialog/dialog-content.d.ts +4 -0
  362. package/dist/types/components/dialog/dialog-description.d.ts +4 -0
  363. package/dist/types/components/dialog/dialog-footer.d.ts +6 -0
  364. package/dist/types/components/dialog/dialog-header.d.ts +6 -0
  365. package/dist/types/components/dialog/dialog-overlay.d.ts +4 -0
  366. package/dist/types/components/dialog/dialog-title.d.ts +4 -0
  367. package/dist/types/components/dialog/dialog.d.ts +5 -0
  368. package/dist/types/components/dialog/index.d.ts +8 -0
  369. package/dist/types/components/dropdown-menu/dropdown-menu-checkbox-item.d.ts +22 -0
  370. package/dist/types/components/dropdown-menu/dropdown-menu-content.d.ts +4 -0
  371. package/dist/types/components/dropdown-menu/dropdown-menu-item.d.ts +6 -0
  372. package/dist/types/components/dropdown-menu/dropdown-menu-label.d.ts +6 -0
  373. package/dist/types/components/dropdown-menu/dropdown-menu-radio-item.d.ts +4 -0
  374. package/dist/types/components/dropdown-menu/dropdown-menu-separator.d.ts +4 -0
  375. package/dist/types/components/dropdown-menu/dropdown-menu-shortcut.d.ts +6 -0
  376. package/dist/types/components/dropdown-menu/dropdown-menu-sub-content.d.ts +4 -0
  377. package/dist/types/components/dropdown-menu/dropdown-menu-sub-trigger.d.ts +6 -0
  378. package/dist/types/components/dropdown-menu/dropdown-menu.d.ts +8 -0
  379. package/dist/types/components/dropdown-menu/index.d.ts +10 -0
  380. package/dist/types/components/error-message.d.ts +21 -0
  381. package/dist/types/components/filter/filter-block.d.ts +17 -0
  382. package/dist/types/components/filter/filter-checkbox-item.d.ts +23 -0
  383. package/dist/types/components/filter/filter-chip.d.ts +34 -0
  384. package/dist/types/components/filter/filter-chips.d.ts +42 -0
  385. package/dist/types/components/filter/filter-dropdown-item.d.ts +24 -0
  386. package/dist/types/components/filter/filter-group.d.ts +22 -0
  387. package/dist/types/components/filter/filter-label.d.ts +21 -0
  388. package/dist/types/components/filter/filter-modal-item.d.ts +31 -0
  389. package/dist/types/components/filter/filter-modal.d.ts +123 -0
  390. package/dist/types/components/filter/filter-radio-item.d.ts +19 -0
  391. package/dist/types/components/filter/filter-separator.d.ts +22 -0
  392. package/dist/types/components/filter/index.d.ts +109 -0
  393. package/dist/types/components/filter/interface.d.ts +24 -0
  394. package/dist/types/components/filter/variants.d.ts +3 -0
  395. package/dist/types/components/form/form-field.d.ts +38 -0
  396. package/dist/types/components/form/index.d.ts +1 -0
  397. package/dist/types/components/graph/default-config.d.ts +20 -0
  398. package/dist/types/components/graph/formatters.d.ts +16 -0
  399. package/dist/types/components/graph/graph-current-value.d.ts +13 -0
  400. package/dist/types/components/graph/graph-tooltip.d.ts +24 -0
  401. package/dist/types/components/graph/graph-view.d.ts +198 -0
  402. package/dist/types/components/graph/graph.d.ts +49 -0
  403. package/dist/types/components/graph/index.d.ts +7 -0
  404. package/dist/types/components/guard.d.ts +34 -0
  405. package/dist/types/components/health-factor.d.ts +63 -0
  406. package/dist/types/components/help-center-container.d.ts +22 -0
  407. package/dist/types/components/hide-on.d.ts +32 -0
  408. package/dist/types/components/horizontal-indicator.d.ts +22 -0
  409. package/dist/types/components/image.d.ts +35 -0
  410. package/dist/types/components/index.d.ts +44 -1
  411. package/dist/types/components/input.d.ts +26 -9
  412. package/dist/types/components/label.d.ts +26 -5
  413. package/dist/types/components/layout/app-logo.d.ts +1 -0
  414. package/dist/types/components/layout/col.d.ts +43 -0
  415. package/dist/types/components/layout/container.d.ts +37 -0
  416. package/dist/types/components/layout/footer.d.ts +44 -5
  417. package/dist/types/components/layout/grid.d.ts +48 -0
  418. package/dist/types/components/layout/header.d.ts +68 -12
  419. package/dist/types/components/layout/index.d.ts +4 -0
  420. package/dist/types/components/layout/layout.d.ts +12 -0
  421. package/dist/types/components/liquidation/index.d.ts +4 -0
  422. package/dist/types/components/liquidation/liquidation-assets-table.d.ts +14 -0
  423. package/dist/types/components/liquidation/liquidation-graph-legend.d.ts +2 -0
  424. package/dist/types/components/liquidation/liquidation-graph-tip.d.ts +13 -0
  425. package/dist/types/components/liquidation/liquidation-graph.d.ts +19 -0
  426. package/dist/types/components/loader-guard.d.ts +17 -0
  427. package/dist/types/components/loading-guard.d.ts +18 -0
  428. package/dist/types/components/navbar-indicator-context.d.ts +13 -0
  429. package/dist/types/components/navbar.d.ts +25 -0
  430. package/dist/types/components/navitem.d.ts +67 -0
  431. package/dist/types/components/next/back-button.d.ts +3 -0
  432. package/dist/types/components/next/index.d.ts +10 -0
  433. package/dist/types/components/next/siwe-provider.d.ts +7 -0
  434. package/dist/types/components/next/token-icon.d.ts +3 -0
  435. package/dist/types/components/next/web3-providers.d.ts +29 -0
  436. package/dist/types/components/not-found.d.ts +18 -0
  437. package/dist/types/components/options-list.d.ts +15 -0
  438. package/dist/types/components/page-title.d.ts +69 -0
  439. package/dist/types/components/percent-indicator.d.ts +28 -0
  440. package/dist/types/components/pool-points-indicator.d.ts +41 -0
  441. package/dist/types/components/search-line.d.ts +117 -0
  442. package/dist/types/components/select.d.ts +9 -2
  443. package/dist/types/components/short-string.d.ts +39 -0
  444. package/dist/types/components/skeleton.d.ts +28 -3
  445. package/dist/types/components/stat-badge.d.ts +169 -0
  446. package/dist/types/components/tab-control.d.ts +39 -0
  447. package/dist/types/components/table/editable-grid-table.d.ts +120 -0
  448. package/dist/types/components/table/grid-error-line.d.ts +49 -0
  449. package/dist/types/components/table/grid-loading-line.d.ts +36 -0
  450. package/dist/types/components/table/grid-table-loader.d.ts +25 -0
  451. package/dist/types/components/table/grid-table.d.ts +158 -0
  452. package/dist/types/components/table/index.d.ts +13 -0
  453. package/dist/types/components/table/sortable-head-cell.d.ts +36 -0
  454. package/dist/types/components/table/table-loader-guard.d.ts +45 -0
  455. package/dist/types/components/table/table-loader.d.ts +46 -0
  456. package/dist/types/components/table/table-sm.d.ts +94 -0
  457. package/dist/types/components/{table.d.ts → table/table.d.ts} +39 -12
  458. package/dist/types/components/{editable-table → table}/updated-value.d.ts +3 -0
  459. package/dist/types/components/textarea.d.ts +24 -5
  460. package/dist/types/components/theme-provider.d.ts +34 -0
  461. package/dist/types/components/theme-toggle.d.ts +5 -0
  462. package/dist/types/components/token-icon.d.ts +8 -6
  463. package/dist/types/components/token-symbol.d.ts +71 -0
  464. package/dist/types/components/typed-intl/index.d.ts +19 -0
  465. package/dist/types/components/vspace.d.ts +27 -0
  466. package/dist/types/components/with-filter-button.d.ts +54 -0
  467. package/dist/types/configs/design-tokens.d.ts +73 -0
  468. package/dist/types/configs/index.d.ts +4 -0
  469. package/dist/types/configs/tailwind-preset.d.ts +126 -0
  470. package/dist/types/configs/tailwind.config.d.ts +29 -0
  471. package/dist/types/configs/variants.d.ts +28 -0
  472. package/dist/types/hooks/index.d.ts +7 -0
  473. package/dist/types/hooks/use-controllable-state.d.ts +24 -0
  474. package/dist/types/hooks/use-debounce.d.ts +31 -0
  475. package/dist/types/hooks/use-filter.d.ts +37 -0
  476. package/dist/types/hooks/use-hf.d.ts +15 -0
  477. package/dist/types/hooks/use-liquidation/index.d.ts +52 -0
  478. package/dist/types/hooks/use-liquidation/types.d.ts +16 -0
  479. package/dist/types/hooks/use-liquidation/utils.d.ts +66 -0
  480. package/dist/types/hooks/use-media-query.d.ts +25 -0
  481. package/dist/types/hooks/use-previous.d.ts +10 -0
  482. package/dist/types/index.d.ts +71 -2
  483. package/dist/types/types/component-props.d.ts +16 -0
  484. package/dist/types/types/filter.d.ts +8 -0
  485. package/dist/types/types/footer.d.ts +30 -0
  486. package/dist/types/types/graph.d.ts +22 -0
  487. package/dist/types/types/help.d.ts +4 -0
  488. package/dist/types/types/index.d.ts +6 -0
  489. package/dist/types/types/range-item.d.ts +9 -0
  490. package/dist/types/utils/a11y.d.ts +24 -0
  491. package/dist/types/utils/bn-to-input-view.d.ts +17 -0
  492. package/dist/types/utils/colors.d.ts +29 -0
  493. package/dist/types/utils/format-asset-amount.d.ts +16 -0
  494. package/dist/types/utils/format-money.d.ts +64 -0
  495. package/dist/types/utils/index.d.ts +10 -0
  496. package/dist/types/utils/interface.d.ts +9 -0
  497. package/dist/types/utils/react.d.ts +31 -0
  498. package/dist/types/utils/short-sha.d.ts +9 -0
  499. package/dist/types/utils/sort.d.ts +5 -0
  500. package/dist/types/utils/templates.d.ts +61 -0
  501. package/package.json +66 -28
  502. package/dist/cjs/components/dialog.js +0 -137
  503. package/dist/cjs/components/dropdown-menu.js +0 -200
  504. package/dist/esm/components/dialog.js +0 -97
  505. package/dist/esm/components/dropdown-menu.js +0 -152
  506. package/dist/esm/components/editable-table/index.js +0 -3
  507. package/dist/types/components/dialog.d.ts +0 -38
  508. package/dist/types/components/dropdown-menu.d.ts +0 -59
  509. package/dist/types/components/editable-table/index.d.ts +0 -3
  510. /package/dist/cjs/components/{editable-table → table}/edit-button.js +0 -0
  511. /package/dist/cjs/components/{editable-table → table}/updated-value.js +0 -0
  512. /package/dist/esm/components/{editable-table → table}/edit-button.js +0 -0
  513. /package/dist/esm/components/{editable-table → table}/updated-value.js +0 -0
  514. /package/dist/types/components/{editable-table → table}/edit-button.d.ts +0 -0
  515. /package/dist/types/components/{editable-table → table}/editable-table.d.ts +0 -0
@@ -0,0 +1,31 @@
1
+ import type { TokenData } from "@gearbox-protocol/sdk";
2
+ import type * as React from "react";
3
+ export interface ExplorerLink {
4
+ link: string;
5
+ label: string;
6
+ }
7
+ export interface DetailedPageTitleProps {
8
+ title: React.ReactNode;
9
+ token?: TokenData;
10
+ toCopy?: string;
11
+ explorerLinks?: Array<ExplorerLink>;
12
+ className?: string;
13
+ onCopySuccess?: () => void;
14
+ }
15
+ /**
16
+ * DetailedPageTitle - page title with token icon, copy functionality, and explorer links
17
+ *
18
+ * @example
19
+ * ```tsx
20
+ * <DetailedPageTitle
21
+ * title="USDC Pool (0x1234...)"
22
+ * token={usdcToken}
23
+ * toCopy="0x1234567890abcdef"
24
+ * explorerLinks={[
25
+ * { link: "https://etherscan.io/...", label: "Etherscan" }
26
+ * ]}
27
+ * onCopySuccess={() => console.log("Copied successfully!")}
28
+ * />
29
+ * ```
30
+ */
31
+ export declare function DetailedPageTitle({ title, token, toCopy, explorerLinks, className, onCopySuccess, }: DetailedPageTitleProps): React.ReactElement;
@@ -0,0 +1,12 @@
1
+ import * as React from "react";
2
+ export interface DialogContainerProps extends React.HTMLAttributes<HTMLDivElement> {
3
+ maxWidth?: "sm" | "md" | "lg" | "xl" | "2xl" | "full";
4
+ padding?: boolean;
5
+ center?: boolean;
6
+ }
7
+ /**
8
+ * DialogContainer component for responsive content width within dialogs
9
+ * Follows the same pattern as Container from layout/container
10
+ */
11
+ declare const DialogContainer: React.ForwardRefExoticComponent<DialogContainerProps & React.RefAttributes<HTMLDivElement>>;
12
+ export { DialogContainer };
@@ -0,0 +1,4 @@
1
+ import * as DialogPrimitive from "@radix-ui/react-dialog";
2
+ import * as React from "react";
3
+ declare const DialogContent: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
4
+ export { DialogContent };
@@ -0,0 +1,4 @@
1
+ import * as DialogPrimitive from "@radix-ui/react-dialog";
2
+ import * as React from "react";
3
+ declare const DialogDescription: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogDescriptionProps & React.RefAttributes<HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
4
+ export { DialogDescription };
@@ -0,0 +1,6 @@
1
+ import type * as React from "react";
2
+ declare const DialogFooter: {
3
+ ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
4
+ displayName: string;
5
+ };
6
+ export { DialogFooter };
@@ -0,0 +1,6 @@
1
+ import type * as React from "react";
2
+ declare const DialogHeader: {
3
+ ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
4
+ displayName: string;
5
+ };
6
+ export { DialogHeader };
@@ -0,0 +1,4 @@
1
+ import * as DialogPrimitive from "@radix-ui/react-dialog";
2
+ import * as React from "react";
3
+ declare const DialogOverlay: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogOverlayProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
4
+ export { DialogOverlay };
@@ -0,0 +1,4 @@
1
+ import * as DialogPrimitive from "@radix-ui/react-dialog";
2
+ import * as React from "react";
3
+ declare const DialogTitle: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogTitleProps & React.RefAttributes<HTMLHeadingElement>, "ref"> & React.RefAttributes<HTMLHeadingElement>>;
4
+ export { DialogTitle };
@@ -0,0 +1,5 @@
1
+ import * as DialogPrimitive from "@radix-ui/react-dialog";
2
+ declare const Dialog: import("react").FC<DialogPrimitive.DialogProps>;
3
+ declare const DialogTrigger: import("react").ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & import("react").RefAttributes<HTMLButtonElement>>;
4
+ declare const DialogPortal: import("react").FC<DialogPrimitive.DialogPortalProps>;
5
+ export { Dialog, DialogPortal, DialogTrigger };
@@ -0,0 +1,8 @@
1
+ export * from "./dialog";
2
+ export * from "./dialog-container";
3
+ export * from "./dialog-content";
4
+ export * from "./dialog-description";
5
+ export * from "./dialog-footer";
6
+ export * from "./dialog-header";
7
+ export * from "./dialog-overlay";
8
+ export * from "./dialog-title";
@@ -0,0 +1,22 @@
1
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2
+ import * as React from "react";
3
+ import type { CheckboxItemProps } from "../checkbox-item";
4
+ /**
5
+ * DropdownMenuCheckboxItem - wrapper for CheckboxItem that works inside DropdownMenu context
6
+ *
7
+ * This component uses Radix UI primitives for proper integration with DropdownMenu.
8
+ * It maintains the same API as the standalone CheckboxItem component.
9
+ *
10
+ * @example
11
+ * ```tsx
12
+ * <DropdownMenu>
13
+ * <DropdownMenuContent>
14
+ * <DropdownMenuCheckboxItem checked={isChecked} onCheckedChange={setChecked}>
15
+ * Option 1
16
+ * </DropdownMenuCheckboxItem>
17
+ * </DropdownMenuContent>
18
+ * </DropdownMenu>
19
+ * ```
20
+ */
21
+ declare const DropdownMenuCheckboxItem: React.ForwardRefExoticComponent<CheckboxItemProps & Omit<DropdownMenuPrimitive.DropdownMenuCheckboxItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
22
+ export { DropdownMenuCheckboxItem };
@@ -0,0 +1,4 @@
1
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2
+ import * as React from "react";
3
+ declare const DropdownMenuContent: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
4
+ export { DropdownMenuContent };
@@ -0,0 +1,6 @@
1
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2
+ import * as React from "react";
3
+ declare const DropdownMenuItem: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
4
+ inset?: boolean;
5
+ } & React.RefAttributes<HTMLDivElement>>;
6
+ export { DropdownMenuItem };
@@ -0,0 +1,6 @@
1
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2
+ import * as React from "react";
3
+ declare const DropdownMenuLabel: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuLabelProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
4
+ inset?: boolean;
5
+ } & React.RefAttributes<HTMLDivElement>>;
6
+ export { DropdownMenuLabel };
@@ -0,0 +1,4 @@
1
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2
+ import * as React from "react";
3
+ declare const DropdownMenuRadioItem: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuRadioItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
4
+ export { DropdownMenuRadioItem };
@@ -0,0 +1,4 @@
1
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2
+ import * as React from "react";
3
+ declare const DropdownMenuSeparator: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSeparatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
4
+ export { DropdownMenuSeparator };
@@ -0,0 +1,6 @@
1
+ import type * as React from "react";
2
+ declare const DropdownMenuShortcut: {
3
+ ({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>): import("react/jsx-runtime").JSX.Element;
4
+ displayName: string;
5
+ };
6
+ export { DropdownMenuShortcut };
@@ -0,0 +1,4 @@
1
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2
+ import * as React from "react";
3
+ declare const DropdownMenuSubContent: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
4
+ export { DropdownMenuSubContent };
@@ -0,0 +1,6 @@
1
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2
+ import * as React from "react";
3
+ declare const DropdownMenuSubTrigger: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubTriggerProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
4
+ inset?: boolean;
5
+ } & React.RefAttributes<HTMLDivElement>>;
6
+ export { DropdownMenuSubTrigger };
@@ -0,0 +1,8 @@
1
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2
+ declare const DropdownMenu: import("react").FC<DropdownMenuPrimitive.DropdownMenuProps>;
3
+ declare const DropdownMenuTrigger: import("react").ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuTriggerProps & import("react").RefAttributes<HTMLButtonElement>>;
4
+ declare const DropdownMenuGroup: import("react").ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuGroupProps & import("react").RefAttributes<HTMLDivElement>>;
5
+ declare const DropdownMenuPortal: import("react").FC<DropdownMenuPrimitive.DropdownMenuPortalProps>;
6
+ declare const DropdownMenuSub: import("react").FC<DropdownMenuPrimitive.DropdownMenuSubProps>;
7
+ declare const DropdownMenuRadioGroup: import("react").ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuRadioGroupProps & import("react").RefAttributes<HTMLDivElement>>;
8
+ export { DropdownMenu, DropdownMenuGroup, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuSub, DropdownMenuTrigger, };
@@ -0,0 +1,10 @@
1
+ export * from "./dropdown-menu";
2
+ export * from "./dropdown-menu-checkbox-item";
3
+ export * from "./dropdown-menu-content";
4
+ export * from "./dropdown-menu-item";
5
+ export * from "./dropdown-menu-label";
6
+ export * from "./dropdown-menu-radio-item";
7
+ export * from "./dropdown-menu-separator";
8
+ export * from "./dropdown-menu-shortcut";
9
+ export * from "./dropdown-menu-sub-content";
10
+ export * from "./dropdown-menu-sub-trigger";
@@ -0,0 +1,21 @@
1
+ import type * as React from "react";
2
+ export interface ErrorMessageProps {
3
+ err: Error;
4
+ btnTitle: React.ReactNode;
5
+ onClick: () => void;
6
+ theme?: "default" | "dark" | "light";
7
+ }
8
+ /**
9
+ * ErrorMessage - Display a centered error message with action button
10
+ * Used as a full-screen error display
11
+ *
12
+ * @example
13
+ * ```tsx
14
+ * <ErrorMessage
15
+ * err={new Error("Something went wrong")}
16
+ * btnTitle="Go back"
17
+ * onClick={() => navigate("/")}
18
+ * />
19
+ * ```
20
+ */
21
+ export declare function ErrorMessage({ err, btnTitle, onClick, theme, }: ErrorMessageProps): React.ReactElement;
@@ -0,0 +1,17 @@
1
+ import type { VariantProps } from "class-variance-authority";
2
+ import * as React from "react";
3
+ import { filterBlockVariants } from "./variants";
4
+ export interface FilterBlockProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof filterBlockVariants> {
5
+ }
6
+ /**
7
+ * FilterBlock component for displaying filter content in a card-like container
8
+ *
9
+ * @example
10
+ * ```tsx
11
+ * <FilterBlock variant="default">
12
+ * <h3>Filter Options</h3>
13
+ * <FilterContent />
14
+ * </FilterBlock>
15
+ * ```
16
+ */
17
+ export declare const FilterBlock: React.ForwardRefExoticComponent<FilterBlockProps & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,23 @@
1
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2
+ import * as React from "react";
3
+ /**
4
+ * FilterCheckboxItem component - a checkbox item for filters in dropdown menus
5
+ */
6
+ export interface FilterCheckboxItemProps extends React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.CheckboxItem> {
7
+ }
8
+ /**
9
+ * FilterCheckboxItem component for displaying filter options with checkboxes
10
+ *
11
+ * @example
12
+ * ```tsx
13
+ * <DropdownMenuContent>
14
+ * <FilterCheckboxItem checked={isChecked} onCheckedChange={setChecked}>
15
+ * Option 1
16
+ * </FilterCheckboxItem>
17
+ * <FilterCheckboxItem checked={isChecked2} onCheckedChange={setChecked2}>
18
+ * Option 2
19
+ * </FilterCheckboxItem>
20
+ * </DropdownMenuContent>
21
+ * ```
22
+ */
23
+ export declare const FilterCheckboxItem: React.ForwardRefExoticComponent<FilterCheckboxItemProps & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,34 @@
1
+ import * as React from "react";
2
+ /**
3
+ * FilterChip component - displays an active filter as a removable chip
4
+ */
5
+ export interface FilterChipProps extends React.HTMLAttributes<HTMLDivElement> {
6
+ /**
7
+ * Label text for the filter chip
8
+ */
9
+ label: string;
10
+ /**
11
+ * Value of the filter (optional, for identification)
12
+ */
13
+ value?: string;
14
+ /**
15
+ * Callback when the chip is removed
16
+ */
17
+ onRemove?: () => void;
18
+ /**
19
+ * Whether to show the remove button (defaults to true)
20
+ */
21
+ showRemove?: boolean;
22
+ }
23
+ /**
24
+ * FilterChip component for displaying active filters as removable chips
25
+ *
26
+ * @example
27
+ * ```tsx
28
+ * <div className="flex gap-2">
29
+ * <FilterChip label="Status: Active" onRemove={() => removeFilter("status")} />
30
+ * <FilterChip label="Type: Credit" onRemove={() => removeFilter("type")} />
31
+ * </div>
32
+ * ```
33
+ */
34
+ export declare const FilterChip: React.ForwardRefExoticComponent<FilterChipProps & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,42 @@
1
+ import * as React from "react";
2
+ /**
3
+ * FilterChips component - container for displaying multiple filter chips
4
+ */
5
+ export interface FilterChipsProps extends React.HTMLAttributes<HTMLDivElement> {
6
+ /**
7
+ * Array of active filters to display as chips
8
+ */
9
+ filters?: Array<{
10
+ id: string;
11
+ label: string;
12
+ value?: string;
13
+ }>;
14
+ /**
15
+ * Callback when a filter chip is removed
16
+ */
17
+ onRemoveFilter?: (id: string) => void;
18
+ /**
19
+ * Callback to clear all filters
20
+ */
21
+ onClearAll?: () => void;
22
+ /**
23
+ * Whether to show the "Clear all" button
24
+ */
25
+ showClearAll?: boolean;
26
+ }
27
+ /**
28
+ * FilterChips component for displaying multiple active filters as chips
29
+ *
30
+ * @example
31
+ * ```tsx
32
+ * <FilterChips
33
+ * filters={[
34
+ * { id: "status", label: "Status: Active" },
35
+ * { id: "type", label: "Type: Credit" },
36
+ * ]}
37
+ * onRemoveFilter={(id) => removeFilter(id)}
38
+ * onClearAll={() => clearAllFilters()}
39
+ * />
40
+ * ```
41
+ */
42
+ export declare const FilterChips: React.ForwardRefExoticComponent<FilterChipsProps & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,24 @@
1
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2
+ import * as React from "react";
3
+ /**
4
+ * FilterDropdownItem component - a dropdown menu item for filters
5
+ */
6
+ export interface FilterDropdownItemProps extends React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Item> {
7
+ inset?: boolean;
8
+ }
9
+ /**
10
+ * FilterDropdownItem component for displaying filter options in a dropdown menu
11
+ *
12
+ * @example
13
+ * ```tsx
14
+ * <DropdownMenuContent>
15
+ * <FilterDropdownItem onClick={() => handleFilter("all")}>
16
+ * All Items
17
+ * </FilterDropdownItem>
18
+ * <FilterDropdownItem onClick={() => handleFilter("active")}>
19
+ * Active Items
20
+ * </FilterDropdownItem>
21
+ * </DropdownMenuContent>
22
+ * ```
23
+ */
24
+ export declare const FilterDropdownItem: React.ForwardRefExoticComponent<FilterDropdownItemProps & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,22 @@
1
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2
+ import * as React from "react";
3
+ /**
4
+ * FilterGroup component - a group container for filters
5
+ */
6
+ export interface FilterGroupProps extends React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Group> {
7
+ }
8
+ /**
9
+ * FilterGroup component for grouping related filter items
10
+ *
11
+ * @example
12
+ * ```tsx
13
+ * <DropdownMenuContent>
14
+ * <FilterGroup>
15
+ * <FilterLabel>Status</FilterLabel>
16
+ * <FilterCheckboxItem>Active</FilterCheckboxItem>
17
+ * <FilterCheckboxItem>Inactive</FilterCheckboxItem>
18
+ * </FilterGroup>
19
+ * </DropdownMenuContent>
20
+ * ```
21
+ */
22
+ export declare const FilterGroup: React.ForwardRefExoticComponent<FilterGroupProps & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,21 @@
1
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2
+ import * as React from "react";
3
+ /**
4
+ * FilterLabel component - a label for filter groups
5
+ */
6
+ export interface FilterLabelProps extends React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Label> {
7
+ inset?: boolean;
8
+ }
9
+ /**
10
+ * FilterLabel component for labeling filter groups
11
+ *
12
+ * @example
13
+ * ```tsx
14
+ * <DropdownMenuContent>
15
+ * <FilterLabel>Status</FilterLabel>
16
+ * <FilterCheckboxItem>Active</FilterCheckboxItem>
17
+ * <FilterCheckboxItem>Inactive</FilterCheckboxItem>
18
+ * </DropdownMenuContent>
19
+ * ```
20
+ */
21
+ export declare const FilterLabel: React.ForwardRefExoticComponent<FilterLabelProps & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,31 @@
1
+ import * as React from "react";
2
+ /**
3
+ * FilterModalItem component - a content item for filter modals
4
+ */
5
+ export interface FilterModalItemProps extends React.HTMLAttributes<HTMLDivElement> {
6
+ /**
7
+ * Whether the item is active/selected
8
+ */
9
+ active?: boolean;
10
+ /**
11
+ * Whether the item is disabled
12
+ */
13
+ disabled?: boolean;
14
+ }
15
+ /**
16
+ * FilterModalItem component for displaying filter options in a modal dialog
17
+ *
18
+ * @example
19
+ * ```tsx
20
+ * <DialogContent>
21
+ * <DialogTitle>Filter Options</DialogTitle>
22
+ * <FilterModalItem active={isActive} onClick={() => handleFilter("option1")}>
23
+ * Option 1
24
+ * </FilterModalItem>
25
+ * <FilterModalItem onClick={() => handleFilter("option2")}>
26
+ * Option 2
27
+ * </FilterModalItem>
28
+ * </DialogContent>
29
+ * ```
30
+ */
31
+ export declare const FilterModalItem: React.ForwardRefExoticComponent<FilterModalItemProps & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,123 @@
1
+ import * as React from "react";
2
+ import type { SelectFilterList } from "./interface";
3
+ /**
4
+ * FilterModal component - a wrapper for filter modals using permissionless-ui Dialog
5
+ *
6
+ * This component provides a complete modal interface for selecting multiple filter options
7
+ * with checkbox-like behavior. It manages the modal state and provides callbacks for
8
+ * filter selection and reset.
9
+ *
10
+ * @example
11
+ * ```tsx
12
+ * function MyFilter() {
13
+ * const [selectedFilters, setSelectedFilters] = React.useState<Set<string> | null>(null);
14
+ * const [modalOpen, setModalOpen] = React.useState(false);
15
+ *
16
+ * const options = [
17
+ * { value: "active", label: "Active" },
18
+ * { value: "inactive", label: "Inactive" },
19
+ * { value: "pending", label: "Pending" },
20
+ * ];
21
+ *
22
+ * return (
23
+ * <FilterModal
24
+ * title="Filter by Status"
25
+ * state={selectedFilters}
26
+ * modalShow={modalOpen}
27
+ * onOpen={() => setModalOpen(true)}
28
+ * onClose={() => setModalOpen(false)}
29
+ * onReset={() => setSelectedFilters(null)}
30
+ * options={options}
31
+ * onSelect={(value, checked) => {
32
+ * const newSet = selectedFilters ? new Set(selectedFilters) : new Set();
33
+ * if (checked) {
34
+ * newSet.add(value);
35
+ * } else {
36
+ * newSet.delete(value);
37
+ * }
38
+ * setSelectedFilters(newSet.size > 0 ? newSet : null);
39
+ * }}
40
+ * />
41
+ * );
42
+ * }
43
+ * ```
44
+ */
45
+ export interface FilterModalProps<T> {
46
+ /**
47
+ * Title of the modal dialog
48
+ */
49
+ title: React.ReactNode;
50
+ /**
51
+ * Current state of selected filters
52
+ * Can be a Set<T> or T[] array, or null if nothing is selected
53
+ */
54
+ state: SelectFilterList<T> | null;
55
+ /**
56
+ * Whether the modal is currently visible
57
+ */
58
+ modalShow: boolean;
59
+ /**
60
+ * Callback to open the modal
61
+ */
62
+ onOpen: () => void;
63
+ /**
64
+ * Callback to close the modal
65
+ */
66
+ onClose: () => void;
67
+ /**
68
+ * Callback to reset all filters
69
+ */
70
+ onReset: () => void;
71
+ /**
72
+ * Array of filter options to display
73
+ * If tabbedOptions is provided, this prop is ignored
74
+ */
75
+ options?: Array<{
76
+ value: T;
77
+ label: React.ReactNode;
78
+ }>;
79
+ /**
80
+ * Array of filter options grouped by tabs
81
+ * If provided, options will be displayed in tabs
82
+ */
83
+ tabbedOptions?: Array<{
84
+ tab: string;
85
+ label: React.ReactNode;
86
+ options: Array<{
87
+ value: T;
88
+ label: React.ReactNode;
89
+ }>;
90
+ }>;
91
+ /**
92
+ * Callback when an option is selected/deselected
93
+ * @param value - The value of the option
94
+ * @param checked - Whether the option is now checked
95
+ */
96
+ onSelect: (value: T, checked: boolean) => void;
97
+ /**
98
+ * Optional className for the dialog content
99
+ */
100
+ className?: string;
101
+ /**
102
+ * Optional className for the options container
103
+ */
104
+ optionsClassName?: string;
105
+ /**
106
+ * Optional reset button label (defaults to "Reset")
107
+ */
108
+ resetLabel?: React.ReactNode;
109
+ /**
110
+ * Optional apply button label (defaults to "Apply")
111
+ */
112
+ applyLabel?: React.ReactNode;
113
+ /**
114
+ * Whether to show an Apply button that closes the modal
115
+ * If false, selections are applied immediately
116
+ */
117
+ showApplyButton?: boolean;
118
+ /**
119
+ * Whether to show a search input
120
+ */
121
+ showSearch?: boolean;
122
+ }
123
+ export declare function FilterModal<T>({ title, state, modalShow, onOpen, onClose, onReset, options, tabbedOptions, onSelect, className, optionsClassName, resetLabel, applyLabel, showApplyButton, showSearch, }: FilterModalProps<T>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,19 @@
1
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2
+ import * as React from "react";
3
+ /**
4
+ * FilterRadioItem component - a radio item for filters in dropdown menus
5
+ */
6
+ export interface FilterRadioItemProps extends React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.RadioItem> {
7
+ }
8
+ /**
9
+ * FilterRadioItem component for displaying filter options with radio buttons
10
+ *
11
+ * @example
12
+ * ```tsx
13
+ * <DropdownMenuRadioGroup value={value} onValueChange={setValue}>
14
+ * <FilterRadioItem value="option1">Option 1</FilterRadioItem>
15
+ * <FilterRadioItem value="option2">Option 2</FilterRadioItem>
16
+ * </DropdownMenuRadioGroup>
17
+ * ```
18
+ */
19
+ export declare const FilterRadioItem: React.ForwardRefExoticComponent<FilterRadioItemProps & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,22 @@
1
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2
+ import * as React from "react";
3
+ /**
4
+ * FilterSeparator component - a separator for filter groups
5
+ */
6
+ export interface FilterSeparatorProps extends React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Separator> {
7
+ }
8
+ /**
9
+ * FilterSeparator component for separating filter groups
10
+ *
11
+ * @example
12
+ * ```tsx
13
+ * <DropdownMenuContent>
14
+ * <FilterLabel>Status</FilterLabel>
15
+ * <FilterCheckboxItem>Active</FilterCheckboxItem>
16
+ * <FilterSeparator />
17
+ * <FilterLabel>Type</FilterLabel>
18
+ * <FilterCheckboxItem>Type 1</FilterCheckboxItem>
19
+ * </DropdownMenuContent>
20
+ * ```
21
+ */
22
+ export declare const FilterSeparator: React.ForwardRefExoticComponent<FilterSeparatorProps & React.RefAttributes<HTMLDivElement>>;