Agents & OrchestrationSûr100100/100
Row Pinning (TanStack)
Pin stable row IDs into top, center, and bottom collections with rowPinningFeature and keepPinnedRows. Load for filtering/pagination visibility, explicit region rendering, or renderer-owned sticky CSS.
ou envoie-le directement à ton agent.
Installer dans ton projet
$ curl -fsSL https://arboristhree.xyz/cli/install-skill.mjs -o /tmp/arboris-install-skill.mjs && node /tmp/arboris-install-skill.mjs row-pinning__tanstack-table__packages-table-core-skills-0e122512b0dbTanStack
TanStack/table
Contenu à copier
---
name: row-pinning
description: >
Pin stable row IDs into top, center, and bottom collections with rowPinningFeature and keepPinnedRows. Load for filtering/pagination visibility, explicit region rendering, or renderer-owned sticky CSS.
metadata:
origin: TanStack
{ type: sub-skill, library: '@tanstack/table-core', library_version: '9.2.4' }
requires: ['core', 'table-features']
sources:
- 'TanStack/table:docs/framework/react/guide/row-pinning.md'
- 'TanStack/table:packages/table-core/src/features/row-pinning'
- 'TanStack/table:examples/react/row-pinning'
---
This skill builds on `core` and `table-features`. Pinning creates row regions; the renderer controls order and sticky layout.
## Setup
```ts
import { rowPinningFeature, tableFeatures } from '@tanstack/table-core'
type Person = { id: string; name: string }
export const features = tableFeatures({ rowPinningFeature })
export const options = {
getRowId: (row: Person) => row.id,
keepPinnedRows: true,
}
```
## Core Patterns
```ts
const regions = [
table.getTopRows(),
table.getCenterRows(),
table.getBottomRows(),
]
for (const rows of regions) rows.forEach(renderRow)
```
Render each region explicitly if the visual order matters.
## Common Mistakes
### [HIGH] Persisting index-based IDs
Wrong: `const options = { getRowId: (_row: Person, index: number) => String(index) }`
Correct: `const options = { getRowId: (row: Person) => row.id }`
Indexes change under sorting, filtering, pagination, and insertion.
Source: `docs/framework/react/guide/row-pinning.md`
### [HIGH] Expecting sticky rows automatically
Wrong: `row.pin('top')`
Correct: `topRowElement.style.position = 'sticky'`
Pinning state does not style or place DOM elements.
Source: `examples/react/row-pinning/src/main.tsx`
## Choose the pinned-row visibility policy
- `keepPinnedRows: true` is the default. Pinned rows stay visible in their
pinned region even when filtering or pagination removes them from the center
row model.
- `keepPinnedRows: false` limits pinned rows to those present in the current
filtered and paginated row model.
Choose explicitly based on product behavior; neither value is inherently wrong.
Source: `packages/table-core/src/features/row-pinning/rowPinningFeature.types.ts`
## API Discovery
Inspect `node_modules/@tanstack/table-core/dist/features/row-pinning/` for region getters, row APIs, and `keepPinnedRows` semantics.Colle ce Markdown dans ton agent ou utilise les boutons ci-dessus pour l’écrire dans ton projet.
Ce que fait Row Pinning (TanStack)
`keepPinnedRows: true` is the default. Pinned rows stay visible in their
`keepPinnedRows: false` limits pinned rows to those present in the current
Comment utiliser Row Pinning (TanStack)
1
Copie le prompt
Un clic copie le prompt packagé (ou l'envoie à ton agent).
2
L'agent installe le skill
Il ajoute le SKILL.md et ses ressources à ton projet.
3
Activation automatique
Le skill s'active dès que le contexte correspond.
Déclencheurs pour Row Pinning (TanStack)
Dis simplement à ton agent quelque chose comme :
Applique le skill row-pinning__tanstack-table__packages-table-core-skills-0e122512b0db à cette tâche
Utilise row-pinning__tanstack-table__packages-table-core-skills-0e122512b0db pour améliorer cette implémentation
Passe en revue ce sujet avec row-pinning__tanstack-table__packages-table-core-skills-0e122512b0db
Skills liés à Row Pinning (TanStack)
Acceleration (Microsoft)
Compare synthetic acceleration options and clearly separate scenario value from forecast commitments.Account Overview (Microsoft)
Create a synthetic Acme account overview and identify evidence that merits seller attention.Acroform Writer (Microsoft)
Use this skill whenever the user wants values written INTO an existing PDF form that lives in the connected SharePoint knowledge source — filling out, completing, populating, or submitting a fillable PDF (application, intake sheet, contract, government form) from data they supply, a spreadsheet row, or the conversation. Triggers include "fill out the job application form", "complete the intake form for [person]", "populate our standard NDA template", and "make this ready to send / non-editable" (flatten). The source form should be found via knowledge search; only ask the user to upload it if knowledge search turns up nothing plausible. different task), and do NOT use it on scanned/image-only PDFs that have no real fillable fields — those need OCR or manual overlay instead, which this skill explicitly detects and reports rather than silently failing.