@toolbox-web/grid-angular 0.6.0 → 0.7.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../libs/grid-angular/src/features/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,aAAa,CAAC;AACrB,OAAO,yBAAyB,CAAC;AACjC,OAAO,gBAAgB,CAAC;AACxB,OAAO,WAAW,CAAC;AACnB,OAAO,UAAU,CAAC;AAClB,OAAO,aAAa,CAAC;AACrB,OAAO,oBAAoB,CAAC;AAC5B,OAAO,iBAAiB,CAAC;AACzB,OAAO,iBAAiB,CAAC;AACzB,OAAO,kBAAkB,CAAC;AAC1B,OAAO,eAAe,CAAC;AACvB,OAAO,SAAS,CAAC;AACjB,OAAO,SAAS,CAAC;AACjB,OAAO,WAAW,CAAC;AACnB,OAAO,cAAc,CAAC;AACtB,OAAO,eAAe,CAAC;AACvB,OAAO,aAAa,CAAC;AACrB,OAAO,eAAe,CAAC;AACvB,OAAO,WAAW,CAAC;AACnB,OAAO,QAAQ,CAAC;AAChB,OAAO,aAAa,CAAC;AACrB,OAAO,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../libs/grid-angular/src/features/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,aAAa,CAAC;AACrB,OAAO,yBAAyB,CAAC;AACjC,OAAO,gBAAgB,CAAC;AACxB,OAAO,WAAW,CAAC;AACnB,OAAO,UAAU,CAAC;AAClB,OAAO,aAAa,CAAC;AACrB,OAAO,oBAAoB,CAAC;AAC5B,OAAO,iBAAiB,CAAC;AACzB,OAAO,iBAAiB,CAAC;AACzB,OAAO,cAAc,CAAC;AACtB,OAAO,kBAAkB,CAAC;AAC1B,OAAO,eAAe,CAAC;AACvB,OAAO,SAAS,CAAC;AACjB,OAAO,SAAS,CAAC;AACjB,OAAO,WAAW,CAAC;AACnB,OAAO,cAAc,CAAC;AACtB,OAAO,eAAe,CAAC;AACvB,OAAO,aAAa,CAAC;AACrB,OAAO,eAAe,CAAC;AAEvB,OAAO,QAAQ,CAAC;AAChB,OAAO,aAAa,CAAC;AACrB,OAAO,cAAc,CAAC"}
package/features/index.js CHANGED
@@ -7,6 +7,7 @@ import "./filtering.js";
7
7
  import "./grouping-columns.js";
8
8
  import "./grouping-rows.js";
9
9
  import "./master-detail.js";
10
+ import "./multi-sort.js";
10
11
  import "./pinned-columns.js";
11
12
  import "./pinned-rows.js";
12
13
  import "./pivot.js";
@@ -16,7 +17,6 @@ import "./responsive.js";
16
17
  import "./row-reorder.js";
17
18
  import "./selection.js";
18
19
  import "./server-side.js";
19
- import "./sorting.js";
20
20
  import "./tree.js";
21
21
  import "./undo-redo.js";
