@stonecrop/atable 0.4.23 → 0.4.25

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/dist/atable.d.ts CHANGED
@@ -11,8 +11,10 @@ import ATableModal from './components/ATableModal.vue';
11
11
  import { ComputedRef } from 'vue';
12
12
  import { CSSProperties } from 'vue';
13
13
  import { Ref } from 'vue';
14
+ import type { ShallowRef } from 'vue';
14
15
  import { Store } from 'pinia';
15
16
  import { useElementBounding } from '@vueuse/core';
17
+ import { WritableComputedRef } from 'vue';
16
18
 
17
19
  export { ACell }
18
20
 
@@ -53,6 +55,89 @@ export declare interface CellContext {
53
55
  };
54
56
  }
55
57
 
58
+ /**
59
+ * Connection event for handling connection creation/deletion.
60
+ * @public
61
+ */
62
+ export declare type ConnectionEvent = {
63
+ type: 'create' | 'delete';
64
+ connection: ConnectionPath;
65
+ };
66
+
67
+ /**
68
+ * Connection handle information for gantt bar connections.
69
+ * @public
70
+ */
71
+ export declare interface ConnectionHandle {
72
+ /**
73
+ * Unique identifier for the connection handle.
74
+ */
75
+ id: string;
76
+ /**
77
+ * The row index of the gantt bar this handle belongs to.
78
+ */
79
+ rowIndex: number;
80
+ /**
81
+ * The column index of the gantt bar this handle belongs to.
82
+ */
83
+ colIndex: number;
84
+ /**
85
+ * The side of the gantt bar where this handle is located.
86
+ */
87
+ side: 'left' | 'right';
88
+ /**
89
+ * The position of the connection handle.
90
+ */
91
+ position: {
92
+ x: ShallowRef<number>;
93
+ y: ShallowRef<number>;
94
+ };
95
+ /**
96
+ * Whether the handle is currently visible (on hover).
97
+ */
98
+ visible: Ref<boolean>;
99
+ /**
100
+ * Reference to the gantt bar this handle belongs to.
101
+ */
102
+ barId: string;
103
+ }
104
+
105
+ /**
106
+ * Connection path between two gantt bars.
107
+ * @public
108
+ */
109
+ export declare interface ConnectionPath {
110
+ /**
111
+ * Unique identifier for the connection path.
112
+ */
113
+ id: string;
114
+ /**
115
+ * The source connection handle.
116
+ */
117
+ from: {
118
+ barId: string;
119
+ side: 'left' | 'right';
120
+ };
121
+ /**
122
+ * The target connection handle.
123
+ */
124
+ to: {
125
+ barId: string;
126
+ side: 'left' | 'right';
127
+ };
128
+ /**
129
+ * Optional styling for the connection path.
130
+ */
131
+ style?: {
132
+ color?: string;
133
+ width?: number;
134
+ };
135
+ /**
136
+ * Optional label for the connection.
137
+ */
138
+ label?: string;
139
+ }
140
+
56
141
  /**
57
142
  * Create a table store
58
143
  * @param initData - Initial data for the table store
@@ -64,10 +149,6 @@ export declare const createTableStore: (initData: {
64
149
  rows: TableRow[];
65
150
  id?: string;
66
151
  config?: TableConfig;
67
- table?: {
68
- [key: string]: any;
69
- };
70
- display?: TableDisplay[];
71
152
  modal?: TableModal;
72
153
  }) => Store<`table-${string}`, Pick<{
73
154
  columns: Ref< {
@@ -110,30 +191,91 @@ colspan?: number | undefined;
110
191
  originalIndex?: number | undefined;
111
192
  }[]>;
112
193
  config: Ref< {
113
- view?: "uncounted" | "list" | "list-expansion" | "tree" | "gantt" | undefined;
194
+ view?: "uncounted" | "list" | "list-expansion" | "tree" | "gantt" | "tree-gantt" | undefined;
114
195
  fullWidth?: boolean | undefined;
115
196
  }, TableConfig | {
116
- view?: "uncounted" | "list" | "list-expansion" | "tree" | "gantt" | undefined;
197
+ view?: "uncounted" | "list" | "list-expansion" | "tree" | "gantt" | "tree-gantt" | undefined;
117
198
  fullWidth?: boolean | undefined;
118
199
  }>;
119
- display: Ref< {
120
- expanded?: boolean | undefined;
121
- childrenOpen?: boolean | undefined;
122
- isParent?: boolean | undefined;
123
- isRoot?: boolean | undefined;
124
- open?: boolean | undefined;
125
- indent?: number | undefined;
126
- parent?: number | undefined;
127
- rowModified?: boolean | undefined;
128
- }[], TableDisplay[] | {
129
- expanded?: boolean | undefined;
130
- childrenOpen?: boolean | undefined;
131
- isParent?: boolean | undefined;
132
- isRoot?: boolean | undefined;
133
- open?: boolean | undefined;
134
- indent?: number | undefined;
135
- parent?: number | undefined;
136
- rowModified?: boolean | undefined;
200
+ connectionHandles: Ref< {
201
+ id: string;
202
+ rowIndex: number;
203
+ colIndex: number;
204
+ side: "left" | "right";
205
+ position: {
206
+ x: number;
207
+ y: number;
208
+ };
209
+ visible: boolean;
210
+ barId: string;
211
+ }[], ConnectionHandle[] | {
212
+ id: string;
213
+ rowIndex: number;
214
+ colIndex: number;
215
+ side: "left" | "right";
216
+ position: {
217
+ x: number;
218
+ y: number;
219
+ };
220
+ visible: boolean;
221
+ barId: string;
222
+ }[]>;
223
+ connectionPaths: Ref< {
224
+ id: string;
225
+ from: {
226
+ barId: string;
227
+ side: "left" | "right";
228
+ };
229
+ to: {
230
+ barId: string;
231
+ side: "left" | "right";
232
+ };
233
+ style?: {
234
+ color?: string | undefined;
235
+ width?: number | undefined;
236
+ } | undefined;
237
+ label?: string | undefined;
238
+ }[], ConnectionPath[] | {
239
+ id: string;
240
+ from: {
241
+ barId: string;
242
+ side: "left" | "right";
243
+ };
244
+ to: {
245
+ barId: string;
246
+ side: "left" | "right";
247
+ };
248
+ style?: {
249
+ color?: string | undefined;
250
+ width?: number | undefined;
251
+ } | undefined;
252
+ label?: string | undefined;
253
+ }[]>;
254
+ display: WritableComputedRef<TableDisplay[], TableDisplay[]>;
255
+ ganttBars: Ref< {
256
+ id: string;
257
+ rowIndex: number;
258
+ colIndex: number;
259
+ startIndex: number;
260
+ endIndex: number;
261
+ color: string;
262
+ position: {
263
+ x: number;
264
+ y: number;
265
+ };
266
+ label?: string | undefined;
267
+ }[], GanttBarInfo[] | {
268
+ id: string;
269
+ rowIndex: number;
270
+ colIndex: number;
271
+ startIndex: number;
272
+ endIndex: number;
273
+ color: string;
274
+ position: {
275
+ x: number;
276
+ y: number;
277
+ };
278
+ label?: string | undefined;
137
279
  }[]>;
138
280
  modal: Ref< {
139
281
  visible?: boolean | undefined;
@@ -181,26 +323,66 @@ endIndex?: number | undefined;
181
323
  colspan?: number | undefined;
182
324
  } | undefined;
183
325
  }[]>;
184
- table: Ref< {}, {}>;
326
+ table: ComputedRef< {}>;
185
327
  updates: Ref<Record<string, string>, Record<string, string>>;
186
328
  hasPinnedColumns: ComputedRef<boolean>;
329
+ isGanttView: ComputedRef<boolean>;
330
+ isTreeView: ComputedRef<boolean>;
187
331
  numberedRowWidth: ComputedRef<string>;
188
332
  zeroColumn: ComputedRef<boolean>;
189
333
  closeModal: (event: MouseEvent) => void;
334
+ createConnection: (fromHandleId: string, toHandleId: string, options?: {
335
+ style?: ConnectionPath["style"];
336
+ label?: string;
337
+ }) => ConnectionPath | null;
338
+ deleteConnection: (connectionId: string) => boolean;
190
339
  getCellData: <T = any>(colIndex: number, rowIndex: number) => T;
191
340
  getCellDisplayValue: (colIndex: number, rowIndex: number) => any;
341
+ getConnectionsForBar: (barId: string) => {
342
+ id: string;
343
+ from: {
344
+ barId: string;
345
+ side: "left" | "right";
346
+ };
347
+ to: {
348
+ barId: string;
349
+ side: "left" | "right";
350
+ };
351
+ style?: {
352
+ color?: string | undefined;
353
+ width?: number | undefined;
354
+ } | undefined;
355
+ label?: string | undefined;
356
+ }[];
192
357
  getFormattedValue: (colIndex: number, rowIndex: number, value: any) => any;
358
+ getHandlesForBar: (barId: string) => {
359
+ id: string;
360
+ rowIndex: number;
361
+ colIndex: number;
362
+ side: "left" | "right";
363
+ position: {
364
+ x: number;
365
+ y: number;
366
+ };
367
+ visible: boolean;
368
+ barId: string;
369
+ }[];
193
370
  getHeaderCellStyle: (column: TableColumn) => CSSProperties;
194
- resizeColumn: (colIndex: number, newWidth: number) => void;
195
371
  getIndent: (colIndex: number, indentLevel?: number) => string;
196
- getRowExpandSymbol: (rowIndex: number) => "" | "-" | "+";
372
+ getRowExpandSymbol: (rowIndex: number) => "" | "" | "";
197
373
  isRowGantt: (rowIndex: number) => boolean;
198
374
  isRowVisible: (rowIndex: number) => boolean | undefined;
375
+ registerConnectionHandle: (handleInfo: ConnectionHandle) => void;
376
+ registerGanttBar: (barInfo: GanttBarInfo) => void;
377
+ resizeColumn: (colIndex: number, newWidth: number) => void;
199
378
  setCellData: (colIndex: number, rowIndex: number, value: any) => void;
200
379
  setCellText: (colIndex: number, rowIndex: number, value: string) => void;
201
380
  toggleRowExpand: (rowIndex: number) => void;
381
+ unregisterConnectionHandle: (handleId: string) => void;
382
+ unregisterGanttBar: (barId: string) => void;
202
383
  updateGanttBar: (event: GanttDragEvent) => void;
203
- }, "columns" | "config" | "display" | "modal" | "rows" | "table" | "updates">, Pick<{
384
+ updateRows: (newRows: TableRow[]) => void;
385
+ }, "columns" | "config" | "connectionHandles" | "connectionPaths" | "ganttBars" | "modal" | "rows" | "updates">, Pick<{
204
386
  columns: Ref< {
205
387
  name: string;
206
388
  align?: CanvasTextAlign | undefined;
@@ -241,30 +423,91 @@ colspan?: number | undefined;
241
423
  originalIndex?: number | undefined;
242
424
  }[]>;
243
425
  config: Ref< {
244
- view?: "uncounted" | "list" | "list-expansion" | "tree" | "gantt" | undefined;
426
+ view?: "uncounted" | "list" | "list-expansion" | "tree" | "gantt" | "tree-gantt" | undefined;
245
427
  fullWidth?: boolean | undefined;
246
428
  }, TableConfig | {
247
- view?: "uncounted" | "list" | "list-expansion" | "tree" | "gantt" | undefined;
429
+ view?: "uncounted" | "list" | "list-expansion" | "tree" | "gantt" | "tree-gantt" | undefined;
248
430
  fullWidth?: boolean | undefined;
249
431
  }>;
250
- display: Ref< {
251
- expanded?: boolean | undefined;
252
- childrenOpen?: boolean | undefined;
253
- isParent?: boolean | undefined;
254
- isRoot?: boolean | undefined;
255
- open?: boolean | undefined;
256
- indent?: number | undefined;
257
- parent?: number | undefined;
258
- rowModified?: boolean | undefined;
259
- }[], TableDisplay[] | {
260
- expanded?: boolean | undefined;
261
- childrenOpen?: boolean | undefined;
262
- isParent?: boolean | undefined;
263
- isRoot?: boolean | undefined;
264
- open?: boolean | undefined;
265
- indent?: number | undefined;
266
- parent?: number | undefined;
267
- rowModified?: boolean | undefined;
432
+ connectionHandles: Ref< {
433
+ id: string;
434
+ rowIndex: number;
435
+ colIndex: number;
436
+ side: "left" | "right";
437
+ position: {
438
+ x: number;
439
+ y: number;
440
+ };
441
+ visible: boolean;
442
+ barId: string;
443
+ }[], ConnectionHandle[] | {
444
+ id: string;
445
+ rowIndex: number;
446
+ colIndex: number;
447
+ side: "left" | "right";
448
+ position: {
449
+ x: number;
450
+ y: number;
451
+ };
452
+ visible: boolean;
453
+ barId: string;
454
+ }[]>;
455
+ connectionPaths: Ref< {
456
+ id: string;
457
+ from: {
458
+ barId: string;
459
+ side: "left" | "right";
460
+ };
461
+ to: {
462
+ barId: string;
463
+ side: "left" | "right";
464
+ };
465
+ style?: {
466
+ color?: string | undefined;
467
+ width?: number | undefined;
468
+ } | undefined;
469
+ label?: string | undefined;
470
+ }[], ConnectionPath[] | {
471
+ id: string;
472
+ from: {
473
+ barId: string;
474
+ side: "left" | "right";
475
+ };
476
+ to: {
477
+ barId: string;
478
+ side: "left" | "right";
479
+ };
480
+ style?: {
481
+ color?: string | undefined;
482
+ width?: number | undefined;
483
+ } | undefined;
484
+ label?: string | undefined;
485
+ }[]>;
486
+ display: WritableComputedRef<TableDisplay[], TableDisplay[]>;
487
+ ganttBars: Ref< {
488
+ id: string;
489
+ rowIndex: number;
490
+ colIndex: number;
491
+ startIndex: number;
492
+ endIndex: number;
493
+ color: string;
494
+ position: {
495
+ x: number;
496
+ y: number;
497
+ };
498
+ label?: string | undefined;
499
+ }[], GanttBarInfo[] | {
500
+ id: string;
501
+ rowIndex: number;
502
+ colIndex: number;
503
+ startIndex: number;
504
+ endIndex: number;
505
+ color: string;
506
+ position: {
507
+ x: number;
508
+ y: number;
509
+ };
510
+ label?: string | undefined;
268
511
  }[]>;
269
512
  modal: Ref< {
270
513
  visible?: boolean | undefined;
@@ -312,26 +555,66 @@ endIndex?: number | undefined;
312
555
  colspan?: number | undefined;
313
556
  } | undefined;
314
557
  }[]>;
315
- table: Ref< {}, {}>;
558
+ table: ComputedRef< {}>;
316
559
  updates: Ref<Record<string, string>, Record<string, string>>;
317
560
  hasPinnedColumns: ComputedRef<boolean>;
561
+ isGanttView: ComputedRef<boolean>;
562
+ isTreeView: ComputedRef<boolean>;
318
563
  numberedRowWidth: ComputedRef<string>;
319
564
  zeroColumn: ComputedRef<boolean>;
320
565
  closeModal: (event: MouseEvent) => void;
566
+ createConnection: (fromHandleId: string, toHandleId: string, options?: {
567
+ style?: ConnectionPath["style"];
568
+ label?: string;
569
+ }) => ConnectionPath | null;
570
+ deleteConnection: (connectionId: string) => boolean;
321
571
  getCellData: <T = any>(colIndex: number, rowIndex: number) => T;
322
572
  getCellDisplayValue: (colIndex: number, rowIndex: number) => any;
573
+ getConnectionsForBar: (barId: string) => {
574
+ id: string;
575
+ from: {
576
+ barId: string;
577
+ side: "left" | "right";
578
+ };
579
+ to: {
580
+ barId: string;
581
+ side: "left" | "right";
582
+ };
583
+ style?: {
584
+ color?: string | undefined;
585
+ width?: number | undefined;
586
+ } | undefined;
587
+ label?: string | undefined;
588
+ }[];
323
589
  getFormattedValue: (colIndex: number, rowIndex: number, value: any) => any;
590
+ getHandlesForBar: (barId: string) => {
591
+ id: string;
592
+ rowIndex: number;
593
+ colIndex: number;
594
+ side: "left" | "right";
595
+ position: {
596
+ x: number;
597
+ y: number;
598
+ };
599
+ visible: boolean;
600
+ barId: string;
601
+ }[];
324
602
  getHeaderCellStyle: (column: TableColumn) => CSSProperties;
325
- resizeColumn: (colIndex: number, newWidth: number) => void;
326
603
  getIndent: (colIndex: number, indentLevel?: number) => string;
327
- getRowExpandSymbol: (rowIndex: number) => "" | "-" | "+";
604
+ getRowExpandSymbol: (rowIndex: number) => "" | "" | "";
328
605
  isRowGantt: (rowIndex: number) => boolean;
329
606
  isRowVisible: (rowIndex: number) => boolean | undefined;
607
+ registerConnectionHandle: (handleInfo: ConnectionHandle) => void;
608
+ registerGanttBar: (barInfo: GanttBarInfo) => void;
609
+ resizeColumn: (colIndex: number, newWidth: number) => void;
330
610
  setCellData: (colIndex: number, rowIndex: number, value: any) => void;
331
611
  setCellText: (colIndex: number, rowIndex: number, value: string) => void;
332
612
  toggleRowExpand: (rowIndex: number) => void;
613
+ unregisterConnectionHandle: (handleId: string) => void;
614
+ unregisterGanttBar: (barId: string) => void;
333
615
  updateGanttBar: (event: GanttDragEvent) => void;
334
- }, "hasPinnedColumns" | "numberedRowWidth" | "zeroColumn">, Pick<{
616
+ updateRows: (newRows: TableRow[]) => void;
617
+ }, "display" | "table" | "hasPinnedColumns" | "isGanttView" | "isTreeView" | "numberedRowWidth" | "zeroColumn">, Pick<{
335
618
  columns: Ref< {
336
619
  name: string;
337
620
  align?: CanvasTextAlign | undefined;
@@ -372,30 +655,91 @@ colspan?: number | undefined;
372
655
  originalIndex?: number | undefined;
373
656
  }[]>;
374
657
  config: Ref< {
375
- view?: "uncounted" | "list" | "list-expansion" | "tree" | "gantt" | undefined;
658
+ view?: "uncounted" | "list" | "list-expansion" | "tree" | "gantt" | "tree-gantt" | undefined;
376
659
  fullWidth?: boolean | undefined;
377
660
  }, TableConfig | {
378
- view?: "uncounted" | "list" | "list-expansion" | "tree" | "gantt" | undefined;
661
+ view?: "uncounted" | "list" | "list-expansion" | "tree" | "gantt" | "tree-gantt" | undefined;
379
662
  fullWidth?: boolean | undefined;
380
663
  }>;
381
- display: Ref< {
382
- expanded?: boolean | undefined;
383
- childrenOpen?: boolean | undefined;
384
- isParent?: boolean | undefined;
385
- isRoot?: boolean | undefined;
386
- open?: boolean | undefined;
387
- indent?: number | undefined;
388
- parent?: number | undefined;
389
- rowModified?: boolean | undefined;
390
- }[], TableDisplay[] | {
391
- expanded?: boolean | undefined;
392
- childrenOpen?: boolean | undefined;
393
- isParent?: boolean | undefined;
394
- isRoot?: boolean | undefined;
395
- open?: boolean | undefined;
396
- indent?: number | undefined;
397
- parent?: number | undefined;
398
- rowModified?: boolean | undefined;
664
+ connectionHandles: Ref< {
665
+ id: string;
666
+ rowIndex: number;
667
+ colIndex: number;
668
+ side: "left" | "right";
669
+ position: {
670
+ x: number;
671
+ y: number;
672
+ };
673
+ visible: boolean;
674
+ barId: string;
675
+ }[], ConnectionHandle[] | {
676
+ id: string;
677
+ rowIndex: number;
678
+ colIndex: number;
679
+ side: "left" | "right";
680
+ position: {
681
+ x: number;
682
+ y: number;
683
+ };
684
+ visible: boolean;
685
+ barId: string;
686
+ }[]>;
687
+ connectionPaths: Ref< {
688
+ id: string;
689
+ from: {
690
+ barId: string;
691
+ side: "left" | "right";
692
+ };
693
+ to: {
694
+ barId: string;
695
+ side: "left" | "right";
696
+ };
697
+ style?: {
698
+ color?: string | undefined;
699
+ width?: number | undefined;
700
+ } | undefined;
701
+ label?: string | undefined;
702
+ }[], ConnectionPath[] | {
703
+ id: string;
704
+ from: {
705
+ barId: string;
706
+ side: "left" | "right";
707
+ };
708
+ to: {
709
+ barId: string;
710
+ side: "left" | "right";
711
+ };
712
+ style?: {
713
+ color?: string | undefined;
714
+ width?: number | undefined;
715
+ } | undefined;
716
+ label?: string | undefined;
717
+ }[]>;
718
+ display: WritableComputedRef<TableDisplay[], TableDisplay[]>;
719
+ ganttBars: Ref< {
720
+ id: string;
721
+ rowIndex: number;
722
+ colIndex: number;
723
+ startIndex: number;
724
+ endIndex: number;
725
+ color: string;
726
+ position: {
727
+ x: number;
728
+ y: number;
729
+ };
730
+ label?: string | undefined;
731
+ }[], GanttBarInfo[] | {
732
+ id: string;
733
+ rowIndex: number;
734
+ colIndex: number;
735
+ startIndex: number;
736
+ endIndex: number;
737
+ color: string;
738
+ position: {
739
+ x: number;
740
+ y: number;
741
+ };
742
+ label?: string | undefined;
399
743
  }[]>;
400
744
  modal: Ref< {
401
745
  visible?: boolean | undefined;
@@ -443,26 +787,108 @@ endIndex?: number | undefined;
443
787
  colspan?: number | undefined;
444
788
  } | undefined;
445
789
  }[]>;
446
- table: Ref< {}, {}>;
790
+ table: ComputedRef< {}>;
447
791
  updates: Ref<Record<string, string>, Record<string, string>>;
448
792
  hasPinnedColumns: ComputedRef<boolean>;
793
+ isGanttView: ComputedRef<boolean>;
794
+ isTreeView: ComputedRef<boolean>;
449
795
  numberedRowWidth: ComputedRef<string>;
450
796
  zeroColumn: ComputedRef<boolean>;
451
797
  closeModal: (event: MouseEvent) => void;
798
+ createConnection: (fromHandleId: string, toHandleId: string, options?: {
799
+ style?: ConnectionPath["style"];
800
+ label?: string;
801
+ }) => ConnectionPath | null;
802
+ deleteConnection: (connectionId: string) => boolean;
452
803
  getCellData: <T = any>(colIndex: number, rowIndex: number) => T;
453
804
  getCellDisplayValue: (colIndex: number, rowIndex: number) => any;
805
+ getConnectionsForBar: (barId: string) => {
806
+ id: string;
807
+ from: {
808
+ barId: string;
809
+ side: "left" | "right";
810
+ };
811
+ to: {
812
+ barId: string;
813
+ side: "left" | "right";
814
+ };
815
+ style?: {
816
+ color?: string | undefined;
817
+ width?: number | undefined;
818
+ } | undefined;
819
+ label?: string | undefined;
820
+ }[];
454
821
  getFormattedValue: (colIndex: number, rowIndex: number, value: any) => any;
822
+ getHandlesForBar: (barId: string) => {
823
+ id: string;
824
+ rowIndex: number;
825
+ colIndex: number;
826
+ side: "left" | "right";
827
+ position: {
828
+ x: number;
829
+ y: number;
830
+ };
831
+ visible: boolean;
832
+ barId: string;
833
+ }[];
455
834
  getHeaderCellStyle: (column: TableColumn) => CSSProperties;
456
- resizeColumn: (colIndex: number, newWidth: number) => void;
457
835
  getIndent: (colIndex: number, indentLevel?: number) => string;
458
- getRowExpandSymbol: (rowIndex: number) => "" | "-" | "+";
836
+ getRowExpandSymbol: (rowIndex: number) => "" | "" | "";
459
837
  isRowGantt: (rowIndex: number) => boolean;
460
838
  isRowVisible: (rowIndex: number) => boolean | undefined;
839
+ registerConnectionHandle: (handleInfo: ConnectionHandle) => void;
840
+ registerGanttBar: (barInfo: GanttBarInfo) => void;
841
+ resizeColumn: (colIndex: number, newWidth: number) => void;
461
842
  setCellData: (colIndex: number, rowIndex: number, value: any) => void;
462
843
  setCellText: (colIndex: number, rowIndex: number, value: string) => void;
463
844
  toggleRowExpand: (rowIndex: number) => void;
845
+ unregisterConnectionHandle: (handleId: string) => void;
846
+ unregisterGanttBar: (barId: string) => void;
464
847
  updateGanttBar: (event: GanttDragEvent) => void;
465
- }, "closeModal" | "getCellData" | "getCellDisplayValue" | "getFormattedValue" | "getHeaderCellStyle" | "resizeColumn" | "getIndent" | "getRowExpandSymbol" | "isRowGantt" | "isRowVisible" | "setCellData" | "setCellText" | "toggleRowExpand" | "updateGanttBar">>;
848
+ updateRows: (newRows: TableRow[]) => void;
849
+ }, "closeModal" | "createConnection" | "deleteConnection" | "getCellData" | "getCellDisplayValue" | "getConnectionsForBar" | "getFormattedValue" | "getHandlesForBar" | "getHeaderCellStyle" | "getIndent" | "getRowExpandSymbol" | "isRowGantt" | "isRowVisible" | "registerConnectionHandle" | "registerGanttBar" | "resizeColumn" | "setCellData" | "setCellText" | "toggleRowExpand" | "unregisterConnectionHandle" | "unregisterGanttBar" | "updateGanttBar" | "updateRows">>;
850
+
851
+ /**
852
+ * Gantt bar information for VueFlow integration.
853
+ * @public
854
+ */
855
+ export declare interface GanttBarInfo {
856
+ /**
857
+ * Unique identifier for the gantt bar.
858
+ */
859
+ id: string;
860
+ /**
861
+ * The row index of the gantt bar.
862
+ */
863
+ rowIndex: number;
864
+ /**
865
+ * The primary column index of the gantt bar (typically the start index).
866
+ */
867
+ colIndex: number;
868
+ /**
869
+ * Starting column index of the gantt bar.
870
+ */
871
+ startIndex: Ref<number>;
872
+ /**
873
+ * Ending column index of the gantt bar.
874
+ */
875
+ endIndex: Ref<number>;
876
+ /**
877
+ * Color of the gantt bar.
878
+ */
879
+ color: Ref<string>;
880
+ /**
881
+ * The position of the gantt bar in the ATable component.
882
+ */
883
+ position: {
884
+ x: ShallowRef<number>;
885
+ y: ShallowRef<number>;
886
+ };
887
+ /**
888
+ * Display label for the gantt bar.
889
+ */
890
+ label?: string;
891
+ }
466
892
 
