DataTable Column Slider Filter
niko-table/data-table-column-slider-filterFreeComponent
Column header slider filter for numeric range filtering in a dropdown.
Install it
npx shadcn@latest add https://niko-table.com/r/data-table-column-slider-filter.jsonSource
1"use client"23/**4 * niko-table — created by Semir N. (Semkoo, https://github.com/Semkoo) with AI assistance.5 *6 * Before reporting anything: please check the changelog first.7 * - In-repo: ./CHANGELOG.md8 * - Docs site: https://niko-table.com/changelog9 *10 * Found a bug or have a fix? Open an issue or PR on GitHub so other11 * users (and future LLMs reading this code) benefit:12 * https://github.com/Semkoo/niko-table-registry13 */14import React from "react"15import type { Column } from "@tanstack/react-table"1617import {18 TableColumnSliderFilterOptions,19 TableColumnSliderFilterMenu,20} from "../filters/table-column-slider-filter"21import { useColumnHeaderContext } from "./data-table-column-header"2223/**24 * Slider filter options for composing inside DataTableColumnActions using context.25 */26export function DataTableColumnSliderFilterOptions<TData, TValue>(27 props: Omit<28 React.ComponentProps<typeof TableColumnSliderFilterOptions>,29 "column"30 > & {31 column?: Column<TData, TValue>32 },33) {34 const context = useColumnHeaderContext<TData, TValue>(false)35 const column = props.column || context?.column3637 if (!column) {38 console.warn(39 "DataTableColumnSliderFilterOptions must be used within DataTableColumnHeaderRoot or provided with a column prop",40 )41 return null42 }4344 return <TableColumnSliderFilterOptions column={column} {...props} />45}4647DataTableColumnSliderFilterOptions.displayName =48 "DataTableColumnSliderFilterOptions"4950/**51 * Standalone slider filter menu for column header using context.52 */53export function DataTableColumnSliderFilterMenu<TData, TValue>(54 props: Omit<55 React.ComponentProps<typeof TableColumnSliderFilterMenu>,56 "column"57 > & {58 column?: Column<TData, TValue>59 },60) {61 const context = useColumnHeaderContext<TData, TValue>(false)62 const column = props.column || context?.column6364 if (!column) {65 console.warn(66 "DataTableColumnSliderFilterMenu must be used within DataTableColumnHeaderRoot or provided with a column prop",67 )68 return null69 }7071 return <TableColumnSliderFilterMenu column={column} {...props} />72}7374DataTableColumnSliderFilterMenu.displayName = "DataTableColumnSliderFilterMenu"
What it pulls in
npm packages
Other registry items
Files it writes
More from niko-table
All 31 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| DataTable Asidedata-table-aside | niko-table | Components | Free | 1 dep | |
| DataTable Clear Filterdata-table-clear-filter | niko-table | Components | Free | 1 dep · 2 files | |
| DataTable Column Auto-fitdata-table-column-auto-fit | niko-table | Components | Free | no deps · 2 files | |
| DataTable Column Date Filterdata-table-column-date-filter | niko-table | Components | Free | 2 deps · 2 files | |
| DataTable Column DnDdata-table-column-dnd | niko-table | Components | Free | 4 deps · 3 files | |
| DataTable Column Faceted Filterdata-table-column-faceted-filter | niko-table | Components | Free | 1 dep · 3 files | |
| DataTable Column Hidedata-table-column-hide | niko-table | Components | Free | 1 dep · 2 files | |
| DataTable Column Pindata-table-column-pin | niko-table | Components | Free | 1 dep · 2 files |
