@gearbox-protocol/permissionless-ui 1.2.32 → 1.3.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 (504) hide show
  1. package/README.md +134 -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 +3 -4
  6. package/dist/cjs/components/base-link.js +61 -0
  7. package/dist/cjs/components/block-sync.js +117 -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/range-buttons.js +63 -0
  14. package/dist/cjs/components/card-grid.js +127 -0
  15. package/dist/cjs/components/card.js +176 -0
  16. package/dist/cjs/components/checkbox-item.js +82 -0
  17. package/dist/cjs/components/compound-apy.js +232 -0
  18. package/dist/cjs/components/credit-session-status.js +67 -0
  19. package/dist/cjs/components/description.js +48 -0
  20. package/dist/cjs/components/detailed-page-title.js +96 -0
  21. package/dist/cjs/components/dialog/dialog-container.js +75 -0
  22. package/dist/cjs/components/dialog/dialog-content.js +66 -0
  23. package/dist/cjs/components/dialog/dialog-description.js +50 -0
  24. package/dist/cjs/components/dialog/dialog-footer.js +53 -0
  25. package/dist/cjs/components/dialog/dialog-header.js +53 -0
  26. package/dist/cjs/components/dialog/dialog-overlay.js +53 -0
  27. package/dist/cjs/components/dialog/dialog-title.js +50 -0
  28. package/dist/cjs/components/dialog/dialog.js +45 -0
  29. package/dist/cjs/components/dialog/index.js +36 -0
  30. package/dist/cjs/components/dropdown-menu/dropdown-menu-checkbox-item.js +63 -0
  31. package/dist/cjs/components/dropdown-menu/dropdown-menu-content.js +55 -0
  32. package/dist/cjs/components/dropdown-menu/dropdown-menu-item.js +54 -0
  33. package/dist/cjs/components/dropdown-menu/dropdown-menu-label.js +54 -0
  34. package/dist/cjs/components/dropdown-menu/dropdown-menu-radio-item.js +58 -0
  35. package/dist/cjs/components/dropdown-menu/dropdown-menu-separator.js +50 -0
  36. package/dist/cjs/components/dropdown-menu/dropdown-menu-shortcut.js +52 -0
  37. package/dist/cjs/components/dropdown-menu/dropdown-menu-sub-content.js +53 -0
  38. package/dist/cjs/components/dropdown-menu/dropdown-menu-sub-trigger.js +59 -0
  39. package/dist/cjs/components/dropdown-menu/dropdown-menu.js +54 -0
  40. package/dist/cjs/components/dropdown-menu/index.js +40 -0
  41. package/dist/cjs/components/error-message.js +70 -0
  42. package/dist/cjs/components/filter/filter-block.js +52 -0
  43. package/dist/cjs/components/filter/filter-checkbox-item.js +59 -0
  44. package/dist/cjs/components/filter/filter-chip.js +74 -0
  45. package/dist/cjs/components/filter/filter-chips.js +84 -0
  46. package/dist/cjs/components/filter/filter-dropdown-item.js +54 -0
  47. package/dist/cjs/components/filter/filter-group.js +43 -0
  48. package/dist/cjs/components/filter/filter-label.js +54 -0
  49. package/dist/cjs/components/filter/filter-modal-item.js +55 -0
  50. package/dist/cjs/components/filter/filter-modal.js +242 -0
  51. package/dist/cjs/components/filter/filter-radio-item.js +58 -0
  52. package/dist/cjs/components/filter/filter-separator.js +50 -0
  53. package/dist/cjs/components/filter/index.js +44 -0
  54. package/dist/cjs/components/filter/interface.js +16 -0
  55. package/dist/cjs/components/filter/variants.js +41 -0
  56. package/dist/cjs/components/form/form-field.js +67 -0
  57. package/dist/cjs/components/{editable-table → form}/index.js +4 -8
  58. package/dist/cjs/components/graph/default-config.js +158 -0
  59. package/dist/cjs/components/graph/formatters.js +175 -0
  60. package/dist/cjs/components/graph/graph-current-value.js +54 -0
  61. package/dist/cjs/components/graph/graph-tooltip.js +141 -0
  62. package/dist/cjs/components/graph/graph-view.js +232 -0
  63. package/dist/cjs/components/graph/graph.js +636 -0
  64. package/dist/cjs/components/graph/index.js +44 -0
  65. package/dist/cjs/components/graph/plugins/vertical-line.js +127 -0
  66. package/dist/cjs/components/guard.js +34 -0
  67. package/dist/cjs/components/health-factor.js +100 -0
  68. package/dist/cjs/components/help-center-container.js +106 -0
  69. package/dist/cjs/components/hide-on.js +66 -0
  70. package/dist/cjs/components/horizontal-indicator.js +63 -0
  71. package/dist/cjs/components/image.js +56 -0
  72. package/dist/cjs/components/index.js +93 -9
  73. package/dist/cjs/components/input.js +43 -21
  74. package/dist/cjs/components/label.js +29 -5
  75. package/dist/cjs/components/layout/app-logo.js +7 -17
  76. package/dist/cjs/components/layout/col.js +192 -0
  77. package/dist/cjs/components/layout/container.js +75 -0
  78. package/dist/cjs/components/layout/footer.js +137 -52
  79. package/dist/cjs/components/layout/grid.js +217 -0
  80. package/dist/cjs/components/layout/header.js +75 -13
  81. package/dist/cjs/components/layout/index.js +8 -0
  82. package/dist/cjs/components/layout/layout.js +65 -0
  83. package/dist/cjs/components/liquidation/index.js +28 -0
  84. package/dist/cjs/components/liquidation/liquidation-assets-table.js +95 -0
  85. package/dist/cjs/components/liquidation/liquidation-graph-legend.js +41 -0
  86. package/dist/cjs/components/liquidation/liquidation-graph-tip.js +93 -0
  87. package/dist/cjs/components/liquidation/liquidation-graph.js +214 -0
  88. package/dist/cjs/components/loader-guard.js +47 -0
  89. package/dist/cjs/components/loading-guard.js +55 -0
  90. package/dist/cjs/components/markdown-viewer.js +4 -2
  91. package/dist/cjs/components/navbar-indicator-context.js +93 -0
  92. package/dist/cjs/components/navbar.js +131 -0
  93. package/dist/cjs/components/navitem.js +148 -0
  94. package/dist/cjs/components/next/back-button.js +43 -0
  95. package/dist/cjs/components/next/index.js +37 -0
  96. package/dist/cjs/components/next/siwe-provider.js +35 -0
  97. package/dist/cjs/components/next/token-icon.js +43 -0
  98. package/dist/cjs/components/not-found.js +58 -0
  99. package/dist/cjs/components/options-list.js +88 -0
  100. package/dist/cjs/components/page-title.js +116 -0
  101. package/dist/cjs/components/percent-indicator.js +56 -0
  102. package/dist/cjs/components/pool-points-indicator.js +107 -0
  103. package/dist/cjs/components/search-line.js +225 -0
  104. package/dist/cjs/components/select.js +30 -9
  105. package/dist/cjs/components/short-string.js +58 -0
  106. package/dist/cjs/components/skeleton.js +56 -3
  107. package/dist/cjs/components/stat-badge.js +189 -0
  108. package/dist/cjs/components/tab-control.js +253 -0
  109. package/dist/cjs/components/table/editable-grid-table.js +131 -0
  110. package/dist/cjs/components/{editable-table → table}/editable-table.js +1 -1
  111. package/dist/cjs/components/table/grid-error-line.js +60 -0
  112. package/dist/cjs/components/table/grid-loading-line.js +64 -0
  113. package/dist/cjs/components/table/grid-table-loader.js +56 -0
  114. package/dist/cjs/components/table/grid-table.js +203 -0
  115. package/dist/cjs/components/table/index.js +46 -0
  116. package/dist/cjs/components/table/sortable-head-cell.js +48 -0
  117. package/dist/cjs/components/table/table-loader-guard.js +55 -0
  118. package/dist/cjs/components/table/table-loader.js +46 -0
  119. package/dist/cjs/components/table/table-sm.js +93 -0
  120. package/dist/cjs/components/{table.js → table/table.js} +78 -22
  121. package/dist/cjs/components/textarea.js +27 -7
  122. package/dist/cjs/components/theme-provider.js +127 -0
  123. package/dist/cjs/components/theme-toggle.js +85 -0
  124. package/dist/cjs/components/token-icon.js +68 -20
  125. package/dist/cjs/components/token-symbol.js +84 -0
  126. package/dist/cjs/components/tooltip.js +1 -1
  127. package/dist/cjs/components/typed-intl/index.js +57 -0
  128. package/dist/cjs/components/vspace.js +31 -0
  129. package/dist/cjs/components/with-filter-button.js +84 -0
  130. package/dist/cjs/configs/design-tokens.js +109 -0
  131. package/dist/cjs/configs/index.js +48 -0
  132. package/dist/cjs/configs/tailwind-preset.js +162 -0
  133. package/dist/cjs/configs/tailwind.config.js +20 -67
  134. package/dist/cjs/configs/variants.js +58 -0
  135. package/dist/cjs/hooks/index.js +34 -0
  136. package/dist/cjs/hooks/use-controllable-state.js +49 -0
  137. package/dist/cjs/hooks/use-debounce.js +67 -0
  138. package/dist/cjs/hooks/use-filter.js +79 -0
  139. package/dist/cjs/hooks/use-hf.js +62 -0
  140. package/dist/cjs/hooks/use-liquidation/index.js +165 -0
  141. package/dist/cjs/hooks/use-liquidation/types.js +16 -0
  142. package/dist/cjs/hooks/use-liquidation/utils.js +253 -0
  143. package/dist/cjs/hooks/use-media-query.js +50 -0
  144. package/dist/cjs/hooks/use-previous.js +35 -0
  145. package/dist/cjs/index.js +155 -3
  146. package/dist/cjs/types/component-props.js +16 -0
  147. package/dist/cjs/types/filter.js +16 -0
  148. package/dist/cjs/types/footer.js +16 -0
  149. package/dist/cjs/types/graph.js +16 -0
  150. package/dist/cjs/types/help.js +16 -0
  151. package/dist/cjs/types/index.js +16 -0
  152. package/dist/cjs/types/range-item.js +16 -0
  153. package/dist/cjs/utils/a11y.js +39 -0
  154. package/dist/cjs/utils/bn-to-input-view.js +60 -0
  155. package/dist/cjs/utils/colors.js +96 -0
  156. package/dist/cjs/utils/format-asset-amount.js +43 -0
  157. package/dist/cjs/utils/format-money.js +68 -0
  158. package/dist/cjs/utils/index.js +29 -2
  159. package/dist/cjs/utils/interface.js +16 -0
  160. package/dist/cjs/utils/react.js +105 -0
  161. package/dist/cjs/utils/short-sha.js +28 -0
  162. package/dist/cjs/utils/sort.js +16 -0
  163. package/dist/cjs/utils/templates.js +50 -0
  164. package/dist/esm/components/asset-line.js +83 -0
  165. package/dist/esm/components/assets-list-cell.js +39 -0
  166. package/dist/esm/components/assets-ratio.js +64 -0
  167. package/dist/esm/components/auth/siwe-provider.js +3 -4
  168. package/dist/esm/components/base-link.js +27 -0
  169. package/dist/esm/components/block-sync.js +98 -0
  170. package/dist/esm/components/breadcrumbs.js +43 -0
  171. package/dist/esm/components/buttons/back-button.js +35 -8
  172. package/dist/esm/components/buttons/button.js +4 -4
  173. package/dist/esm/components/buttons/filter-button.js +34 -0
  174. package/dist/esm/components/buttons/index.js +2 -0
  175. package/dist/esm/components/buttons/range-buttons.js +29 -0
  176. package/dist/esm/components/card-grid.js +92 -0
  177. package/dist/esm/components/card.js +133 -0
  178. package/dist/esm/components/checkbox-item.js +48 -0
  179. package/dist/esm/components/compound-apy.js +203 -0
  180. package/dist/esm/components/credit-session-status.js +33 -0
  181. package/dist/esm/components/description.js +14 -0
  182. package/dist/esm/components/detailed-page-title.js +67 -0
  183. package/dist/esm/components/dialog/dialog-container.js +41 -0
  184. package/dist/esm/components/dialog/dialog-content.js +32 -0
  185. package/dist/esm/components/dialog/dialog-description.js +16 -0
  186. package/dist/esm/components/dialog/dialog-footer.js +19 -0
  187. package/dist/esm/components/dialog/dialog-header.js +19 -0
  188. package/dist/esm/components/dialog/dialog-overlay.js +19 -0
  189. package/dist/esm/components/dialog/dialog-title.js +16 -0
  190. package/dist/esm/components/dialog/dialog.js +9 -0
  191. package/dist/esm/components/dialog/index.js +8 -0
  192. package/dist/esm/components/dropdown-menu/dropdown-menu-checkbox-item.js +29 -0
  193. package/dist/esm/components/dropdown-menu/dropdown-menu-content.js +21 -0
  194. package/dist/esm/components/dropdown-menu/dropdown-menu-item.js +20 -0
  195. package/dist/esm/components/dropdown-menu/dropdown-menu-label.js +20 -0
  196. package/dist/esm/components/dropdown-menu/dropdown-menu-radio-item.js +24 -0
  197. package/dist/esm/components/dropdown-menu/dropdown-menu-separator.js +16 -0
  198. package/dist/esm/components/dropdown-menu/dropdown-menu-shortcut.js +18 -0
  199. package/dist/esm/components/dropdown-menu/dropdown-menu-sub-content.js +19 -0
  200. package/dist/esm/components/dropdown-menu/dropdown-menu-sub-trigger.js +25 -0
  201. package/dist/esm/components/dropdown-menu/dropdown-menu.js +15 -0
  202. package/dist/esm/components/dropdown-menu/index.js +10 -0
  203. package/dist/esm/components/error-message.js +36 -0
  204. package/dist/esm/components/filter/filter-block.js +18 -0
  205. package/dist/esm/components/filter/filter-checkbox-item.js +25 -0
  206. package/dist/esm/components/filter/filter-chip.js +40 -0
  207. package/dist/esm/components/filter/filter-chips.js +50 -0
  208. package/dist/esm/components/filter/filter-dropdown-item.js +20 -0
  209. package/dist/esm/components/filter/filter-group.js +9 -0
  210. package/dist/esm/components/filter/filter-label.js +20 -0
  211. package/dist/esm/components/filter/filter-modal-item.js +21 -0
  212. package/dist/esm/components/filter/filter-modal.js +214 -0
  213. package/dist/esm/components/filter/filter-radio-item.js +24 -0
  214. package/dist/esm/components/filter/filter-separator.js +16 -0
  215. package/dist/esm/components/filter/index.js +12 -0
  216. package/dist/esm/components/filter/interface.js +0 -0
  217. package/dist/esm/components/filter/variants.js +17 -0
  218. package/dist/esm/components/form/form-field.js +43 -0
  219. package/dist/esm/components/form/index.js +1 -0
  220. package/dist/esm/components/graph/default-config.js +129 -0
  221. package/dist/esm/components/graph/formatters.js +150 -0
  222. package/dist/esm/components/graph/graph-current-value.js +30 -0
  223. package/dist/esm/components/graph/graph-tooltip.js +117 -0
  224. package/dist/esm/components/graph/graph-view.js +195 -0
  225. package/dist/esm/components/graph/graph.js +605 -0
  226. package/dist/esm/components/graph/index.js +15 -0
  227. package/dist/esm/components/graph/plugins/vertical-line.js +103 -0
  228. package/dist/esm/components/guard.js +10 -0
  229. package/dist/esm/components/health-factor.js +63 -0
  230. package/dist/esm/components/help-center-container.js +82 -0
  231. package/dist/esm/components/hide-on.js +41 -0
  232. package/dist/esm/components/horizontal-indicator.js +34 -0
  233. package/dist/esm/components/image.js +32 -0
  234. package/dist/esm/components/index.js +46 -4
  235. package/dist/esm/components/input.js +41 -20
  236. package/dist/esm/components/label.js +27 -4
  237. package/dist/esm/components/layout/app-logo.js +5 -5
  238. package/dist/esm/components/layout/col.js +158 -0
  239. package/dist/esm/components/layout/container.js +41 -0
  240. package/dist/esm/components/layout/footer.js +134 -52
  241. package/dist/esm/components/layout/grid.js +183 -0
  242. package/dist/esm/components/layout/header.js +65 -13
  243. package/dist/esm/components/layout/index.js +4 -0
  244. package/dist/esm/components/layout/layout.js +31 -0
  245. package/dist/esm/components/liquidation/index.js +4 -0
  246. package/dist/esm/components/liquidation/liquidation-assets-table.js +71 -0
  247. package/dist/esm/components/liquidation/liquidation-graph-legend.js +17 -0
  248. package/dist/esm/components/liquidation/liquidation-graph-tip.js +72 -0
  249. package/dist/esm/components/liquidation/liquidation-graph.js +191 -0
  250. package/dist/esm/components/loader-guard.js +23 -0
  251. package/dist/esm/components/loading-guard.js +31 -0
  252. package/dist/esm/components/markdown-viewer.js +4 -2
  253. package/dist/esm/components/navbar-indicator-context.js +75 -0
  254. package/dist/esm/components/navbar.js +98 -0
  255. package/dist/esm/components/navitem.js +113 -0
  256. package/dist/esm/components/next/back-button.js +11 -0
  257. package/dist/esm/components/next/index.js +10 -0
  258. package/dist/esm/components/next/siwe-provider.js +11 -0
  259. package/dist/esm/components/next/token-icon.js +11 -0
  260. package/dist/esm/components/not-found.js +24 -0
  261. package/dist/esm/components/options-list.js +53 -0
  262. package/dist/esm/components/page-title.js +80 -0
  263. package/dist/esm/components/percent-indicator.js +22 -0
  264. package/dist/esm/components/pool-points-indicator.js +73 -0
  265. package/dist/esm/components/search-line.js +188 -0
  266. package/dist/esm/components/select.js +28 -8
  267. package/dist/esm/components/short-string.js +39 -0
  268. package/dist/esm/components/skeleton.js +54 -2
  269. package/dist/esm/components/stat-badge.js +155 -0
  270. package/dist/esm/components/tab-control.js +215 -0
  271. package/dist/esm/components/table/editable-grid-table.js +105 -0
  272. package/dist/esm/components/{editable-table → table}/editable-table.js +1 -1
  273. package/dist/esm/components/table/grid-error-line.js +36 -0
  274. package/dist/esm/components/table/grid-loading-line.js +30 -0
  275. package/dist/esm/components/table/grid-table-loader.js +22 -0
  276. package/dist/esm/components/table/grid-table.js +159 -0
  277. package/dist/esm/components/table/index.js +13 -0
  278. package/dist/esm/components/table/sortable-head-cell.js +24 -0
  279. package/dist/esm/components/table/table-loader-guard.js +31 -0
  280. package/dist/esm/components/table/table-loader.js +22 -0
  281. package/dist/esm/components/table/table-sm.js +58 -0
  282. package/dist/esm/components/{table.js → table/table.js} +74 -21
  283. package/dist/esm/components/textarea.js +25 -6
  284. package/dist/esm/components/theme-provider.js +108 -0
  285. package/dist/esm/components/theme-toggle.js +61 -0
  286. package/dist/esm/components/token-icon.js +69 -11
  287. package/dist/esm/components/token-symbol.js +50 -0
  288. package/dist/esm/components/tooltip.js +1 -1
  289. package/dist/esm/components/typed-intl/index.js +32 -0
  290. package/dist/esm/components/vspace.js +7 -0
  291. package/dist/esm/components/with-filter-button.js +50 -0
  292. package/dist/esm/configs/design-tokens.js +85 -0
  293. package/dist/esm/configs/index.js +9 -0
  294. package/dist/esm/configs/tailwind-preset.js +128 -0
  295. package/dist/esm/configs/tailwind.config.js +16 -57
  296. package/dist/esm/configs/variants.js +31 -0
  297. package/dist/esm/hooks/index.js +7 -0
  298. package/dist/esm/hooks/use-controllable-state.js +25 -0
  299. package/dist/esm/hooks/use-debounce.js +42 -0
  300. package/dist/esm/hooks/use-filter.js +51 -0
  301. package/dist/esm/hooks/use-hf.js +38 -0
  302. package/dist/esm/hooks/use-liquidation/index.js +146 -0
  303. package/dist/esm/hooks/use-liquidation/types.js +0 -0
  304. package/dist/esm/hooks/use-liquidation/utils.js +215 -0
  305. package/dist/esm/hooks/use-media-query.js +23 -0
  306. package/dist/esm/hooks/use-previous.js +11 -0
  307. package/dist/esm/index.js +83 -1
  308. package/dist/esm/types/component-props.js +0 -0
  309. package/dist/esm/types/filter.js +0 -0
  310. package/dist/esm/types/footer.js +0 -0
  311. package/dist/esm/types/graph.js +0 -0
  312. package/dist/esm/types/help.js +0 -0
  313. package/dist/esm/types/index.js +0 -0
  314. package/dist/esm/types/range-item.js +0 -0
  315. package/dist/esm/utils/a11y.js +14 -0
  316. package/dist/esm/utils/bn-to-input-view.js +36 -0
  317. package/dist/esm/utils/colors.js +69 -0
  318. package/dist/esm/utils/format-asset-amount.js +19 -0
  319. package/dist/esm/utils/format-money.js +40 -0
  320. package/dist/esm/utils/index.js +21 -1
  321. package/dist/esm/utils/interface.js +0 -0
  322. package/dist/esm/utils/react.js +70 -0
  323. package/dist/esm/utils/short-sha.js +4 -0
  324. package/dist/esm/utils/sort.js +0 -0
  325. package/dist/esm/utils/templates.js +24 -0
  326. package/dist/globals.css +230 -52
  327. package/dist/grid-safelist.css +264 -0
  328. package/dist/types/components/asset-line.d.ts +59 -0
  329. package/dist/types/components/assets-list-cell.d.ts +48 -0
  330. package/dist/types/components/assets-ratio.d.ts +9 -0
  331. package/dist/types/components/auth/signin-required.d.ts +1 -1
  332. package/dist/types/components/auth/siwe-provider.d.ts +2 -1
  333. package/dist/types/components/badge.d.ts +1 -1
  334. package/dist/types/components/base-link.d.ts +38 -0
  335. package/dist/types/components/block-sync.d.ts +8 -0
  336. package/dist/types/components/breadcrumbs.d.ts +24 -0
  337. package/dist/types/components/buttons/back-button.d.ts +15 -20
  338. package/dist/types/components/buttons/button.d.ts +37 -3
  339. package/dist/types/components/buttons/filter-button.d.ts +52 -0
  340. package/dist/types/components/buttons/index.d.ts +2 -0
  341. package/dist/types/components/buttons/range-buttons.d.ts +49 -0
  342. package/dist/types/components/card-grid.d.ts +25 -0
  343. package/dist/types/components/card.d.ts +116 -0
  344. package/dist/types/components/cards/card.d.ts +2 -2
  345. package/dist/types/components/checkbox-item.d.ts +56 -0
  346. package/dist/types/components/compound-apy.d.ts +80 -0
  347. package/dist/types/components/credit-session-status.d.ts +7 -0
  348. package/dist/types/components/description.d.ts +26 -0
  349. package/dist/types/components/detailed-page-title.d.ts +31 -0
  350. package/dist/types/components/dialog/dialog-container.d.ts +12 -0
  351. package/dist/types/components/dialog/dialog-content.d.ts +4 -0
  352. package/dist/types/components/dialog/dialog-description.d.ts +4 -0
  353. package/dist/types/components/dialog/dialog-footer.d.ts +6 -0
  354. package/dist/types/components/dialog/dialog-header.d.ts +6 -0
  355. package/dist/types/components/dialog/dialog-overlay.d.ts +4 -0
  356. package/dist/types/components/dialog/dialog-title.d.ts +4 -0
  357. package/dist/types/components/dialog/dialog.d.ts +5 -0
  358. package/dist/types/components/dialog/index.d.ts +8 -0
  359. package/dist/types/components/dropdown-menu/dropdown-menu-checkbox-item.d.ts +22 -0
  360. package/dist/types/components/dropdown-menu/dropdown-menu-content.d.ts +4 -0
  361. package/dist/types/components/dropdown-menu/dropdown-menu-item.d.ts +6 -0
  362. package/dist/types/components/dropdown-menu/dropdown-menu-label.d.ts +6 -0
  363. package/dist/types/components/dropdown-menu/dropdown-menu-radio-item.d.ts +4 -0
  364. package/dist/types/components/dropdown-menu/dropdown-menu-separator.d.ts +4 -0
  365. package/dist/types/components/dropdown-menu/dropdown-menu-shortcut.d.ts +6 -0
  366. package/dist/types/components/dropdown-menu/dropdown-menu-sub-content.d.ts +4 -0
  367. package/dist/types/components/dropdown-menu/dropdown-menu-sub-trigger.d.ts +6 -0
  368. package/dist/types/components/dropdown-menu/dropdown-menu.d.ts +8 -0
  369. package/dist/types/components/dropdown-menu/index.d.ts +10 -0
  370. package/dist/types/components/error-message.d.ts +21 -0
  371. package/dist/types/components/filter/filter-block.d.ts +17 -0
  372. package/dist/types/components/filter/filter-checkbox-item.d.ts +23 -0
  373. package/dist/types/components/filter/filter-chip.d.ts +34 -0
  374. package/dist/types/components/filter/filter-chips.d.ts +42 -0
  375. package/dist/types/components/filter/filter-dropdown-item.d.ts +24 -0
  376. package/dist/types/components/filter/filter-group.d.ts +22 -0
  377. package/dist/types/components/filter/filter-label.d.ts +21 -0
  378. package/dist/types/components/filter/filter-modal-item.d.ts +31 -0
  379. package/dist/types/components/filter/filter-modal.d.ts +123 -0
  380. package/dist/types/components/filter/filter-radio-item.d.ts +19 -0
  381. package/dist/types/components/filter/filter-separator.d.ts +22 -0
  382. package/dist/types/components/filter/index.d.ts +109 -0
  383. package/dist/types/components/filter/interface.d.ts +24 -0
  384. package/dist/types/components/filter/variants.d.ts +3 -0
  385. package/dist/types/components/form/form-field.d.ts +38 -0
  386. package/dist/types/components/form/index.d.ts +1 -0
  387. package/dist/types/components/graph/default-config.d.ts +20 -0
  388. package/dist/types/components/graph/formatters.d.ts +16 -0
  389. package/dist/types/components/graph/graph-current-value.d.ts +13 -0
  390. package/dist/types/components/graph/graph-tooltip.d.ts +24 -0
  391. package/dist/types/components/graph/graph-view.d.ts +198 -0
  392. package/dist/types/components/graph/graph.d.ts +49 -0
  393. package/dist/types/components/graph/index.d.ts +7 -0
  394. package/dist/types/components/guard.d.ts +34 -0
  395. package/dist/types/components/health-factor.d.ts +63 -0
  396. package/dist/types/components/help-center-container.d.ts +22 -0
  397. package/dist/types/components/hide-on.d.ts +32 -0
  398. package/dist/types/components/horizontal-indicator.d.ts +22 -0
  399. package/dist/types/components/image.d.ts +35 -0
  400. package/dist/types/components/index.d.ts +44 -1
  401. package/dist/types/components/input.d.ts +26 -9
  402. package/dist/types/components/label.d.ts +26 -5
  403. package/dist/types/components/layout/app-logo.d.ts +1 -0
  404. package/dist/types/components/layout/col.d.ts +43 -0
  405. package/dist/types/components/layout/container.d.ts +37 -0
  406. package/dist/types/components/layout/footer.d.ts +44 -5
  407. package/dist/types/components/layout/grid.d.ts +48 -0
  408. package/dist/types/components/layout/header.d.ts +68 -12
  409. package/dist/types/components/layout/index.d.ts +4 -0
  410. package/dist/types/components/layout/layout.d.ts +12 -0
  411. package/dist/types/components/liquidation/index.d.ts +4 -0
  412. package/dist/types/components/liquidation/liquidation-assets-table.d.ts +14 -0
  413. package/dist/types/components/liquidation/liquidation-graph-legend.d.ts +2 -0
  414. package/dist/types/components/liquidation/liquidation-graph-tip.d.ts +13 -0
  415. package/dist/types/components/liquidation/liquidation-graph.d.ts +19 -0
  416. package/dist/types/components/loader-guard.d.ts +17 -0
  417. package/dist/types/components/loading-guard.d.ts +18 -0
  418. package/dist/types/components/navbar-indicator-context.d.ts +13 -0
  419. package/dist/types/components/navbar.d.ts +25 -0
  420. package/dist/types/components/navitem.d.ts +67 -0
  421. package/dist/types/components/next/back-button.d.ts +3 -0
  422. package/dist/types/components/next/index.d.ts +9 -0
  423. package/dist/types/components/next/siwe-provider.d.ts +7 -0
  424. package/dist/types/components/next/token-icon.d.ts +3 -0
  425. package/dist/types/components/not-found.d.ts +18 -0
  426. package/dist/types/components/options-list.d.ts +15 -0
  427. package/dist/types/components/page-title.d.ts +69 -0
  428. package/dist/types/components/percent-indicator.d.ts +28 -0
  429. package/dist/types/components/pool-points-indicator.d.ts +41 -0
  430. package/dist/types/components/search-line.d.ts +117 -0
  431. package/dist/types/components/select.d.ts +9 -2
  432. package/dist/types/components/short-string.d.ts +39 -0
  433. package/dist/types/components/skeleton.d.ts +28 -3
  434. package/dist/types/components/stat-badge.d.ts +169 -0
  435. package/dist/types/components/tab-control.d.ts +39 -0
  436. package/dist/types/components/table/editable-grid-table.d.ts +120 -0
  437. package/dist/types/components/table/grid-error-line.d.ts +49 -0
  438. package/dist/types/components/table/grid-loading-line.d.ts +36 -0
  439. package/dist/types/components/table/grid-table-loader.d.ts +25 -0
  440. package/dist/types/components/table/grid-table.d.ts +158 -0
  441. package/dist/types/components/table/index.d.ts +13 -0
  442. package/dist/types/components/table/sortable-head-cell.d.ts +36 -0
  443. package/dist/types/components/table/table-loader-guard.d.ts +45 -0
  444. package/dist/types/components/table/table-loader.d.ts +46 -0
  445. package/dist/types/components/table/table-sm.d.ts +94 -0
  446. package/dist/types/components/{table.d.ts → table/table.d.ts} +39 -12
  447. package/dist/types/components/{editable-table → table}/updated-value.d.ts +3 -0
  448. package/dist/types/components/textarea.d.ts +24 -5
  449. package/dist/types/components/theme-provider.d.ts +34 -0
  450. package/dist/types/components/theme-toggle.d.ts +5 -0
  451. package/dist/types/components/token-icon.d.ts +8 -6
  452. package/dist/types/components/token-symbol.d.ts +71 -0
  453. package/dist/types/components/typed-intl/index.d.ts +19 -0
  454. package/dist/types/components/vspace.d.ts +27 -0
  455. package/dist/types/components/with-filter-button.d.ts +54 -0
  456. package/dist/types/configs/design-tokens.d.ts +73 -0
  457. package/dist/types/configs/index.d.ts +4 -0
  458. package/dist/types/configs/tailwind-preset.d.ts +126 -0
  459. package/dist/types/configs/tailwind.config.d.ts +29 -0
  460. package/dist/types/configs/variants.d.ts +28 -0
  461. package/dist/types/hooks/index.d.ts +7 -0
  462. package/dist/types/hooks/use-controllable-state.d.ts +24 -0
  463. package/dist/types/hooks/use-debounce.d.ts +31 -0
  464. package/dist/types/hooks/use-filter.d.ts +37 -0
  465. package/dist/types/hooks/use-hf.d.ts +15 -0
  466. package/dist/types/hooks/use-liquidation/index.d.ts +51 -0
  467. package/dist/types/hooks/use-liquidation/types.d.ts +16 -0
  468. package/dist/types/hooks/use-liquidation/utils.d.ts +66 -0
  469. package/dist/types/hooks/use-media-query.d.ts +25 -0
  470. package/dist/types/hooks/use-previous.d.ts +10 -0
  471. package/dist/types/index.d.ts +70 -2
  472. package/dist/types/types/component-props.d.ts +16 -0
  473. package/dist/types/types/filter.d.ts +8 -0
  474. package/dist/types/types/footer.d.ts +30 -0
  475. package/dist/types/types/graph.d.ts +22 -0
  476. package/dist/types/types/help.d.ts +4 -0
  477. package/dist/types/types/index.d.ts +6 -0
  478. package/dist/types/types/range-item.d.ts +9 -0
  479. package/dist/types/utils/a11y.d.ts +24 -0
  480. package/dist/types/utils/bn-to-input-view.d.ts +17 -0
  481. package/dist/types/utils/colors.d.ts +29 -0
  482. package/dist/types/utils/format-asset-amount.d.ts +16 -0
  483. package/dist/types/utils/format-money.d.ts +64 -0
  484. package/dist/types/utils/index.d.ts +10 -0
  485. package/dist/types/utils/interface.d.ts +9 -0
  486. package/dist/types/utils/react.d.ts +31 -0
  487. package/dist/types/utils/short-sha.d.ts +9 -0
  488. package/dist/types/utils/sort.d.ts +5 -0
  489. package/dist/types/utils/templates.d.ts +61 -0
  490. package/package.json +54 -10
  491. package/dist/cjs/components/dialog.js +0 -137
  492. package/dist/cjs/components/dropdown-menu.js +0 -200
  493. package/dist/esm/components/dialog.js +0 -97
  494. package/dist/esm/components/dropdown-menu.js +0 -152
  495. package/dist/esm/components/editable-table/index.js +0 -3
  496. package/dist/types/components/dialog.d.ts +0 -38
  497. package/dist/types/components/dropdown-menu.d.ts +0 -59
  498. package/dist/types/components/editable-table/index.d.ts +0 -3
  499. /package/dist/cjs/components/{editable-table → table}/edit-button.js +0 -0
  500. /package/dist/cjs/components/{editable-table → table}/updated-value.js +0 -0
  501. /package/dist/esm/components/{editable-table → table}/edit-button.js +0 -0
  502. /package/dist/esm/components/{editable-table → table}/updated-value.js +0 -0
  503. /package/dist/types/components/{editable-table → table}/edit-button.d.ts +0 -0
  504. /package/dist/types/components/{editable-table → table}/editable-table.d.ts +0 -0
