@stonecrop/aform 0.4.33 → 0.4.35

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 (2) hide show
  1. package/dist/aform.d.ts +169 -32
  2. package/package.json +5 -5
package/dist/aform.d.ts CHANGED
@@ -65,6 +65,30 @@ export declare type BaseSchema = {
65
65
  value?: any;
66
66
  };
67
67
 
68
+ /**
69
+ * Base table configuration properties shared across all view types.
70
+ * @public
71
+ */
72
+ export declare interface BaseTableConfig {
73
+ /**
74
+ * Control whether the table should be allowed to use the full width of its container.
75
+ *
76
+ * @defaultValue false
77
+ */
78
+ fullWidth?: boolean;
79
+ }
80
+
81
+ /**
82
+ * Table configuration for basic view types (uncounted, list, list-expansion).
83
+ * @public
84
+ */
85
+ export declare interface BasicTableConfig extends BaseTableConfig {
86
+ /**
87
+ * The type of view to display the table in.
88
+ */
89
+ view?: 'uncounted' | 'list' | 'list-expansion';
90
+ }
91
+
68
92
  /**
69
93
  * Table cell context definition.
70
94
  * @public
@@ -271,13 +295,37 @@ colspan?: number | undefined;
271
295
  originalIndex?: number | undefined;
272
296
  }[]>;
273
297
  config: Ref< {
274
- view?: "uncounted" | "list" | "list-expansion" | "tree" | "gantt" | "tree-gantt" | undefined;
298
+ view?: "uncounted" | "list" | "list-expansion" | undefined;
299
+ fullWidth?: boolean | undefined;
300
+ } | {
301
+ view: "tree";
302
+ defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
275
303
  fullWidth?: boolean | undefined;
304
+ } | {
305
+ view: "gantt";
276
306
  dependencyGraph?: boolean | undefined;
307
+ fullWidth?: boolean | undefined;
308
+ } | {
309
+ view: "tree-gantt";
310
+ defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
311
+ dependencyGraph?: boolean | undefined;
312
+ fullWidth?: boolean | undefined;
277
313
  }, TableConfig | {
278
- view?: "uncounted" | "list" | "list-expansion" | "tree" | "gantt" | "tree-gantt" | undefined;
314
+ view?: "uncounted" | "list" | "list-expansion" | undefined;
315
+ fullWidth?: boolean | undefined;
316
+ } | {
317
+ view: "tree";
318
+ defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
279
319
  fullWidth?: boolean | undefined;
320
+ } | {
321
+ view: "gantt";
280
322
  dependencyGraph?: boolean | undefined;
323
+ fullWidth?: boolean | undefined;
324
+ } | {
325
+ view: "tree-gantt";
326
+ defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
327
+ dependencyGraph?: boolean | undefined;
328
+ fullWidth?: boolean | undefined;
281
329
  }>;
282
330
  connectionHandles: Ref< {
283
331
  id: string;
@@ -506,13 +554,37 @@ colspan?: number | undefined;
506
554
  originalIndex?: number | undefined;
507
555
  }[]>;
508
556
  config: Ref< {
509
- view?: "uncounted" | "list" | "list-expansion" | "tree" | "gantt" | "tree-gantt" | undefined;
557
+ view?: "uncounted" | "list" | "list-expansion" | undefined;
558
+ fullWidth?: boolean | undefined;
559
+ } | {
560
+ view: "tree";
561
+ defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
510
562
  fullWidth?: boolean | undefined;
563
+ } | {
564
+ view: "gantt";
565
+ dependencyGraph?: boolean | undefined;
566
+ fullWidth?: boolean | undefined;
567
+ } | {
568
+ view: "tree-gantt";
569
+ defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
511
570
  dependencyGraph?: boolean | undefined;
571
+ fullWidth?: boolean | undefined;
512
572
  }, TableConfig | {
513
- view?: "uncounted" | "list" | "list-expansion" | "tree" | "gantt" | "tree-gantt" | undefined;
573
+ view?: "uncounted" | "list" | "list-expansion" | undefined;
574
+ fullWidth?: boolean | undefined;
575
+ } | {
576
+ view: "tree";
577
+ defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
514
578
  fullWidth?: boolean | undefined;
579
+ } | {
580
+ view: "gantt";
581
+ dependencyGraph?: boolean | undefined;
582
+ fullWidth?: boolean | undefined;
583
+ } | {
584
+ view: "tree-gantt";
585
+ defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
515
586
  dependencyGraph?: boolean | undefined;
587
+ fullWidth?: boolean | undefined;
516
588
  }>;
517
589
  connectionHandles: Ref< {
518
590
  id: string;
@@ -741,13 +813,37 @@ colspan?: number | undefined;
741
813
  originalIndex?: number | undefined;
742
814
  }[]>;
743
815
  config: Ref< {
744
- view?: "uncounted" | "list" | "list-expansion" | "tree" | "gantt" | "tree-gantt" | undefined;
816
+ view?: "uncounted" | "list" | "list-expansion" | undefined;
817
+ fullWidth?: boolean | undefined;
818
+ } | {
819
+ view: "tree";
820
+ defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
745
821
  fullWidth?: boolean | undefined;
822
+ } | {
823
+ view: "gantt";
824
+ dependencyGraph?: boolean | undefined;
825
+ fullWidth?: boolean | undefined;
826
+ } | {
827
+ view: "tree-gantt";
828
+ defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
746
829
  dependencyGraph?: boolean | undefined;
830
+ fullWidth?: boolean | undefined;
747
831
  }, TableConfig | {
748
- view?: "uncounted" | "list" | "list-expansion" | "tree" | "gantt" | "tree-gantt" | undefined;
832
+ view?: "uncounted" | "list" | "list-expansion" | undefined;
833
+ fullWidth?: boolean | undefined;
834
+ } | {
835
+ view: "tree";
836
+ defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
749
837
  fullWidth?: boolean | undefined;
838
+ } | {
839
+ view: "gantt";
840
+ dependencyGraph?: boolean | undefined;
841
+ fullWidth?: boolean | undefined;
842
+ } | {
843
+ view: "tree-gantt";
844
+ defaultTreeExpansion?: "root" | "branch" | "leaf" | undefined;
750
845
  dependencyGraph?: boolean | undefined;
846
+ fullWidth?: boolean | undefined;
751
847
  }>;
752
848
  connectionHandles: Ref< {
753
849
  id: string;
@@ -1116,6 +1212,24 @@ export declare interface GanttOptions {
1116
1212
  colspan?: number;
1117
1213
  }
1118
1214
 
1215
+ /**
1216
+ * Table configuration for gantt view types.
1217
+ * @public
1218
+ */
1219
+ export declare interface GanttTableConfig extends BaseTableConfig {
1220
+ /**
1221
+ * The type of view to display the table in.
1222
+ */
1223
+ view: 'gantt';
1224
+ /**
1225
+ * Control whether dependency graph connections should be enabled for Gantt views.
1226
+ * When false, connection handles and dependency lines will be hidden.
1227
+ *
1228
+ * @defaultValue true
1229
+ */
1230
+ dependencyGraph?: boolean;
1231
+ }
1232
+
1119
1233
  /**
1120
1234
  * Install all AForm components
1121
1235
  * @param app - Vue app instance
@@ -1266,34 +1380,10 @@ export declare interface TableColumn {
1266
1380
  }
1267
1381
 
1268
1382
  /**
1269
- * Table configuration definition.
1383
+ * Table configuration definition using discriminated unions for type safety.
1270
1384
  * @public
1271
1385
  */
