react-base-data-table 0.5.7 → 0.5.9

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 (89) hide show
  1. package/README.md +105 -253
  2. package/dist/style.css +1 -1
  3. package/dist/types/App.d.ts +3 -0
  4. package/dist/types/DUMMY_ITEMS.d.ts +6 -0
  5. package/dist/types/components/BaseAvatar.d.ts +6 -0
  6. package/dist/types/components/BaseButton.d.ts +19 -0
  7. package/dist/types/components/BaseCheckbox.d.ts +11 -0
  8. package/dist/types/components/BaseIcon.d.ts +11 -0
  9. package/dist/types/components/BaseTable/BaseTable.d.ts +53 -0
  10. package/dist/types/components/BaseTable/BaseTableFooter.d.ts +10 -0
  11. package/dist/types/components/BaseTable/BaseTableGroupRow.d.ts +15 -0
  12. package/dist/types/components/BaseTable/BaseTableHeader.d.ts +13 -0
  13. package/dist/types/components/BaseTable/BaseTableHeaders.d.ts +15 -0
  14. package/dist/types/components/BaseTable/BaseTableRow.d.ts +14 -0
  15. package/dist/types/components/BaseTable/BaseTableWithContext.d.ts +3 -0
  16. package/dist/types/components/BaseTable/CommentPopup.d.ts +15 -0
  17. package/dist/types/components/BaseTable/CustomRenderItem.d.ts +12 -0
  18. package/dist/types/components/BaseTable/collaboration/CollaboratorBadge.d.ts +7 -0
  19. package/dist/types/components/BaseTable/contextMenu/ContextMenu.d.ts +13 -0
  20. package/dist/types/components/BaseTable/contextMenu/actions/cellActions.d.ts +6 -0
  21. package/dist/types/components/BaseTable/contextMenu/actions/headerActions.d.ts +5 -0
  22. package/dist/types/components/BaseTable/contextMenu/actions/index.d.ts +2 -0
  23. package/dist/types/components/BaseTable/contexts/useTableInteractionContext.d.ts +11 -0
  24. package/dist/types/components/BaseTable/dialogs/DialogWrapper.d.ts +6 -0
  25. package/dist/types/components/BaseTable/dialogs/columnsDialog/ChartDialog.d.ts +7 -0
  26. package/dist/types/components/BaseTable/dialogs/columnsDialog/ColumnsDialog.d.ts +2 -0
  27. package/dist/types/components/BaseTable/dialogs/columnsDialog/DragPreview.d.ts +5 -0
  28. package/dist/types/components/BaseTable/dialogs/columnsDialog/HeaderItem.d.ts +20 -0
  29. package/dist/types/components/BaseTable/hooks/useCellPopup.d.ts +16 -0
  30. package/dist/types/components/BaseTable/hooks/useCollaboratorCellMap.d.ts +7 -0
  31. package/dist/types/components/BaseTable/hooks/useRowDragDrop.d.ts +16 -0
  32. package/dist/types/components/BaseTable/hooks/useTableGrouping.d.ts +14 -0
  33. package/dist/types/components/BaseTable/hooks/useTableInteractions.d.ts +59 -0
  34. package/dist/types/components/BaseTable/hooks/useUserSelecionEmitter.d.ts +9 -0
  35. package/dist/types/components/BaseTable/hooks/useVirtualRows.d.ts +11 -0
  36. package/dist/types/components/BaseTable/models/ActiveTableFilter.d.ts +6 -0
  37. package/dist/types/components/BaseTable/models/AdvancedTableSettings.d.ts +27 -0
  38. package/dist/types/components/BaseTable/models/BaseTableHeaders.d.ts +39 -0
  39. package/dist/types/components/BaseTable/models/CellCordinate.d.ts +8 -0
  40. package/dist/types/components/BaseTable/models/Collaboration.d.ts +15 -0
  41. package/dist/types/components/BaseTable/models/CommentData.d.ts +10 -0
  42. package/dist/types/components/BaseTable/models/ContextMenu.d.ts +10 -0
  43. package/dist/types/components/BaseTable/models/ContextMenuAction.d.ts +12 -0
  44. package/dist/types/components/BaseTable/models/DialogItem.d.ts +15 -0
  45. package/dist/types/components/BaseTable/models/GroupInfo.d.ts +7 -0
  46. package/dist/types/components/BaseTable/models/HighlightCondition.d.ts +7 -0
  47. package/dist/types/components/BaseTable/models/ItemWithGroupInfo.d.ts +7 -0
  48. package/dist/types/components/BaseTable/models/LinkedGroup.d.ts +4 -0
  49. package/dist/types/components/BaseTable/models/TableConfiguration.d.ts +4 -0
  50. package/dist/types/components/BaseTable/models/TableItem.d.ts +4 -0
  51. package/dist/types/components/BaseTable/tableCell/BaseTableCell.d.ts +23 -0
  52. package/dist/types/components/BaseTable/tableCell/IndexCell.d.ts +8 -0
  53. package/dist/types/components/BaseTable/tableCell/baseTableCellFunctions.d.ts +16 -0
  54. package/dist/types/components/BaseTable/tableCell/cellImplementation/ListCell.d.ts +13 -0
  55. package/dist/types/components/BaseTable/tableCell/cellImplementation/NumberCell.d.ts +11 -0
  56. package/dist/types/components/BaseTable/tableCell/cellImplementation/OptionList.d.ts +11 -0
  57. package/dist/types/components/BaseTable/tableCell/cellImplementation/formatNumberFunctions.d.ts +1 -0
  58. package/dist/types/components/BaseTable/tableFilter/FilterDropdown.d.ts +13 -0
  59. package/dist/types/components/BaseTable/tableFilter/TableFilter.d.ts +17 -0
  60. package/dist/types/components/BaseTable/tableFilter/filterImplementations/NumberFilter/NumberConditionItem.d.ts +10 -0
  61. package/dist/types/components/BaseTable/tableFilter/filterImplementations/NumberFilter/NumberFilter.d.ts +16 -0
  62. package/dist/types/components/BaseTable/tableFilter/filterImplementations/TextFilter.d.ts +9 -0
  63. package/dist/types/components/BaseTable/tableFunctions/CellSelection.d.ts +10 -0
  64. package/dist/types/components/BaseTable/tableFunctions/FilteringAndSorting.d.ts +7 -0
  65. package/dist/types/components/BaseTable/tableFunctions/highlightCondition.d.ts +5 -0
  66. package/dist/types/components/ColorPicker.d.ts +7 -0
  67. package/dist/types/constants.d.ts +1 -0
  68. package/dist/types/enum/DateUnits.d.ts +8 -0
  69. package/dist/types/enum/FilterTypes.d.ts +4 -0
  70. package/dist/types/hooks/useClickOutside.d.ts +2 -0
  71. package/dist/types/index.d.ts +17 -0
  72. package/dist/types/main.d.ts +1 -0
  73. package/dist/types/stores/clipboardStore.d.ts +24 -0
  74. package/dist/types/stores/collaborationStore.d.ts +46 -0
  75. package/dist/types/stores/commentPopupStore.d.ts +13 -0
  76. package/dist/types/stores/contextMenuStore.d.ts +13 -0
  77. package/dist/types/stores/dialogsStore.d.ts +21 -0
  78. package/dist/types/stores/tableDataStore.d.ts +99 -0
  79. package/dist/types/stores/tableDragStore.d.ts +17 -0
  80. package/dist/types/stores/tableRefStore.d.ts +17 -0
  81. package/dist/types/stores/tableSelectionStore.d.ts +23 -0
  82. package/dist/types/utils/array.d.ts +6 -0
  83. package/dist/types/utils/cellCoordinates.d.ts +3 -0
  84. package/dist/types/utils/cellIdCreation.d.ts +3 -0
  85. package/dist/types/utils/cellOverlapping.d.ts +6 -0
  86. package/dist/types/utils/collaboration.d.ts +6 -0
  87. package/dist/types/utils/enum.d.ts +3 -0
  88. package/dist/types/utils/sorting.d.ts +4 -0
  89. package/package.json +1 -1