@@ -0,0 +1,158 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import React from "react";
3
+ import { cn } from "../../utils/cn.js";
4
+ const COL_SPAN_CLASSES = {
5
+ 1: "col-span-1",
6
+ 2: "col-span-2",
7
+ 3: "col-span-3",
8
+ 4: "col-span-4",
9
+ 5: "col-span-5",
10
+ 6: "col-span-6",
11
+ 7: "col-span-7",
12
+ 8: "col-span-8",
13
+ 9: "col-span-9",
14
+ 10: "col-span-10",
15
+ 11: "col-span-11",
16
+ 12: "col-span-12",
17
+ full: "col-span-full",
18
+ auto: "col-auto"
19
+ };
20
+ const COL_SPAN_SM_CLASSES = {
21
+ 1: "sm:col-span-1",
22
+ 2: "sm:col-span-2",
23
+ 3: "sm:col-span-3",
24
+ 4: "sm:col-span-4",
25
+ 5: "sm:col-span-5",
26
+ 6: "sm:col-span-6",
27
+ 7: "sm:col-span-7",
28
+ 8: "sm:col-span-8",
29
+ 9: "sm:col-span-9",
30
+ 10: "sm:col-span-10",
31
+ 11: "sm:col-span-11",
32
+ 12: "sm:col-span-12",
33
+ full: "sm:col-span-full",
34
+ auto: "sm:col-auto"
35
+ };
36
+ const COL_SPAN_MD_CLASSES = {
37
+ 1: "md:col-span-1",
38
+ 2: "md:col-span-2",
39
+ 3: "md:col-span-3",
40
+ 4: "md:col-span-4",
41
+ 5: "md:col-span-5",
42
+ 6: "md:col-span-6",
43
+ 7: "md:col-span-7",
44
+ 8: "md:col-span-8",
45
+ 9: "md:col-span-9",
46
+ 10: "md:col-span-10",
47
+ 11: "md:col-span-11",
48
+ 12: "md:col-span-12",
49
+ full: "md:col-span-full",
50
+ auto: "md:col-auto"
51
+ };
52
+ const COL_SPAN_LG_CLASSES = {
53
+ 1: "lg:col-span-1",
54
+ 2: "lg:col-span-2",
55
+ 3: "lg:col-span-3",
56
+ 4: "lg:col-span-4",
57
+ 5: "lg:col-span-5",
58
+ 6: "lg:col-span-6",
59
+ 7: "lg:col-span-7",
60
+ 8: "lg:col-span-8",
61
+ 9: "lg:col-span-9",
62
+ 10: "lg:col-span-10",
63
+ 11: "lg:col-span-11",
64
+ 12: "lg:col-span-12",
65
+ full: "lg:col-span-full",
66
+ auto: "lg:col-auto"
67
+ };
68
+ const COL_SPAN_XL_CLASSES = {
69
+ 1: "xl:col-span-1",
70
+ 2: "xl:col-span-2",
71
+ 3: "xl:col-span-3",
72
+ 4: "xl:col-span-4",
73
+ 5: "xl:col-span-5",
74
+ 6: "xl:col-span-6",
75
+ 7: "xl:col-span-7",
76
+ 8: "xl:col-span-8",
77
+ 9: "xl:col-span-9",
78
+ 10: "xl:col-span-10",
79
+ 11: "xl:col-span-11",
80
+ 12: "xl:col-span-12",
81
+ full: "xl:col-span-full",
82
+ auto: "xl:col-auto"
83
+ };
84
+ const getColSpanClass = (span, breakpoint) => {
85
+ if (!span) return "";
86
+ if (breakpoint === "sm") return COL_SPAN_SM_CLASSES[span] || "";
87
+ if (breakpoint === "md") return COL_SPAN_MD_CLASSES[span] || "";
88
+ if (breakpoint === "lg") return COL_SPAN_LG_CLASSES[span] || "";
89
+ if (breakpoint === "xl") return COL_SPAN_XL_CLASSES[span] || "";
90
+ return COL_SPAN_CLASSES[span] || "";
91
+ };
92
+ const COL_START_CLASSES = {
93
+ 1: "col-start-1",
94
+ 2: "col-start-2",
95
+ 3: "col-start-3",
96
+ 4: "col-start-4",
97
+ 5: "col-start-5",
98
+ 6: "col-start-6",
99
+ 7: "col-start-7",
100
+ 8: "col-start-8",
101
+ 9: "col-start-9",
102
+ 10: "col-start-10",
103
+ 11: "col-start-11",
104
+ 12: "col-start-12",
105
+ 13: "col-start-13",
106
+ auto: "col-start-auto"
107
+ };
108
+ const ORDER_CLASSES = {
109
+ 1: "order-1",
110
+ 2: "order-2",
111
+ 3: "order-3",
112
+ 4: "order-4",
113
+ 5: "order-5",
114
+ 6: "order-6",
115
+ 7: "order-7",
116
+ 8: "order-8",
117
+ 9: "order-9",
118
+ 10: "order-10",
119
+ 11: "order-11",
120
+ 12: "order-12",
121
+ first: "order-first",
122
+ last: "order-last",
123
+ none: "order-none"
124
+ };
125
+ const getColStartClass = (start) => {
126
+ if (!start) return "";
127
+ return COL_START_CLASSES[start] || "";
128
+ };
129
+ const getOrderClass = (order) => {
130
+ if (!order) return "";
131
+ return ORDER_CLASSES[order] || "";
132
+ };
133
+ const Col = React.forwardRef(
134
+ ({ span = 12, sm, md, lg, xl, start, order, className, children, ...props }, ref) => {
135
+ return /* @__PURE__ */ jsx(
136
+ "div",
137
+ {
138
+ ref,
139
+ className: cn(
140
+ getColSpanClass(span),
141
+ getColSpanClass(sm, "sm"),
142
+ getColSpanClass(md, "md"),
143
+ getColSpanClass(lg, "lg"),
144
+ getColSpanClass(xl, "xl"),
145
+ getColStartClass(start),
146
+ getOrderClass(order),
147
+ className
148
+ ),
149
+ ...props,
150
+ children
151
+ }
152
+ );
153
+ }
154
+ );
155
+ Col.displayName = "Col";
156
+ export {
157
+ Col
158
+ };
@@ -0,0 +1,41 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import React from "react";
3
+ import { cn } from "../../utils/cn.js";
4
+ const maxWidthClasses = {
5
+ sm: "max-w-screen-sm",
6
+ md: "max-w-screen-md",
7
+ lg: "max-w-screen-lg",
8
+ xl: "max-w-screen-xl",
9
+ "2xl": "max-w-screen-2xl",
10
+ full: "max-w-full"
11
+ };
12
+ const Container = React.forwardRef(
13
+ ({
14
+ maxWidth = "xl",
15
+ padding = true,
16
+ center = true,
17
+ className,
18
+ children,
19
+ ...props
20
+ }, ref) => {
21
+ return /* @__PURE__ */ jsx(
22
+ "div",
23
+ {
24
+ ref,
25
+ className: cn(
26
+ "w-full",
27
+ maxWidthClasses[maxWidth],
28
+ center && "mx-auto",
29
+ padding && "px-4 sm:px-6 lg:px-8",
30
+ className
31
+ ),
32
+ ...props,
33
+ children
34
+ }
35
+ );
36
+ }
37
+ );
38
+ Container.displayName = "Container";
39
+ export {
40
+ Container
41
+ };
@@ -1,7 +1,73 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
1
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
2
2
  import React from "react";
3
+ import { cn } from "../../utils/cn.js";
3
4
  import { AppLogo } from "./app-logo.js";
4
5
  import { LegalDisclaimer } from "./legal-disclaimer.js";
6
+ const Footer = React.forwardRef(
7
+ ({
8
+ logo,
9
+ copyright,
10
+ social,
11
+ version,
12
+ secondaryInfo,
13
+ legalLinks,
14
+ containerClassName,
15
+ className,
16
+ children,
17
+ mobileExtraContent,
18
+ ...props
19
+ }, ref) => {
20
+ return /* @__PURE__ */ jsx(
21
+ "footer",
22
+ {
23
+ ref,
24
+ className: cn(
25
+ "relative w-full border-t bg-card border-border mt-6 flex items-center justify-center",
26
+ className
27
+ ),
28
+ ...props,
29
+ children: /* @__PURE__ */ jsxs(
30
+ "div",
31
+ {
32
+ className: cn(
33
+ "flex flex-col sm:flex-row sm:flex-nowrap justify-between items-center sm:items-start gap-4 sm:gap-0 py-6 w-full px-4 max-w-[1440px]",
34
+ containerClassName
35
+ ),
36
+ children: [
37
+ /* @__PURE__ */ jsxs("div", { className: "text-center sm:text-left text-sm text-muted-foreground w-full sm:w-auto", children: [
38
+ logo && /* @__PURE__ */ jsxs(Fragment, { children: [
39
+ /* @__PURE__ */ jsx("div", { className: "flex justify-center sm:justify-start", children: logo }),
40
+ /* @__PURE__ */ jsx("div", { className: "h-2" })
41
+ ] }),
42
+ copyright && /* @__PURE__ */ jsx("div", { children: copyright }),
43
+ /* @__PURE__ */ jsx("div", { className: "mt-4 flex flex-col items-center justify-center gap-2 sm:hidden", children: mobileExtraContent })
44
+ ] }),
45
+ /* @__PURE__ */ jsxs("div", { className: "w-full sm:w-auto", children: [
46
+ social && /* @__PURE__ */ jsxs(Fragment, { children: [
47
+ /* @__PURE__ */ jsx("div", { className: "flex items-center justify-center sm:justify-end gap-2.5", children: social }),
48
+ /* @__PURE__ */ jsx("div", { className: "h-3" })
49
+ ] }),
50
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center justify-center sm:justify-end gap-2 text-sm text-muted-foreground", children: [
51
+ version && /* @__PURE__ */ jsx("span", { children: version }),
52
+ secondaryInfo && /* @__PURE__ */ jsxs(Fragment, { children: [
53
+ /* @__PURE__ */ jsx("span", { className: "h-1 w-1 rounded-full bg-muted-foreground/30" }),
54
+ secondaryInfo
55
+ ] }),
56
+ legalLinks && /* @__PURE__ */ jsxs(Fragment, { children: [
57
+ /* @__PURE__ */ jsx("span", { className: "h-1 w-1 rounded-full bg-muted-foreground/30" }),
58
+ legalLinks
59
+ ] })
60
+ ] })
61
+ ] }),
62
+ children
63
+ ]
64
+ }
65
+ )
66
+ }
67
+ );
68
+ }
69
+ );
70
+ Footer.displayName = "Footer";
5
71
  function FooterLink({ href, text, external = false }) {
6
72
  return /* @__PURE__ */ jsx(
7
73
  "a",
@@ -9,6 +75,7 @@ function FooterLink({ href, text, external = false }) {
9
75
  href,
10
76
  className: "text-muted-foreground hover:text-foreground transition-colors duration-200 text-sm",
11
77
  target: external ? "_blank" : void 0,
78
+ rel: external ? "noopener noreferrer" : void 0,
12
79
  children: text
13
80
  }
14
81
  );
@@ -18,69 +85,84 @@ function FooterLinkSection({
18
85
  links
19
86
  }) {
20
87
  return /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1 md:items-end", children: [
21
- /* @__PURE__ */ jsx("h3", { className: "font-semibold text-foreground", children: title }),
88
+ /* @__PURE__ */ jsx("h3", { className: "text-foreground", children: title }),
22
89
  /* @__PURE__ */ jsx("div", { className: "flex flex-wrap gap-4", children: links.map((link, index) => /* @__PURE__ */ jsxs(React.Fragment, { children: [
23
90
  /* @__PURE__ */ jsx(FooterLink, { ...link }),
24
91
  index < links.length - 1 && /* @__PURE__ */ jsx("span", { className: "text-muted-foreground text-sm", children: "\u2022" })
25
92
  ] }, link.href)) })
26
93
  ] });