1272
- export declare interface TableConfig {
1273
- /**
1274
- * The type of view to display the table in. Possible values:
1275
- * - `uncounted` - row numbers are not displayed in the table
1276
- * - `list` - row numbers are displayed in the table
1277
- * - `list-expansion` - carets are displayed in the number column that expand/collapse the row inline
1278
- * - `tree` - carets are displayed in the number column that expand/collapse grouped rows
1279
- * - `gantt` - view that allows specific rows to be displayed with Gantt functionality
1280
- * - `tree-gantt` - similar to `gantt`, but allows for tree functionality as well
1281
- */
1282
- view?: 'uncounted' | 'list' | 'list-expansion' | 'tree' | 'gantt' | 'tree-gantt';
1283
- /**
1284
- * Control whether the table should be allowed to use the full width of its container.
1285
- *
1286
- * @defaultValue false
1287
- */
1288
- fullWidth?: boolean;
1289
- /**
1290
- * Control whether dependency graph connections should be enabled for Gantt views.
1291
- * When false, connection handles and dependency lines will be hidden.
1292
- *
1293
- * @defaultValue true
1294
- */
1295
- dependencyGraph?: boolean;
1296
- }
1386
+ export declare type TableConfig = BasicTableConfig | TreeTableConfig | GanttTableConfig | TreeGanttTableConfig;
1297
1387
 
