@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.
- package/README.md +120 -1
- package/dist/cjs/components/asset-line.js +117 -0
- package/dist/cjs/components/assets-list-cell.js +73 -0
- package/dist/cjs/components/assets-ratio.js +98 -0
- package/dist/cjs/components/auth/siwe-provider.js +4 -4
- package/dist/cjs/components/base-link.js +61 -0
- package/dist/cjs/components/block-sync.js +118 -0
- package/dist/cjs/components/breadcrumbs.js +77 -0
- package/dist/cjs/components/buttons/back-button.js +37 -19
- package/dist/cjs/components/buttons/button.js +4 -4
- package/dist/cjs/components/buttons/filter-button.js +68 -0
- package/dist/cjs/components/buttons/index.js +4 -0
- package/dist/cjs/components/buttons/navigation-button.js +2 -2
- package/dist/cjs/components/buttons/range-buttons.js +63 -0
- package/dist/cjs/components/card-grid.js +127 -0
- package/dist/cjs/components/card.js +176 -0
- package/dist/cjs/components/checkbox-item.js +82 -0
- package/dist/cjs/components/compound-apy.js +232 -0
- package/dist/cjs/components/credit-session-status.js +67 -0
- package/dist/cjs/components/description.js +48 -0
- package/dist/cjs/components/detailed-page-title.js +96 -0
- package/dist/cjs/components/dialog/dialog-container.js +75 -0
- package/dist/cjs/components/dialog/dialog-content.js +66 -0
- package/dist/cjs/components/dialog/dialog-description.js +50 -0
- package/dist/cjs/components/dialog/dialog-footer.js +53 -0
- package/dist/cjs/components/dialog/dialog-header.js +53 -0
- package/dist/cjs/components/dialog/dialog-overlay.js +53 -0
- package/dist/cjs/components/dialog/dialog-title.js +50 -0
- package/dist/cjs/components/dialog/dialog.js +45 -0
- package/dist/cjs/components/dialog/index.js +36 -0
- package/dist/cjs/components/dropdown-menu/dropdown-menu-checkbox-item.js +63 -0
- package/dist/cjs/components/dropdown-menu/dropdown-menu-content.js +55 -0
- package/dist/cjs/components/dropdown-menu/dropdown-menu-item.js +54 -0
- package/dist/cjs/components/dropdown-menu/dropdown-menu-label.js +54 -0
- package/dist/cjs/components/dropdown-menu/dropdown-menu-radio-item.js +58 -0
- package/dist/cjs/components/dropdown-menu/dropdown-menu-separator.js +50 -0
- package/dist/cjs/components/dropdown-menu/dropdown-menu-shortcut.js +52 -0
- package/dist/cjs/components/dropdown-menu/dropdown-menu-sub-content.js +53 -0
- package/dist/cjs/components/dropdown-menu/dropdown-menu-sub-trigger.js +59 -0
- package/dist/cjs/components/dropdown-menu/dropdown-menu.js +54 -0
- package/dist/cjs/components/dropdown-menu/index.js +40 -0
- package/dist/cjs/components/error-message.js +70 -0
- package/dist/cjs/components/filter/filter-block.js +52 -0
- package/dist/cjs/components/filter/filter-checkbox-item.js +59 -0
- package/dist/cjs/components/filter/filter-chip.js +74 -0
- package/dist/cjs/components/filter/filter-chips.js +84 -0
- package/dist/cjs/components/filter/filter-dropdown-item.js +54 -0
- package/dist/cjs/components/filter/filter-group.js +43 -0
- package/dist/cjs/components/filter/filter-label.js +54 -0
- package/dist/cjs/components/filter/filter-modal-item.js +55 -0
- package/dist/cjs/components/filter/filter-modal.js +242 -0
- package/dist/cjs/components/filter/filter-radio-item.js +58 -0
- package/dist/cjs/components/filter/filter-separator.js +50 -0
- package/dist/cjs/components/filter/index.js +44 -0
- package/dist/cjs/components/filter/interface.js +16 -0
- package/dist/cjs/components/filter/variants.js +41 -0
- package/dist/cjs/components/form/form-field.js +67 -0
- package/dist/cjs/components/{editable-table → form}/index.js +4 -8
- package/dist/cjs/components/graph/default-config.js +158 -0
- package/dist/cjs/components/graph/formatters.js +175 -0
- package/dist/cjs/components/graph/graph-current-value.js +54 -0
- package/dist/cjs/components/graph/graph-tooltip.js +142 -0
- package/dist/cjs/components/graph/graph-view.js +233 -0
- package/dist/cjs/components/graph/graph.js +637 -0
- package/dist/cjs/components/graph/index.js +44 -0
- package/dist/cjs/components/graph/plugins/vertical-line.js +127 -0
- package/dist/cjs/components/guard.js +34 -0
- package/dist/cjs/components/health-factor.js +100 -0
- package/dist/cjs/components/help-center-container.js +107 -0
- package/dist/cjs/components/hide-on.js +66 -0
- package/dist/cjs/components/horizontal-indicator.js +63 -0
- package/dist/cjs/components/image.js +56 -0
- package/dist/cjs/components/index.js +93 -9
- package/dist/cjs/components/input.js +43 -21
- package/dist/cjs/components/label.js +29 -5
- package/dist/cjs/components/layout/app-logo.js +7 -17
- package/dist/cjs/components/layout/col.js +192 -0
- package/dist/cjs/components/layout/container.js +75 -0
- package/dist/cjs/components/layout/footer.js +137 -52
- package/dist/cjs/components/layout/grid.js +217 -0
- package/dist/cjs/components/layout/header.js +75 -13
- package/dist/cjs/components/layout/index.js +8 -0
- package/dist/cjs/components/layout/layout.js +65 -0
- package/dist/cjs/components/layout/legal-disclaimer.js +4 -14
- package/dist/cjs/components/liquidation/index.js +28 -0
- package/dist/cjs/components/liquidation/liquidation-assets-table.js +95 -0
- package/dist/cjs/components/liquidation/liquidation-graph-legend.js +41 -0
- package/dist/cjs/components/liquidation/liquidation-graph-tip.js +93 -0
- package/dist/cjs/components/liquidation/liquidation-graph.js +214 -0
- package/dist/cjs/components/loader-guard.js +47 -0
- package/dist/cjs/components/loading-guard.js +55 -0
- package/dist/cjs/components/markdown-viewer.js +4 -2
- package/dist/cjs/components/navbar-indicator-context.js +94 -0
- package/dist/cjs/components/navbar.js +131 -0
- package/dist/cjs/components/navitem.js +148 -0
- package/dist/cjs/components/next/back-button.js +43 -0
- package/dist/cjs/components/next/index.js +40 -0
- package/dist/cjs/components/next/siwe-provider.js +35 -0
- package/dist/cjs/components/next/token-icon.js +43 -0
- package/dist/cjs/components/next/web3-providers.js +116 -0
- package/dist/cjs/components/not-found.js +58 -0
- package/dist/cjs/components/options-list.js +88 -0
- package/dist/cjs/components/page-title.js +116 -0
- package/dist/cjs/components/percent-indicator.js +56 -0
- package/dist/cjs/components/pool-points-indicator.js +107 -0
- package/dist/cjs/components/search-bar.js +1 -0
- package/dist/cjs/components/search-line.js +225 -0
- package/dist/cjs/components/select.js +30 -9
- package/dist/cjs/components/short-string.js +58 -0
- package/dist/cjs/components/signatures/vertical-timeline.js +1 -0
- package/dist/cjs/components/skeleton.js +56 -3
- package/dist/cjs/components/stat-badge.js +189 -0
- package/dist/cjs/components/tab-control.js +254 -0
- package/dist/cjs/components/table/editable-grid-table.js +131 -0
- package/dist/cjs/components/{editable-table → table}/editable-table.js +1 -1
- package/dist/cjs/components/table/grid-error-line.js +60 -0
- package/dist/cjs/components/table/grid-loading-line.js +64 -0
- package/dist/cjs/components/table/grid-table-loader.js +56 -0
- package/dist/cjs/components/table/grid-table.js +203 -0
- package/dist/cjs/components/table/index.js +46 -0
- package/dist/cjs/components/table/sortable-head-cell.js +48 -0
- package/dist/cjs/components/table/table-loader-guard.js +55 -0
- package/dist/cjs/components/table/table-loader.js +46 -0
- package/dist/cjs/components/table/table-sm.js +93 -0
- package/dist/cjs/components/{table.js → table/table.js} +78 -22
- package/dist/cjs/components/textarea.js +27 -7
- package/dist/cjs/components/theme-provider.js +127 -0
- package/dist/cjs/components/theme-toggle.js +85 -0
- package/dist/cjs/components/token-icon.js +69 -20
- package/dist/cjs/components/token-symbol.js +84 -0
- package/dist/cjs/components/tooltip.js +1 -1
- package/dist/cjs/components/typed-intl/index.js +57 -0
- package/dist/cjs/components/vspace.js +31 -0
- package/dist/cjs/components/with-filter-button.js +84 -0
- package/dist/cjs/configs/design-tokens.js +109 -0
- package/dist/cjs/configs/index.js +48 -0
- package/dist/cjs/configs/tailwind-preset.js +162 -0
- package/dist/cjs/configs/tailwind.config.js +20 -67
- package/dist/cjs/configs/variants.js +58 -0
- package/dist/cjs/hooks/index.js +34 -0
- package/dist/cjs/hooks/use-controllable-state.js +50 -0
- package/dist/cjs/hooks/use-debounce.js +68 -0
- package/dist/cjs/hooks/use-filter.js +80 -0
- package/dist/cjs/hooks/use-hf.js +62 -0
- package/dist/cjs/hooks/use-liquidation/index.js +204 -0
- package/dist/cjs/hooks/use-liquidation/types.js +16 -0
- package/dist/cjs/hooks/use-liquidation/utils.js +253 -0
- package/dist/cjs/hooks/use-media-query.js +51 -0
- package/dist/cjs/hooks/use-previous.js +36 -0
- package/dist/cjs/index.js +157 -3
- package/dist/cjs/types/component-props.js +16 -0
- package/dist/cjs/types/filter.js +16 -0
- package/dist/cjs/types/footer.js +16 -0
- package/dist/cjs/types/graph.js +16 -0
- package/dist/cjs/types/help.js +16 -0
- package/dist/cjs/types/index.js +16 -0
- package/dist/cjs/types/range-item.js +16 -0
- package/dist/cjs/utils/a11y.js +39 -0
- package/dist/cjs/utils/bn-to-input-view.js +60 -0
- package/dist/cjs/utils/colors.js +96 -0
- package/dist/cjs/utils/format-asset-amount.js +43 -0
- package/dist/cjs/utils/format-money.js +68 -0
- package/dist/cjs/utils/index.js +29 -2
- package/dist/cjs/utils/interface.js +16 -0
- package/dist/cjs/utils/react.js +105 -0
- package/dist/cjs/utils/short-sha.js +28 -0
- package/dist/cjs/utils/sort.js +16 -0
- package/dist/cjs/utils/templates.js +50 -0
- package/dist/esm/components/asset-line.js +83 -0
- package/dist/esm/components/assets-list-cell.js +39 -0
- package/dist/esm/components/assets-ratio.js +64 -0
- package/dist/esm/components/auth/siwe-provider.js +4 -4
- package/dist/esm/components/base-link.js +27 -0
- package/dist/esm/components/block-sync.js +99 -0
- package/dist/esm/components/breadcrumbs.js +43 -0
- package/dist/esm/components/buttons/back-button.js +35 -8
- package/dist/esm/components/buttons/button.js +4 -4
- package/dist/esm/components/buttons/filter-button.js +34 -0
- package/dist/esm/components/buttons/index.js +2 -0
- package/dist/esm/components/buttons/navigation-button.js +2 -2
- package/dist/esm/components/buttons/range-buttons.js +29 -0
- package/dist/esm/components/card-grid.js +92 -0
- package/dist/esm/components/card.js +133 -0
- package/dist/esm/components/checkbox-item.js +48 -0
- package/dist/esm/components/compound-apy.js +203 -0
- package/dist/esm/components/credit-session-status.js +33 -0
- package/dist/esm/components/description.js +14 -0
- package/dist/esm/components/detailed-page-title.js +67 -0
- package/dist/esm/components/dialog/dialog-container.js +41 -0
- package/dist/esm/components/dialog/dialog-content.js +32 -0
- package/dist/esm/components/dialog/dialog-description.js +16 -0
- package/dist/esm/components/dialog/dialog-footer.js +19 -0
- package/dist/esm/components/dialog/dialog-header.js +19 -0
- package/dist/esm/components/dialog/dialog-overlay.js +19 -0
- package/dist/esm/components/dialog/dialog-title.js +16 -0
- package/dist/esm/components/dialog/dialog.js +9 -0
- package/dist/esm/components/dialog/index.js +8 -0
- package/dist/esm/components/dropdown-menu/dropdown-menu-checkbox-item.js +29 -0
- package/dist/esm/components/dropdown-menu/dropdown-menu-content.js +21 -0
- package/dist/esm/components/dropdown-menu/dropdown-menu-item.js +20 -0
- package/dist/esm/components/dropdown-menu/dropdown-menu-label.js +20 -0
- package/dist/esm/components/dropdown-menu/dropdown-menu-radio-item.js +24 -0
- package/dist/esm/components/dropdown-menu/dropdown-menu-separator.js +16 -0
- package/dist/esm/components/dropdown-menu/dropdown-menu-shortcut.js +18 -0
- package/dist/esm/components/dropdown-menu/dropdown-menu-sub-content.js +19 -0
- package/dist/esm/components/dropdown-menu/dropdown-menu-sub-trigger.js +25 -0
- package/dist/esm/components/dropdown-menu/dropdown-menu.js +15 -0
- package/dist/esm/components/dropdown-menu/index.js +10 -0
- package/dist/esm/components/error-message.js +36 -0
- package/dist/esm/components/filter/filter-block.js +18 -0
- package/dist/esm/components/filter/filter-checkbox-item.js +25 -0
- package/dist/esm/components/filter/filter-chip.js +40 -0
- package/dist/esm/components/filter/filter-chips.js +50 -0
- package/dist/esm/components/filter/filter-dropdown-item.js +20 -0
- package/dist/esm/components/filter/filter-group.js +9 -0
- package/dist/esm/components/filter/filter-label.js +20 -0
- package/dist/esm/components/filter/filter-modal-item.js +21 -0
- package/dist/esm/components/filter/filter-modal.js +214 -0
- package/dist/esm/components/filter/filter-radio-item.js +24 -0
- package/dist/esm/components/filter/filter-separator.js +16 -0
- package/dist/esm/components/filter/index.js +12 -0
- package/dist/esm/components/filter/interface.js +0 -0
- package/dist/esm/components/filter/variants.js +17 -0
- package/dist/esm/components/form/form-field.js +43 -0
- package/dist/esm/components/form/index.js +1 -0
- package/dist/esm/components/graph/default-config.js +129 -0
- package/dist/esm/components/graph/formatters.js +150 -0
- package/dist/esm/components/graph/graph-current-value.js +30 -0
- package/dist/esm/components/graph/graph-tooltip.js +118 -0
- package/dist/esm/components/graph/graph-view.js +196 -0
- package/dist/esm/components/graph/graph.js +606 -0
- package/dist/esm/components/graph/index.js +15 -0
- package/dist/esm/components/graph/plugins/vertical-line.js +103 -0
- package/dist/esm/components/guard.js +10 -0
- package/dist/esm/components/health-factor.js +63 -0
- package/dist/esm/components/help-center-container.js +83 -0
- package/dist/esm/components/hide-on.js +41 -0
- package/dist/esm/components/horizontal-indicator.js +34 -0
- package/dist/esm/components/image.js +32 -0
- package/dist/esm/components/index.js +46 -4
- package/dist/esm/components/input.js +41 -20
- package/dist/esm/components/label.js +27 -4
- package/dist/esm/components/layout/app-logo.js +5 -5
- package/dist/esm/components/layout/col.js +158 -0
- package/dist/esm/components/layout/container.js +41 -0
- package/dist/esm/components/layout/footer.js +134 -52
- package/dist/esm/components/layout/grid.js +183 -0
- package/dist/esm/components/layout/header.js +65 -13
- package/dist/esm/components/layout/index.js +4 -0
- package/dist/esm/components/layout/layout.js +31 -0
- package/dist/esm/components/layout/legal-disclaimer.js +4 -4
- package/dist/esm/components/liquidation/index.js +4 -0
- package/dist/esm/components/liquidation/liquidation-assets-table.js +71 -0
- package/dist/esm/components/liquidation/liquidation-graph-legend.js +17 -0
- package/dist/esm/components/liquidation/liquidation-graph-tip.js +72 -0
- package/dist/esm/components/liquidation/liquidation-graph.js +191 -0
- package/dist/esm/components/loader-guard.js +23 -0
- package/dist/esm/components/loading-guard.js +31 -0
- package/dist/esm/components/markdown-viewer.js +4 -2
- package/dist/esm/components/navbar-indicator-context.js +76 -0
- package/dist/esm/components/navbar.js +98 -0
- package/dist/esm/components/navitem.js +113 -0
- package/dist/esm/components/next/back-button.js +11 -0
- package/dist/esm/components/next/index.js +12 -0
- package/dist/esm/components/next/siwe-provider.js +11 -0
- package/dist/esm/components/next/token-icon.js +11 -0
- package/dist/esm/components/next/web3-providers.js +92 -0
- package/dist/esm/components/not-found.js +24 -0
- package/dist/esm/components/options-list.js +53 -0
- package/dist/esm/components/page-title.js +80 -0
- package/dist/esm/components/percent-indicator.js +22 -0
- package/dist/esm/components/pool-points-indicator.js +73 -0
- package/dist/esm/components/search-bar.js +1 -0
- package/dist/esm/components/search-line.js +188 -0
- package/dist/esm/components/select.js +28 -8
- package/dist/esm/components/short-string.js +39 -0
- package/dist/esm/components/signatures/vertical-timeline.js +1 -0
- package/dist/esm/components/skeleton.js +54 -2
- package/dist/esm/components/stat-badge.js +155 -0
- package/dist/esm/components/tab-control.js +216 -0
- package/dist/esm/components/table/editable-grid-table.js +105 -0
- package/dist/esm/components/{editable-table → table}/editable-table.js +1 -1
- package/dist/esm/components/table/grid-error-line.js +36 -0
- package/dist/esm/components/table/grid-loading-line.js +30 -0
- package/dist/esm/components/table/grid-table-loader.js +22 -0
- package/dist/esm/components/table/grid-table.js +159 -0
- package/dist/esm/components/table/index.js +13 -0
- package/dist/esm/components/table/sortable-head-cell.js +24 -0
- package/dist/esm/components/table/table-loader-guard.js +31 -0
- package/dist/esm/components/table/table-loader.js +22 -0
- package/dist/esm/components/table/table-sm.js +58 -0
- package/dist/esm/components/{table.js → table/table.js} +74 -21
- package/dist/esm/components/textarea.js +25 -6
- package/dist/esm/components/theme-provider.js +108 -0
- package/dist/esm/components/theme-toggle.js +61 -0
- package/dist/esm/components/token-icon.js +70 -11
- package/dist/esm/components/token-symbol.js +50 -0
- package/dist/esm/components/tooltip.js +1 -1
- package/dist/esm/components/typed-intl/index.js +32 -0
- package/dist/esm/components/vspace.js +7 -0
- package/dist/esm/components/with-filter-button.js +50 -0
- package/dist/esm/configs/design-tokens.js +85 -0
- package/dist/esm/configs/index.js +9 -0
- package/dist/esm/configs/tailwind-preset.js +128 -0
- package/dist/esm/configs/tailwind.config.js +16 -57
- package/dist/esm/configs/variants.js +31 -0
- package/dist/esm/hooks/index.js +7 -0
- package/dist/esm/hooks/use-controllable-state.js +26 -0
- package/dist/esm/hooks/use-debounce.js +43 -0
- package/dist/esm/hooks/use-filter.js +52 -0
- package/dist/esm/hooks/use-hf.js +38 -0
- package/dist/esm/hooks/use-liquidation/index.js +188 -0
- package/dist/esm/hooks/use-liquidation/types.js +0 -0
- package/dist/esm/hooks/use-liquidation/utils.js +215 -0
- package/dist/esm/hooks/use-media-query.js +24 -0
- package/dist/esm/hooks/use-previous.js +12 -0
- package/dist/esm/index.js +84 -1
- package/dist/esm/types/component-props.js +0 -0
- package/dist/esm/types/filter.js +0 -0
- package/dist/esm/types/footer.js +0 -0
- package/dist/esm/types/graph.js +0 -0
- package/dist/esm/types/help.js +0 -0
- package/dist/esm/types/index.js +0 -0
- package/dist/esm/types/range-item.js +0 -0
- package/dist/esm/utils/a11y.js +14 -0
- package/dist/esm/utils/bn-to-input-view.js +36 -0
- package/dist/esm/utils/colors.js +69 -0
- package/dist/esm/utils/format-asset-amount.js +19 -0
- package/dist/esm/utils/format-money.js +40 -0
- package/dist/esm/utils/index.js +21 -1
- package/dist/esm/utils/interface.js +0 -0
- package/dist/esm/utils/react.js +70 -0
- package/dist/esm/utils/short-sha.js +4 -0
- package/dist/esm/utils/sort.js +0 -0
- package/dist/esm/utils/templates.js +24 -0
- package/dist/globals.css +230 -52
- package/dist/grid-safelist.css +264 -0
- package/dist/types/components/asset-line.d.ts +59 -0
- package/dist/types/components/assets-list-cell.d.ts +48 -0
- package/dist/types/components/assets-ratio.d.ts +9 -0
- package/dist/types/components/auth/signin-required.d.ts +1 -1
- package/dist/types/components/auth/siwe-provider.d.ts +2 -1
- package/dist/types/components/badge.d.ts +1 -1
- package/dist/types/components/base-link.d.ts +58 -0
- package/dist/types/components/block-sync.d.ts +8 -0
- package/dist/types/components/breadcrumbs.d.ts +24 -0
- package/dist/types/components/buttons/back-button.d.ts +15 -20
- package/dist/types/components/buttons/button.d.ts +37 -3
- package/dist/types/components/buttons/filter-button.d.ts +52 -0
- package/dist/types/components/buttons/index.d.ts +2 -0
- package/dist/types/components/buttons/range-buttons.d.ts +49 -0
- package/dist/types/components/card-grid.d.ts +25 -0
- package/dist/types/components/card.d.ts +116 -0
- package/dist/types/components/cards/card.d.ts +2 -2
- package/dist/types/components/checkbox-item.d.ts +56 -0
- package/dist/types/components/compound-apy.d.ts +80 -0
- package/dist/types/components/credit-session-status.d.ts +7 -0
- package/dist/types/components/description.d.ts +26 -0
- package/dist/types/components/detailed-page-title.d.ts +31 -0
- package/dist/types/components/dialog/dialog-container.d.ts +12 -0
- package/dist/types/components/dialog/dialog-content.d.ts +4 -0
- package/dist/types/components/dialog/dialog-description.d.ts +4 -0
- package/dist/types/components/dialog/dialog-footer.d.ts +6 -0
- package/dist/types/components/dialog/dialog-header.d.ts +6 -0
- package/dist/types/components/dialog/dialog-overlay.d.ts +4 -0
- package/dist/types/components/dialog/dialog-title.d.ts +4 -0
- package/dist/types/components/dialog/dialog.d.ts +5 -0
- package/dist/types/components/dialog/index.d.ts +8 -0
- package/dist/types/components/dropdown-menu/dropdown-menu-checkbox-item.d.ts +22 -0
- package/dist/types/components/dropdown-menu/dropdown-menu-content.d.ts +4 -0
- package/dist/types/components/dropdown-menu/dropdown-menu-item.d.ts +6 -0
- package/dist/types/components/dropdown-menu/dropdown-menu-label.d.ts +6 -0
- package/dist/types/components/dropdown-menu/dropdown-menu-radio-item.d.ts +4 -0
- package/dist/types/components/dropdown-menu/dropdown-menu-separator.d.ts +4 -0
- package/dist/types/components/dropdown-menu/dropdown-menu-shortcut.d.ts +6 -0
- package/dist/types/components/dropdown-menu/dropdown-menu-sub-content.d.ts +4 -0
- package/dist/types/components/dropdown-menu/dropdown-menu-sub-trigger.d.ts +6 -0
- package/dist/types/components/dropdown-menu/dropdown-menu.d.ts +8 -0
- package/dist/types/components/dropdown-menu/index.d.ts +10 -0
- package/dist/types/components/error-message.d.ts +21 -0
- package/dist/types/components/filter/filter-block.d.ts +17 -0
- package/dist/types/components/filter/filter-checkbox-item.d.ts +23 -0
- package/dist/types/components/filter/filter-chip.d.ts +34 -0
- package/dist/types/components/filter/filter-chips.d.ts +42 -0
- package/dist/types/components/filter/filter-dropdown-item.d.ts +24 -0
- package/dist/types/components/filter/filter-group.d.ts +22 -0
- package/dist/types/components/filter/filter-label.d.ts +21 -0
- package/dist/types/components/filter/filter-modal-item.d.ts +31 -0
- package/dist/types/components/filter/filter-modal.d.ts +123 -0
- package/dist/types/components/filter/filter-radio-item.d.ts +19 -0
- package/dist/types/components/filter/filter-separator.d.ts +22 -0
- package/dist/types/components/filter/index.d.ts +109 -0
- package/dist/types/components/filter/interface.d.ts +24 -0
- package/dist/types/components/filter/variants.d.ts +3 -0
- package/dist/types/components/form/form-field.d.ts +38 -0
- package/dist/types/components/form/index.d.ts +1 -0
- package/dist/types/components/graph/default-config.d.ts +20 -0
- package/dist/types/components/graph/formatters.d.ts +16 -0
- package/dist/types/components/graph/graph-current-value.d.ts +13 -0
- package/dist/types/components/graph/graph-tooltip.d.ts +24 -0
- package/dist/types/components/graph/graph-view.d.ts +198 -0
- package/dist/types/components/graph/graph.d.ts +49 -0
- package/dist/types/components/graph/index.d.ts +7 -0
- package/dist/types/components/guard.d.ts +34 -0
- package/dist/types/components/health-factor.d.ts +63 -0
- package/dist/types/components/help-center-container.d.ts +22 -0
- package/dist/types/components/hide-on.d.ts +32 -0
- package/dist/types/components/horizontal-indicator.d.ts +22 -0
- package/dist/types/components/image.d.ts +35 -0
- package/dist/types/components/index.d.ts +44 -1
- package/dist/types/components/input.d.ts +26 -9
- package/dist/types/components/label.d.ts +26 -5
- package/dist/types/components/layout/app-logo.d.ts +1 -0
- package/dist/types/components/layout/col.d.ts +43 -0
- package/dist/types/components/layout/container.d.ts +37 -0
- package/dist/types/components/layout/footer.d.ts +44 -5
- package/dist/types/components/layout/grid.d.ts +48 -0
- package/dist/types/components/layout/header.d.ts +68 -12
- package/dist/types/components/layout/index.d.ts +4 -0
- package/dist/types/components/layout/layout.d.ts +12 -0
- package/dist/types/components/liquidation/index.d.ts +4 -0
- package/dist/types/components/liquidation/liquidation-assets-table.d.ts +14 -0
- package/dist/types/components/liquidation/liquidation-graph-legend.d.ts +2 -0
- package/dist/types/components/liquidation/liquidation-graph-tip.d.ts +13 -0
- package/dist/types/components/liquidation/liquidation-graph.d.ts +19 -0
- package/dist/types/components/loader-guard.d.ts +17 -0
- package/dist/types/components/loading-guard.d.ts +18 -0
- package/dist/types/components/navbar-indicator-context.d.ts +13 -0
- package/dist/types/components/navbar.d.ts +25 -0
- package/dist/types/components/navitem.d.ts +67 -0
- package/dist/types/components/next/back-button.d.ts +3 -0
- package/dist/types/components/next/index.d.ts +10 -0
- package/dist/types/components/next/siwe-provider.d.ts +7 -0
- package/dist/types/components/next/token-icon.d.ts +3 -0
- package/dist/types/components/next/web3-providers.d.ts +29 -0
- package/dist/types/components/not-found.d.ts +18 -0
- package/dist/types/components/options-list.d.ts +15 -0
- package/dist/types/components/page-title.d.ts +69 -0
- package/dist/types/components/percent-indicator.d.ts +28 -0
- package/dist/types/components/pool-points-indicator.d.ts +41 -0
- package/dist/types/components/search-line.d.ts +117 -0
- package/dist/types/components/select.d.ts +9 -2
- package/dist/types/components/short-string.d.ts +39 -0
- package/dist/types/components/skeleton.d.ts +28 -3
- package/dist/types/components/stat-badge.d.ts +169 -0
- package/dist/types/components/tab-control.d.ts +39 -0
- package/dist/types/components/table/editable-grid-table.d.ts +120 -0
- package/dist/types/components/table/grid-error-line.d.ts +49 -0
- package/dist/types/components/table/grid-loading-line.d.ts +36 -0
- package/dist/types/components/table/grid-table-loader.d.ts +25 -0
- package/dist/types/components/table/grid-table.d.ts +158 -0
- package/dist/types/components/table/index.d.ts +13 -0
- package/dist/types/components/table/sortable-head-cell.d.ts +36 -0
- package/dist/types/components/table/table-loader-guard.d.ts +45 -0
- package/dist/types/components/table/table-loader.d.ts +46 -0
- package/dist/types/components/table/table-sm.d.ts +94 -0
- package/dist/types/components/{table.d.ts → table/table.d.ts} +39 -12
- package/dist/types/components/{editable-table → table}/updated-value.d.ts +3 -0
- package/dist/types/components/textarea.d.ts +24 -5
- package/dist/types/components/theme-provider.d.ts +34 -0
- package/dist/types/components/theme-toggle.d.ts +5 -0
- package/dist/types/components/token-icon.d.ts +8 -6
- package/dist/types/components/token-symbol.d.ts +71 -0
- package/dist/types/components/typed-intl/index.d.ts +19 -0
- package/dist/types/components/vspace.d.ts +27 -0
- package/dist/types/components/with-filter-button.d.ts +54 -0
- package/dist/types/configs/design-tokens.d.ts +73 -0
- package/dist/types/configs/index.d.ts +4 -0
- package/dist/types/configs/tailwind-preset.d.ts +126 -0
- package/dist/types/configs/tailwind.config.d.ts +29 -0
- package/dist/types/configs/variants.d.ts +28 -0
- package/dist/types/hooks/index.d.ts +7 -0
- package/dist/types/hooks/use-controllable-state.d.ts +24 -0
- package/dist/types/hooks/use-debounce.d.ts +31 -0
- package/dist/types/hooks/use-filter.d.ts +37 -0
- package/dist/types/hooks/use-hf.d.ts +15 -0
- package/dist/types/hooks/use-liquidation/index.d.ts +52 -0
- package/dist/types/hooks/use-liquidation/types.d.ts +16 -0
- package/dist/types/hooks/use-liquidation/utils.d.ts +66 -0
- package/dist/types/hooks/use-media-query.d.ts +25 -0
- package/dist/types/hooks/use-previous.d.ts +10 -0
- package/dist/types/index.d.ts +71 -2
- package/dist/types/types/component-props.d.ts +16 -0
- package/dist/types/types/filter.d.ts +8 -0
- package/dist/types/types/footer.d.ts +30 -0
- package/dist/types/types/graph.d.ts +22 -0
- package/dist/types/types/help.d.ts +4 -0
- package/dist/types/types/index.d.ts +6 -0
- package/dist/types/types/range-item.d.ts +9 -0
- package/dist/types/utils/a11y.d.ts +24 -0
- package/dist/types/utils/bn-to-input-view.d.ts +17 -0
- package/dist/types/utils/colors.d.ts +29 -0
- package/dist/types/utils/format-asset-amount.d.ts +16 -0
- package/dist/types/utils/format-money.d.ts +64 -0
- package/dist/types/utils/index.d.ts +10 -0
- package/dist/types/utils/interface.d.ts +9 -0
- package/dist/types/utils/react.d.ts +31 -0
- package/dist/types/utils/short-sha.d.ts +9 -0
- package/dist/types/utils/sort.d.ts +5 -0
- package/dist/types/utils/templates.d.ts +61 -0
- package/package.json +66 -28
- package/dist/cjs/components/dialog.js +0 -137
- package/dist/cjs/components/dropdown-menu.js +0 -200
- package/dist/esm/components/dialog.js +0 -97
- package/dist/esm/components/dropdown-menu.js +0 -152
- package/dist/esm/components/editable-table/index.js +0 -3
- package/dist/types/components/dialog.d.ts +0 -38
- package/dist/types/components/dropdown-menu.d.ts +0 -59
- package/dist/types/components/editable-table/index.d.ts +0 -3
- /package/dist/cjs/components/{editable-table → table}/edit-button.js +0 -0
- /package/dist/cjs/components/{editable-table → table}/updated-value.js +0 -0
- /package/dist/esm/components/{editable-table → table}/edit-button.js +0 -0
- /package/dist/esm/components/{editable-table → table}/updated-value.js +0 -0
- /package/dist/types/components/{editable-table → table}/edit-button.d.ts +0 -0
- /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,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,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>>;
|