package/README.md CHANGED
@@ -1,6 +1,8 @@
1
1
  # @redevilkz/react-base-table
2
2
 
3
- A simple, customizable, and extensible React table component with support for sorting, filtering, grouping, row highlighting, custom rendering, drag-and-drop, and context menus.
3
+ A simple, customizable, and extensible React table component with support for sorting, filtering, grouping, row highlighting, custom rendering, drag-and-drop, collaboration, and context menus.
4
+
5
+ > 📖 **A detailed documentation website is coming soon!**
4
6
 
5
7
  ---
6
8
 
@@ -13,32 +15,23 @@ A simple, customizable, and extensible React table component with support for so
13
15
  - **Custom Rendering**: Render custom content in headers and cells.
14
16
  - **Drag & Drop**: Reorder rows with drag-and-drop (optional).
15
17
  - **Context Menu**: Right-click on cells to open a customizable context menu.
16
- - **Row Actions**: Double-click, right-click, and other row/cell interactions.
17
- - **Responsive & Scrollable**: Pin columns, set table height, and enable horizontal scrolling.
18
+ - **Collaboration**: Real-time multi-user cell selection display.
19
+ - **Comments**: Add comments to cells.
20
+ - **Inline Editing**: Edit cell values directly in the table.
18
21
  - **Theming**: Easily style with Tailwind and DaisyUI classes.