1298
1388
  /**
1299
1389
  * Table display definition.
@@ -1501,4 +1591,51 @@ export declare type TableSchema = BaseSchema & {
1501
1591
  rows?: TableRow[];
1502
1592
  };
1503
1593
 
1594
+ /**
1595
+ * Table configuration for tree-gantt view types.
1596
+ * @public
1597
+ */
1598
+ export declare interface TreeGanttTableConfig extends BaseTableConfig {
1599
+ /**
1600
+ * The type of view to display the table in.
1601
+ */
1602
+ view: 'tree-gantt';
1603
+ /**
1604
+ * Default expansion state for tree views. Possible values:
1605
+ * - `root` - Only top-level nodes are visible (fully collapsed)
1606
+ * - `branch` - Shows minimal tree to display all gantt nodes. Expands only the necessary paths to gantt nodes, stops at gantt nodes with no gantt descendants
1607
+ * - `leaf` - All nodes are visible (fully expanded)
1608
+ *
1609
+ * @defaultValue undefined (default behavior is 'leaf' mode)
1610
+ */
1611
+ defaultTreeExpansion?: 'root' | 'branch' | 'leaf';
1612
+ /**
1613
+ * Control whether dependency graph connections should be enabled for Gantt views.
1614
+ * When false, connection handles and dependency lines will be hidden.
1615
+ *
1616
+ * @defaultValue true
1617
+ */
1618
+ dependencyGraph?: boolean;
1619
+ }
1620
+
1621
+ /**
1622
+ * Table configuration for tree view types.
1623
+ * @public
1624
+ */
1625
+ export declare interface TreeTableConfig extends BaseTableConfig {
1626
+ /**
1627
+ * The type of view to display the table in.
1628
+ */
1629
+ view: 'tree';
1630
+ /**
1631
+ * Default expansion state for tree views. Possible values:
1632
+ * - `root` - Only top-level nodes are visible (fully collapsed)
1633
+ * - `branch` - Shows minimal tree to display all gantt nodes. Expands only the necessary paths to gantt nodes, stops at gantt nodes with no gantt descendants
1634
+ * - `leaf` - All nodes are visible (fully expanded)
1635
+ *
1636
+ * @defaultValue undefined (default behavior is 'leaf' mode)
1637
+ */
1638
+ defaultTreeExpansion?: 'root' | 'branch' | 'leaf';
1639
+ }
1640
+
1504
1641
  export { }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stonecrop/aform",
3
- "version": "0.4.33",
3
+ "version": "0.4.35",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "author": {
@@ -38,8 +38,8 @@
38
38
  "@vueuse/core": "^13.6.0",
39
39
  "@vueuse/components": "^13.6.0",
40
40
  "vue": "^3.5.18",
41
- "@stonecrop/themes": "0.4.33",
42
- "@stonecrop/utilities": "0.4.33"
41
+ "@stonecrop/themes": "0.4.35",
42
+ "@stonecrop/utilities": "0.4.35"
43
43
  },
44
44
  "devDependencies": {
45
45
  "@microsoft/api-documenter": "^7.26.31",
@@ -60,11 +60,11 @@
60
60
  "vite": "^7.0.6",
61
61
  "vitest": "^3.2.4",
62
62
  "vue-router": "^4.5.1",
63
- "@stonecrop/atable": "0.4.33",
63
+ "@stonecrop/atable": "0.4.35",
64
64
  "stonecrop-rig": "0.2.22"
65
65
  },
66
66
  "peerDependencies": {
67
- "@stonecrop/atable": "0.4.33"
67
+ "@stonecrop/atable": "0.4.35"
68
68
  },
69
69
  "publishConfig": {
70
70
  "access": "public"