@vueye-table/styled 3.0.0-alpha.1 → 3.0.0-alpha.11

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.
package/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # @vueye-table/styled
2
2
 
3
+ `VtTable` and `VtGrid` accept opt-in `virtual`, `height`, `rowHeight` and `overscan`. A virtual grid also accepts `virtualColumns` and `columnWidth`; headers and body use the same widths and column slice. The supplied binding retains its pagination choice. See `docs/guide/virtualization.md` and the runnable 100k-record component example.
4
+
3
5
  Themed Vue components for vueye-table (`VtTable`, `VtGrid`, `VtToolbar`, `VtSearch`,
4
6
  `VtPagination`, `VtPageSize`, `VtColumnVisibility`, `VtStatus`, `VtEmpty`) and a stylesheet
5
7
  driven by CSS custom properties, with dark mode and three densities.
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { SortInfo, TableColumn, TableRow } from "@vueye-table/core";
2
- import { GridCellSlotProps } from "@vueye-table/headless";
2
+ import { CellEditorSlotProps, DetailSlotProps, GridCellSlotProps } from "@vueye-table/headless";
3
3
  import { AnyDataTableBinding, DataTableBinding } from "@vueye-table/vue";
4
4
  import { Component, PropType, SlotsType, VNode, VNodeChild } from "vue";
5
5
  //#region src/components.d.ts
@@ -69,10 +69,46 @@ declare const VtTable: import("vue").DefineComponent<import("vue").ExtractPropTy
69
69
  readonly type: PropType<"light" | "dark" | undefined>;
70
70
  readonly default: undefined;
71
71
  };
72
+ treeColumn: {
73
+ readonly type: PropType<string | undefined>;
74
+ readonly default: undefined;
75
+ };
76
+ keepAliveDetail: {
77
+ readonly type: BooleanConstructor;
78
+ readonly default: false;
79
+ };
80
+ virtual: {
81
+ readonly type: PropType<boolean | import("@vueye-table/headless").ComponentVirtualOptions>;
82
+ readonly default: false;
83
+ };
84
+ height: {
85
+ readonly type: PropType<string | undefined>;
86
+ readonly default: undefined;
87
+ };
88
+ rowHeight: {
89
+ readonly type: NumberConstructor;
90
+ readonly default: 40;
91
+ };
92
+ overscan: {
93
+ readonly type: NumberConstructor;
94
+ readonly default: 5;
95
+ };
96
+ virtualColumns: {
97
+ readonly type: BooleanConstructor;
98
+ readonly default: false;
99
+ };
100
+ columnWidth: {
101
+ readonly type: NumberConstructor;
102
+ readonly default: 120;
103
+ };
72
104
  table: {
73
105
  type: PropType<AnyDataTableBinding>;
74
106
  required: true;
75
107
  };
108
+ leadingColumns: {
109
+ type: NumberConstructor;
110
+ default: number;
111
+ };
76
112
  }>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
77
113
  [key: string]: any;
78
114
  }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -104,11 +140,48 @@ declare const VtTable: import("vue").DefineComponent<import("vue").ExtractPropTy
104
140
  readonly type: PropType<"light" | "dark" | undefined>;
105
141
  readonly default: undefined;
106
142
  };
143
+ treeColumn: {
144
+ readonly type: PropType<string | undefined>;
145
+ readonly default: undefined;
146
+ };
147
+ keepAliveDetail: {
148
+ readonly type: BooleanConstructor;
149
+ readonly default: false;
150
+ };
151
+ virtual: {
152
+ readonly type: PropType<boolean | import("@vueye-table/headless").ComponentVirtualOptions>;
153
+ readonly default: false;
154
+ };
155
+ height: {
156
+ readonly type: PropType<string | undefined>;
157
+ readonly default: undefined;
158
+ };
159
+ rowHeight: {
160
+ readonly type: NumberConstructor;
161
+ readonly default: 40;
162
+ };
163
+ overscan: {
164
+ readonly type: NumberConstructor;
165
+ readonly default: 5;
166
+ };
167
+ virtualColumns: {
168
+ readonly type: BooleanConstructor;
169
+ readonly default: false;
170
+ };
171
+ columnWidth: {
172
+ readonly type: NumberConstructor;
173
+ readonly default: 120;
174
+ };
107
175
  table: {
108
176
  type: PropType<AnyDataTableBinding>;
109
177
  required: true;
110
178
  };
179
+ leadingColumns: {
180
+ type: NumberConstructor;
181
+ default: number;
182
+ };
111
183
  }>> & Readonly<{}>, {
184
+ leadingColumns: number;
112
185
  density: Density;
113
186
  striped: boolean;
114
187
  bordered: boolean;
@@ -116,19 +189,96 @@ declare const VtTable: import("vue").DefineComponent<import("vue").ExtractPropTy
116
189
  stickyHeader: boolean;
117
190
  loading: boolean;
118
191
  theme: "light" | "dark" | undefined;
192
+ treeColumn: string | undefined;
193
+ keepAliveDetail: boolean;
194
+ virtual: boolean | import("@vueye-table/headless").ComponentVirtualOptions;
195
+ height: string | undefined;
196
+ rowHeight: number;
197
+ overscan: number;
198
+ virtualColumns: boolean;
199
+ columnWidth: number;
119
200
  }, SlotsType<{
120
201
  default?: (props: {
121
202
  table: DataTableBinding<unknown>;
122
203
  }) => VNode[];
204
+ expanded?: (props: DetailSlotProps) => VNodeChild;
123
205
  }>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
124
206
  /** The styled body, with the empty state in a full-width row. */
125
- declare const VtBody: import("vue").DefineComponent<{}, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
207
+ declare const VtBody: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
208
+ treeColumn: {
209
+ type: PropType<string | undefined>;
210
+ default: undefined;
211
+ };
212
+ virtual: {
213
+ readonly type: PropType<boolean | import("@vueye-table/headless").ComponentVirtualOptions>;
214
+ readonly default: false;
215
+ };
216
+ height: {
217
+ readonly type: PropType<string | undefined>;
218
+ readonly default: undefined;
219
+ };
220
+ rowHeight: {
221
+ readonly type: NumberConstructor;
222
+ readonly default: 40;
223
+ };
224
+ overscan: {
225
+ readonly type: NumberConstructor;
226
+ readonly default: 5;
227
+ };
228
+ virtualColumns: {
229
+ readonly type: BooleanConstructor;
230
+ readonly default: false;
231
+ };
232
+ columnWidth: {
233
+ readonly type: NumberConstructor;
234
+ readonly default: 120;
235
+ };
236
+ }>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
126
237
  [key: string]: any;
127
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, SlotsType<{
238
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
239
+ treeColumn: {
240
+ type: PropType<string | undefined>;
241
+ default: undefined;
242
+ };
243
+ virtual: {
244
+ readonly type: PropType<boolean | import("@vueye-table/headless").ComponentVirtualOptions>;
245
+ readonly default: false;
246
+ };
247
+ height: {
248
+ readonly type: PropType<string | undefined>;
249
+ readonly default: undefined;
250
+ };
251
+ rowHeight: {
252
+ readonly type: NumberConstructor;
253
+ readonly default: 40;
254
+ };
255
+ overscan: {
256
+ readonly type: NumberConstructor;
257
+ readonly default: 5;
258
+ };
259
+ virtualColumns: {
260
+ readonly type: BooleanConstructor;
261
+ readonly default: false;
262
+ };
263
+ columnWidth: {
264
+ readonly type: NumberConstructor;
265
+ readonly default: 120;
266
+ };
267
+ }>> & Readonly<{}>, {
268
+ treeColumn: string | undefined;
269
+ virtual: boolean | import("@vueye-table/headless").ComponentVirtualOptions;
270
+ height: string | undefined;
271
+ rowHeight: number;
272
+ overscan: number;
273
+ virtualColumns: boolean;
274
+ columnWidth: number;
275
+ }, SlotsType<{
128
276
  default?: (props: {
129
277
  rows: readonly TableRow<unknown>[];
130
278
  }) => VNode[];
131
279
  empty?: () => VNode[];
280
+ detail?: (props: DetailSlotProps) => VNodeChild;
281
+ row?: (props: DetailSlotProps) => VNodeChild;
132
282
  }>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
133
283
  /** The default empty state. */
134
284
  declare const VtEmpty: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
@@ -245,14 +395,160 @@ declare const VtStatus: import("vue").DefineComponent<import("vue").ExtractPropT
245
395
  };
246
396
  }>> & Readonly<{}>, {
247
397
  as: string;
398
+ }, SlotsType<{
399
+ default?: (props: import("@vueye-table/headless").TableStatusSlotProps) => VNode[];
400
+ }>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
401
+ declare const VtLoadMore: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
402
+ label: {
403
+ type: StringConstructor;
404
+ default: string;
405
+ };
406
+ retryLabel: {
407
+ type: StringConstructor;
408
+ default: string;
409
+ };
410
+ loadingLabel: {
411
+ type: StringConstructor;
412
+ default: string;
413
+ };
414
+ }>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
415
+ [key: string]: any;
416
+ }> | null, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
417
+ label: {
418
+ type: StringConstructor;
419
+ default: string;
420
+ };
421
+ retryLabel: {
422
+ type: StringConstructor;
423
+ default: string;
424
+ };
425
+ loadingLabel: {
426
+ type: StringConstructor;
427
+ default: string;
428
+ };
429
+ }>> & Readonly<{}>, {
430
+ label: string;
431
+ retryLabel: string;
432
+ loadingLabel: string;
433
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
434
+ declare const VtDetailRow: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
435
+ row: {
436
+ readonly type: PropType<TableRow<unknown>>;
437
+ readonly required: true;
438
+ };
439
+ colspan: {
440
+ type: NumberConstructor;
441
+ default: undefined;
442
+ };
443
+ hidden: {
444
+ type: BooleanConstructor;
445
+ default: boolean;
446
+ };
447
+ keepAlive: {
448
+ type: PropType<boolean | undefined>;
449
+ default: undefined;
450
+ };
451
+ }>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
452
+ [key: string]: any;
453
+ }> | null, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
454
+ row: {
455
+ readonly type: PropType<TableRow<unknown>>;
456
+ readonly required: true;
457
+ };
458
+ colspan: {
459
+ type: NumberConstructor;
460
+ default: undefined;
461
+ };
462
+ hidden: {
463
+ type: BooleanConstructor;
464
+ default: boolean;
465
+ };
466
+ keepAlive: {
467
+ type: PropType<boolean | undefined>;
468
+ default: undefined;
469
+ };
470
+ }>> & Readonly<{}>, {
471
+ colspan: number;
472
+ hidden: boolean;
473
+ keepAlive: boolean | undefined;
248
474
  }, SlotsType<{
249
475
  default?: (props: {
250
- start: number;
251
- end: number;
252
- rowCount: number;
253
- totalRowCount: number;
254
- selectedCount: number;
255
- }) => VNode[];
476
+ row: TableRow<unknown>;
477
+ }) => VNodeChild;
478
+ }>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
479
+ declare const VtExpandToggle: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
480
+ readonly row: {
481
+ readonly type: PropType<TableRow<unknown>>;
482
+ readonly required: true;
483
+ };
484
+ readonly controls: {
485
+ readonly type: PropType<string | undefined>;
486
+ readonly default: undefined;
487
+ };
488
+ readonly expandLabel: {
489
+ readonly type: StringConstructor;
490
+ readonly default: "Expand row";
491
+ };
492
+ readonly collapseLabel: {
493
+ readonly type: StringConstructor;
494
+ readonly default: "Collapse row";
495
+ };
496
+ }>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
497
+ [key: string]: any;
498
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
499
+ readonly row: {
500
+ readonly type: PropType<TableRow<unknown>>;
501
+ readonly required: true;
502
+ };
503
+ readonly controls: {
504
+ readonly type: PropType<string | undefined>;
505
+ readonly default: undefined;
506
+ };
507
+ readonly expandLabel: {
508
+ readonly type: StringConstructor;
509
+ readonly default: "Expand row";
510
+ };
511
+ readonly collapseLabel: {
512
+ readonly type: StringConstructor;
513
+ readonly default: "Collapse row";
514
+ };
515
+ }>> & Readonly<{}>, {
516
+ readonly controls: string | undefined;
517
+ readonly expandLabel: string;
518
+ readonly collapseLabel: string;
519
+ }, SlotsType<{
520
+ default?: (props: {
521
+ row: TableRow<unknown>;
522
+ expanded: boolean;
523
+ }) => VNodeChild;
524
+ }>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
525
+ declare const VtTreeCell: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
526
+ readonly row: {
527
+ readonly type: PropType<TableRow<unknown>>;
528
+ readonly required: true;
529
+ };
530
+ readonly as: {
531
+ readonly type: StringConstructor;
532
+ readonly default: string;
533
+ };
534
+ }>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
535
+ [key: string]: any;
536
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
537
+ readonly row: {
538
+ readonly type: PropType<TableRow<unknown>>;
539
+ readonly required: true;
540
+ };
541
+ readonly as: {
542
+ readonly type: StringConstructor;
543
+ readonly default: string;
544
+ };
545
+ }>> & Readonly<{}>, {
546
+ readonly as: string;
547
+ }, SlotsType<{
548
+ default?: () => VNodeChild;
549
+ toggle?: (props: {
550
+ row: TableRow<unknown>;
551
+ }) => VNodeChild;
256
552
  }>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