27
94
  }
28
- function Footer({
95
+ function GearboxFooter({
29
96
  appName,
30
- legalReferences
97
+ legalReferences,
98
+ className,
99
+ mobileStatusContent
31
100
  }) {
32
- return /* @__PURE__ */ jsx("footer", { className: "border-t border-gray-800 bg-background px-4 py-2 mt-auto", children: /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-8 items-top", children: [
33
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-8 h-full justify-between", children: [
34
- /* @__PURE__ */ jsx(AppLogo, { appName, size: "small" }),
35
- /* @__PURE__ */ jsx(LegalDisclaimer, { hrefs: legalReferences })
36
- ] }),
37
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-8 h-full justify-between", children: [
38
- /* @__PURE__ */ jsx(
39
- FooterLinkSection,
40
- {
41
- title: "Legal",
42
- links: [
43
- {
44
- href: legalReferences.termsOfService,
45
- text: "Terms of Service"
46
- },
47
- {
48
- href: legalReferences.privacyNotice,
49
- text: "Privacy Notice"
50
- },
51
- {
52
- href: legalReferences.riskDisclosure,
53
- text: "Risk Disclosure"
54
- }
55
- ]
56
- }
101
+ return /* @__PURE__ */ jsx(
102
+ "footer",
103
+ {
104
+ className: cn(
105
+ "relative w-full border-t bg-card border-border mt-6 flex items-center justify-center",
106
+ className
57
107
  ),
58
- /* @__PURE__ */ jsx(
59
- FooterLinkSection,
60
- {
61
- title: "Developers",
62
- links: [
63
- {
64
- href: "https://docs.gearbox.fi/gearbox-permissionless-doc",
65
- text: "Documentation",
66
- external: true
67
- },
108
+ children: /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-4 items-top py-6 w-full px-4 max-w-[1440px]", children: [
109
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-4 h-full justify-between", children: [
110
+ /* @__PURE__ */ jsx(AppLogo, { appName, size: "small" }),
111
+ /* @__PURE__ */ jsx(LegalDisclaimer, { hrefs: legalReferences })
112
+ ] }),
113
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-4 h-full justify-between", children: [
114
+ /* @__PURE__ */ jsx(
115
+ FooterLinkSection,
68
116
  {
69
- href: "https://docs.gearbox.finance/risk-and-security/audits-bug-bounty",
70
- text: "Audits",
71
- external: true
72
- },
117
+ title: "Legal",
118
+ links: [
119
+ {
120
+ href: legalReferences.termsOfService,
121
+ text: "Terms of Service"
122
+ },
123
+ {
124
+ href: legalReferences.privacyNotice,
125
+ text: "Privacy Notice"
126
+ },
127
+ {
128
+ href: legalReferences.riskDisclosure,
129
+ text: "Risk Disclosure"
130
+ }
131
+ ]
132
+ }
133
+ ),
134
+ /* @__PURE__ */ jsx(
135
+ FooterLinkSection,
73
136
  {
74
- href: "https://github.com/Gearbox-protocol",
75
- text: "GitHub",
76
- external: true
137
+ title: "Developers",
138
+ links: [
139
+ {
140
+ href: "https://docs.gearbox.fi/gearbox-permissionless-doc",
141
+ text: "Documentation",
142
+ external: true
143
+ },
144
+ {
145
+ href: "https://docs.gearbox.finance/risk-and-security/audits-bug-bounty",
146
+ text: "Audits",
147
+ external: true
148
+ },
149
+ {
150
+ href: "https://github.com/Gearbox-protocol",
151
+ text: "GitHub",
152
+ external: true
153
+ }
154
+ ]
77
155
  }
78
- ]
79
- }
80
- )
81
- ] })
82
- ] }) });
156
+ )
157
+ ] }),
158
+ mobileStatusContent && /* @__PURE__ */ jsx("div", { className: "flex md:hidden w-full", children: mobileStatusContent })
159
+ ] })
160
+ }
161
+ );
83
162
  }
