@genesislcap/grid-tabulator 14.281.2 → 14.282.0

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 (38) hide show
  1. package/dist/custom-elements.json +57 -7
  2. package/dist/dts/cell-formatters/action.formatter.d.ts +5 -5
  3. package/dist/dts/cell-formatters/action.formatter.d.ts.map +1 -1
  4. package/dist/dts/cell-formatters/actions-menu.formatter.d.ts +10 -7
  5. package/dist/dts/cell-formatters/actions-menu.formatter.d.ts.map +1 -1
  6. package/dist/dts/cell-formatters/boolean.formatter.d.ts +4 -4
  7. package/dist/dts/cell-formatters/boolean.formatter.d.ts.map +1 -1
  8. package/dist/dts/cell-formatters/editable.formatter.d.ts +4 -4
  9. package/dist/dts/cell-formatters/editable.formatter.d.ts.map +1 -1
  10. package/dist/dts/cell-formatters/select.formatter.d.ts +14 -8
  11. package/dist/dts/cell-formatters/select.formatter.d.ts.map +1 -1
  12. package/dist/dts/cell-formatters/text.formatter.d.ts +3 -3
  13. package/dist/dts/cell-formatters/text.formatter.d.ts.map +1 -1
  14. package/dist/dts/types.d.ts +1 -0
  15. package/dist/dts/types.d.ts.map +1 -1
  16. package/dist/dts/utils/index.d.ts +1 -0
  17. package/dist/dts/utils/index.d.ts.map +1 -1
  18. package/dist/dts/utils/test-id-utils.d.ts +10 -0
  19. package/dist/dts/utils/test-id-utils.d.ts.map +1 -0
  20. package/dist/esm/cell-formatters/action.formatter.js +4 -2
  21. package/dist/esm/cell-formatters/actions-menu.formatter.js +11 -4
  22. package/dist/esm/cell-formatters/boolean.formatter.js +3 -1
  23. package/dist/esm/cell-formatters/editable.formatter.js +4 -1
  24. package/dist/esm/cell-formatters/select.formatter.js +170 -21
  25. package/dist/esm/cell-formatters/text.formatter.js +4 -1
  26. package/dist/esm/utils/index.js +1 -0
  27. package/dist/esm/utils/test-id-utils.js +15 -0
  28. package/dist/grid-tabulator.api.json +193 -43
  29. package/dist/grid-tabulator.d.ts +48 -28
  30. package/docs/api/grid-tabulator.actionformatter.md +2 -2
  31. package/docs/api/grid-tabulator.actionsmenuformatter.md +2 -2
  32. package/docs/api/grid-tabulator.booleanformatter.md +2 -2
  33. package/docs/api/grid-tabulator.editableformatter.md +2 -2
  34. package/docs/api/grid-tabulator.md +1 -1
  35. package/docs/api/grid-tabulator.selectformatter.md +4 -4
  36. package/docs/api/grid-tabulator.textformatter.md +2 -2
  37. package/docs/api-report.md +32 -24
  38. package/package.json +13 -13
@@ -191,7 +191,15 @@
191
191
  "excerptTokens": [
192
192
  {
193
193
  "kind": "Content",
194
- "text": "export declare function actionFormatter(cell: "
194
+ "text": "export declare function actionFormatter<T = "
195
+ },
196
+ {
197
+ "kind": "Content",
198
+ "text": "any"
199
+ },
200
+ {
201
+ "kind": "Content",
202
+ "text": ">(cell: "
195
203
  },
196
204
  {
197
205
  "kind": "Content",
@@ -206,6 +214,10 @@
206
214
  "text": "ActionFormatterParams",
207
215
  "canonicalReference": "@genesislcap/grid-tabulator!ActionFormatterParams:interface"
208
216
  },
217
+ {
218
+ "kind": "Content",
219
+ "text": "<T>"
220
+ },
209
221
  {
210
222
  "kind": "Content",
211
223
  "text": "): "
@@ -221,8 +233,8 @@
221
233
  ],
222
234
  "fileUrlPath": "src/cell-formatters/action.formatter.ts",
223
235
  "returnTypeTokenRange": {
224
- "startIndex": 5,
225
- "endIndex": 6
236
+ "startIndex": 8,
237
+ "endIndex": 9
226
238
  },
227
239
  "releaseTag": "Public",
228
240
  "overloadIndex": 1,
@@ -230,20 +242,33 @@
230
242
  {
231
243
  "parameterName": "cell",
232
244
  "parameterTypeTokenRange": {
233
- "startIndex": 1,
234
- "endIndex": 2
245
+ "startIndex": 3,
246
+ "endIndex": 4
235
247
  },
236
248
  "isOptional": false
237
249
  },
238
250
  {
239
251
  "parameterName": "formatterParams",
240
252
  "parameterTypeTokenRange": {
241
- "startIndex": 3,
242
- "endIndex": 4
253
+ "startIndex": 5,
254
+ "endIndex": 7
243
255
  },
244
256
  "isOptional": true
245
257
  }
246
258
  ],