22
22
  import "./visibility.js";
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Multi-sort feature for @toolbox-web/grid-angular
3
+ *
4
+ * Import this module to enable the `multiSort` input on Grid directive.
5
+ * Multi-sort allows sorting by multiple columns simultaneously.
6
+ *
7
+ * For basic single-column sorting, columns with `sortable: true` work without this plugin.
8
+ * Use `[sortable]="false"` on the grid to disable all sorting.
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * import '@toolbox-web/grid-angular/features/multi-sort';
13
+ *
14
+ * <tbw-grid [multiSort]="true" />
15
+ * <tbw-grid [multiSort]="'single'" />
16
+ * <tbw-grid [multiSort]="{ maxSortColumns: 3 }" />
17
+ * ```
18
+ *
19
+ * @packageDocumentation
20
+ */
21
+ export {};
22
+ //# sourceMappingURL=multi-sort.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multi-sort.d.ts","sourceRoot":"","sources":["../../../../libs/grid-angular/src/features/multi-sort.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG"}
@@ -0,0 +1,3 @@
1
+ import { MultiSortPlugin as t } from "@toolbox-web/grid/plugins/multi-sort";
2
+ import { r as e } from "../feature-registry-C-cKloXB.js";
3
+ e("multiSort", (r) => r === !0 || r === "multi" ? new t() : r === "single" ? new t({ maxSortColumns: 1 }) : new t(r));
@@ -1,16 +1 @@
1
- /**
2
- * Sorting feature for @toolbox-web/grid-angular
3
- *
4
- * Import this module to enable the `sorting` input on Grid directive.
5
- *
6
- * @example
7
- * ```typescript
8
- * import '@toolbox-web/grid-angular/features/sorting';
9
- *
10
- * <tbw-grid [sorting]="'multi'" />
11
- * ```
12
- *
13
- * @packageDocumentation
14
- */
15
- export {};
16
1
  //# sourceMappingURL=sorting.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sorting.d.ts","sourceRoot":"","sources":["../../../../libs/grid-angular/src/features/sorting.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG"}
1
+ {"version":3,"file":"sorting.d.ts","sourceRoot":"","sources":["../../../../libs/grid-angular/src/features/sorting.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,cAAc,CAAC"}
@@ -1,3 +1 @@
1
- import { MultiSortPlugin as t } from "@toolbox-web/grid/plugins/multi-sort";
2
- import { r as e } from "../feature-registry-C-cKloXB.js";
3
- e("sorting", (r) => r === !0 || r === "multi" ? new t() : r === "single" ? new t({ maxSortColumns: 1 }) : new t(r));
1
+ import "./multi-sort.js";
package/index.js CHANGED
@@ -6,23 +6,23 @@ var pe = (i, e) => (e = Symbol[i]) ? e : /* @__PURE__ */ Symbol.for("Symbol." +
6
6
  };
7
7
  var ze = (i, e, t) => e in i ? N(i, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : i[e] = t;
8
8
  var ue = (i, e) => N(i, "name", { value: e, configurable: !0 });
9
- var E = (i) => [, , , _e(i?.[pe("metadata")] ?? null)], fe = ["class", "method", "getter", "setter", "accessor", "field", "value", "get", "set"], O = (i) => i !== void 0 && typeof i != "function" ? j("Function expected") : i, Be = (i, e, t, n, r) => ({ kind: fe[i], name: e, metadata: n, addInitializer: (o) => t._ ? j("Already initialized") : r.push(O(o || null)) }), Ue = (i, e) => ze(e, pe("metadata"), i[3]), y = (i, e, t, n) => {
9
+ var y = (i) => [, , , _e(i?.[pe("metadata")] ?? null)], fe = ["class", "method", "getter", "setter", "accessor", "field", "value", "get", "set"], O = (i) => i !== void 0 && typeof i != "function" ? j("Function expected") : i, Be = (i, e, t, n, r) => ({ kind: fe[i], name: e, metadata: n, addInitializer: (o) => t._ ? j("Already initialized") : r.push(O(o || null)) }), Ue = (i, e) => ze(e, pe("metadata"), i[3]), b = (i, e, t, n) => {
10
10
  for (var r = 0, o = i[e >> 1], s = o && o.length; r < s; r++) e & 1 ? o[r].call(t) : n = o[r].call(t, n);
11
11
  return n;
12
- }, b = (i, e, t, n, r, o) => {
13
- var s, l, g, w, A, a = e & 7, R = !!(e & 8), f = !!(e & 16), S = a > 3 ? i.length + 1 : a ? R ? 1 : 2 : 0, M = fe[a + 5], u = a > 3 && (i[S - 1] = []), m = i[S] || (i[S] = []), d = a && (!f && !R && (r = r.prototype), a < 5 && (a > 3 || !f) && $e(a < 4 ? r : { get [t]() {
12
+ }, T = (i, e, t, n, r, o) => {
13
+ var s, l, f, g, E, a = e & 7, R = !!(e & 8), h = !!(e & 16), S = a > 3 ? i.length + 1 : a ? R ? 1 : 2 : 0, M = fe[a + 5], u = a > 3 && (i[S - 1] = []), m = i[S] || (i[S] = []), d = a && (!h && !R && (r = r.prototype), a < 5 && (a > 3 || !h) && $e(a < 4 ? r : { get [t]() {
14
14
  return me(this, o);
15
- }, set [t](h) {
16
- return de(this, o, h);
15
+ }, set [t](v) {
16
+ return de(this, o, v);
17
17
  } }, t));
18
- a ? f && a < 4 && ue(o, (a > 2 ? "set " : a > 1 ? "get " : "") + t) : ue(r, t);
18
+ a ? h && a < 4 && ue(o, (a > 2 ? "set " : a > 1 ? "get " : "") + t) : ue(r, t);
19
19
  for (var C = n.length - 1; C >= 0; C--)
20
- w = Be(a, t, g = {}, i[3], m), a && (w.static = R, w.private = f, A = w.access = { has: f ? (h) => Je(r, h) : (h) => t in h }, a ^ 3 && (A.get = f ? (h) => (a ^ 1 ? me : We)(h, r, a ^ 4 ? o : d.get) : (h) => h[t]), a > 2 && (A.set = f ? (h, L) => de(h, r, L, a ^ 4 ? o : d.set) : (h, L) => h[t] = L)), l = (0, n[C])(a ? a < 4 ? f ? o : d[M] : a > 4 ? void 0 : { get: d.get, set: d.set } : r, w), g._ = 1, a ^ 4 || l === void 0 ? O(l) && (a > 4 ? u.unshift(l) : a ? f ? o = l : d[M] = l : r = l) : typeof l != "object" || l === null ? j("Object expected") : (O(s = l.get) && (d.get = s), O(s = l.set) && (d.set = s), O(s = l.init) && u.unshift(s));
21
- return a || Ue(i, r), d && N(r, t, d), f ? a ^ 4 ? o : d : r;
20
+ g = Be(a, t, f = {}, i[3], m), a && (g.static = R, g.private = h, E = g.access = { has: h ? (v) => Je(r, v) : (v) => t in v }, a ^ 3 && (E.get = h ? (v) => (a ^ 1 ? me : We)(v, r, a ^ 4 ? o : d.get) : (v) => v[t]), a > 2 && (E.set = h ? (v, L) => de(v, r, L, a ^ 4 ? o : d.set) : (v, L) => v[t] = L)), l = (0, n[C])(a ? a < 4 ? h ? o : d[M] : a > 4 ? void 0 : { get: d.get, set: d.set } : r, g), f._ = 1, a ^ 4 || l === void 0 ? O(l) && (a > 4 ? u.unshift(l) : a ? h ? o = l : d[M] = l : r = l) : typeof l != "object" || l === null ? j("Object expected") : (O(s = l.get) && (d.get = s), O(s = l.set) && (d.set = s), O(s = l.init) && u.unshift(s));
21
+ return a || Ue(i, r), d && N(r, t, d), h ? a ^ 4 ? o : d : r;
22
22
  };
23
23
  var V = (i, e, t) => e.has(i) || j("Cannot " + t), Je = (i, e) => Object(e) !== e ? j('Cannot use the "in" operator on this value') : i.has(e), me = (i, e, t) => (V(i, e, "read from private field"), t ? t.call(i) : e.get(i));
24
24
  var de = (i, e, t, n) => (V(i, e, "write to private field"), n ? n.call(i, t) : e.set(i, t), t), We = (i, e, t) => (V(i, e, "access private method"), t);
25
- import { inject as v, ElementRef as T, contentChild as k, TemplateRef as F, effect as D, Directive as x, input as c, InjectionToken as He, Injectable as Ye, makeEnvironmentProviders as Xe, EventEmitter as ge, createComponent as he, signal as G, afterNextRender as Ke, computed as P, output as p, EnvironmentInjector as Qe, ApplicationRef as Ze, ViewContainerRef as et } from "@angular/core";
25
+ import { inject as w, ElementRef as A, contentChild as k, TemplateRef as F, effect as D, Directive as x, input as c, InjectionToken as He, Injectable as Ye, makeEnvironmentProviders as Xe, EventEmitter as ge, createComponent as he, signal as G, afterNextRender as Ke, computed as P, output as p, EnvironmentInjector as Qe, ApplicationRef as Ze, ViewContainerRef as et } from "@angular/core";
26
26
  import { FormGroup as ve } from "@angular/forms";
27
27
  import { c as tt } from "./feature-registry-C-cKloXB.js";
28
28
  import { a as wt, g as Rt, b as Ct, i as Et, r as yt } from "./feature-registry-C-cKloXB.js";
@@ -42,7 +42,7 @@ function je(i) {
42
42
  var ye, X;
43
43
  ye = [x({ selector: "tbw-grid-column-editor" })];
44
44
  class q {
45
- elementRef = v(T);
45
+ elementRef = w(A);
46
46
  /**
47
47
  * Query for the ng-template content child.
48
48
  */
@@ -60,7 +60,7 @@ class q {
60
60
  return !0;
61
61
  }
62
62
  }
63
- X = E(null), q = b(X, 0, "GridColumnEditor", ye, q), y(X, 1, q);
63
+ X = y(null), q = T(X, 0, "GridColumnEditor", ye, q), b(X, 1, q);
64
64
  const ke = /* @__PURE__ */ new Map();
65
65
  function Ie(i) {
66
66
  return ke.get(i);
@@ -68,7 +68,7 @@ function Ie(i) {
68
68
  var be, K;
69
69
  be = [x({ selector: "tbw-grid-column-view" })];
70
70
  class _ {
71
- elementRef = v(T);
71
+ elementRef = w(A);
72
72
  /**
73
73
  * Query for the ng-template content child.
74
74
  */
@@ -86,7 +86,7 @@ class _ {
86
86
  return !0;
87
87
  }
88
88
  }
89
- K = E(null), _ = b(K, 0, "GridColumnView", be, _), y(K, 1, _);
89
+ K = y(null), _ = T(K, 0, "GridColumnView", be, _), b(K, 1, _);
90
90
  const Ne = /* @__PURE__ */ new Map();
91
91
  function Re(i) {
92
92
  const e = i.querySelector("tbw-grid-detail");
@@ -96,7 +96,7 @@ function Re(i) {
96
96
  var Te, Q;
97
97
  Te = [x({ selector: "tbw-grid-detail" })];
98
98
  class $ {
99
- elementRef = v(T);
99
+ elementRef = w(A);
100
100
  /** Whether to show the expand/collapse column. Default: true */
101
101
  showExpandColumn = c(!0);
102
102
  /** Animation style for expand/collapse. Default: 'slide' */
@@ -118,7 +118,7 @@ class $ {
118
118
  return !0;
119
119
  }
120
120
  }
121
- Q = E(null), $ = b(Q, 0, "GridDetailView", Te, $), y(Q, 1, $);
121
+ Q = y(null), $ = T(Q, 0, "GridDetailView", Te, $), b(Q, 1, $);
122
122
  const le = /* @__PURE__ */ Symbol("formArrayContext");
123
123
  function rt(i) {
124
124
  return i[le];
@@ -128,7 +128,7 @@ Ae = [x({
128
128
  selector: "tbw-grid[formArray]"
129
129
  })];
130
130
  class z {
131
- elementRef = v(T);
131
+ elementRef = w(A);
132
132
  cellCommitListener = null;
133
133
  touchListener = null;
134
134
  /**
@@ -181,8 +181,8 @@ class z {
181
181
  updateField: (r, o, s) => {
182
182
  const l = t(r);
183
183
  if (l) {
184
- const g = l.get(o);
185
- g && (g.setValue(s), g.markAsDirty());
184
+ const f = l.get(o);
185
+ f && (f.setValue(s), f.markAsDirty());
186
186
  }
187
187
  },
188
188
  getValue: () => this.formArray().getRawValue(),
@@ -210,9 +210,9 @@ class z {
210
210
  if (!o) return null;
211
211
  const s = {};
212
212
  let l = !1;
213
- return Object.keys(o.controls).forEach((g) => {
214
- const w = o.get(g);
215
- w?.errors && (s[g] = w.errors, l = !0);
213
+ return Object.keys(o.controls).forEach((f) => {
214
+ const g = o.get(f);
215
+ g?.errors && (s[f] = g.errors, l = !0);
216
216
  }), o.errors && (s._group = o.errors, l = !0), l ? s : null;
217
217
  }
218
218
  };
@@ -235,7 +235,7 @@ class z {
235
235
  }
236
236
  }
237
237
  }
238
- Z = E(null), z = b(Z, 0, "GridFormArray", Ae, z), y(Z, 1, z);
238
+ Z = y(null), z = T(Z, 0, "GridFormArray", Ae, z), b(Z, 1, z);
239
239
  const Ve = /* @__PURE__ */ new Map();
240
240
  function it(i) {
241
241
  const e = i.querySelector("tbw-grid-responsive-card");
@@ -247,7 +247,7 @@ xe = [x({
247
247
  selector: "tbw-grid-responsive-card"
248
248
  })];
249
249
  class B {
250
- elementRef = v(T);
250
+ elementRef = w(A);
251
251
  /**
252
252
  * The ng-template containing the card content.
253
253
  */
@@ -269,7 +269,7 @@ class B {
269
269
  return !0;
270
270
  }
271
271
  }
272
- ee = E(null), B = b(ee, 0, "GridResponsiveCard", xe, B), y(ee, 1, B);
272
+ ee = y(null), B = T(ee, 0, "GridResponsiveCard", xe, B), b(ee, 1, B);
273
273
  const Ge = /* @__PURE__ */ new Map();
274
274
  function ot(i) {
275
275
  return Ge.get(i);
@@ -277,7 +277,7 @@ function ot(i) {
277
277
  var Se, te;
278
278
  Se = [x({ selector: "tbw-grid-tool-panel" })];
279
279
  class U {
280
- elementRef = v(T);
280
+ elementRef = w(A);
281
281
  /** Unique panel identifier (required) */
282
282
  id = c.required({ alias: "id" });
283
283
  /** Panel title shown in accordion header (required) */
@@ -311,7 +311,7 @@ class U {
311
311
  return !0;
312
312
  }
313
313
  }
314
- te = E(null), U = b(te, 0, "GridToolPanel", Se, U), y(te, 1, U);
314
+ te = y(null), U = T(te, 0, "GridToolPanel", Se, U), b(te, 1, U);
315
315
  const ce = /* @__PURE__ */ new Map(), ae = /* @__PURE__ */ new Map();
316
316
  function st(i) {
317
317
  const e = ce.get(i);
@@ -330,8 +330,8 @@ function lt(i) {
330
330
  var Le, ne;
331
331
  Le = [x({ selector: "[tbwRenderer]" })];
332
332
  class J {
333
- template = v(F);
334
- elementRef = v(T);
333
+ template = w(F);
334
+ elementRef = w(A);
335
335
  columnElement = null;
336
336
  constructor() {
337
337
  D(() => {
@@ -355,12 +355,12 @@ class J {
355
355
  return !0;
356
356
  }
357
357
  }
358
- ne = E(null), J = b(ne, 0, "TbwRenderer", Le, J), y(ne, 1, J);
358
+ ne = y(null), J = T(ne, 0, "TbwRenderer", Le, J), b(ne, 1, J);
359
359
  var De, re;
360
360
  De = [x({ selector: "[tbwEditor]" })];
361
361
  class W {
362
- template = v(F);
363
- elementRef = v(T);
362
+ template = w(F);
363
+ elementRef = w(A);
364
364
  columnElement = null;
365
365
  constructor() {
366
366
  D(() => {
@@ -384,14 +384,14 @@ class W {
384
384
  return !0;
385
385
  }
386
386
  }
387
- re = E(null), W = b(re, 0, "TbwEditor", De, W), y(re, 1, W);
387
+ re = y(null), W = T(re, 0, "TbwEditor", De, W), b(re, 1, W);
388
388
  const qe = new He("GRID_TYPE_DEFAULTS");
389
389
  var Pe, ie;
390
390
  Pe = [Ye({ providedIn: "root" })];
391
391
  class I {
392
392
  defaults = /* @__PURE__ */ new Map();
393
393
  constructor() {
394
- const e = v(qe, { optional: !0 });
394
+ const e = w(qe, { optional: !0 });
395
395
  if (e)
396
396
  for (const [t, n] of Object.entries(e))
397
397
  this.defaults.set(t, n);
@@ -445,7 +445,7 @@ class I {
445
445
  };
446
446
  }
447
447
  }
448
- ie = E(null), I = b(ie, 0, "GridTypeRegistry", Pe, I), y(ie, 1, I);
448
+ ie = y(null), I = T(ie, 0, "GridTypeRegistry", Pe, I), b(ie, 1, I);
449
449
  function ft(i) {
450
450
  return Xe([{ provide: qe, useValue: i }]);
451
451
  }
@@ -562,20 +562,20 @@ class ct {
562
562
  createEditor(e) {
563
563
  const t = Ee(e), n = e.closest("tbw-grid");
564
564
  return t ? (r) => {
565
- const o = (f) => r.commit(f), s = () => r.cancel(), l = new ge(), g = new ge();
566
- l.subscribe((f) => r.commit(f)), g.subscribe(() => r.cancel());
567
- let w;
565
+ const o = (h) => r.commit(h), s = () => r.cancel(), l = new ge(), f = new ge();
566
+ l.subscribe((h) => r.commit(h)), f.subscribe(() => r.cancel());
567
+ let g;
568
568
  if (n) {
569
- const f = rt(n);
570
- if (f?.hasFormGroups) {
569
+ const h = rt(n);
570
+ if (h?.hasFormGroups) {
571
571
  const S = n.rows;
572
572
  if (S) {
573
573
  const M = S.indexOf(r.row);
574
- M >= 0 && (w = f.getControl(M, r.field));
574
+ M >= 0 && (g = h.getControl(M, r.field));
575
575
  }
576
576
  }
577
577
  }
578
- const A = {
578
+ const E = {
579
579
  $implicit: r.value,
580
580
  value: r.value,
581
581
  row: r.row,
@@ -584,15 +584,15 @@ class ct {
584
584
  onCommit: o,
585
585
  onCancel: s,
586
586
  // FormControl from FormArray (if available)
587
- control: w,
587
+ control: g,
588
588
  // Deprecated: EventEmitters (for backwards compatibility)
589
589
  commit: l,
590
- cancel: g
591
- }, a = this.viewContainerRef.createEmbeddedView(t, A);
590
+ cancel: f
591
+ }, a = this.viewContainerRef.createEmbeddedView(t, E);
592
592
  this.viewRefs.push(a), a.detectChanges();
593
593
  const R = a.rootNodes[0];
594
- return R && R.addEventListener && (R.addEventListener("commit", (f) => {
595
- const S = f;
594
+ return R && R.addEventListener && (R.addEventListener("commit", (h) => {
595
+ const S = h;
596
596
  r.commit(S.detail);
597
597
  }), R.addEventListener("cancel", () => {
598
598
  r.cancel();
@@ -654,7 +654,7 @@ class ct {
654
654
  }, s = this.viewContainerRef.createEmbeddedView(t, o);
655
655
  this.viewRefs.push(s), s.detectChanges();
656
656
  const l = document.createElement("div");
657
- return s.rootNodes.forEach((g) => l.appendChild(g)), l;
657
+ return s.rootNodes.forEach((f) => l.appendChild(f)), l;
658
658
  };
659
659
  }
660
660
  /**
@@ -789,7 +789,7 @@ class ct {
789
789
  }
790
790
  }
791
791
  function gt() {
792
- const i = v(T), e = G(!1), t = G(null), n = G(null);
792
+ const i = w(A), e = G(!1), t = G(null), n = G(null);
793
793
  Ke(() => {
794
794
  const u = i.nativeElement.querySelector("tbw-grid");
795
795
  if (!u) {
@@ -814,18 +814,18 @@ function gt() {
814
814
  }, l = async (u) => {
815
815
  const m = n();
816
816
  m && await m.toggleGroup?.(u);
817
- }, g = (u, m) => {
817
+ }, f = (u, m) => {
818
818
  n()?.registerStyles?.(u, m);
819
- }, w = (u) => {
819
+ }, g = (u) => {
820
820
  n()?.unregisterStyles?.(u);
821
- }, A = () => {
821
+ }, E = () => {
822
822
  const u = n(), m = u?.getPluginByName?.("selection");
823
823
  if (!m) {
824
824
  console.warn("[injectGrid] selectAll requires SelectionPlugin");
825
825
  return;
826
826
  }
827
827
  if (m.config?.mode === "row") {
828
- const d = u?.rows ?? [], C = new Set(d.map((h, L) => L));
828
+ const d = u?.rows ?? [], C = new Set(d.map((v, L) => L));
829
829
  m.selected = C, m.requestAfterRender?.();
830
830
  }
831
831
  }, a = () => {
@@ -839,8 +839,8 @@ function gt() {
839
839
  if (m.config?.mode === "row")
840
840
  return new Set(m.selected ?? []);
841
841
  const d = m.ranges ?? [], C = /* @__PURE__ */ new Set();
842
- for (const h of d)
843
- for (let L = h.startRow; L <= h.endRow; L++)
842
+ for (const v of d)
843
+ for (let L = v.startRow; L <= v.endRow; L++)
844
844
  C.add(L);
845
845
  return C;
846
846
  };
@@ -852,9 +852,9 @@ function gt() {
852
852
  getConfig: o,
853
853
  forceLayout: s,
854
854
  toggleGroup: l,
855
- registerStyles: g,
856
- unregisterStyles: w,
857
- selectAll: A,
855
+ registerStyles: f,
856
+ unregisterStyles: g,
857
+ selectAll: E,
858
858
  clearSelection: a,
859
859
  getSelectedIndices: R,
860
860
  getSelectedRows: () => {
@@ -884,7 +884,7 @@ function gt() {
884
884
  var Fe, oe;
885
885
  Fe = [x()];
886
886
  class H {
887
- elementRef = v(T);
887
+ elementRef = w(A);
888
888
  // ============================================================================
889
889
  // Inputs
890
890
  // ============================================================================
@@ -1014,22 +1014,25 @@ class H {
1014
1014
  }
1015
1015
  }
1016
1016
  }
1017
- oe = E(null), H = b(oe, 0, "BaseGridEditor", Fe, H), y(oe, 1, H);
1017
+ oe = y(null), H = T(oe, 0, "BaseGridEditor", Fe, H), b(oe, 1, H);
1018
1018
  var Me, se;
1019
1019
  Me = [x({ selector: "tbw-grid" })];
1020
1020
  class Y {
1021
- elementRef = v(T);
1022
- injector = v(Qe);
1023
- appRef = v(Ze);
1024
- viewContainerRef = v(et);
1021
+ elementRef = w(A);
1022
+ injector = w(Qe);
1023
+ appRef = w(Ze);
1024
+ viewContainerRef = w(et);
1025
1025
  adapter = null;
1026
1026
  constructor() {
1027
1027
  D(() => {
1028
1028
  const e = this.angularConfig();
1029
1029
  if (!this.adapter) return;
1030
- const t = e ? this.adapter.processGridConfig(e) : {}, n = this.createFeaturePlugins(), r = t.plugins || [], o = [...n, ...r], s = this.elementRef.nativeElement;
1031
- s.gridConfig = {
1030
+ const t = e ? this.adapter.processGridConfig(e) : {}, n = this.createFeaturePlugins(), r = t.plugins || [], o = [...n, ...r], s = this.sortable(), l = this.filterable(), f = this.selectable(), g = {};
1031
+ s !== void 0 && (g.sortable = s), l !== void 0 && (g.filterable = l), f !== void 0 && (g.selectable = f);
1032
+ const E = this.elementRef.nativeElement;
1033
+ E.gridConfig = {
1032
1034
  ...t,
1035
+ ...g,
1033
1036
  plugins: o.length > 0 ? o : void 0
1034
1037
  };
1035
1038
  });
@@ -1052,6 +1055,67 @@ class Y {
1052
1055
  * ```