257
553
  /** A horizontal bar for controls above or below a table. */
258
554
  declare const VtToolbar: import("vue").DefineComponent<{}, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
@@ -260,11 +556,114 @@ declare const VtToolbar: import("vue").DefineComponent<{}, () => VNode<import("v
260
556
  }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, SlotsType<{
261
557
  default?: () => VNode[];
262
558
  }>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
559
+ declare const VtCellEditor: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
560
+ readonly editor: {
561
+ readonly type: PropType<CellEditorSlotProps>;
562
+ readonly required: true;
563
+ };
564
+ readonly spec: {
565
+ readonly type: PropType<import("@vueye-table/core").EditorSpec>;
566
+ readonly default: () => {
567
+ kind: string;
568
+ };
569
+ };
570
+ readonly finish: {
571
+ readonly type: PropType<((direction?: "up" | "down" | "left" | "right") => void) | undefined>;
572
+ readonly default: undefined;
573
+ };
574
+ readonly autofocus: {
575
+ readonly type: BooleanConstructor;
576
+ readonly default: true;
577
+ };
578
+ readonly blurCommit: {
579
+ readonly type: BooleanConstructor;
580
+ readonly default: true;
581
+ };
582
+ readonly tabCommit: {
583
+ readonly type: BooleanConstructor;
584
+ readonly default: true;
585
+ };
586
+ }>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
587
+ [key: string]: any;
588
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
589
+ readonly editor: {
590
+ readonly type: PropType<CellEditorSlotProps>;
591
+ readonly required: true;
592
+ };
593
+ readonly spec: {
594
+ readonly type: PropType<import("@vueye-table/core").EditorSpec>;
595
+ readonly default: () => {
596
+ kind: string;
597
+ };
598
+ };
599
+ readonly finish: {
600
+ readonly type: PropType<((direction?: "up" | "down" | "left" | "right") => void) | undefined>;
601
+ readonly default: undefined;
602
+ };
603
+ readonly autofocus: {
604
+ readonly type: BooleanConstructor;
605
+ readonly default: true;
606
+ };
607
+ readonly blurCommit: {
608
+ readonly type: BooleanConstructor;
609
+ readonly default: true;
610
+ };
611
+ readonly tabCommit: {
612
+ readonly type: BooleanConstructor;
613
+ readonly default: true;
614
+ };
615
+ }>> & Readonly<{}>, {
616
+ readonly spec: import("@vueye-table/core").EditorSpec;
617
+ readonly finish: ((direction?: "up" | "down" | "left" | "right") => void) | undefined;
618
+ readonly autofocus: boolean;
619
+ readonly blurCommit: boolean;
620
+ readonly tabCommit: boolean;
621
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
622
+ declare const VtRowActions: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
623
+ row: {
624
+ readonly type: PropType<TableRow<unknown>>;
625
+ readonly required: true;
626
+ };
627
+ editable: {
628
+ type: BooleanConstructor;
629
+ default: boolean;
630
+ };
631
+ removable: {
632
+ type: BooleanConstructor;
633
+ default: boolean;
634
+ };
635
+ }>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
636
+ [key: string]: any;
637
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
638
+ row: {
639
+ readonly type: PropType<TableRow<unknown>>;
640
+ readonly required: true;
641
+ };
642
+ editable: {
643
+ type: BooleanConstructor;
644
+ default: boolean;
645
+ };
646
+ removable: {
647
+ type: BooleanConstructor;
648
+ default: boolean;
649
+ };
650
+ }>> & Readonly<{}>, {
651
+ editable: boolean;
652
+ removable: boolean;
653
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
263
654
  /**
264
655
  * The styled spreadsheet grid, with optional row numbers and A, B, C column letters. A
265
656
  * `cell.<column id>` slot draws that column's cells while they are not being edited.
266
657
  */
267
658
  declare const VtGrid: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
659
+ rowActions: {
660
+ type: BooleanConstructor;
661
+ default: boolean;
662
+ };
663
+ removable: {
664
+ type: BooleanConstructor;
665
+ default: boolean;
666
+ };
268
667
  density: {
269
668
  readonly type: PropType<Density>;
270
669
  readonly default: "comfortable";
@@ -293,6 +692,38 @@ declare const VtGrid: import("vue").DefineComponent<import("vue").ExtractPropTyp
293
692
  readonly type: PropType<"light" | "dark" | undefined>;
294
693
  readonly default: undefined;
295
694
  };
695
+ treeColumn: {
696
+ readonly type: PropType<string | undefined>;
697
+ readonly default: undefined;
698
+ };
699
+ keepAliveDetail: {
700
+ readonly type: BooleanConstructor;
701
+ readonly default: false;
702
+ };
703
+ virtual: {
704
+ readonly type: PropType<boolean | import("@vueye-table/headless").ComponentVirtualOptions>;
705
+ readonly default: false;
706
+ };
707
+ height: {
708
+ readonly type: PropType<string | undefined>;
709
+ readonly default: undefined;
710
+ };
711
+ rowHeight: {
712
+ readonly type: NumberConstructor;
713
+ readonly default: 40;
714
+ };
715
+ overscan: {
716
+ readonly type: NumberConstructor;
717
+ readonly default: 5;
718
+ };
719
+ virtualColumns: {
720
+ readonly type: BooleanConstructor;
721
+ readonly default: false;
722
+ };
723
+ columnWidth: {
724
+ readonly type: NumberConstructor;
725
+ readonly default: 120;
726
+ };
296
727
  table: {
297
728
  type: PropType<AnyDataTableBinding>;
298
729
  required: true;
@@ -311,7 +742,18 @@ declare const VtGrid: import("vue").DefineComponent<import("vue").ExtractPropTyp
311
742
  };
312
743
  }>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
