@redsift/ds-mcp-server 12.6.0 → 12.6.2

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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "StatefulDataGrid",
3
- "description": "StatefulDataGrid extends DataGrid with automatic state persistence to localStorage.\nPreserves filters, sorting, pagination, column visibility, and column widths\nacross page refreshes.\n\nUse when users need persistent table preferences. Requires unique `localStorageKey`.",
3
+ "description": "StatefulDataGrid extends DataGrid with automatic state persistence to the URL and localStorage.\nFilters, sorting, pagination, column visibility, column order, pinned\ncolumns, density, row grouping, aggregation and pivot are written to the URL\nquery string and to localStorage; column widths are kept in localStorage\nonly. On load the URL wins, then localStorage, then `initialState`, so state\nsurvives page refreshes and a copied URL reopens the same view.\n\nUse when users need persistent table preferences or shareable filtered views.\nRequires a `useRouter` hook returning `{ pathname, search, historyReplace }`\n(`createReactRouterV5Adapter` builds one from a React Router v5 `history`).\nState is stored in localStorage under the `pathname` it returns, and\nversioned by `localStorageVersion` (a number, default `1`).",
4
4
  "package": "@redsift/table",
5
5
  "filePath": "packages/table/src/components/StatefulDataGrid/StatefulDataGrid.tsx",