1053
1056
  */
1054
1057
  customStyles = c();
1058
+ /**
1059
+ * Grid-wide sorting toggle.
1060
+ * When false, disables sorting for all columns regardless of their individual `sortable` setting.
1061
+ * When true (default), columns with `sortable: true` can be sorted.
1062
+ *
1063
+ * This is a core grid config property, not a plugin feature.
1064
+ * For multi-column sorting, also add the `[multiSort]` feature.
1065
+ *
1066
+ * @default true
1067
+ *
1068
+ * @example
1069
+ * ```html
1070
+ * <!-- Disable all sorting -->
1071
+ * <tbw-grid [sortable]="false" />
1072
+ *
1073
+ * <!-- Enable sorting (default) - columns still need sortable: true -->
1074
+ * <tbw-grid [sortable]="true" />
1075
+ *
1076
+ * <!-- Enable multi-column sorting -->
1077
+ * <tbw-grid [sortable]="true" [multiSort]="true" />
1078
+ * ```
1079
+ */
1080
+ sortable = c();
1081
+ /**
1082
+ * Grid-wide filtering toggle.
1083
+ * When false, disables filtering for all columns regardless of their individual `filterable` setting.
1084
+ * When true (default), columns with `filterable: true` can be filtered.
1085
+ *
1086
+ * Requires the FilteringPlugin to be loaded.
1087
+ *
1088
+ * @default true
1089
+ *
1090
+ * @example
1091
+ * ```html
1092
+ * <!-- Disable all filtering -->
1093
+ * <tbw-grid [filterable]="false" [filtering]="true" />
1094
+ *
1095
+ * <!-- Enable filtering (default) -->
1096
+ * <tbw-grid [filterable]="true" [filtering]="true" />
1097
+ * ```
1098
+ */
1099
+ filterable = c();
1100
+ /**
1101
+ * Grid-wide selection toggle.
1102
+ * When false, disables selection for all rows/cells.
1103
+ * When true (default), selection is enabled based on plugin mode.
1104
+ *
1105
+ * Requires the SelectionPlugin to be loaded.
1106
+ *
1107
+ * @default true
1108
+ *
1109
+ * @example
1110
+ * ```html
1111
+ * <!-- Disable all selection -->
1112
+ * <tbw-grid [selectable]="false" [selection]="'range'" />
1113
+ *
1114
+ * <!-- Enable selection (default) -->
1115
+ * <tbw-grid [selectable]="true" [selection]="'range'" />
1116
+ * ```
1117
+ */
1118
+ selectable = c();
1055
1119
  /**
1056
1120
  * Angular-specific grid configuration that supports component classes for renderers/editors.
1057
1121
  *
@@ -1160,23 +1224,37 @@ class Y {
1160
1224
  */