19
22
 
20
23
  ---
21
24
 
22
25
  ## Installation
23
26
 
24
- Install the package via npm or yarn:
25
-
26
27
  ```bash
27
28
  npm install react-base-data-table
28
29
  ```
29
30
 
30
- or
31
-
32
- ```bash
33
- yarn add react-base-data-table
34
- ```
35
-
36
31
  ---
37
32
 
38
33
  ## Usage
39
34
 
40
- Import the `BaseTable` component and its CSS:
41
-
42
35
  ```javascript
43
36
  import { BaseTable } from "react-base-data-table";
44
37
  ```
@@ -47,13 +40,13 @@ import { BaseTable } from "react-base-data-table";
47
40
 
48
41
  ```jsx
49
42
  const headers = [
50
- { id: "name", text: "Name", type: "string", sortable: true },
51
- { id: "age", text: "Age", type: "number", sortable: true },
43
+ { id: "name", text: "Name", sortable: true },
44
+ { id: "age", text: "Age", sortable: true },
52
45
  ];
53
46
 
54
47
  const items = [
55
- { name: "John Doe", age: "30" },
56
- { name: "Jane Smith", age: "25" },
48
+ { name: "John Doe", age: 30 },
49
+ { name: "Jane Smith", age: 25 },
57
50
  ];
58
51
 
59
52
  <BaseTable headers={headers} items={items} />;
@@ -65,247 +58,106 @@ const items = [
65
58
 
66
59
  ### `BaseTableProps`
67
60
 
68
- | Prop | Type | Default | Description |
69
- | ----------------------- | ---------------------------------------------------------------- | ------- | ------------------------------------------ |
70
- | `height` | `string` | `auto` | Sets the height of the table. |
71
- | `headers` | `BaseTableHeader[]` | - | Defines the headers of the table. |
72
- | `items` | `TableItem[]` | - | Data items to display in the table. |
73
- | `marginTop` | `string` | `0` | Top margin for the table. |
74
- | `noBorder` | `boolean` | `false` | Removes the border around the table. |
75
- | `pinColumns` | `boolean` | `false` | Pins columns for horizontal scrolling. |
76
- | `alignCenterInLine` | `boolean` | `false` | Centers content within rows. |
77
- | `currentSortId` | `string` | - | ID of the column currently being sorted. |
78
- | `highlightCondition` | `{ propertyId: string, value: unknown, style: CSSProperties }[]` | - | Conditions for highlighting rows. |
79
- | `onResetSort` | `() => void` | - | Callback to reset sorting. |
80
- | `onRowDoubleClick` | `(item: TableItem) => void` | - | Callback for double-clicking a row. |
81
- | `onSortByColumn` | `(columnId: string) => void` | - | Callback for sorting by a column. |
82
- | `showIndex` | `boolean` | `false` | Shows an index column. |
83
- | `indexUseOriginalOrder` | `boolean` | `false` | Uses original item order for index column. |
84
- | `contrastRow` | `boolean` | `false` | Alternates row background for contrast. |
85
- | `activeFilters` | `ActiveTableFilter[]` | - | Active filters for columns. |
86
- | `groupBy` | `string` | - | Groups rows by this column ID. |
87
- | `currentUsername` | `string` | - | Pass current user for custom logic. |
88
- | `comments` | `CommentData[]` | - | Comments to display in the table. |
61
+ | Prop | Type | Description |
62
+ | ---------------------------- | -------------------------------------------------- | --------------------------------------------------------- |
63
+ | `headers` | `BaseTableHeader[]` | Column definitions for the table (required). |
64
+ | `items` | `TableItem[]` | Data items to display (required). |
65
+ | `height` | `string` | Table height. |
66
+ | `advancedSettings` | `AdvancedTableSettings` | Additional table configuration options. |
67
+ | `highlightCondition` | `HighlightCondition[]` | Conditions for highlighting rows/cells. |
68
+ | `comments` | `CommentData[]` | Comments data for cells. |
69
+ | `activeFilters` | `ActiveTableFilter[]` | Active column filters. |
70
+ | `groupBy` | `string` | Column ID to group rows by. |
71
+ | `linkedGroups` | `LinkedGroup[]` | Configuration for linked group behavior. |
72
+ | `collaboration` | `CollaborationConfig` | Real-time collaboration settings. |
73
+ | `onUserSelectionChange` | `(data: UserSelectionData) => void` | Callback when user selection changes (for collaboration). |
74
+ | `onSetHighlightCondition` | `(condition, item) => void` | Callback to set highlight condition. |
75
+ | `onRemoveHighlightCondition` | `(condition, cssProperty, item) => void` | Callback to remove highlight condition. |
76
+ | `onSaveComment` | `(comment, item) => void` | Callback when a comment is saved. |
77
+ | `onDeleteComment` | `(comment, item) => void` | Callback when a comment is deleted. |
78
+ | `onChange` | `(itemUpdated, originalIndex, fromArray?) => void` | Callback when a cell value changes. |
79
+ | `onBulkChange` | `(items, headerId?) => void` | Callback for bulk cell changes. |
80
+ | `onBulkFieldChange` | `(items, headerId) => void` | Callback for bulk field changes on a column. |
81
+ | `groupByCustomRender` | `(groupBy, value, ...) => ReactNode` | Custom render function for group rows. |
82
+ | `onResetSort` | `() => void` | Callback to reset sorting. |
83
+ | `onRowDoubleClick` | `(item) => void` | Callback when a row is double-clicked. |
84
+ | `onSortByColumn` | `(columnId) => void` | Callback when sorting by a column. |
85
+ | `onAddListOption` | `(newOption, header) => void` | Callback when adding a new list option. |
86
+ | `onRowsReordered` | `(fromIndex, toIndex) => void` | Callback when rows are reordered via drag & drop. |
87
+
88
+ ---
89
+
90
+ ### `AdvancedTableSettings`
91
+
92
+ | Property | Type | Description |
93
+ | ----------------------- | -------------------------------- | ------------------------------------------- |
94
+ | `marginTop` | `string` | Top margin for the table. |
95
+ | `noBorder` | `boolean` | Removes the table border. |
96
+ | `pinColumns` | `boolean` | Pins columns for horizontal scrolling. |
97
+ | `alignCenterInLine` | `boolean` | Centers content within rows. |
98
+ | `currentSortId` | `string` | ID of the currently sorted column. |
99
+ | `contextMenu` | `{ showOnHeader?, showOnCell? }` | Context menu visibility options. |
100
+ | `contrastRow` | `boolean` | Alternates row background colors. |
101
+ | `indexUseOriginalOrder` | `boolean` | Uses original item order for index column. |
102
+ | `enableRowDragDrop` | `boolean` | Enables row drag & drop reordering. |
103
+ | `currentUsername` | `string` | Current user's username. |
104
+ | `showIndex` | `boolean` | Shows an index column. |
105
+ | `selectNewOptionOnAdd` | `boolean` | Auto-selects new option when added to list. |
106
+ | `canAddListOptions` | `boolean` | Allows adding new options to list columns. |
107
+ | `showFooter` | `boolean` | Shows table footer. |
108
+ | `rowIdProperty` | `string` | Property to use as unique row identifier. |
109
+ | `tableId` | `string` | Unique table identifier. |
110
+ | `focusedRowIndex` | `number` | Index of the focused row. |
111
+ | `showFlashOnCellUpdate` | `boolean` | Shows flash animation on cell updates. |
112
+ | `disabledRows` | `{ property, values }` | Disables rows matching property values. |
89
113
 
90
114
  ---
91
115
 
92
- ## Header Definition
93
-
94
116
  ### `BaseTableHeader`
95
117
 
96
- | Property | Type | Description |
97
- | -------------- | ----------------------------------------------------------------- | ----------------------------------------------- |
98
- | `id` | `string` | Unique identifier for the column. |
99
- | `text` | `string` | Display text for the column header. |
100
- | `type` | `'string', 'list', 'number'` | Type of data in the column. |
101
- | `customHeader` | `(header: BaseTableHeader) => ReactNode` | Custom rendering function for the header. |
102
- | `customRender` | `(item: TableItem, header: BaseTableHeader) => ReactNode` | Custom rendering function for the cell content. |
103
- | `sortable` | `boolean` | Enables sorting for the column. |
104
- | `customSort` | `(a: TableItem, b: TableItem, ascendingOrder: boolean) => number` | Custom sorting function for the column. |
105
- | `hasFilter` | `boolean` | Enables filtering for the column. |
106
- | `children` | `BaseTableHeader[]` | Nested columns for grouped headers. |
107
- | `editOptions` | `{ editable, required, type, defaultValue }` | Editing options for inline editing. |
108
-
109
- ---
110
-
111
- ## Data Items
112
-
113
- A `TableItem` is an object where each key matches a column ID defined in `headers`.
114
-
115
- ```javascript
116
- const item = {
117
- name: "John Doe",
118
- age: "30",
119
- };
120
- ```
121
-
122
- ---
123
-
124
- ## Advanced Functionality
125
-
126
- ### 1. **Row Highlighting**
127
-
128
- Highlight rows based on conditions:
129
-
130
- ```jsx
131
- const highlightCondition = [
132
- {
133
- propertyId: "age",
134
- value: "30",
135
- style: { backgroundColor: "yellow" },
136
- },
137
- ];
138
-
139
- <BaseTable
140
- headers={headers}
141
- items={items}
142
- highlightCondition={highlightCondition}
143
- />;
144
- ```
145
-
146
- ---
147
-
148
- ### 2. **Custom Cell Rendering**
149
-
150
- Customize cell content using `customRender`:
151
-
152
- ```jsx
153
- const headers = [
154
- {
155
- id: "name",
156
- text: "Name",
157
- customRender: (item) => <strong>{item.name}</strong>,
158
- },
159
- ];
160
- ```
161
-
162
- ---
163
-
164
- ### 3. **Sorting**
165
-
166
- Handle sorting logic with the `onSortByColumn` callback:
167
-
168
- ```jsx
169
- const handleSort = (columnId) => {
170
- console.log(`Sorting by column: ${columnId}`);
171
- };
172
-
173
- <BaseTable headers={headers} items={items} onSortByColumn={handleSort} />;
174
- ```
175
-
176
- ---
177
-
178
- ### 4. **Grouping Rows**
179
-
180
- Group rows by a column and allow collapsing:
181
-
182
- ```jsx
183
- <BaseTable
184
- headers={headers}
185
- items={items}
186
- groupBy="department" // group by the 'department' column
187
- />
188
- ```
189
-
190
- ---
191
-
192
- ### 5. **Drag & Drop Rows**
193
-
194
- Enable drag-and-drop row reordering:
195
-
196
- ```jsx
197
- <BaseTable headers={headers} items={items} enableRowDragDrop={true} />
198
- ```
199
-
200
- ---
201
-
202
- ### 6. **Context Menu**
203
-
204
- Show a custom context menu on right-click:
205
-
206
- ```jsx
207
- <BaseTable
208
- headers={headers}
209
- items={items}
210
- contextMenuActions={[
211
- { label: "Edit", onClick: (item) => editItem(item) },
212
- { label: "Delete", onClick: (item) => deleteItem(item) },
213
- ]}
214
- />
215
- ```
216
-
217
- ---
218
-
219
- ### 7. **Inline Editing**
220
-
221
- Allow editing cell values directly in the table by setting `editOptions` in headers.
222
-
223
- ```jsx
224
- const headers = [
225
- {
226
- id: "age",
227
- text: "Age",
228
- editOptions: {
229
- editable: true,
230
- required: true,
231
- type: "number",
232
- defaultValue: 0,
233
- },
234
- },
235
- ];
236
- ```
237
-
238
- ---
239
-
240
- ### 8. **Custom Header Rendering**
241
-
242
- Render custom header content:
243
-
244
- ```jsx
245
- const headers = [
246
- {
247
- id: "actions",
248
- text: "",
249
- customHeader: () => <span>Actions</span>,
250
- },
251
- ];
252
- ```
253
-
254
- ---
255
-
256
- ## Styling & Theming
257
-
258
- - Uses Tailwind CSS and DaisyUI for styling.
259
- - You can override styles using Tailwind utility classes or DaisyUI themes.
260
- - Arbitrary values (e.g. `bg-[#f44333]`) are supported if included as static strings or added to the safelist in `tailwind.config.js`.
261
-
262
- ---
263
-
264
- ## How to test the package in dev
265
-
266
- To create the package locally.
267
-
268
- ```bash
269
- npm link
270
- ```
271
-
272
- In your test project.
273
-
274
- ```bash
275
- npm link react-base-data-table
276
- ```
277
-
278
- #OLD
279
-
280
- Yalc emulates npm publish. It is preferred over npm link for fewer issues.
281
-
282
- ```bash
283
- npm i yalc -g
284
- ```
285
-
286
- In your package:
287
-
288
- ```bash
289
- yalc publish
290
- ```
291
-
292
- In the project that wants to consume the package:
293
-
294
- ```bash
295
- yalc add @redevilkz/react-base-table
296
- ```
297
-
298
- After a rebuild in your package:
299
-
300
- ```bash
301
- yalc push
302
- ```
303
-
304
- When you change something in your library:
305
-
306
- ```bash
307
- npm run buildForNPM && yalc push --sig
308
- ```
118
+ | Property | Type | Description |
119
+ | --------------- | ---------------------------------------------------------- | -------------------------------------------- |
120
+ | `id` | `string` | Unique column identifier (required). |
121
+ | `text` | `string` | Column header display text (required). |
122
+ | `hasFilter` | `boolean` | Enables filtering for the column. |
123
+ | `width` | `number` | Column width in pixels. |
124
+ | `children` | `BaseTableHeader[]` | Nested columns for grouped headers. |
125
+ | `editOptions` | `EditOptions` | Inline editing configuration. |
126
+ | `fromArray` | `string` | Property name for array-based rows. |
127
+ | `arrayRowsOnly` | `boolean` | Shows cell only in array rows, not main row. |
128
+ | `sortable` | `boolean` | Enables sorting for the column. |
129
+ | `align` | `'left' \| 'center' \| 'right'` | Cell content alignment. |
130
+ | `customSort` | `(a, b, ascending) => number` | Custom sorting function. |
131
+ | `customHeader` | `(header) => ReactNode` | Custom header render function. |
132
+ | `customRender` | `(item, header, fromArrayData?, isDisabled?) => ReactNode` | Custom cell render function. |
133
+
134
+ ---
135
+
136
+ ### `EditOptions`
137
+
138
+ | Property | Type | Description |
139
+ | ------------------------ | ----------------------------------- | ------------------------------------------ |
140
+ | `editable` | `boolean` | Enables inline editing. |
141
+ | `isDisabled` | `(item, fromArrayData?) => boolean` | Function to determine if cell is disabled. |
142
+ | `notApplicable` | `(item, fromArrayData?) => boolean` | Function to mark cell as N/A. |
143
+ | `greyedOutIfNotEditable` | `boolean` | Greys out non-editable cells. |
144
+ | `required` | `boolean` | Marks field as required. |
145
+ | `type` | `'string' \| 'list' \| 'number'` | Cell data type. |
146
+ | `options` | `string[]` | Options for list type columns. |
147
+ | `defaultValue` | `string \| number` | Default value for new items. |
148
+ | `canAddNewOption` | `boolean` | Allows adding new options to list. |
149
+
150
+ ---
151
+
152
+ ### `CollaborationConfig`
153
+
154
+ | Property | Type | Description |
155
+ | --------------- | --------------------- | ----------------------------------------------------- |
156
+ | `collaborators` | `UserSelectionData[]` | List of collaborators and their selections. |
157
+ | `currentUserId` | `string` | Current user's ID (to filter from display). |
158
+ | `debounceMs` | `number` | Debounce time for selection updates (default: 150ms). |
159
+ | `color` | `string` | Current user's selection color. |
160
+ | `version` | `number` | Collaboration data version. |
309
161
 
310
162
  ---
311
163