313
744
  [key: string]: any;
314
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
745
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
746
+ save: (_result: unknown) => true;
747
+ cancel: (_key: unknown) => true;
748
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
749
+ rowActions: {
750
+ type: BooleanConstructor;
751
+ default: boolean;
752
+ };
753
+ removable: {
754
+ type: BooleanConstructor;
755
+ default: boolean;
756
+ };
315
757
  density: {
316
758
  readonly type: PropType<Density>;
317
759
  readonly default: "comfortable";
@@ -340,6 +782,38 @@ declare const VtGrid: import("vue").DefineComponent<import("vue").ExtractPropTyp
340
782
  readonly type: PropType<"light" | "dark" | undefined>;
341
783
  readonly default: undefined;
342
784
  };
785
+ treeColumn: {
786
+ readonly type: PropType<string | undefined>;
787
+ readonly default: undefined;
788
+ };
789
+ keepAliveDetail: {
790
+ readonly type: BooleanConstructor;
791
+ readonly default: false;
792
+ };
793
+ virtual: {
794
+ readonly type: PropType<boolean | import("@vueye-table/headless").ComponentVirtualOptions>;
795
+ readonly default: false;
796
+ };
797
+ height: {
798
+ readonly type: PropType<string | undefined>;
799
+ readonly default: undefined;
800
+ };
801
+ rowHeight: {
802
+ readonly type: NumberConstructor;
803
+ readonly default: 40;
804
+ };
805
+ overscan: {
806
+ readonly type: NumberConstructor;
807
+ readonly default: 5;
808
+ };
809
+ virtualColumns: {
810
+ readonly type: BooleanConstructor;
811
+ readonly default: false;
812
+ };
813
+ columnWidth: {
814
+ readonly type: NumberConstructor;
815
+ readonly default: 120;
816
+ };
343
817
  table: {
344
818
  type: PropType<AnyDataTableBinding>;
345
819
  required: true;
@@ -356,7 +830,10 @@ declare const VtGrid: import("vue").DefineComponent<import("vue").ExtractPropTyp
356
830
  type: BooleanConstructor;
357
831
  default: boolean;
358
832
  };