1161
1225
  contextMenu = c();
1162
1226
  /**
1163
- * Enable column sorting.
1227
+ * Enable multi-column sorting.
1228
+ *
1229
+ * Multi-sort allows users to sort by multiple columns simultaneously.
1230
+ * For basic single-column sorting, columns with `sortable: true` work without this plugin.
1164
1231
  *
1165
1232
  * **Requires feature import:**
1166
1233
  * ```typescript
1167
- * import '@toolbox-web/grid-angular/features/sorting';
1234
+ * import '@toolbox-web/grid-angular/features/multi-sort';
1168
1235
  * ```
1169
1236
  *
1170
1237
  * @example
1171
1238
  * ```html
1172
- * <!-- Enable with default (multi-sort) -->
1173
- * <tbw-grid [sorting]="true" />
1239
+ * <!-- Enable multi-column sorting -->
1240
+ * <tbw-grid [multiSort]="true" />
1174
1241
  *
1175
- * <!-- Single column sort only -->
1176
- * <tbw-grid [sorting]="'single'" />
1242
+ * <!-- Limit to single column (uses plugin but restricts to 1 column) -->
1243
+ * <tbw-grid [multiSort]="'single'" />
1177
1244
  *
1178
- * <!-- Multi-column sort -->
1179
- * <tbw-grid [sorting]="'multi'" />
1245
+ * <!-- Full config -->
1246
+ * <tbw-grid [multiSort]="{ maxSortColumns: 3 }" />
1247
+ * ```
1248
+ */
1249
+ multiSort = c();
1250
+ /**
1251
+ * @deprecated Use `[multiSort]` instead. Will be removed in a future version.
1252
+ *
1253
+ * Enable column sorting. This is an alias for `[multiSort]`.
1254
+ *
1255
+ * **Requires feature import:**
1256
+ * ```typescript
1257
+ * import '@toolbox-web/grid-angular/features/multi-sort';
1180
1258
  * ```
1181
1259
  */
