@jielga/tmdatagrid 1.0.0 → 1.0.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.
Files changed (78) hide show
  1. package/README.md +8 -8
  2. package/dist/index.d.ts +225 -225
  3. package/dist/index.js +58 -50
  4. package/dist/index.js.map +1 -1
  5. package/dist/styles.css +1 -1
  6. package/package.json +3 -2
  7. package/skills/appearance/SKILL.md +322 -0
  8. package/skills/cell-selection/SKILL.md +240 -0
  9. package/skills/columns/SKILL.md +261 -86
  10. package/skills/data/SKILL.md +289 -0
  11. package/skills/editing/SKILL.md +492 -0
  12. package/skills/editing/references/editing-api.md +124 -0
  13. package/skills/editing/references/editors-and-validation.md +198 -0
  14. package/skills/filtering/SKILL.md +344 -0
  15. package/skills/getting-started/SKILL.md +48 -27
  16. package/skills/grouping/SKILL.md +264 -0
  17. package/skills/options/SKILL.md +31 -20
  18. package/skills/rows/SKILL.md +369 -0
  19. package/skills/rows/references/rows-api.md +117 -0
  20. package/skills/server-side/SKILL.md +7 -7
  21. package/skills/testing/SKILL.md +12 -12
  22. package/src/tmdatagrid/TMDataGridContext.ts +2 -2
  23. package/src/tmdatagrid/components/TMDataGrid.module.css +2 -2
  24. package/src/tmdatagrid/components/TMDataGrid.tsx +5 -5
  25. package/src/tmdatagrid/components/TMDataGridCellEditor.tsx +4 -4
  26. package/src/tmdatagrid/components/TMDataGridColumnsPanel.tsx +2 -2
  27. package/src/tmdatagrid/components/TMDataGridDetailsColumn.tsx +6 -6
  28. package/src/tmdatagrid/components/TMDataGridEditActions.tsx +2 -2
  29. package/src/tmdatagrid/components/TMDataGridEditColumn.tsx +4 -4
  30. package/src/tmdatagrid/components/TMDataGridEntryRows.tsx +6 -6
  31. package/src/tmdatagrid/components/TMDataGridFilterPanel.tsx +6 -6
  32. package/src/tmdatagrid/components/TMDataGridFilterPills.module.css +2 -2
  33. package/src/tmdatagrid/components/TMDataGridFilterPills.tsx +1 -1
  34. package/src/tmdatagrid/components/TMDataGridFooter.module.css +1 -1
  35. package/src/tmdatagrid/components/TMDataGridFooter.tsx +12 -6
  36. package/src/tmdatagrid/components/TMDataGridGroupColumn.module.css +1 -1
  37. package/src/tmdatagrid/components/TMDataGridGroupColumn.tsx +5 -5
  38. package/src/tmdatagrid/components/TMDataGridHeaderCell.module.css +8 -8
  39. package/src/tmdatagrid/components/TMDataGridHeaderCell.tsx +12 -12
  40. package/src/tmdatagrid/components/TMDataGridRowNumberColumn.tsx +4 -4
  41. package/src/tmdatagrid/components/TMDataGridSearch.tsx +5 -5
  42. package/src/tmdatagrid/components/TMDataGridSelectColumn.tsx +8 -8
  43. package/src/tmdatagrid/components/TMDataGridTable.module.css +18 -18
  44. package/src/tmdatagrid/components/TMDataGridTable.tsx +116 -116
  45. package/src/tmdatagrid/components/TMDataGridToolbar.tsx +5 -5
  46. package/src/tmdatagrid/components/editors/TMDataGridBooleanEditor.tsx +1 -1
  47. package/src/tmdatagrid/components/editors/TMDataGridDateEditor.tsx +2 -2
  48. package/src/tmdatagrid/components/editors/TMDataGridMultiSelectEditor.tsx +1 -1
  49. package/src/tmdatagrid/components/editors/TMDataGridNumberEditor.tsx +1 -1
  50. package/src/tmdatagrid/components/editors/TMDataGridSelectEditor.tsx +2 -2
  51. package/src/tmdatagrid/components/editors/editorShared.ts +3 -3
  52. package/src/tmdatagrid/components/filters/DgDateRangeFilter.tsx +1 -1
  53. package/src/tmdatagrid/components/filters/DgRangeSliderFilter.tsx +1 -1
  54. package/src/tmdatagrid/components/filters/DgTriStateFilter.tsx +1 -1
  55. package/src/tmdatagrid/components/filters/TMDataGridFilterValueInput.tsx +2 -2
  56. package/src/tmdatagrid/components/sticky.module.css +8 -8
  57. package/src/tmdatagrid/core/autosize.ts +4 -4
  58. package/src/tmdatagrid/core/capabilities.ts +17 -17
  59. package/src/tmdatagrid/core/cellExport.ts +13 -13
  60. package/src/tmdatagrid/core/cellNavigation.ts +6 -6
  61. package/src/tmdatagrid/core/cellRange.ts +4 -4
  62. package/src/tmdatagrid/core/columnOptions.ts +2 -2
  63. package/src/tmdatagrid/core/columnOrdering.ts +2 -2
  64. package/src/tmdatagrid/core/columnUtils.ts +3 -3
  65. package/src/tmdatagrid/core/editEngine.ts +49 -49
  66. package/src/tmdatagrid/core/expanding.ts +5 -5
  67. package/src/tmdatagrid/core/filterControls.ts +5 -5
  68. package/src/tmdatagrid/core/filterOperators.ts +14 -14
  69. package/src/tmdatagrid/core/labels.ts +8 -8
  70. package/src/tmdatagrid/core/matchHighlight.ts +4 -4
  71. package/src/tmdatagrid/core/persistence.ts +8 -8
  72. package/src/tmdatagrid/core/quickSearch.ts +8 -8
  73. package/src/tmdatagrid/core/rowPinning.ts +3 -3
  74. package/src/tmdatagrid/core/rowSelection.ts +12 -12
  75. package/src/tmdatagrid/core/sizes.ts +1 -1
  76. package/src/tmdatagrid/core/summary.ts +3 -3
  77. package/src/tmdatagrid/useTMDataGrid.tsx +79 -79
  78. package/skills/features/SKILL.md +0 -352