259
+ "typeParameters": [
260
+ {
261
+ "typeParameterName": "T",
262
+ "constraintTokenRange": {
263
+ "startIndex": 0,
264
+ "endIndex": 0
265
+ },
266
+ "defaultTypeTokenRange": {
267
+ "startIndex": 1,
268
+ "endIndex": 2
269
+ }
270
+ }
271
+ ],
247
272
  "name": "actionFormatter"
248
273
  },
249
274
  {
@@ -253,7 +278,15 @@
253
278
  "excerptTokens": [
254
279
  {
255
280
  "kind": "Content",
256
- "text": "export declare function actionsMenuFormatter(cell: "
281
+ "text": "export declare function actionsMenuFormatter<T = "
282
+ },
283
+ {
284
+ "kind": "Content",
285
+ "text": "any"
286
+ },
287
+ {
288
+ "kind": "Content",
289
+ "text": ">(cell: "
257
290
  },
258
291
  {
259
292
  "kind": "Content",
@@ -268,6 +301,10 @@
268
301
  "text": "ActionsMenuFormatterParams",
269
302
  "canonicalReference": "@genesislcap/grid-tabulator!ActionsMenuFormatterParams:interface"
270
303
  },
304
+ {
305
+ "kind": "Content",
306
+ "text": "<T>"
307
+ },
271
308
  {
272
309
  "kind": "Content",
273
310
  "text": "): "
@@ -283,8 +320,8 @@
283
320
  ],
284
321
  "fileUrlPath": "src/cell-formatters/actions-menu.formatter.ts",
285
322
  "returnTypeTokenRange": {
286
- "startIndex": 5,
287
- "endIndex": 6
323
+ "startIndex": 8,
324
+ "endIndex": 9
288
325
  },
289
326
  "releaseTag": "Public",
290
327
  "overloadIndex": 1,
@@ -292,20 +329,33 @@
292
329
  {
293
330
  "parameterName": "cell",
294
331
  "parameterTypeTokenRange": {
295
- "startIndex": 1,
296
- "endIndex": 2
332
+ "startIndex": 3,
333
+ "endIndex": 4
297
334
  },
298
335
  "isOptional": false
299
336
  },
300
337
  {
301
338
  "parameterName": "formatterParams",
302
339
  "parameterTypeTokenRange": {
303
- "startIndex": 3,
304
- "endIndex": 4
340
+ "startIndex": 5,
341
+ "endIndex": 7
305
342
  },
306
343
  "isOptional": true
307
344
  }
308
345
  ],
346
+ "typeParameters": [
347
+ {
348
+ "typeParameterName": "T",
349
+ "constraintTokenRange": {
350
+ "startIndex": 0,
351
+ "endIndex": 0
352
+ },
353
+ "defaultTypeTokenRange": {
354
+ "startIndex": 1,
355
+ "endIndex": 2
356
+ }
357
+ }
358
+ ],
309
359
  "name": "actionsMenuFormatter"
310
360
  },
311
361
  {
@@ -315,7 +365,15 @@
315
365
  "excerptTokens": [
316
366
  {
317
367
  "kind": "Content",
318
- "text": "export declare function booleanFormatter(cell: "
368
+ "text": "export declare function booleanFormatter<T = "
369
+ },
370
+ {
371
+ "kind": "Content",
372
+ "text": "any"
373
+ },
374
+ {
375
+ "kind": "Content",
376
+ "text": ">(cell: "
319
377
  },
320
378
  {
321
379
  "kind": "Content",
@@ -330,6 +388,10 @@
330
388
  "text": "BooleanFormatterParams",
331
389
  "canonicalReference": "@genesislcap/grid-tabulator!BooleanFormatterParams:interface"
332
390
  },
391
+ {
392
+ "kind": "Content",
393
+ "text": "<T>"
394
+ },
333
395
  {
334
396
  "kind": "Content",
335
397
  "text": "): "
@@ -345,8 +407,8 @@
345
407
  ],
346
408
  "fileUrlPath": "src/cell-formatters/boolean.formatter.ts",
347
409
  "returnTypeTokenRange": {
348
- "startIndex": 5,
349
- "endIndex": 6
410
+ "startIndex": 8,
411
+ "endIndex": 9
350
412
  },
351
413
  "releaseTag": "Public",
352
414
  "overloadIndex": 1,
@@ -354,20 +416,33 @@
354
416
  {
355
417
  "parameterName": "cell",
356
418
  "parameterTypeTokenRange": {
357
- "startIndex": 1,
358
- "endIndex": 2
419
+ "startIndex": 3,
420
+ "endIndex": 4
359
421
  },
360
422
  "isOptional": false
361
423
  },
362
424
  {
363
425
  "parameterName": "formatterParams",
364
426
  "parameterTypeTokenRange": {
365
- "startIndex": 3,
366
- "endIndex": 4
427
+ "startIndex": 5,
428
+ "endIndex": 7
367
429
  },
368
430
  "isOptional": true
369
431
  }
370
432
  ],
433
+ "typeParameters": [
434
+ {
435
+ "typeParameterName": "T",
436
+ "constraintTokenRange": {
437
+ "startIndex": 0,
438
+ "endIndex": 0
439
+ },
440
+ "defaultTypeTokenRange": {
441
+ "startIndex": 1,
442
+ "endIndex": 2
443
+ }
444
+ }
445
+ ],
371
446
  "name": "booleanFormatter"
372
447
  },
373
448
  {
@@ -706,7 +781,15 @@
706
781
  "excerptTokens": [
707
782
  {
708
783
  "kind": "Content",
709
- "text": "export declare function editableFormatter(cell: "
784
+ "text": "export declare function editableFormatter<T = "
785
+ },
786
+ {
787
+ "kind": "Content",
788
+ "text": "any"
789
+ },
790
+ {
791
+ "kind": "Content",
792
+ "text": ">(cell: "
710
793
  },
711
794
  {
712
795
  "kind": "Content",
@@ -721,6 +804,10 @@
721
804
  "text": "EditableFormatterParams",
722
805
  "canonicalReference": "@genesislcap/grid-tabulator!EditableFormatterParams:interface"
723
806
  },
807
+ {
808
+ "kind": "Content",
809
+ "text": "<T>"
810
+ },
724
811
  {
725
812
  "kind": "Content",
726
813
  "text": "): "
@@ -736,8 +823,8 @@
736
823
  ],
737
824
  "fileUrlPath": "src/cell-formatters/editable.formatter.ts",
738
825
  "returnTypeTokenRange": {
739
- "startIndex": 5,
740
- "endIndex": 6
826
+ "startIndex": 8,
827
+ "endIndex": 9
741
828
  },
742
829
  "releaseTag": "Public",
743
830
  "overloadIndex": 1,
@@ -745,20 +832,33 @@
745
832
  {
746
833
  "parameterName": "cell",
747
834
  "parameterTypeTokenRange": {
748
- "startIndex": 1,
749
- "endIndex": 2
835
+ "startIndex": 3,
836
+ "endIndex": 4
750
837
  },
751
838
  "isOptional": false
752
839
  },
753
840
  {
754
841
  "parameterName": "formatterParams",
755
842
  "parameterTypeTokenRange": {
756
- "startIndex": 3,
757
- "endIndex": 4
843
+ "startIndex": 5,
844
+ "endIndex": 7
758
845
  },
759
846
  "isOptional": true
760
847
  }
761
848
  ],
849
+ "typeParameters": [
850
+ {
851
+ "typeParameterName": "T",
852
+ "constraintTokenRange": {
853
+ "startIndex": 0,
854
+ "endIndex": 0
855
+ },
856
+ "defaultTypeTokenRange": {
857
+ "startIndex": 1,
858
+ "endIndex": 2
859
+ }
860
+ }
861
+ ],
762
862
  "name": "editableFormatter"
763
863
  },
764
864
  {
@@ -2612,11 +2712,19 @@
2612
2712
  {
2613
2713
  "kind": "Function",
2614
2714
  "canonicalReference": "@genesislcap/grid-tabulator!selectFormatter:function(1)",
2615
- "docComment": "/**\n * Formatter that displays a value from a select list of options Styled to match grid-pro select renderer.\n *\n * @param cell - The cell component provided by Tabulator\n *\n * @param formatterParams - Select formatter parameters\n *\n * @returns Text content for the selected option\n *\n * @public\n */\n",
2715
+ "docComment": "/**\n * Formatter that displays a select component with options. Returns a wrapped div containing the select, similar to boolean.formatter.\n *\n * @param cell - The cell component provided by Tabulator\n *\n * @param formatterParams - Select formatter parameters\n *\n * @returns An empty string, as the component is added directly to the cell element\n *\n * @public\n */\n",
2616
2716
  "excerptTokens": [
2617
2717
  {
2618
2718
  "kind": "Content",
2619
- "text": "export declare function selectFormatter(cell: "
2719
+ "text": "export declare function selectFormatter<T = "
2720
+ },
2721
+ {
2722
+ "kind": "Content",
2723
+ "text": "any"
2724
+ },
2725
+ {
2726
+ "kind": "Content",
2727
+ "text": ">(cell: "
2620
2728
  },
2621
2729
  {
2622
2730
  "kind": "Content",
@@ -2631,6 +2739,10 @@
2631
2739
  "text": "SelectFormatterParams",
2632
2740
  "canonicalReference": "@genesislcap/grid-tabulator!SelectFormatterParams:interface"
2633
2741
  },
2742
+ {
2743
+ "kind": "Content",
2744
+ "text": "<T>"
2745
+ },
2634
2746
  {
2635
2747
  "kind": "Content",
2636
2748
  "text": "): "
@@ -2646,8 +2758,8 @@
2646
2758
  ],
2647
2759
  "fileUrlPath": "src/cell-formatters/select.formatter.ts",
2648
2760
  "returnTypeTokenRange": {
2649
- "startIndex": 5,
2650
- "endIndex": 6
2761
+ "startIndex": 8,
2762
+ "endIndex": 9
2651
2763
  },
2652
2764
  "releaseTag": "Public",
2653
2765
  "overloadIndex": 1,
@@ -2655,20 +2767,33 @@
2655
2767
  {
2656
2768
  "parameterName": "cell",
2657
2769
  "parameterTypeTokenRange": {
2658
- "startIndex": 1,
2659
- "endIndex": 2
2770
+ "startIndex": 3,
2771
+ "endIndex": 4
2660
2772
  },
2661
2773
  "isOptional": false
2662
2774
  },
2663
2775
  {
2664
2776
  "parameterName": "formatterParams",
2665
2777
  "parameterTypeTokenRange": {
2666
- "startIndex": 3,
2667
- "endIndex": 4
2778
+ "startIndex": 5,
2779
+ "endIndex": 7
2668
2780
  },
2669
2781
  "isOptional": false
2670
2782
  }
2671
2783
  ],
2784
+ "typeParameters": [
2785
+ {
2786
+ "typeParameterName": "T",
2787
+ "constraintTokenRange": {
2788
+ "startIndex": 0,
2789
+ "endIndex": 0
2790
+ },
2791
+ "defaultTypeTokenRange": {
2792
+ "startIndex": 1,
2793
+ "endIndex": 2
2794
+ }
2795
+ }
2796
+ ],
2672
2797
  "name": "selectFormatter"
2673
2798
  },
2674
2799
  {
@@ -2734,7 +2859,15 @@
2734
2859
  "excerptTokens": [
2735
2860
  {
2736
2861
  "kind": "Content",
2737
- "text": "export declare function textFormatter(cell: "
2862
+ "text": "export declare function textFormatter<T = "
2863
+ },
2864
+ {
2865
+ "kind": "Content",
2866
+ "text": "any"
2867
+ },
2868
+ {
2869
+ "kind": "Content",
2870
+ "text": ">(cell: "
2738
2871
  },
2739
2872
  {
2740
2873
  "kind": "Content",
@@ -2749,6 +2882,10 @@
2749
2882
  "text": "TextFormatterParams",
2750
2883
  "canonicalReference": "@genesislcap/grid-tabulator!TextFormatterParams:interface"
2751
2884
  },
2885
+ {
2886
+ "kind": "Content",
2887
+ "text": "<T>"
2888
+ },
2752
2889
  {
2753
2890
  "kind": "Content",
2754
2891
  "text": "): "
@@ -2764,8 +2901,8 @@
2764
2901
  ],
2765
2902
  "fileUrlPath": "src/cell-formatters/text.formatter.ts",
2766
2903
  "returnTypeTokenRange": {
2767
- "startIndex": 5,
2768
- "endIndex": 6
2904
+ "startIndex": 8,
2905
+ "endIndex": 9
2769
2906
  },
2770
2907
  "releaseTag": "Public",
2771
2908
  "overloadIndex": 1,
@@ -2773,20 +2910,33 @@
2773
2910
  {
2774
2911
  "parameterName": "cell",
2775
2912
  "parameterTypeTokenRange": {
2776
- "startIndex": 1,
2777
- "endIndex": 2
2913
+ "startIndex": 3,
2914
+ "endIndex": 4
2778
2915
  },
2779
2916
  "isOptional": false
2780
2917
  },
2781
2918
  {
2782
2919
  "parameterName": "formatterParams",
2783
2920
  "parameterTypeTokenRange": {
2784
- "startIndex": 3,
2785
- "endIndex": 4
2921
+ "startIndex": 5,
2922
+ "endIndex": 7
2786
2923
  },
2787
2924
  "isOptional": true
2788
2925
  }
2789
2926
  ],
2927
+ "typeParameters": [
2928
+ {
2929
+ "typeParameterName": "T",
2930
+ "constraintTokenRange": {
2931
+ "startIndex": 0,
2932
+ "endIndex": 0
2933
+ },
2934
+ "defaultTypeTokenRange": {
2935
+ "startIndex": 1,
2936
+ "endIndex": 2
2937
+ }
2938
+ }
2939
+ ],
2790
2940
  "name": "textFormatter"
2791
2941
  },
2792
2942
  {
@@ -34,7 +34,7 @@ import { ViewTemplate } from '@microsoft/fast-element';
34
34
  * @returns HTML content for the action button
35
35
  * @public
36
36
  */
37
- export declare function actionFormatter(cell: any, formatterParams?: ActionFormatterParams): string;
37
+ export declare function actionFormatter<T = any>(cell: any, formatterParams?: ActionFormatterParams<T>): string;
38
38
 
39
39
  /**
40
40
  * Parameters for the action formatter.
@@ -59,12 +59,12 @@ export declare function actionFormatter(cell: any, formatterParams?: ActionForma
59
59
  *
60
60
  * @alpha
61
61
  */
62
- export declare interface ActionFormatterParams {
63
- actionClick?: (rowData: any) => void;
62
+ export declare interface ActionFormatterParams<T = any> {
63
+ actionClick?: (rowData: T) => void;
64
64
  actionName?: string;
65
65
  appearance?: string;
66
- dataTestId?: string;
67
- isDisabled?: (rowData: any) => boolean;
66
+ dataTestId?: ((rowData: T) => string) | string;
67
+ isDisabled?: (rowData: T) => boolean;
68
68
  uniqueFieldName?: string;
69
69
  prefix?: string;
70
70
  actionButtonStyle?: string;
@@ -80,7 +80,7 @@ export declare interface ActionFormatterParams {
80
80
  * @returns HTML content for the actions menu
81
81
  * @public
82
82
  */
83
- export declare function actionsMenuFormatter(cell: any, formatterParams?: ActionsMenuFormatterParams): string;
83
+ export declare function actionsMenuFormatter<T = any>(cell: any, formatterParams?: ActionsMenuFormatterParams<T>): string;
84
84
 
85
85
  /**
86
86
  * Parameters for the actions menu formatter
@@ -95,18 +95,21 @@ export declare function actionsMenuFormatter(cell: any, formatterParams?: Action
95
95
  *
96
96
  * `buttonAppearance`: Optional appearance for the button that opens the menu.
97
97
  *
98
+ * `dataTestId`: Data test ID for testing
99
+ *
98
100
  * @alpha
99
101
  */
100
- export declare interface ActionsMenuFormatterParams {
102
+ export declare interface ActionsMenuFormatterParams<T = any> {
101
103
  actions?: Array<{
102
104
  name: string;
103
- callback: (rowData: any) => void;
104
- isDisabled?: (rowData: any) => boolean;
105
+ callback: (rowData: T) => void;
106
+ isDisabled?: (rowData: T) => boolean;
105
107
  }>;
106
108
  prefix?: string;
107
109
  menuName?: string;
108
110
  isVertical?: boolean;
109
111
  buttonAppearance?: string;
112
+ dataTestId?: ((rowData: T) => string) | string;
110
113
  }
111
114
 
112
115
  /**
@@ -118,7 +121,7 @@ export declare interface ActionsMenuFormatterParams {
118
121
  * @returns HTML content for the boolean value
119
122
  * @public
120
123
  */
121
- export declare function booleanFormatter(cell: any, formatterParams?: BooleanFormatterParams): string;
124
+ export declare function booleanFormatter<T = any>(cell: any, formatterParams?: BooleanFormatterParams<T>): string;
122
125
 
123
126
  /**
124
127
  * Parameters for the boolean formatter
@@ -131,9 +134,9 @@ export declare function booleanFormatter(cell: any, formatterParams?: BooleanFor
131
134
  *
132
135
  * @alpha
133
136
  */
134
- export declare interface BooleanFormatterParams {
135
- isDisabled?: (rowData: any) => boolean;
136
- dataTestId?: string;
137
+ export declare interface BooleanFormatterParams<T = any> {
138
+ isDisabled?: (rowData: T) => boolean;
139
+ dataTestId?: ((rowData: T) => string) | string;
137
140
  prefix?: string;
138
141
  }
139
142
 
@@ -293,7 +296,7 @@ export declare const defaultGridTabulatorConfig: {
293
296
  * @returns HTML content for the editable cell
294
297
  * @public
295
298
  */
296
- export declare function editableFormatter(cell: any, formatterParams?: EditableFormatterParams): string;
299
+ export declare function editableFormatter<T = any>(cell: any, formatterParams?: EditableFormatterParams<T>): string;
297
300
 
298
301
  /**
299
302
  * Parameters for the editable formatter
@@ -316,13 +319,13 @@ export declare function editableFormatter(cell: any, formatterParams?: EditableF
316
319
  *
317
320
  * @alpha
318
321
  */
319
- export declare interface EditableFormatterParams {
322
+ export declare interface EditableFormatterParams<T = any> {
320
323
  value?: any;
321
- data?: any;
324
+ data?: T;
322
325
  field?: string;
323
326
  cssClass?: string;
324
327
  nullText?: string;
325
- dataTestId?: string;
328
+ dataTestId?: ((rowData: T) => string) | string;
326
329
  icon?: string;
327
330
  prefix?: string;
328
331
  }
@@ -498,6 +501,16 @@ export declare const foundationGridTabulatorComponents: {
498
501
  */
499
502
  export declare function getColumnType(metadataType: string): string;
500
503
 
504
+ /**
505
+ * Resolves a dataTestId value that can be either a string or a function
506
+ *
507
+ * @param dataTestId - The dataTestId value (string or function)
508
+ * @param rowData - The row data to pass to the function if dataTestId is a function
509
+ * @returns The resolved test ID string or undefined if not provided
510
+ * @alpha
511
+ */
512
+ export declare function getDataTestId<T = any>(dataTestId: ((rowData: T) => string) | string | undefined, rowData: T): string | undefined;
513
+
501
514
  /**
502
515
  * Get the filter type based on the field type.
503
516
  * @param type - The field type.
@@ -2373,6 +2386,7 @@ declare interface NumberEditorParams {
2373
2386
  */
2374
2387
  export declare type Options = {
2375
2388
  formatters?: Record<string, Formatter>;
2389
+ columns?: ColumnDefinition[];
2376
2390
  } & Omit<Options_2, 'formatters'>;
2377
2391
 
2378
2392
  /**
@@ -2440,15 +2454,15 @@ declare interface SelectEditorParams {
2440
2454
  }
2441
2455
 
2442
2456
  /**
2443
- * Formatter that displays a value from a select list of options
2444
- * Styled to match grid-pro select renderer.
2457
+ * Formatter that displays a select component with options.
2458
+ * Returns a wrapped div containing the select, similar to boolean.formatter.
2445
2459
  *
2446
2460
  * @param cell - The cell component provided by Tabulator
2447
2461
  * @param formatterParams - Select formatter parameters
2448
- * @returns Text content for the selected option
2462
+ * @returns An empty string, as the component is added directly to the cell element
2449
2463
  * @public
2450
2464
  */
2451
- export declare function selectFormatter(cell: any, formatterParams: SelectFormatterParams): string;
2465
+ export declare function selectFormatter<T = any>(cell: any, formatterParams: SelectFormatterParams<T>): string;
2452
2466
 
2453
2467
  /**
2454
2468
  * Parameters for the select formatter
@@ -2461,13 +2475,16 @@ export declare function selectFormatter(cell: any, formatterParams: SelectFormat
2461
2475
  *
2462
2476
  * `prefix`: The prefix to use for element classes, e.g., 'foundation', 'zero', 'rapid'. Defaults to 'foundation' if not specified.
2463
2477
  *
2478
+ * `onChange`: Optional callback when the selection changes
2479
+ *
2464
2480
  * @alpha
2465
2481
  */
2466
- export declare interface SelectFormatterParams {
2467
- options: SelectOption[];
2482
+ export declare interface SelectFormatterParams<T = any> {
2483
+ options: SelectOption<T>[];
2468
2484
  nullText?: string;
2469
- dataTestId?: string;
2485
+ dataTestId?: ((rowData: T) => string) | string;
2470
2486
  prefix?: string;
2487
+ onChange?: (value: string, rowData: T) => void;
2471
2488
  }
2472
2489
 
2473
2490
  /**
@@ -2477,11 +2494,14 @@ export declare interface SelectFormatterParams {
2477
2494
  *
2478
2495
  * `label`: The text to display
2479
2496
  *
2497
+ * `isDisabled`: Optional function to determine if this option should be disabled for the given row data
2498
+ *
2480
2499
  * @alpha
2481
2500
  */
2482
- declare interface SelectOption {
2501
+ declare interface SelectOption<T = any> {
2483
2502
  value: string | number;
2484
2503
  label: string;
2504
+ isDisabled?: (rowData: T) => boolean;
2485
2505
  }
2486
2506
 
2487
2507
  /** @beta
@@ -2559,7 +2579,7 @@ export declare const tabulatorThemeSimpleCSS: ElementStyles;
2559
2579
  * @returns Text content for the cell
2560
2580
  * @public
2561
2581
  */
2562
- export declare function textFormatter(cell: any, formatterParams?: TextFormatterParams): string;
2582
+ export declare function textFormatter<T = any>(cell: any, formatterParams?: TextFormatterParams<T>): string;
2563
2583
 
2564
2584
  /**
2565
2585
  * Parameters for the text formatter
@@ -2578,12 +2598,12 @@ export declare function textFormatter(cell: any, formatterParams?: TextFormatter
2578
2598
  *
2579
2599
  * @alpha
2580
2600
  */
2581
- export declare interface TextFormatterParams {
2601
+ export declare interface TextFormatterParams<T = any> {
2582
2602
  specialValue?: any;
2583
2603
  specialColor?: string;
2584
2604
  specialFontWeight?: string;
2585
2605
  prefix?: string;
2586
- dataTestId?: string;
2606
+ dataTestId?: ((rowData: T) => string) | string;
2587
2607
  nullText?: string;
2588
2608
  }
2589
2609
 
@@ -9,7 +9,7 @@ Formatter that displays an action button in the cell. Styled to match grid-pro a
9
9
  **Signature:**
10
10
 
11
11
  ```typescript
12
- export declare function actionFormatter(cell: any, formatterParams?: ActionFormatterParams): string;
12
+ export declare function actionFormatter<T = any>(cell: any, formatterParams?: ActionFormatterParams<T>): string;
13
13
  ```
14
14
 
15
15
  ## Parameters
@@ -17,7 +17,7 @@ export declare function actionFormatter(cell: any, formatterParams?: ActionForma
17
17
  | Parameter | Type | Description |
18
18
  | --- | --- | --- |
19
19
  | cell | any | The cell component provided by Tabulator |
20
- | formatterParams | ActionFormatterParams | _(Optional)_ Action formatter parameters |
20
+ | formatterParams | ActionFormatterParams&lt;T&gt; | _(Optional)_ Action formatter parameters |
21
21
 
22
22
  **Returns:**
23
23