1182
1260
  sorting = c();
@@ -1727,7 +1805,7 @@ class Y {
1727
1805
  const o = tt(n, r);
1728
1806
  o && e.push(o);
1729
1807
  };
1730
- return t("selection", this.selection()), t("editing", this.editing()), t("clipboard", this.clipboard()), t("contextMenu", this.contextMenu()), t("sorting", this.sorting()), t("filtering", this.filtering()), t("reorder", this.reorder()), t("visibility", this.visibility()), t("pinnedColumns", this.pinnedColumns()), t("groupingColumns", this.groupingColumns()), t("columnVirtualization", this.columnVirtualization()), t("rowReorder", this.rowReorder()), t("groupingRows", this.groupingRows()), t("pinnedRows", this.pinnedRows()), t("tree", this.tree()), t("masterDetail", this.masterDetail()), t("responsive", this.responsive()), t("undoRedo", this.undoRedo()), t("export", this.exportFeature()), t("print", this.print()), t("pivot", this.pivot()), t("serverSide", this.serverSide()), e;
1808
+ return t("selection", this.selection()), t("editing", this.editing()), t("clipboard", this.clipboard()), t("contextMenu", this.contextMenu()), t("multiSort", this.multiSort() ?? this.sorting()), t("filtering", this.filtering()), t("reorder", this.reorder()), t("visibility", this.visibility()), t("pinnedColumns", this.pinnedColumns()), t("groupingColumns", this.groupingColumns()), t("columnVirtualization", this.columnVirtualization()), t("rowReorder", this.rowReorder()), t("groupingRows", this.groupingRows()), t("pinnedRows", this.pinnedRows()), t("tree", this.tree()), t("masterDetail", this.masterDetail()), t("responsive", this.responsive()), t("undoRedo", this.undoRedo()), t("export", this.exportFeature()), t("print", this.print()), t("pivot", this.pivot()), t("serverSide", this.serverSide()), e;
1731
1809
  }