package/README.md CHANGED
@@ -79,7 +79,7 @@ export function Employees({ data }: { data: Employee[] }) {
79
79
  ```
80
80
 
81
81
  Only the parts you render exist, and only the features you enable have state.
82
- Pagination is opt-in via `enablePagination` (implied by `manualPagination`) —
82
+ Pagination is opt-in via `enablePagination` (implied by `manualPagination`) -
83
83
  by default every row renders, virtualized. A column that defines no filter
84
84
  shows no filter control.
85
85
 
@@ -106,7 +106,7 @@ is the demo site that documents it.
106
106
 
107
107
  | Path | Contents |
108
108
  | ------------------- | ------------------------------------------------------------ |
109
- | `index.ts` | The public API — the only entry point the package exposes |
109
+ | `index.ts` | The public API - the only entry point the package exposes |
110
110
  | `useTMDataGrid.tsx` | The hook that builds the table, and the types it is built on |
111
111
  | `core/` | Headless logic: filtering, ordering, persistence, capabilities |
112
112
  | `components/` | The React chrome and its co-located CSS modules |
@@ -117,13 +117,13 @@ The demo site's examples live in [`src/examples/`](src/examples):
117
117
 
118
118
  | Path | Contents |
119
119
  | ----------------- | -------------------------------------------------------------- |
120
- | `examplePages.ts` | The tree — categories, topics, and the prose for every demo |
120
+ | `examplePages.ts` | The tree - categories, topics, and the prose for every demo |
121
121
  | `demos/` | One file per demo: one idea, no headings, no explanation |
122
122
  | `data/` | Shared datasets, and the column set for demos about other things |
123
123
  | `playground/` | The kitchen sink, every feature at once behind switches |
124
124
 
125
125
  Adding a demo is adding a file under `demos/` and naming it from a topic in
126
- `examplePages.ts` — the registry pairs each module with its own source through
126
+ `examplePages.ts` - the registry pairs each module with its own source through
127
127
  `import.meta.glob`, so the code on screen cannot drift from the code running.
128
128
  [`demos.test.tsx`](src/examples/demos.test.tsx) mounts every registered demo,
129
129
  so a demo that stops working fails the suite whether or not it still compiles.
@@ -138,8 +138,8 @@ npm run test:watch
138
138
 
139
139
  ## Testing
140
140
 
141
- For testing an application that *uses* the grid — the test ids, roles and ARIA
142
- attributes it publishes, and how to drive it from Playwright — see
141
+ For testing an application that *uses* the grid - the test ids, roles and ARIA
142
+ attributes it publishes, and how to drive it from Playwright - see
143
143
  [Testing](src/docs/testing.md). What follows is about this repo's own suite.
144
144
 
145
145
  Vitest with React Testing Library, in jsdom. Tests sit next to the code they
@@ -149,7 +149,7 @@ out of `src/tmdatagrid/` entirely.
149
149
 
150
150
  Two things worth knowing before adding to them:
151
151
 
152
- - `vitest.setup.ts` installs what jsdom does not provide — an in-memory
152
+ - `vitest.setup.ts` installs what jsdom does not provide - an in-memory
153
153
  `Storage`, `matchMedia`, `ResizeObserver`, and element sizes. The last one
154
154
  matters: without a measurable box, the virtualizer renders no rows at all.
155
155
  - The Mantine provider in the harness runs with `env="test"`, which disables
@@ -180,7 +180,7 @@ works everywhere without putting `.js` extensions in the sources.
180
180
  ## Publishing
181
181
 
182
182
  Releases are managed by [Changesets](https://github.com/changesets/changesets).
183
- Nothing publishes from an ordinary push — a release happens only when the
183
+ Nothing publishes from an ordinary push - a release happens only when the
184
184
  version PR is merged.
185
185
 
186
186
  Describe your change in the same PR that makes it: