@agile-team/mach-table 0.14.0 → 0.18.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.
package/README.md CHANGED
@@ -21,6 +21,7 @@ const api = createGrid(document.querySelector("#grid")!, {
21
21
  ],
22
22
  rowData: [{ id: "1", name: "MachTable" }],
23
23
  rowKey: "id",
24
+ enableColumnResize: true,
24
25
  stateKey: "customer-list"
25
26
  });
26
27
 
@@ -40,6 +41,20 @@ await api.applyTransactionAsync({ update: realtimeRows });
40
41
  api.applyState(state);
41
42
  ```
42
43
 
44
+ 0.18 adds governed runtime APIs, nested filters, named views, conflict-aware saves and performance evidence:
45
+
46
+ ```ts
47
+ const views = createGridViewManager(api, { scope: "tenant:user:orders" });
48
+ await views.save("My pending orders");
49
+
50
+ const result = await api.saveChangesDetailed(orderApi.saveChanges);
51
+ console.table(result.failures);
52
+ console.table(result.conflicts);
53
+ console.info(api.getDiagnostics().performance);
54
+ ```
55
+
56
+ `GridState` v1 inputs migrate to v2 automatically. `GridFeature` manifests can declare `version`, `requires` and `conflicts`; invalid graphs are isolated before setup side effects run. JavaScript/JSON option patches are sanitized from the same metadata registry used by Core and framework adapters.
57
+
43
58
  0.13 added a built-in/headless column workbench and cancellable lazy trees:
44
59
 
45
60
  ```ts
@@ -86,6 +101,8 @@ api.setOverlay("error", () => "Request failed. Please retry.");
86
101
 
87
102
  `rowKey: "id"` is shorthand for a stable field path; `getRowId` remains available for derived IDs and wins when both are present. `domLayout: "autoHeight"` is intended only for small client-side tables—normal virtual layout remains the large-data default.
88
103
 
104
+ Column resizing is deliberately opt-in. Set `enableColumnResize: true`; add `stateKey` to remember the complete workspace, or `columnStateKey` to remember only widths/order/visibility/pinning/sort. Pointer cancellation rolls back, completed drags persist once, and untouched automatic/flex columns remain responsive.
105
+
89
106
  For framework applications use the official adapters:
90
107
 
91
108
  - Vue 3: [`@agile-team/mach-table-vue`](https://www.npmjs.com/package/@agile-team/mach-table-vue)