1732
1810
  ngAfterContentInit() {
1733
1811
  const e = this.elementRef.nativeElement;
@@ -1764,14 +1842,14 @@ class Y {
1764
1842
  const o = n.getAttribute("animation");
1765
1843
  let s = "slide";
1766
1844
  o === "false" ? s = !1 : o === "fade" && (s = "fade");
1767
- const l = n.getAttribute("showExpandColumn") !== "false", { MasterDetailPlugin: g } = await import("@toolbox-web/grid/plugins/master-detail"), w = new g({
1845
+ const l = n.getAttribute("showExpandColumn") !== "false", { MasterDetailPlugin: f } = await import("@toolbox-web/grid/plugins/master-detail"), g = new f({
1768
1846
  detailRenderer: r,
1769
1847
  showExpandColumn: l,
1770
1848
  animation: s
1771
- }), A = e.gridConfig || {}, a = A.plugins || [];
1849
+ }), E = e.gridConfig || {}, a = E.plugins || [];
1772
1850
  e.gridConfig = {
1773
- ...A,
1774
- plugins: [...a, w]
1851
+ ...E,
1852
+ plugins: [...a, g]
1775
1853
  };
1776
1854
  }
1777
1855
  /**
@@ -1808,7 +1886,7 @@ Add ResponsivePlugin to your gridConfig.plugins array:
1808
1886
  e && this.customStyles() && e.unregisterStyles?.("angular-custom-styles"), this.adapter && (this.adapter.destroy?.(), this.adapter = null);
1809
1887
  }
1810
1888
  }
1811
- se = E(null), Y = b(se, 0, "Grid", Me, Y), y(se, 1, Y);
1889
+ se = y(null), Y = T(se, 0, "Grid", Me, Y), b(se, 1, Y);
1812
1890
  export {
1813
1891
  ct as AngularGridAdapter,
1814
1892
  H as BaseGridEditor,
@@ -1 +1 @@
1
- {"version":3,"file":"angular-grid-adapter.d.ts","sourceRoot":"","sources":["../../../../libs/grid-angular/src/lib/angular-grid-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EAId,mBAAmB,EAInB,gBAAgB,EACjB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAEV,YAAY,EAEZ,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,UAAU,EACV,WAAW,EACZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAoB,KAAK,mBAAmB,EAAE,KAAK,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAmC7G;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AACH,qBAAa,kBAAmB,YAAW,gBAAgB;IAMvD,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,gBAAgB;IAP1B,OAAO,CAAC,QAAQ,CAAkC;IAClD,OAAO,CAAC,aAAa,CAA+B;IACpD,OAAO,CAAC,YAAY,CAAiC;gBAG3C,QAAQ,EAAE,mBAAmB,EAC7B,MAAM,EAAE,cAAc,EACtB,gBAAgB,EAAE,gBAAgB;IAc5C;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,iBAAiB,CAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,iBAAiB,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC;IAapF;;;;;;OAMG;IACH,aAAa,CAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,mBAAmB,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC;IAgBpF;;;OAGG;IACH,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;IAIxC;;;;;;OAMG;IACH,cAAc,CAAC,IAAI,GAAG,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE,OAAO,EAAE,WAAW,GAAG,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC;IA+BxG;;;;;;;;;;;;;;;;;OAiBG;IACH,YAAY,CAAC,IAAI,GAAG,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE,OAAO,EAAE,WAAW,GAAG,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC;IAmFpG;;;OAGG;IACH,oBAAoB,CAAC,IAAI,GAAG,OAAO,EAAE,WAAW,EAAE,WAAW,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,KAAK,WAAW,CAAC,GAAG,SAAS;IA4BxG;;;;;;OAMG;IACH,kBAAkB,CAAC,IAAI,GAAG,OAAO,EAC/B,aAAa,EAAE,OAAO,GACrB,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,KAAK,WAAW,GAAG,MAAM,CAAC,GAAG,SAAS;IA4BtE;;;;;;OAMG;IACH,4BAA4B,CAAC,IAAI,GAAG,OAAO,EACzC,WAAW,EAAE,WAAW,GACvB,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,KAAK,WAAW,CAAC,GAAG,SAAS;IA6B7D;;;OAGG;IACH,uBAAuB,CAAC,OAAO,EAAE,WAAW,GAAG,CAAC,CAAC,SAAS,EAAE,WAAW,KAAK,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,SAAS;IAsC5G;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,cAAc,CAAC,IAAI,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,SAAS;IA2B3E;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAgC/B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IA+C7B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAczB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAU1B;;;OAGG;IACH,OAAO,IAAI,IAAI;CAMhB"}
1
+ {"version":3,"file":"angular-grid-adapter.d.ts","sourceRoot":"","sources":["../../../../libs/grid-angular/src/lib/angular-grid-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EAId,mBAAmB,EAInB,gBAAgB,EACjB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAEV,YAAY,EAEZ,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,UAAU,EACV,WAAW,EACZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAoB,KAAK,mBAAmB,EAAE,KAAK,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAmC7G;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AACH,qBAAa,kBAAmB,YAAW,gBAAgB;IAMvD,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,gBAAgB;IAP1B,OAAO,CAAC,QAAQ,CAAkC;IAClD,OAAO,CAAC,aAAa,CAA+B;IACpD,OAAO,CAAC,YAAY,CAAiC;gBAG3C,QAAQ,EAAE,mBAAmB,EAC7B,MAAM,EAAE,cAAc,EACtB,gBAAgB,EAAE,gBAAgB;IAc5C;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,iBAAiB,CAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,iBAAiB,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC;IAapF;;;;;;OAMG;IACH,aAAa,CAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,mBAAmB,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC;IAgBpF;;;OAGG;IACH,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;IAIxC;;;;;;OAMG;IACH,cAAc,CAAC,IAAI,GAAG,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE,OAAO,EAAE,WAAW,GAAG,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC;IA+BxG;;;;;;;;;;;;;;;;;OAiBG;IACH,YAAY,CAAC,IAAI,GAAG,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE,OAAO,EAAE,WAAW,GAAG,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC;IAmFpG;;;OAGG;IACH,oBAAoB,CAAC,IAAI,GAAG,OAAO,EAAE,WAAW,EAAE,WAAW,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,KAAK,WAAW,CAAC,GAAG,SAAS;IA4BxG;;;;;;OAMG;IACH,kBAAkB,CAAC,IAAI,GAAG,OAAO,EAC/B,aAAa,EAAE,OAAO,GACrB,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,KAAK,WAAW,GAAG,MAAM,CAAC,GAAG,SAAS;IA4BtE;;;;;;OAMG;IACH,4BAA4B,CAAC,IAAI,GAAG,OAAO,EACzC,WAAW,EAAE,WAAW,GACvB,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,KAAK,WAAW,CAAC,GAAG,SAAS;IA6B7D;;;OAGG;IACH,uBAAuB,CAAC,OAAO,EAAE,WAAW,GAAG,CAAC,CAAC,SAAS,EAAE,WAAW,KAAK,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,SAAS;IAsC5G;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,cAAc,CAAC,IAAI,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,SAAS;IA4B3E;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAgC/B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IA+C7B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAczB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAU1B;;;OAGG;IACH,OAAO,IAAI,IAAI;CAMhB"}
@@ -96,6 +96,67 @@ export declare class Grid implements OnInit, AfterContentInit, OnDestroy {
96
96
  * ```
97
97
  */
98
98
  customStyles: import('@angular/core').InputSignal<string | undefined>;
99
+ /**
100
+ * Grid-wide sorting toggle.
101
+ * When false, disables sorting for all columns regardless of their individual `sortable` setting.
102
+ * When true (default), columns with `sortable: true` can be sorted.
103
+ *
104
+ * This is a core grid config property, not a plugin feature.
105
+ * For multi-column sorting, also add the `[multiSort]` feature.
106
+ *
107
+ * @default true
108
+ *
109
+ * @example
110
+ * ```html
111
+ * <!-- Disable all sorting -->
112
+ * <tbw-grid [sortable]="false" />
113
+ *
114
+ * <!-- Enable sorting (default) - columns still need sortable: true -->
115
+ * <tbw-grid [sortable]="true" />
116
+ *
117
+ * <!-- Enable multi-column sorting -->
118
+ * <tbw-grid [sortable]="true" [multiSort]="true" />
119
+ * ```
120
+ */
121
+ sortable: import('@angular/core').InputSignal<boolean | undefined>;
122
+ /**
123
+ * Grid-wide filtering toggle.
124
+ * When false, disables filtering for all columns regardless of their individual `filterable` setting.
125
+ * When true (default), columns with `filterable: true` can be filtered.
126
+ *
127
+ * Requires the FilteringPlugin to be loaded.
128
+ *
129
+ * @default true
130
+ *
131
+ * @example
132
+ * ```html
133
+ * <!-- Disable all filtering -->
134
+ * <tbw-grid [filterable]="false" [filtering]="true" />
135
+ *
136
+ * <!-- Enable filtering (default) -->
137
+ * <tbw-grid [filterable]="true" [filtering]="true" />
138
+ * ```
139
+ */
140
+ filterable: import('@angular/core').InputSignal<boolean | undefined>;
141
+ /**
142
+ * Grid-wide selection toggle.
143
+ * When false, disables selection for all rows/cells.
144
+ * When true (default), selection is enabled based on plugin mode.
145
+ *
146
+ * Requires the SelectionPlugin to be loaded.
147
+ *
148
+ * @default true
149
+ *
150
+ * @example
151
+ * ```html
152
+ * <!-- Disable all selection -->
153
+ * <tbw-grid [selectable]="false" [selection]="'range'" />
154
+ *
155
+ * <!-- Enable selection (default) -->
156
+ * <tbw-grid [selectable]="true" [selection]="'range'" />
157
+ * ```
158
+ */
159
+ selectable: import('@angular/core').InputSignal<boolean | undefined>;
99
160
  /**
100
161
  * Angular-specific grid configuration that supports component classes for renderers/editors.
101
162
  *
@@ -199,23 +260,37 @@ export declare class Grid implements OnInit, AfterContentInit, OnDestroy {
199
260
  */
200
261
  contextMenu: import('@angular/core').InputSignal<boolean | ContextMenuConfig | undefined>;
201
262
  /**
202
- * Enable column sorting.
263
+ * Enable multi-column sorting.
264
+ *
265
+ * Multi-sort allows users to sort by multiple columns simultaneously.
266
+ * For basic single-column sorting, columns with `sortable: true` work without this plugin.
203
267
  *
204
268
  * **Requires feature import:**
205
269
  * ```typescript
206
- * import '@toolbox-web/grid-angular/features/sorting';
270
+ * import '@toolbox-web/grid-angular/features/multi-sort';
207
271
  * ```
208
272
  *
209
273
  * @example
210
274
  * ```html
211
- * <!-- Enable with default (multi-sort) -->
212
- * <tbw-grid [sorting]="true" />
275
+ * <!-- Enable multi-column sorting -->
276
+ * <tbw-grid [multiSort]="true" />
213
277
  *
214
- * <!-- Single column sort only -->
215
- * <tbw-grid [sorting]="'single'" />
278
+ * <!-- Limit to single column (uses plugin but restricts to 1 column) -->
279
+ * <tbw-grid [multiSort]="'single'" />
216
280
  *
217
- * <!-- Multi-column sort -->
218
- * <tbw-grid [sorting]="'multi'" />
281
+ * <!-- Full config -->
282
+ * <tbw-grid [multiSort]="{ maxSortColumns: 3 }" />
283
+ * ```
284
+ */
285
+ multiSort: import('@angular/core').InputSignal<boolean | "multi" | MultiSortConfig | "single" | undefined>;
286
+ /**
287
+ * @deprecated Use `[multiSort]` instead. Will be removed in a future version.
288
+ *
289
+ * Enable column sorting. This is an alias for `[multiSort]`.
290
+ *
291
+ * **Requires feature import:**
292
+ * ```typescript
293
+ * import '@toolbox-web/grid-angular/features/multi-sort';
219
294
  * ```
220
295
  */
221
296
  sorting: import('@angular/core').InputSignal<boolean | "multi" | MultiSortConfig | "single" | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"grid.directive.d.ts","sourceRoot":"","sources":["../../../../../libs/grid-angular/src/lib/directives/grid.directive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grid.directive.d.ts","sourceRoot":"","sources":["../../../../../libs/grid-angular/src/lib/directives/grid.directive.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,7 @@
18
18
  /**
19
19
  * Feature names supported by the Grid directive.
20
20
  */
21
- export type FeatureName = 'selection' | 'editing' | 'clipboard' | 'contextMenu' | 'sorting' | 'filtering' | 'reorder' | 'visibility' | 'pinnedColumns' | 'groupingColumns' | 'columnVirtualization' | 'rowReorder' | 'groupingRows' | 'pinnedRows' | 'tree' | 'masterDetail' | 'responsive' | 'undoRedo' | 'export' | 'print' | 'pivot' | 'serverSide';
21
+ export type FeatureName = 'selection' | 'editing' | 'clipboard' | 'contextMenu' | 'multiSort' | 'sorting' | 'filtering' | 'reorder' | 'visibility' | 'pinnedColumns' | 'groupingColumns' | 'columnVirtualization' | 'rowReorder' | 'groupingRows' | 'pinnedRows' | 'tree' | 'masterDetail' | 'responsive' | 'undoRedo' | 'export' | 'print' | 'pivot' | 'serverSide';
22
22
  /**
23
23
  * Plugin factory function type.
24
24
  * Takes configuration and returns a plugin instance.
@@ -1 +1 @@
1
- {"version":3,"file":"feature-registry.d.ts","sourceRoot":"","sources":["../../../../libs/grid-angular/src/lib/feature-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH;;GAEG;AACH,MAAM,MAAM,WAAW,GACnB,WAAW,GACX,SAAS,GACT,WAAW,GACX,aAAa,GACb,SAAS,GACT,WAAW,GACX,SAAS,GACT,YAAY,GACZ,eAAe,GACf,iBAAiB,GACjB,sBAAsB,GACtB,YAAY,GACZ,cAAc,GACd,YAAY,GACZ,MAAM,GACN,cAAc,GACd,YAAY,GACZ,UAAU,GACV,QAAQ,GACR,OAAO,GACP,OAAO,GACP,YAAY,CAAC;AAEjB;;;GAGG;AACH,MAAM,MAAM,aAAa,CAAC,OAAO,GAAG,OAAO,IAAI,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC;AAuB5E;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAAC,OAAO,GAAG,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,IAAI,CAK3G;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAE9D;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,WAAW,GAAG,aAAa,GAAG,SAAS,CAE9E;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,WAAW,EAAE,CAErD;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,GAAG,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAqBlH;AASD;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAG3C"}
1
+ {"version":3,"file":"feature-registry.d.ts","sourceRoot":"","sources":["../../../../libs/grid-angular/src/lib/feature-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH;;GAEG;AACH,MAAM,MAAM,WAAW,GACnB,WAAW,GACX,SAAS,GACT,WAAW,GACX,aAAa,GACb,WAAW,GACX,SAAS,GACT,WAAW,GACX,SAAS,GACT,YAAY,GACZ,eAAe,GACf,iBAAiB,GACjB,sBAAsB,GACtB,YAAY,GACZ,cAAc,GACd,YAAY,GACZ,MAAM,GACN,cAAc,GACd,YAAY,GACZ,UAAU,GACV,QAAQ,GACR,OAAO,GACP,OAAO,GACP,YAAY,CAAC;AAEjB;;;GAGG;AACH,MAAM,MAAM,aAAa,CAAC,OAAO,GAAG,OAAO,IAAI,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC;AAuB5E;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAAC,OAAO,GAAG,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,IAAI,CAK3G;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAE9D;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,WAAW,GAAG,aAAa,GAAG,SAAS,CAE9E;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,WAAW,EAAE,CAErD;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,GAAG,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAqBlH;AASD;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAG3C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@toolbox-web/grid-angular",
3
- "version": "0.6.0",
3
+ "version": "0.7.1",
4
4
  "description": "Angular adapter for @toolbox-web/grid data grid component",
5
5
  "type": "module",
6
6
  "main": "./index.js",