467
893
  /**
468
894
  * Gantt table drag event definition.
@@ -498,26 +924,30 @@ export declare type GanttDragEvent = {
498
924
  });
499
925
 
500
926
  /**
501
- * This interface defines the options for a row when it is being viewed as a Gantt chart.
927
+ * Gantt chart options for table rows.
502
928
  * @public
503
929
  */
504
930
  export declare interface GanttOptions {
505
931
  /**
506
- * The colour to be applied to the row's gantt bar.
932
+ * The color to be applied to the row's gantt bar.
933
+ *
934
+ * @defaultValue '#cccccc'
507
935
  */
508
936
  color?: string;
509
937
  /**
510
938
  * The starting column index for the gantt bar.
939
+ *
940
+ * @defaultValue 0
511
941
  */
512
942
  startIndex?: number;
513
943
  /**
514
- * The ending column index for the gantt bar. If the endIndex and colspan are not provided,
944
+ * The ending column index for the gantt bar. If endIndex and colspan are not provided,
515
945
  * the bar will stretch to the end of the table.
516
946
  */
517
947
  endIndex?: number;
518
948
  /**
519
- * The length of the gantt bar. Useful when only the start index is provided. If the
520
- * colspan and endIndex are not provided, the bar will stretch to the end of the table.
949
+ * The length of the gantt bar in columns. Useful when only the start index is provided.
950
+ * If colspan and endIndex are not provided, the bar will stretch to the end of the table.
521
951
  */
522
952
  colspan?: number;
523
953
  }