359
- }>> & Readonly<{}>, {
833
+ }>> & Readonly<{
834
+ onCancel?: (_key: unknown) => any;
835
+ onSave?: (_result: unknown) => any;
836
+ }>, {
360
837
  label: string | undefined;
361
838
  density: Density;
362
839
  striped: boolean;
@@ -365,12 +842,24 @@ declare const VtGrid: import("vue").DefineComponent<import("vue").ExtractPropTyp
365
842
  stickyHeader: boolean;
366
843
  loading: boolean;
367
844
  theme: "light" | "dark" | undefined;
845
+ treeColumn: string | undefined;
846
+ keepAliveDetail: boolean;
847
+ virtual: boolean | import("@vueye-table/headless").ComponentVirtualOptions;
848
+ height: string | undefined;
849
+ rowHeight: number;
850
+ overscan: number;
851
+ virtualColumns: boolean;
852
+ columnWidth: number;
853
+ removable: boolean;
368
854
  rowNumbers: boolean;
369
855
  columnLetters: boolean;
856
+ rowActions: boolean;
370
857
  }, SlotsType<{
371
858
  [key: `cell.${string}`]: GridCellSlotProps;
859
+ [key: `editor.${string}`]: CellEditorSlotProps;
372
860
  } & {
373
861
  default?: (props: Record<string, unknown>) => VNode[];
862
+ expanded?: (props: DetailSlotProps) => VNodeChild;
374
863
  }>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
375
864
  //#endregion
376
865
  //#region src/icons.d.ts
@@ -381,6 +870,8 @@ declare const paths: {
381
870
  readonly search: "M11 19a8 8 0 1 1 0-16 8 8 0 0 1 0 16zm10 2-4.35-4.35";
382
871
  readonly columns: "M4 4h6v16H4zM14 4h6v16h-6z";
383
872
  readonly empty: "M3 7h18M3 12h18M3 17h10";
873
+ readonly expand: "M9 5l7 7-7 7";
874
+ readonly collapse: "M5 9l7 7 7-7";
384
875
  };
385
876
  type IconName = keyof typeof paths;
386
877
  /** A 24-pixel stroke icon that inherits the text color. */
@@ -393,5 +884,5 @@ declare function icon(name: IconName, className?: string): VNode;
393
884
  */