6
6
  "props": [
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "StatefulDataGrid",
3
- "description": "StatefulDataGrid extends DataGrid with automatic state persistence to localStorage.\nPreserves filters, sorting, pagination, column visibility, and column widths\nacross page refreshes.\n\nUse when users need persistent table preferences. Requires unique `localStorageKey`.",
3
+ "description": "StatefulDataGrid extends DataGrid with automatic state persistence to the URL and localStorage.\nFilters, sorting, pagination, column visibility, column order, pinned\ncolumns and density are written to the URL query string and to localStorage;\ncolumn widths are kept in localStorage only. On load the URL wins, then\nlocalStorage, then `initialState`, so state survives page refreshes and a\ncopied URL reopens the same view.\n\nUse when users need persistent table preferences or shareable filtered views.\nRequires a `useRouter` hook returning `{ pathname, search, historyReplace }`\n(`createReactRouterV5Adapter` builds one from a React Router v5 `history`).\nState is stored in localStorage under the `pathname` it returns, and\nversioned by `localStorageVersion` (a number, default `1`).",
4
4
  "package": "@redsift/table-pro",
5
5
  "filePath": "packages/table-pro/src/components/StatefulDataGrid/StatefulDataGrid.tsx",
6
6
  "props": [
@@ -1085,7 +1085,7 @@
1085
1085
  {
1086
1086
  "name": "StatefulDataGrid",
1087
1087
  "package": "@redsift/table",
1088
- "description": "StatefulDataGrid extends DataGrid with automatic state persistence to localStorage.",
1088
+ "description": "StatefulDataGrid extends DataGrid with automatic state persistence to the URL and localStorage.",
1089
1089
  "propsCount": 13,
1090
1090
  "hasExamples": false,
1091
1091
  "keywords": [
@@ -1154,7 +1154,7 @@
1154
1154
  {
1155
1155
  "name": "StatefulDataGrid",
1156
1156
  "package": "@redsift/table-pro",
1157
- "description": "StatefulDataGrid extends DataGrid with automatic state persistence to localStorage.",
1157
+ "description": "StatefulDataGrid extends DataGrid with automatic state persistence to the URL and localStorage.",
1158
1158
  "propsCount": 13,
1159
1159
  "hasExamples": false,
1160
1160
  "keywords": [
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
3
  "name": "Red Sift Design System",
4
- "version": "12.5.14",
5
- "generated": "2026-09-17T10:43:03.557Z",
4
+ "version": "12.6.1",
5
+ "generated": "2026-09-30T08:43:06.632Z",
6
6
  "repository": "https://github.com/redsift/design-system",
7
7
  "documentation": "https://design-system.redsift.io",
8
8
  "packages": [
@@ -41750,7 +41750,7 @@
41750
41750
  },
41751
41751
  {
41752
41752
  "name": "StatefulDataGrid",
41753
- "description": "StatefulDataGrid extends DataGrid with automatic state persistence to localStorage.\nPreserves filters, sorting, pagination, column visibility, and column widths\nacross page refreshes.\n\nUse when users need persistent table preferences. Requires unique `localStorageKey`.",
41753
+ "description": "StatefulDataGrid extends DataGrid with automatic state persistence to the URL and localStorage.\nFilters, sorting, pagination, column visibility, column order, pinned\ncolumns, density, row grouping, aggregation and pivot are written to the URL\nquery string and to localStorage; column widths are kept in localStorage\nonly. On load the URL wins, then localStorage, then `initialState`, so state\nsurvives page refreshes and a copied URL reopens the same view.\n\nUse when users need persistent table preferences or shareable filtered views.\nRequires a `useRouter` hook returning `{ pathname, search, historyReplace }`\n(`createReactRouterV5Adapter` builds one from a React Router v5 `history`).\nState is stored in localStorage under the `pathname` it returns, and\nversioned by `localStorageVersion` (a number, default `1`).",
41754
41754
  "filePath": "packages/table/src/components/StatefulDataGrid/StatefulDataGrid.tsx",
41755
41755
  "props": [
41756
41756
  {
@@ -42348,7 +42348,7 @@
42348
42348
  },
42349
42349
  {
42350
42350
  "name": "StatefulDataGrid",
42351
- "description": "StatefulDataGrid extends DataGrid with automatic state persistence to localStorage.\nPreserves filters, sorting, pagination, column visibility, and column widths\nacross page refreshes.\n\nUse when users need persistent table preferences. Requires unique `localStorageKey`.",
42351
+ "description": "StatefulDataGrid extends DataGrid with automatic state persistence to the URL and localStorage.\nFilters, sorting, pagination, column visibility, column order, pinned\ncolumns and density are written to the URL query string and to localStorage;\ncolumn widths are kept in localStorage only. On load the URL wins, then\nlocalStorage, then `initialState`, so state survives page refreshes and a\ncopied URL reopens the same view.\n\nUse when users need persistent table preferences or shareable filtered views.\nRequires a `useRouter` hook returning `{ pathname, search, historyReplace }`\n(`createReactRouterV5Adapter` builds one from a React Router v5 `history`).\nState is stored in localStorage under the `pathname` it returns, and\nversioned by `localStorageVersion` (a number, default `1`).",
42352
42352
  "filePath": "packages/table-pro/src/components/StatefulDataGrid/StatefulDataGrid.tsx",
42353
42353
  "props": [
42354
42354
  {
@@ -3,7 +3,7 @@
3
3
  This file contains comprehensive documentation for all components in the Red Sift Design System.
4
4
  It is optimized for LLM consumption and includes props, types, defaults, and usage examples.
5
5
 
6
- Generated: 2026-09-17T10:43:03.550Z
6
+ Generated: 2026-09-30T08:43:06.623Z
7
7
  Total Components: 164
8
8
 
9
9
  ---
@@ -4989,11 +4989,18 @@ The GridToolbarFilterSemanticField component.
4989
4989
 
4990
4990
  ### StatefulDataGrid
4991
4991
 
4992
- StatefulDataGrid extends DataGrid with automatic state persistence to localStorage.
4993
- Preserves filters, sorting, pagination, column visibility, and column widths
4994
- across page refreshes.
4992
+ StatefulDataGrid extends DataGrid with automatic state persistence to the URL and localStorage.
4993
+ Filters, sorting, pagination, column visibility, column order, pinned
4994
+ columns, density, row grouping, aggregation and pivot are written to the URL
4995
+ query string and to localStorage; column widths are kept in localStorage
4996
+ only. On load the URL wins, then localStorage, then `initialState`, so state
4997
+ survives page refreshes and a copied URL reopens the same view.
4995
4998
 
4996
- Use when users need persistent table preferences. Requires unique `localStorageKey`.
4999
+ Use when users need persistent table preferences or shareable filtered views.
5000
+ Requires a `useRouter` hook returning `{ pathname, search, historyReplace }`
5001
+ (`createReactRouterV5Adapter` builds one from a React Router v5 `history`).
5002
+ State is stored in localStorage under the `pathname` it returns, and
5003
+ versioned by `localStorageVersion` (a number, default `1`).
4997
5004
 
4998
5005
  **Package:** @redsift/table
4999
5006
  **File:** packages/table/src/components/StatefulDataGrid/StatefulDataGrid.tsx
@@ -5151,11 +5158,18 @@ The GridToolbarFilterSemanticField component.
5151
5158
 
5152
5159
  ### StatefulDataGrid
5153
5160
 
5154
- StatefulDataGrid extends DataGrid with automatic state persistence to localStorage.
5155
- Preserves filters, sorting, pagination, column visibility, and column widths
5156
- across page refreshes.
5157
-
5158
- Use when users need persistent table preferences. Requires unique `localStorageKey`.
5161
+ StatefulDataGrid extends DataGrid with automatic state persistence to the URL and localStorage.
5162
+ Filters, sorting, pagination, column visibility, column order, pinned
5163
+ columns and density are written to the URL query string and to localStorage;
5164
+ column widths are kept in localStorage only. On load the URL wins, then
5165
+ localStorage, then `initialState`, so state survives page refreshes and a
5166
+ copied URL reopens the same view.
5167
+
5168
+ Use when users need persistent table preferences or shareable filtered views.
5169
+ Requires a `useRouter` hook returning `{ pathname, search, historyReplace }`
5170
+ (`createReactRouterV5Adapter` builds one from a React Router v5 `history`).
5171
+ State is stored in localStorage under the `pathname` it returns, and
5172
+ versioned by `localStorageVersion` (a number, default `1`).
5159
5173
 
5160
5174
  **Package:** @redsift/table-pro
5161
5175
  **File:** packages/table-pro/src/components/StatefulDataGrid/StatefulDataGrid.tsx
@@ -178,7 +178,7 @@ The Red Sift Design System provides reusable UI components including forms, navi
178
178
  - **DataGrid** (10 props): DataGrid displays tabular data with sorting, filtering, pagination, and row selection.
179
179
  - **GridToolbarFilterSemanticField** (7 props): The GridToolbarFilterSemanticField component.
180
180
  - **ServerSideControlledPagination** (0 props)
181
- - **StatefulDataGrid** (13 props): StatefulDataGrid extends DataGrid with automatic state persistence to localStorage.
181
+ - **StatefulDataGrid** (13 props): StatefulDataGrid extends DataGrid with automatic state persistence to the URL and localStorage.
182
182
  - **TextCell** (6 props): The Cell component.
183
183
  - **Toolbar** (15 props): ------
184
184
  - **ToolbarWrapper** (0 props): Renders a toolbar followed by a row that can contain the selection banner (left)
@@ -189,7 +189,7 @@ The Red Sift Design System provides reusable UI components including forms, navi
189
189
  - **DataGrid** (10 props): DataGrid displays tabular data with sorting, filtering, pagination, and row selection.
190
190
  - **GridToolbarFilterSemanticField** (7 props): The GridToolbarFilterSemanticField component.
191
191
  - **ServerSideControlledPagination** (0 props)
192
- - **StatefulDataGrid** (13 props): StatefulDataGrid extends DataGrid with automatic state persistence to localStorage.
192
+ - **StatefulDataGrid** (13 props): StatefulDataGrid extends DataGrid with automatic state persistence to the URL and localStorage.
193
193
  - **TextCell** (6 props): The Cell component.
194
194
  - **Toolbar** (15 props): ------
195
195
  - **ToolbarWrapper** (0 props): Renders a toolbar followed by a row that can contain the selection banner (left)
@@ -1,4 +1,4 @@
1
1
  {
2
- "generatedAt": "2026-09-23T12:52:16.660Z",
3
- "commitSha": "8bbda6ee54bc203253b81d68d74dbb9344c735ff"
2
+ "generatedAt": "2026-09-30T15:20:30.716Z",
3
+ "commitSha": "299581411edb0b2dbe389101d253229b81f472b6"
4
4
  }
@@ -218,6 +218,24 @@ export const useRouter = () => {
218
218
  `}
219
219
  />
220
220
 
221
+ ### Memory history adapter (sifts in an iframe)
222
+
223
+ A sift rendered in an iframe routes with `createMemoryHistory` (or `MemoryRouter`), so the router's URL lives in `history.location` and `window.location` is the iframe document's own URL. Build the adapter from that history with `createReactRouterV5Adapter`, and pass the `getSearch` it returns when you reset the grid. Without it, `resetStatefulDataGridState` and `resetColumnVisibility` read `window.location.search`, which is the right URL under a browser router but the document's URL here, so the reset would drop the router's non-grid params (such as a period) and add the document's.
224
+
225
+ <CodeBlock
226
+ codeString={`import { createReactRouterV5Adapter, resetStatefulDataGridState } from '@redsift/table';
227
+ // history = createMemoryHistory(...) — the app's router history
228
+ const useRouter = createReactRouterV5Adapter(history);
229
+ // <StatefulDataGrid useRouter={useRouter} ... />
230
+ const { pathname, getSearch, historyReplace } = useRouter();
231
+ const handleReset = () => {
232
+ resetStatefulDataGridState({ id: pathname, versions: [0, 1], getSearch, historyReplace });
233
+ };
234
+ `}
235
+ />
236
+
237
+ With your own adapter, pass `getSearch: () => history.location.search`.
238
+
221
239
  ## URL State Format
222
240
 
223
241
  `StatefulDataGrid` writes grid state to URL query params in a human-readable display format.
@@ -250,6 +250,24 @@ export const useRouter = () => {
250
250
  `}
251
251
  />
252
252
 
253
+ ### Memory history adapter (sifts in an iframe)
254
+
255
+ A sift rendered in an iframe routes with `createMemoryHistory` (or `MemoryRouter`), so the router's URL lives in `history.location` and `window.location` is the iframe document's own URL. Build the adapter from that history with `createReactRouterV5Adapter`, and pass the `getSearch` it returns when you reset the grid. Without it, `resetStatefulDataGridState` and `resetColumnVisibility` read `window.location.search`, which is the right URL under a browser router but the document's URL here, so the reset would drop the router's non-grid params (such as a period) and add the document's.
256
+
257
+ <CodeBlock
258
+ codeString={`import { createReactRouterV5Adapter, resetStatefulDataGridState } from '@redsift/table';
259
+ // history = createMemoryHistory(...) — the app's router history
260
+ const useRouter = createReactRouterV5Adapter(history);
261
+ // <StatefulDataGrid useRouter={useRouter} ... />
262
+ const { pathname, getSearch, historyReplace } = useRouter();
263
+ const handleReset = () => {
264
+ resetStatefulDataGridState({ id: pathname, versions: [0, 1], getSearch, historyReplace });
265
+ };
266
+ `}
267
+ />
268
+
269
+ With your own adapter, pass `getSearch: () => history.location.search`.
270
+
253
271
  ## URL State Format
254
272
 
255
273
  `StatefulDataGrid` writes grid state to URL query params in a human-readable display format. The format is identical for both client-side and server-side grids.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redsift/ds-mcp-server",
3
- "version": "12.6.0",
3
+ "version": "12.6.2",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "description": "MCP server for the Red Sift Design System — provides component lookup, prop documentation, and code generation tools for AI assistants.",
@@ -37,5 +37,5 @@
37
37
  "publishConfig": {
38
38
  "access": "public"
39
39
  },
40
- "gitHead": "8bbda6ee54bc203253b81d68d74dbb9344c735ff"
40
+ "gitHead": "299581411edb0b2dbe389101d253229b81f472b6"
41
41
  }