84
163
  export {
85
- Footer
164
+ Footer,
165
+ FooterLink,
166
+ FooterLinkSection,
167
+ GearboxFooter
86
168
  };
@@ -0,0 +1,183 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import React from "react";
3
+ import { cn } from "../../utils/cn.js";
4
+ const GRID_COLS_CLASSES = {
5
+ 1: "grid-cols-1",
6
+ 2: "grid-cols-2",
7
+ 3: "grid-cols-3",
8
+ 4: "grid-cols-4",
9
+ 5: "grid-cols-5",
10
+ 6: "grid-cols-6",
11
+ 7: "grid-cols-7",
12
+ 8: "grid-cols-8",
13
+ 9: "grid-cols-9",
14
+ 10: "grid-cols-10",
15
+ 11: "grid-cols-11",
16
+ 12: "grid-cols-12"
17
+ };
18
+ const GRID_COLS_SM_CLASSES = {
19
+ 1: "sm:grid-cols-1",
20
+ 2: "sm:grid-cols-2",
21
+ 3: "sm:grid-cols-3",
22
+ 4: "sm:grid-cols-4",
23
+ 5: "sm:grid-cols-5",
24
+ 6: "sm:grid-cols-6",
25
+ 7: "sm:grid-cols-7",
26
+ 8: "sm:grid-cols-8",
27
+ 9: "sm:grid-cols-9",
28
+ 10: "sm:grid-cols-10",
29
+ 11: "sm:grid-cols-11",
30
+ 12: "sm:grid-cols-12"
31
+ };
32
+ const GRID_COLS_MD_CLASSES = {
33
+ 1: "md:grid-cols-1",
34
+ 2: "md:grid-cols-2",
35
+ 3: "md:grid-cols-3",
36
+ 4: "md:grid-cols-4",
37
+ 5: "md:grid-cols-5",
38
+ 6: "md:grid-cols-6",
39
+ 7: "md:grid-cols-7",
40
+ 8: "md:grid-cols-8",
41
+ 9: "md:grid-cols-9",
42
+ 10: "md:grid-cols-10",
43
+ 11: "md:grid-cols-11",
44
+ 12: "md:grid-cols-12"
45
+ };
46
+ const GRID_COLS_LG_CLASSES = {
47
+ 1: "lg:grid-cols-1",
48
+ 2: "lg:grid-cols-2",
49
+ 3: "lg:grid-cols-3",
50
+ 4: "lg:grid-cols-4",
51
+ 5: "lg:grid-cols-5",
52
+ 6: "lg:grid-cols-6",
53
+ 7: "lg:grid-cols-7",
54
+ 8: "lg:grid-cols-8",
55
+ 9: "lg:grid-cols-9",
56
+ 10: "lg:grid-cols-10",
57
+ 11: "lg:grid-cols-11",
58
+ 12: "lg:grid-cols-12"
59
+ };
60
+ const GRID_COLS_XL_CLASSES = {
61
+ 1: "xl:grid-cols-1",
62
+ 2: "xl:grid-cols-2",
63
+ 3: "xl:grid-cols-3",
64
+ 4: "xl:grid-cols-4",
65
+ 5: "xl:grid-cols-5",
66
+ 6: "xl:grid-cols-6",
67
+ 7: "xl:grid-cols-7",
68
+ 8: "xl:grid-cols-8",
69
+ 9: "xl:grid-cols-9",
70
+ 10: "xl:grid-cols-10",
71
+ 11: "xl:grid-cols-11",
72
+ 12: "xl:grid-cols-12"
73
+ };
74
+ const GAP_CLASSES = {
75
+ 0: "gap-0",
76
+ 1: "gap-1",
77
+ 2: "gap-2",
78
+ 3: "gap-3",
79
+ 4: "gap-4",
80
+ 5: "gap-5",
81
+ 6: "gap-6",
82
+ 7: "gap-7",
83
+ 8: "gap-8",
84
+ 9: "gap-9",
85
+ 10: "gap-10",
86
+ 12: "gap-12",
87
+ 16: "gap-16",
88
+ 20: "gap-20",
89
+ 24: "gap-24"
90
+ };
91
+ const GAP_X_CLASSES = {
92
+ 0: "gap-x-0",
93
+ 1: "gap-x-1",
94
+ 2: "gap-x-2",
95
+ 3: "gap-x-3",
96
+ 4: "gap-x-4",
97
+ 5: "gap-x-5",
98
+ 6: "gap-x-6",
99
+ 7: "gap-x-7",
100
+ 8: "gap-x-8",
101
+ 9: "gap-x-9",
102
+ 10: "gap-x-10",
103
+ 12: "gap-x-12",
104
+ 16: "gap-x-16",
105
+ 20: "gap-x-20",
106
+ 24: "gap-x-24"
107
+ };
108
+ const GAP_Y_CLASSES = {
109
+ 0: "gap-y-0",
110
+ 1: "gap-y-1",
111
+ 2: "gap-y-2",
112
+ 3: "gap-y-3",
113
+ 4: "gap-y-4",
114
+ 5: "gap-y-5",
115
+ 6: "gap-y-6",
116
+ 7: "gap-y-7",
117
+ 8: "gap-y-8",
118
+ 9: "gap-y-9",
119
+ 10: "gap-y-10",
120
+ 12: "gap-y-12",
121
+ 16: "gap-y-16",
122
+ 20: "gap-y-20",
123
+ 24: "gap-y-24"
124
+ };
125
+ const getGridColsClass = (cols, breakpoint) => {
126
+ if (!cols) return "";
127
+ if (typeof cols === "number") {
128
+ if (breakpoint === "sm") return GRID_COLS_SM_CLASSES[cols] || "";
129
+ if (breakpoint === "md") return GRID_COLS_MD_CLASSES[cols] || "";
130
+ if (breakpoint === "lg") return GRID_COLS_LG_CLASSES[cols] || "";
131
+ if (breakpoint === "xl") return GRID_COLS_XL_CLASSES[cols] || "";
132
+ return GRID_COLS_CLASSES[cols] || "";
133
+ }
134
+ return "";
135
+ };
136
+ const getGapClass = (gap, axis) => {
137
+ if (gap === void 0) return "";
138
+ if (axis === "x") return GAP_X_CLASSES[gap] || "";
139
+ if (axis === "y") return GAP_Y_CLASSES[gap] || "";
140
+ return GAP_CLASSES[gap] || "";
141
+ };
142
+ const Grid = React.forwardRef(
143
+ ({
144
+ cols = 12,
145
+ sm,
146
+ md,
147
+ lg,
148
+ xl,
149
+ gap = 4,
150
+ gapX,
151
+ gapY,
152
+ className,
153
+ style,
154
+ children,
155
+ ...props
156
+ }, ref) => {
157
+ const customStyle = typeof cols === "string" ? { ...style, gridTemplateColumns: cols } : style;
158
+ return /* @__PURE__ */ jsx(
159
+ "div",
160
+ {
161
+ ref,
162
+ className: cn(
163
+ "grid",
164
+ getGridColsClass(cols),
165
+ getGridColsClass(sm, "sm"),
166
+ getGridColsClass(md, "md"),
167
+ getGridColsClass(lg, "lg"),
168
+ getGridColsClass(xl, "xl"),
169
+ gapX !== void 0 ? getGapClass(gapX, "x") : getGapClass(gap),
170
+ gapY !== void 0 && getGapClass(gapY, "y"),
171
+ className
172
+ ),
173
+ style: customStyle,
174
+ ...props,
175
+ children
176
+ }
177
+ );
178
+ }
179
+ );
180
+ Grid.displayName = "Grid";
181
+ export {
182
+ Grid
183
+ };
@@ -1,17 +1,69 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
- import { NavigationButton } from "../buttons/index.js";
3
- import { AppLogo } from "./app-logo.js";
4
- function Header({
5
- appName,
6
- navigation,
7
- connectKitButton
8
- }) {
9
- return /* @__PURE__ */ jsx("header", { className: "sticky top-0 z-50 border-b border-gray-800 bg-background px-4 py-2", children: /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
10
- /* @__PURE__ */ jsx(AppLogo, { appName }),
11
- navigation.length > 0 && /* @__PURE__ */ jsx("nav", { className: "hidden md:flex space-x-4", children: navigation.map((item) => /* @__PURE__ */ jsx(NavigationButton, { ...item }, item.href)) }),
12
- /* @__PURE__ */ jsx("div", { className: "flex items-center gap-4", children: connectKitButton })
13
- ] }) });
14
- }
2
+ import { Menu, X } from "lucide-react";
3
+ import React from "react";
4
+ import { cn } from "../../utils/cn.js";
5
+ const Header = React.forwardRef(
6
+ ({
7
+ navigation,
8
+ logo,
9
+ actions,
10
+ fixed = false,
11
+ sticky = false,
12
+ containerClassName,
13
+ className,
14
+ children,
15
+ mobileMenuContent,
16
+ ...props
17
+ }, ref) => {
18
+ const [mobileMenuOpen, setMobileMenuOpen] = React.useState(false);
19
+ return /* @__PURE__ */ jsxs(
20
+ "header",
21
+ {
22
+ ref,
23
+ className: cn(
24
+ "relative w-full bg-background h-18 mb-6 border-b flex flex-nowrap items-center border-border",
25
+ fixed && "fixed top-0 left-0 right-0 z-50",
26
+ sticky && "sticky top-0 z-50",
27
+ className
28
+ ),
29
+ ...props,
30
+ children: [
31
+ /* @__PURE__ */ jsxs(
32
+ "div",
33
+ {
34
+ className: cn(
35
+ "w-full h-full flex items-stretch justify-between mx-auto px-4 max-w-[1440px]",
36
+ containerClassName
37
+ ),
38
+ children: [
39
+ logo && /* @__PURE__ */ jsx("div", { className: "flex items-center", children: logo }),
40
+ navigation && /* @__PURE__ */ jsx("div", { className: "hidden md:flex items-center", children: navigation }),
41
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
42
+ actions && /* @__PURE__ */ jsx("div", { className: "hidden md:flex items-center gap-2", children: actions }),
43
+ (navigation || mobileMenuContent) && /* @__PURE__ */ jsx(
44
+ "button",
45
+ {
46
+ type: "button",
47
+ className: "md:hidden flex items-center justify-center p-2 rounded-md hover:bg-accent hover:text-accent-foreground focus:outline-none",
48
+ onClick: () => setMobileMenuOpen(!mobileMenuOpen),
49
+ "aria-label": mobileMenuOpen ? "Close menu" : "Open menu",
50
+ children: mobileMenuOpen ? /* @__PURE__ */ jsx(X, { className: "h-6 w-6" }) : /* @__PURE__ */ jsx(Menu, { className: "h-6 w-6" })
51
+ }
52
+ )
53
+ ] })
54
+ ]
55
+ }
56
+ ),
57
+ mobileMenuOpen && (navigation || mobileMenuContent) && /* @__PURE__ */ jsx("div", { className: "absolute top-full left-0 right-0 bg-background border-b border-border md:hidden z-40 shadow-lg", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col px-4 py-4 space-y-2", children: [
58
+ mobileMenuContent || navigation,
59
+ actions && /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-2 pt-4 border-t border-border mt-4", children: actions })
60
+ ] }) })
61
+ ]
62
+ }
63
+ );
64
+ }
65
+ );
66
+ Header.displayName = "Header";
15
67
  export {
16
68
  Header
17
69
  };
@@ -1,5 +1,9 @@
1
1
  export * from "./app-logo.js";
2
+ export * from "./col.js";
3
+ export * from "./container.js";
2
4
  export * from "./footer.js";
5
+ export * from "./grid.js";
3
6
  export * from "./header.js";
7
+ export * from "./layout.js";
4
8
  export * from "./legal-disclaimer.js";
5
9
  export * from "./page-layout.js";