394
885
  declare function withClass<TComponent extends Component>(component: TComponent, className: string, name: string): TComponent;
395
886
  //#endregion
396
- export { type Density, type IconName, VtBody, VtColumnVisibility, VtEmpty, VtGrid, VtHeader, VtPageSize, VtPagination, VtSearch, VtSortIndicator, VtStatus, VtTable, VtToolbar, icon, withClass };
887
+ export { type Density, type IconName, VtBody, VtCellEditor, VtColumnVisibility, VtDetailRow, VtEmpty, VtExpandToggle, VtGrid, VtHeader, VtLoadMore, VtPageSize, VtPagination, VtRowActions, VtSearch, VtSortIndicator, VtStatus, VtTable, VtToolbar, VtTreeCell, icon, withClass };
397
888
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/components.ts","../src/icons.ts","../src/with-class.ts"],"mappings":";;;;;KA8BY;;cAqCC,+BAAe,8BAAA;;IAEO,MAAA,SAAS;;;;;;;IAAT,MAAA,SAAS;;;;;qCAW1C;;cAGW,wBAAQ,0BAAA,oBAAA,4BAAA;;;GAIoB,2BAAA;IACjC,QAAQ;IACR,MAAM;IACN,aAAa;QACT;;EAEG,eAAM;EACP,cAAM;EACL,UAAC;IAAS,QAAQ;QAA2B;kCAoC1D;;;;;cAMW,uBAAO,8BAAA;;aAvGS,MAAA,SAAS;;;;;;;;;;;;;;;;;;;;;;;;aAOX,MAAA;;;;IAsGE,MAAA,SAAS;;;;;;;aA7GT,MAAA,SAAS;;;;;;;;;;;;;;;;;;;;;;;;aAOX,MAAA;;;;IAsGE,MAAA,SAAS;;;;;;;;;;;;EAHxB,WAAC;IAAS,OAAO;QAAgC;kCAqB7D;;cAGW,sBAAM,0BAAA,oBAAA,4BAAA;;;EAGL,WAAC;IAAS,eAAe;QAA0B;EACrD,cAAM;kCAahB;;cAGW,uBAAO,8BAAA;;;;;;;;;;;;;;;EAEqB,gBAAM;kCAS7C;;cAGW,wBAAQ,0BAAA,oBAAA,4BAAA;;8BAMnB,qCAAA,iDAAA,aAAA,eAAA,oDAAA;;cAGW,0BAAU,8BAAA;;IAGO,MAAA;;;;;;;;;;;IAAA,MAAA;;;;;;;;;;qCAU5B;;;;;cAMW,kCAAkB,8BAAA;;;;;;;;;;;;;;qCAwC7B;cAEW,4BAAY,8BAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAAkE;cAC9E,wBAAQ,8BAAA;;;;;;;;;;;;;;;;;;;;;;kCAAsD;;cAG9D,yBAAS,0BAAA,oBAAA,4BAAA;;;EAEmB,gBAAM;kCAI7C;;;;;cA6CW,sBAAM,8BAAA;;aAjSU,MAAA,SAAS;;;;;;;;;;;;;;;;;;;;;;;;aAOX,MAAA;;;;IAkSE,MAAA,SAAS;;;;IACT,MAAA;;;;;;;;;;;;;;;aA1SA,MAAA,SAAS;;;;;;;;;;;;;;;;;;;;;;;;aAOX,MAAA;;;;IAkSE,MAAA,SAAS;;;;IACT,MAAA;;;;;;;;;;;;;;;;;;;;;;;;;EALb,WAAC,OAAO,4BAA4B;kCAsDlD;;;cC3XI;;;;;;;;KASM,wBAAwB;;iBAGpB,KAAK,MAAM,UAAU,qBAAwB;;;;;;;iBCR7C,UAAU,mBAAmB,WAC3C,WAAW,YACX,mBACA,eACC"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/components.ts","../src/icons.ts","../src/with-class.ts"],"mappings":"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"}