@@ -644,8 +1074,8 @@ export declare interface TableColumn {
644
1074
  */
645
1075
  ganttComponent?: string;
646
1076
  /**
647
- * The colspan of the Gantt-bar for the column. This is used to determine how many columns
648
- * the Gantt-bar should span.
1077
+ * The colspan of the Gantt bar for the column. This determines how many columns
1078
+ * the Gantt bar should span across.
649
1079
  *
650
1080
  * Only applicable for Gantt tables.
651
1081
  *
@@ -653,8 +1083,8 @@ export declare interface TableColumn {
653
1083
  */
654
1084
  colspan?: number;
655
1085
  /**
656
- * The starting column index for the Gantt-bar, excluding any pinned columns. This is
657
- * evaluated automatically while rendering the table.
1086
+ * The original column index for the Gantt bar, excluding any pinned columns.
1087
+ * This is evaluated automatically while rendering the table.
658
1088
  *
659
1089
  * Only applicable for Gantt tables.
660
1090
  *
@@ -674,8 +1104,10 @@ export declare interface TableConfig {
674
1104
  * - `list` - row numbers are displayed in the table
675
1105
  * - `list-expansion` - carets are displayed in the number column that expand/collapse the row inline
676
1106
  * - `tree` - carets are displayed in the number column that expand/collapse grouped rows
1107
+ * - `gantt` - view that allows specific rows to be displayed with Gantt functionality
1108
+ * - `tree-gantt` - similar to `gantt`, but allows for tree functionality as well
677
1109
  */
678
- view?: 'uncounted' | 'list' | 'list-expansion' | 'tree' | 'gantt';
1110
+ view?: 'uncounted' | 'list' | 'list-expansion' | 'tree' | 'gantt' | 'tree-gantt';
679
1111
  /**
680
1112
  * Control whether the table should be allowed to use the full width of its container.
681
1113
  *