@oscarpalmer/tabela 0.8.0 → 0.10.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.
Files changed (55) hide show
  1. package/dist/components/body.component.js +2 -15
  2. package/dist/components/footer.component.js +3 -3
  3. package/dist/components/header.component.js +2 -2
  4. package/dist/components/row.component.js +13 -4
  5. package/dist/helpers/dom.helpers.js +5 -10
  6. package/dist/helpers/misc.helpers.js +7 -0
  7. package/dist/helpers/style.helper.js +6 -0
  8. package/dist/managers/column.manager.js +7 -2
  9. package/dist/managers/data.manager.js +6 -4
  10. package/dist/managers/event.manager.js +6 -2
  11. package/dist/managers/filter.manager.js +92 -0
  12. package/dist/managers/{virtualization.manager.js → render.manager.js} +28 -22
  13. package/dist/managers/row.manager.js +9 -2
  14. package/dist/managers/selection.manager.js +191 -0
  15. package/dist/managers/sort.manager.js +17 -6
  16. package/dist/models/render.model.js +0 -0
  17. package/dist/tabela.full.js +1253 -105
  18. package/dist/tabela.js +19 -6
  19. package/package.json +1 -1
  20. package/src/components/body.component.ts +4 -21
  21. package/src/components/footer.component.ts +3 -3
  22. package/src/components/header.component.ts +2 -2
  23. package/src/components/row.component.ts +22 -7
  24. package/src/helpers/dom.helpers.ts +3 -10
  25. package/src/helpers/misc.helpers.ts +15 -0
  26. package/src/helpers/style.helper.ts +6 -0
  27. package/src/managers/column.manager.ts +9 -1
  28. package/src/managers/data.manager.ts +9 -5
  29. package/src/managers/event.manager.ts +10 -3
  30. package/src/managers/filter.manager.ts +154 -0
  31. package/src/managers/{virtualization.manager.ts → render.manager.ts} +36 -31
  32. package/src/managers/row.manager.ts +16 -2
  33. package/src/managers/selection.manager.ts +338 -0
  34. package/src/managers/sort.manager.ts +35 -16
  35. package/src/models/filter.model.ts +17 -0
  36. package/src/models/{virtualization.model.ts → render.model.ts} +3 -3
  37. package/src/models/sort.model.ts +1 -1
  38. package/src/models/tabela.model.ts +22 -2
  39. package/src/tabela.ts +28 -6
  40. package/types/components/row.component.d.ts +2 -2
  41. package/types/helpers/dom.helpers.d.ts +1 -1
  42. package/types/helpers/misc.helpers.d.ts +2 -0
  43. package/types/helpers/style.helper.d.ts +1 -0
  44. package/types/managers/data.manager.d.ts +1 -1
  45. package/types/managers/event.manager.d.ts +1 -1
  46. package/types/managers/filter.manager.d.ts +19 -0
  47. package/types/managers/{virtualization.manager.d.ts → render.manager.d.ts} +6 -6
  48. package/types/managers/selection.manager.d.ts +19 -0
  49. package/types/managers/sort.manager.d.ts +5 -2
  50. package/types/models/filter.model.d.ts +6 -0
  51. package/types/models/{virtualization.model.d.ts → render.model.d.ts} +3 -3
  52. package/types/models/sort.model.d.ts +1 -1
  53. package/types/models/tabela.model.d.ts +20 -2
  54. package/types/tabela.d.ts +3 -1
  55. /package/dist/models/{virtualization.model.js → filter.model.js} +0 -0
@@ -23,13 +23,19 @@ var SortManager = class {
23
23
  addOrSet(event, field) {
24
24
  if (event.ctrlKey || event.metaKey) this.add(field);
25
25
  else this.set([{
26
- key: field,
26
+ field,
27
27
  direction: "ascending"
28
28
  }]);
29
29
  }
30
30
  clear() {
31
+ if (this.items.length > 0) {
32
+ this.items.length = 0;
33
+ this.sort();
34
+ }
35
+ }
36
+ destroy() {
37
+ this.handlers = void 0;
31
38
  this.items.length = 0;
32
- this.sort();
33
39
  }
34
40
  flip(field) {
35
41
  const item = this.items.find((item) => item.key === field);
@@ -49,14 +55,17 @@ var SortManager = class {
49
55
  else this.clear();
50
56
  }
51
57
  set(items) {
52
- this.items.splice(0, this.items.length, ...items);
58
+ this.items.splice(0, this.items.length, ...items.map((item) => ({
59
+ key: item.field,
60
+ direction: item.direction
61
+ })));
53
62
  this.sort();
54
63
  }
55
64
  sort() {
56
65
  const { items, managers } = this;
57
- managers.data.values.keys.active = items.length === 0 ? void 0 : sort(managers.data.values.objects.array, items).map((row) => row[managers.data.field]);
58
- managers.virtualization.update(true, true);
59
- for (const column of managers.column.items) {
66
+ const { length } = managers.column.items;
67
+ for (let index = 0; index < length; index += 1) {
68
+ const column = managers.column.items[index];
60
69
  const sorterIndex = items.findIndex((item) => item.key === column.options.field);
61
70
  const sorterItem = items[sorterIndex];
62
71
  setAttributes(column.elements.wrapper, {
@@ -65,6 +74,8 @@ var SortManager = class {
65
74
  });
66
75
  setAttribute(column.elements.sorter, "data-sort-position", sorterIndex > -1 && items.length > 1 ? sorterIndex + 1 : void 0);
67
76
  }
77
+ managers.data.values.keys.active = items.length === 0 ? void 0 : sort(managers.data.values.keys.active?.map((key) => managers.data.values.objects.mapped.get(key)) ?? managers.data.values.objects.array, items).map((row) => row[managers.data.field]);
78
+ managers.render.update(true, true);
68
79
  }
69
80
  toggle(event, field, direction) {
70
81
  switch (direction) {
File without changes