@ai-table/grid 0.0.3 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (100) hide show
  1. package/components/cell-editors/cell-editor.scss +20 -0
  2. package/components/cell-editors/number/number-editor.component.d.ts.map +1 -1
  3. package/components/cell-editors/progress/progress-editor.component.d.ts +22 -0
  4. package/components/cell-editors/progress/progress-editor.component.d.ts.map +1 -0
  5. package/components/cell-editors/progress/progress-editor.component.scss +21 -0
  6. package/components/cell-editors/rating/rating-editor.component.d.ts.map +1 -1
  7. package/components/cell-editors/select/select-editor.component.d.ts +15 -0
  8. package/components/cell-editors/select/select-editor.component.d.ts.map +1 -0
  9. package/components/cell-editors/text/text-editor.component.d.ts +9 -1
  10. package/components/cell-editors/text/text-editor.component.d.ts.map +1 -1
  11. package/components/field-menu/field-menu.component.d.ts +6 -6
  12. package/components/field-menu/field-menu.component.d.ts.map +1 -1
  13. package/components/field-property-editor/field-property-editor.component.d.ts +2 -1
  14. package/components/field-property-editor/field-property-editor.component.d.ts.map +1 -1
  15. package/components/index.d.ts +6 -0
  16. package/components/index.d.ts.map +1 -1
  17. package/constants/editor.d.ts +1 -1
  18. package/constants/editor.d.ts.map +1 -1
  19. package/constants/field.d.ts +12 -6
  20. package/constants/field.d.ts.map +1 -1
  21. package/constants/grid.d.ts +1 -0
  22. package/constants/grid.d.ts.map +1 -1
  23. package/core/action/field.d.ts +6 -0
  24. package/core/action/field.d.ts.map +1 -1
  25. package/core/action/general.d.ts.map +1 -1
  26. package/core/action/index.d.ts +5 -0
  27. package/core/action/index.d.ts.map +1 -1
  28. package/core/action/record.d.ts +4 -0
  29. package/core/action/record.d.ts.map +1 -1
  30. package/core/constants/field.d.ts +2 -0
  31. package/core/constants/field.d.ts.map +1 -1
  32. package/core/types/action.d.ts +31 -2
  33. package/core/types/action.d.ts.map +1 -1
  34. package/core/types/core.d.ts +41 -14
  35. package/core/types/core.d.ts.map +1 -1
  36. package/core/utils/common.d.ts +2 -1
  37. package/core/utils/common.d.ts.map +1 -1
  38. package/core/utils/field.d.ts +1 -1
  39. package/core/utils/queries.d.ts +3 -1
  40. package/core/utils/queries.d.ts.map +1 -1
  41. package/esm2022/components/cell-editors/abstract-cell-editor.component.mjs +2 -2
  42. package/esm2022/components/cell-editors/number/number-editor.component.mjs +7 -6
  43. package/esm2022/components/cell-editors/progress/progress-editor.component.mjs +75 -0
  44. package/esm2022/components/cell-editors/rating/rating-editor.component.mjs +7 -6
  45. package/esm2022/components/cell-editors/select/select-editor.component.mjs +46 -0
  46. package/esm2022/components/cell-editors/text/text-editor.component.mjs +54 -21
  47. package/esm2022/components/field-menu/field-menu.component.mjs +7 -6
  48. package/esm2022/components/field-property-editor/field-property-editor.component.mjs +9 -6
  49. package/esm2022/components/index.mjs +7 -1
  50. package/esm2022/constants/editor.mjs +11 -13
  51. package/esm2022/constants/field.mjs +17 -5
  52. package/esm2022/constants/grid.mjs +7 -5
  53. package/esm2022/core/action/field.mjs +43 -2
  54. package/esm2022/core/action/general.mjs +68 -14
  55. package/esm2022/core/action/record.mjs +22 -5
  56. package/esm2022/core/constants/field.mjs +61 -15
  57. package/esm2022/core/types/action.mjs +6 -1
  58. package/esm2022/core/types/core.mjs +15 -14
  59. package/esm2022/core/types/index.mjs +1 -1
  60. package/esm2022/core/utils/common.mjs +10 -1
  61. package/esm2022/core/utils/field.mjs +4 -4
  62. package/esm2022/core/utils/queries.mjs +36 -6
  63. package/esm2022/core/utils/record.mjs +4 -4
  64. package/esm2022/grid.component.mjs +107 -34
  65. package/esm2022/pipes/grid.pipe.mjs +31 -0
  66. package/esm2022/pipes/index.mjs +2 -2
  67. package/esm2022/services/event.service.mjs +43 -23
  68. package/esm2022/services/selection.service.mjs +72 -0
  69. package/esm2022/types/field.mjs +1 -1
  70. package/esm2022/types/grid.mjs +2 -8
  71. package/esm2022/utils/build.mjs +40 -5
  72. package/esm2022/utils/cell.mjs +3 -3
  73. package/fesm2022/ai-table-grid.mjs +1013 -487
  74. package/fesm2022/ai-table-grid.mjs.map +1 -1
  75. package/grid.component.d.ts +23 -13
  76. package/grid.component.d.ts.map +1 -1
  77. package/package.json +1 -1
  78. package/pipes/grid.pipe.d.ts +15 -0
  79. package/pipes/grid.pipe.d.ts.map +1 -0
  80. package/pipes/index.d.ts +1 -1
  81. package/pipes/index.d.ts.map +1 -1
  82. package/services/event.service.d.ts +9 -6
  83. package/services/event.service.d.ts.map +1 -1
  84. package/services/selection.service.d.ts +16 -0
  85. package/services/selection.service.d.ts.map +1 -0
  86. package/styles/styles.scss +73 -10
  87. package/types/field.d.ts +4 -4
  88. package/types/field.d.ts.map +1 -1
  89. package/types/grid.d.ts +15 -8
  90. package/types/grid.d.ts.map +1 -1
  91. package/utils/build.d.ts +3 -2
  92. package/utils/build.d.ts.map +1 -1
  93. package/utils/cell.d.ts +1 -1
  94. package/utils/cell.d.ts.map +1 -1
  95. package/components/cell-editors/single-select/single-select-editor.component.d.ts +0 -14
  96. package/components/cell-editors/single-select/single-select-editor.component.d.ts.map +0 -1
  97. package/esm2022/components/cell-editors/single-select/single-select-editor.component.mjs +0 -44
  98. package/esm2022/pipes/grid.mjs +0 -18
  99. package/pipes/grid.d.ts +0 -9
  100. package/pipes/grid.d.ts.map +0 -1
@@ -1,15 +1,19 @@
1
- import { Injectable } from '@angular/core';
1
+ import { DestroyRef, inject, Injectable } from '@angular/core';
2
2
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
3
- import { fromEvent } from 'rxjs';
4
- import { DBL_CLICK_EDIT_TYPE } from '../constants';
5
- import { getRecordOrField } from '../utils';
3
+ import { ThyPopover } from 'ngx-tethys/popover';
4
+ import { debounceTime, fromEvent, Subject } from 'rxjs';
6
5
  import { GRID_CELL_EDITOR_MAP } from '../constants/editor';
6
+ import { getRecordOrField } from '../utils';
7
7
  import * as i0 from "@angular/core";
8
- import * as i1 from "ngx-tethys/popover";
9
8
  export class AITableGridEventService {
10
- constructor(thyPopover) {
11
- this.thyPopover = thyPopover;
12
- this.takeUntilDestroyed = takeUntilDestroyed();
9
+ constructor() {
10
+ this.dblClickEvent$ = new Subject();
11
+ this.mousedownEvent$ = new Subject();
12
+ this.mouseoverEvent$ = new Subject();
13
+ this.globalMouseoverEvent$ = new Subject();
14
+ this.globalMousedownEvent$ = new Subject();
15
+ this.destroyRef = inject(DestroyRef);
16
+ this.thyPopover = inject(ThyPopover);
13
17
  }
14
18
  initialize(aiTable, aiFieldRenderers) {
15
19
  this.aiTable = aiTable;
@@ -17,17 +21,30 @@ export class AITableGridEventService {
17
21
  }
18
22
  registerEvents(element) {
19
23
  fromEvent(element, 'dblclick')
20
- .pipe(this.takeUntilDestroyed)
24
+ .pipe(takeUntilDestroyed(this.destroyRef))
21
25
  .subscribe((event) => {
22
- this.dblClick(event);
26
+ this.dblClickEvent$.next(event);
27
+ });
28
+ fromEvent(element, 'mouseover')
29
+ .pipe(debounceTime(80), takeUntilDestroyed(this.destroyRef))
30
+ .subscribe((event) => {
31
+ this.mouseoverEvent$.next(event);
32
+ });
33
+ fromEvent(document, 'mouseover')
34
+ .pipe(takeUntilDestroyed(this.destroyRef))
35
+ .subscribe((event) => {
36
+ this.globalMouseoverEvent$.next(event);
37
+ });
38
+ fromEvent(element, 'mousedown')
39
+ .pipe(takeUntilDestroyed(this.destroyRef))
40
+ .subscribe((event) => {
41
+ this.mousedownEvent$.next(event);
42
+ });
43
+ fromEvent(document, 'mousedown')
44
+ .pipe(takeUntilDestroyed(this.destroyRef))
45
+ .subscribe((event) => {
46
+ this.globalMousedownEvent$.next(event);
23
47
  });
24
- }
25
- dblClick(event) {
26
- const cellDom = event.target.closest('.grid-cell');
27
- const type = cellDom && cellDom.getAttribute('type');
28
- if (type && DBL_CLICK_EDIT_TYPE.includes(Number(type))) {
29
- this.openEdit(cellDom);
30
- }
31
48
  }
32
49
  getEditorComponent(type) {
33
50
  if (this.aiFieldRenderers && this.aiFieldRenderers[type]) {
@@ -42,7 +59,7 @@ export class AITableGridEventService {
42
59
  const field = getRecordOrField(this.aiTable.fields, fieldId);
43
60
  const record = getRecordOrField(this.aiTable.records, recordId);
44
61
  const component = this.getEditorComponent(field().type);
45
- this.thyPopover.open(component, {
62
+ const ref = this.thyPopover.open(component, {
46
63
  origin: cellDom,
47
64
  originPosition: {
48
65
  x: x - 1,
@@ -50,10 +67,11 @@ export class AITableGridEventService {
50
67
  width: width + 2,
51
68
  height: height + 2
52
69
  },
53
- width: width + 2 + 'px',
70
+ width: width + 1 + 'px',
54
71
  height: height + 2 + 'px',
55
72
  placement: 'top',
56
73
  offset: -(height + 4),
74
+ minWidth: width,
57
75
  initialState: {
58
76
  field: field,
59
77
  record: record,
@@ -63,13 +81,15 @@ export class AITableGridEventService {
63
81
  outsideClosable: false,
64
82
  hasBackdrop: false,
65
83
  manualClosure: true,
66
- animationDisabled: true
84
+ animationDisabled: true,
85
+ autoAdaptive: true
67
86
  });
87
+ return ref;
68
88
  }
69
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AITableGridEventService, deps: [{ token: i1.ThyPopover }], target: i0.ɵɵFactoryTarget.Injectable }); }
89
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AITableGridEventService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
70
90
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AITableGridEventService }); }
71
91
  }
72
92
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AITableGridEventService, decorators: [{
73
93
  type: Injectable
74
- }], ctorParameters: () => [{ type: i1.ThyPopover }] });
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3NlcnZpY2VzL2V2ZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFNUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUJBQXFCLENBQUM7OztBQUszRCxNQUFNLE9BQU8sdUJBQXVCO0lBT2hDLFlBQW9CLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFGMUMsdUJBQWtCLEdBQUcsa0JBQWtCLEVBQUUsQ0FBQztJQUVHLENBQUM7SUFFOUMsVUFBVSxDQUFDLE9BQWdCLEVBQUUsZ0JBQWlGO1FBQzFHLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztJQUM3QyxDQUFDO0lBRUQsY0FBYyxDQUFDLE9BQW9CO1FBQy9CLFNBQVMsQ0FBYSxPQUFPLEVBQUUsVUFBVSxDQUFDO2FBQ3JDLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUM7YUFDN0IsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFtQixDQUFDLENBQUM7UUFDdkMsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO0lBRU8sUUFBUSxDQUFDLEtBQWlCO1FBQzlCLE1BQU0sT0FBTyxHQUFJLEtBQUssQ0FBQyxNQUFzQixDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQWdCLENBQUM7UUFDbkYsTUFBTSxJQUFJLEdBQUcsT0FBTyxJQUFJLE9BQU8sQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFFLENBQUM7UUFDdEQsSUFBSSxJQUFJLElBQUksbUJBQW1CLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDckQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMzQixDQUFDO0lBQ0wsQ0FBQztJQUVPLGtCQUFrQixDQUFDLElBQXNCO1FBQzdDLElBQUksSUFBSSxDQUFDLGdCQUFnQixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ3ZELE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBRSxDQUFDLE1BQU0sQ0FBQztRQUMvQyxDQUFDO1FBQ0QsT0FBTyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRU8sUUFBUSxDQUFDLE9BQW9CO1FBQ2pDLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsR0FBRyxPQUFPLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUNoRSxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBRSxDQUFDO1FBQ2pELE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFFLENBQUM7UUFDbkQsTUFBTSxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUF5QixDQUFDO1FBQ3JGLE1BQU0sTUFBTSxHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBMEIsQ0FBQztRQUN6RixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQzVCLE1BQU0sRUFBRSxPQUFPO1lBQ2YsY0FBYyxFQUFFO2dCQUNaLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQztnQkFDUixDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUM7Z0JBQ1IsS0FBSyxFQUFFLEtBQUssR0FBRyxDQUFDO2dCQUNoQixNQUFNLEVBQUUsTUFBTSxHQUFHLENBQUM7YUFDckI7WUFDRCxLQUFLLEVBQUUsS0FBSyxHQUFHLENBQUMsR0FBRyxJQUFJO1lBQ3ZCLE1BQU0sRUFBRSxNQUFNLEdBQUcsQ0FBQyxHQUFHLElBQUk7WUFDekIsU0FBUyxFQUFFLEtBQUs7WUFDaEIsTUFBTSxFQUFFLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1lBQ3JCLFlBQVksRUFBRTtnQkFDVixLQUFLLEVBQUUsS0FBSztnQkFDWixNQUFNLEVBQUUsTUFBTTtnQkFDZCxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87YUFDeEI7WUFDRCxVQUFVLEVBQUUsa0JBQWtCO1lBQzlCLGVBQWUsRUFBRSxLQUFLO1lBQ3RCLFdBQVcsRUFBRSxLQUFLO1lBQ2xCLGFBQWEsRUFBRSxJQUFJO1lBQ25CLGlCQUFpQixFQUFFLElBQUk7U0FDMUIsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs4R0FuRVEsdUJBQXVCO2tIQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBRG5DLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IGZyb21FdmVudCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgREJMX0NMSUNLX0VESVRfVFlQRSB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBnZXRSZWNvcmRPckZpZWxkIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgQUlUYWJsZSwgQUlUYWJsZUZpZWxkLCBBSVRhYmxlRmllbGRUeXBlLCBBSVRhYmxlUmVjb3JkIH0gZnJvbSAnLi4vY29yZSc7XG5pbXBvcnQgeyBHUklEX0NFTExfRURJVE9SX01BUCB9IGZyb20gJy4uL2NvbnN0YW50cy9lZGl0b3InO1xuaW1wb3J0IHsgVGh5UG9wb3ZlciB9IGZyb20gJ25neC10ZXRoeXMvcG9wb3Zlcic7XG5pbXBvcnQgeyBBSVRhYmxlR3JpZENlbGxSZW5kZXJTY2hlbWEgfSBmcm9tICcuLi90eXBlcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBSVRhYmxlR3JpZEV2ZW50U2VydmljZSB7XG4gICAgYWlUYWJsZSE6IEFJVGFibGU7XG5cbiAgICBhaUZpZWxkUmVuZGVyZXJzPzogUGFydGlhbDxSZWNvcmQ8QUlUYWJsZUZpZWxkVHlwZSwgQUlUYWJsZUdyaWRDZWxsUmVuZGVyU2NoZW1hPj47XG5cbiAgICB0YWtlVW50aWxEZXN0cm95ZWQgPSB0YWtlVW50aWxEZXN0cm95ZWQoKTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgdGh5UG9wb3ZlcjogVGh5UG9wb3Zlcikge31cblxuICAgIGluaXRpYWxpemUoYWlUYWJsZTogQUlUYWJsZSwgYWlGaWVsZFJlbmRlcmVycz86IFBhcnRpYWw8UmVjb3JkPEFJVGFibGVGaWVsZFR5cGUsIEFJVGFibGVHcmlkQ2VsbFJlbmRlclNjaGVtYT4+KSB7XG4gICAgICAgIHRoaXMuYWlUYWJsZSA9IGFpVGFibGU7XG4gICAgICAgIHRoaXMuYWlGaWVsZFJlbmRlcmVycyA9IGFpRmllbGRSZW5kZXJlcnM7XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJFdmVudHMoZWxlbWVudDogSFRNTEVsZW1lbnQpIHtcbiAgICAgICAgZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KGVsZW1lbnQsICdkYmxjbGljaycpXG4gICAgICAgICAgICAucGlwZSh0aGlzLnRha2VVbnRpbERlc3Ryb3llZClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5kYmxDbGljayhldmVudCBhcyBNb3VzZUV2ZW50KTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZGJsQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgY29uc3QgY2VsbERvbSA9IChldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmNsb3Nlc3QoJy5ncmlkLWNlbGwnKSBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgY29uc3QgdHlwZSA9IGNlbGxEb20gJiYgY2VsbERvbS5nZXRBdHRyaWJ1dGUoJ3R5cGUnKSE7XG4gICAgICAgIGlmICh0eXBlICYmIERCTF9DTElDS19FRElUX1RZUEUuaW5jbHVkZXMoTnVtYmVyKHR5cGUpKSkge1xuICAgICAgICAgICAgdGhpcy5vcGVuRWRpdChjZWxsRG9tKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RWRpdG9yQ29tcG9uZW50KHR5cGU6IEFJVGFibGVGaWVsZFR5cGUpIHtcbiAgICAgICAgaWYgKHRoaXMuYWlGaWVsZFJlbmRlcmVycyAmJiB0aGlzLmFpRmllbGRSZW5kZXJlcnNbdHlwZV0pIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmFpRmllbGRSZW5kZXJlcnNbdHlwZV0hLmVkaXRvcjtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gR1JJRF9DRUxMX0VESVRPUl9NQVBbdHlwZV07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvcGVuRWRpdChjZWxsRG9tOiBIVE1MRWxlbWVudCkge1xuICAgICAgICBjb25zdCB7IHgsIHksIHdpZHRoLCBoZWlnaHQgfSA9IGNlbGxEb20uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IGZpZWxkSWQgPSBjZWxsRG9tLmdldEF0dHJpYnV0ZSgnZmllbGRJZCcpITtcbiAgICAgICAgY29uc3QgcmVjb3JkSWQgPSBjZWxsRG9tLmdldEF0dHJpYnV0ZSgncmVjb3JkSWQnKSE7XG4gICAgICAgIGNvbnN0IGZpZWxkID0gZ2V0UmVjb3JkT3JGaWVsZCh0aGlzLmFpVGFibGUuZmllbGRzLCBmaWVsZElkKSBhcyBTaWduYWw8QUlUYWJsZUZpZWxkPjtcbiAgICAgICAgY29uc3QgcmVjb3JkID0gZ2V0UmVjb3JkT3JGaWVsZCh0aGlzLmFpVGFibGUucmVjb3JkcywgcmVjb3JkSWQpIGFzIFNpZ25hbDxBSVRhYmxlUmVjb3JkPjtcbiAgICAgICAgY29uc3QgY29tcG9uZW50ID0gdGhpcy5nZXRFZGl0b3JDb21wb25lbnQoZmllbGQoKS50eXBlKTtcbiAgICAgICAgdGhpcy50aHlQb3BvdmVyLm9wZW4oY29tcG9uZW50LCB7XG4gICAgICAgICAgICBvcmlnaW46IGNlbGxEb20sXG4gICAgICAgICAgICBvcmlnaW5Qb3NpdGlvbjoge1xuICAgICAgICAgICAgICAgIHg6IHggLSAxLFxuICAgICAgICAgICAgICAgIHk6IHkgKyAxLFxuICAgICAgICAgICAgICAgIHdpZHRoOiB3aWR0aCArIDIsXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBoZWlnaHQgKyAyXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgd2lkdGg6IHdpZHRoICsgMiArICdweCcsXG4gICAgICAgICAgICBoZWlnaHQ6IGhlaWdodCArIDIgKyAncHgnLFxuICAgICAgICAgICAgcGxhY2VtZW50OiAndG9wJyxcbiAgICAgICAgICAgIG9mZnNldDogLShoZWlnaHQgKyA0KSxcbiAgICAgICAgICAgIGluaXRpYWxTdGF0ZToge1xuICAgICAgICAgICAgICAgIGZpZWxkOiBmaWVsZCxcbiAgICAgICAgICAgICAgICByZWNvcmQ6IHJlY29yZCxcbiAgICAgICAgICAgICAgICBhaVRhYmxlOiB0aGlzLmFpVGFibGVcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBwYW5lbENsYXNzOiAnZ3JpZC1jZWxsLWVkaXRvcicsXG4gICAgICAgICAgICBvdXRzaWRlQ2xvc2FibGU6IGZhbHNlLFxuICAgICAgICAgICAgaGFzQmFja2Ryb3A6IGZhbHNlLFxuICAgICAgICAgICAgbWFudWFsQ2xvc3VyZTogdHJ1ZSxcbiAgICAgICAgICAgIGFuaW1hdGlvbkRpc2FibGVkOiB0cnVlXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
94
+ }] });
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3NlcnZpY2VzL2V2ZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDeEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sVUFBVSxDQUFDOztBQUc1QyxNQUFNLE9BQU8sdUJBQXVCO0lBRHBDO1FBTUksbUJBQWMsR0FBRyxJQUFJLE9BQU8sRUFBYyxDQUFDO1FBRTNDLG9CQUFlLEdBQUcsSUFBSSxPQUFPLEVBQWMsQ0FBQztRQUU1QyxvQkFBZSxHQUFHLElBQUksT0FBTyxFQUFjLENBQUM7UUFFNUMsMEJBQXFCLEdBQUcsSUFBSSxPQUFPLEVBQWMsQ0FBQztRQUVsRCwwQkFBcUIsR0FBRyxJQUFJLE9BQU8sRUFBYyxDQUFDO1FBRTFDLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFaEMsZUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztLQWdGM0M7SUE5RUcsVUFBVSxDQUFDLE9BQWdCLEVBQUUsZ0JBQWlGO1FBQzFHLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztJQUM3QyxDQUFDO0lBRUQsY0FBYyxDQUFDLE9BQW9CO1FBQy9CLFNB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QUcsQ0FBQztnQkFDUixDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUM7Z0JBQ1IsS0FBSyxFQUFFLEtBQUssR0FBRyxDQUFDO2dCQUNoQixNQUFNLEVBQUUsTUFBTSxHQUFHLENBQUM7YUFDckI7WUFDRCxLQUFLLEVBQUUsS0FBSyxHQUFHLENBQUMsR0FBRyxJQUFJO1lBQ3ZCLE1BQU0sRUFBRSxNQUFNLEdBQUcsQ0FBQyxHQUFHLElBQUk7WUFDekIsU0FBUyxFQUFFLEtBQUs7WUFDaEIsTUFBTSxFQUFFLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1lBQ3JCLFFBQVEsRUFBRSxLQUFLO1lBQ2YsWUFBWSxFQUFFO2dCQUNWLEtBQUssRUFBRSxLQUFLO2dCQUNaLE1BQU0sRUFBRSxNQUFNO2dCQUNkLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTzthQUN4QjtZQUNELFVBQVUsRUFBRSxrQkFBa0I7WUFDOUIsZUFBZSxFQUFFLEtBQUs7WUFDdEIsV0FBVyxFQUFFLEtBQUs7WUFDbEIsYUFBYSxFQUFFLElBQUk7WUFDbkIsaUJBQWlCLEVBQUUsSUFBSTtZQUN2QixZQUFZLEVBQUUsSUFBSTtTQUNyQixDQUFDLENBQUM7UUFDSCxPQUFPLEdBQUcsQ0FBQztJQUNmLENBQUM7OEdBaEdRLHVCQUF1QjtrSEFBdkIsdUJBQXVCOzsyRkFBdkIsdUJBQXVCO2tCQURuQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVzdHJveVJlZiwgaW5qZWN0LCBJbmplY3RhYmxlLCBTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IFRoeVBvcG92ZXIgfSBmcm9tICduZ3gtdGV0aHlzL3BvcG92ZXInO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBmcm9tRXZlbnQsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEdSSURfQ0VMTF9FRElUT1JfTUFQIH0gZnJvbSAnLi4vY29uc3RhbnRzL2VkaXRvcic7XG5pbXBvcnQgeyBBSVRhYmxlLCBBSVRhYmxlRmllbGQsIEFJVGFibGVGaWVsZFR5cGUsIEFJVGFibGVSZWNvcmQgfSBmcm9tICcuLi9jb3JlJztcbmltcG9ydCB7IEFJVGFibGVHcmlkQ2VsbFJlbmRlclNjaGVtYSB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IGdldFJlY29yZE9yRmllbGQgfSBmcm9tICcuLi91dGlscyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBSVRhYmxlR3JpZEV2ZW50U2VydmljZSB7XG4gICAgYWlUYWJsZSE6IEFJVGFibGU7XG5cbiAgICBhaUZpZWxkUmVuZGVyZXJzPzogUGFydGlhbDxSZWNvcmQ8QUlUYWJsZUZpZWxkVHlwZSwgQUlUYWJsZUdyaWRDZWxsUmVuZGVyU2NoZW1hPj47XG5cbiAgICBkYmxDbGlja0V2ZW50JCA9IG5ldyBTdWJqZWN0PE1vdXNlRXZlbnQ+KCk7XG5cbiAgICBtb3VzZWRvd25FdmVudCQgPSBuZXcgU3ViamVjdDxNb3VzZUV2ZW50PigpO1xuXG4gICAgbW91c2VvdmVyRXZlbnQkID0gbmV3IFN1YmplY3Q8TW91c2VFdmVudD4oKTtcblxuICAgIGdsb2JhbE1vdXNlb3ZlckV2ZW50JCA9IG5ldyBTdWJqZWN0PE1vdXNlRXZlbnQ+KCk7XG5cbiAgICBnbG9iYWxNb3VzZWRvd25FdmVudCQgPSBuZXcgU3ViamVjdDxNb3VzZUV2ZW50PigpO1xuXG4gICAgcHJpdmF0ZSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXG4gICAgcHJpdmF0ZSB0aHlQb3BvdmVyID0gaW5qZWN0KFRoeVBvcG92ZXIpO1xuXG4gICAgaW5pdGlhbGl6ZShhaVRhYmxlOiBBSVRhYmxlLCBhaUZpZWxkUmVuZGVyZXJzPzogUGFydGlhbDxSZWNvcmQ8QUlUYWJsZUZpZWxkVHlwZSwgQUlUYWJsZUdyaWRDZWxsUmVuZGVyU2NoZW1hPj4pIHtcbiAgICAgICAgdGhpcy5haVRhYmxlID0gYWlUYWJsZTtcbiAgICAgICAgdGhpcy5haUZpZWxkUmVuZGVyZXJzID0gYWlGaWVsZFJlbmRlcmVycztcbiAgICB9XG5cbiAgICByZWdpc3RlckV2ZW50cyhlbGVtZW50OiBIVE1MRWxlbWVudCkge1xuICAgICAgICBmcm9tRXZlbnQ8TW91c2VFdmVudD4oZWxlbWVudCwgJ2RibGNsaWNrJylcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmRibENsaWNrRXZlbnQkLm5leHQoZXZlbnQpO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KGVsZW1lbnQsICdtb3VzZW92ZXInKVxuICAgICAgICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDgwKSwgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMubW91c2VvdmVyRXZlbnQkLm5leHQoZXZlbnQpO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KGRvY3VtZW50LCAnbW91c2VvdmVyJylcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmdsb2JhbE1vdXNlb3ZlckV2ZW50JC5uZXh0KGV2ZW50KTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIGZyb21FdmVudDxNb3VzZUV2ZW50PihlbGVtZW50LCAnbW91c2Vkb3duJylcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm1vdXNlZG93bkV2ZW50JC5uZXh0KGV2ZW50KTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIGZyb21FdmVudDxNb3VzZUV2ZW50Pihkb2N1bWVudCwgJ21vdXNlZG93bicpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5nbG9iYWxNb3VzZWRvd25FdmVudCQubmV4dChldmVudCBhcyBNb3VzZUV2ZW50KTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RWRpdG9yQ29tcG9uZW50KHR5cGU6IEFJVGFibGVGaWVsZFR5cGUpIHtcbiAgICAgICAgaWYgKHRoaXMuYWlGaWVsZFJlbmRlcmVycyAmJiB0aGlzLmFpRmllbGRSZW5kZXJlcnNbdHlwZV0pIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmFpRmllbGRSZW5kZXJlcnNbdHlwZV0hLmVkaXRvcjtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gR1JJRF9DRUxMX0VESVRPUl9NQVBbdHlwZV07XG4gICAgfVxuXG4gICAgb3BlbkVkaXQoY2VsbERvbTogSFRNTEVsZW1lbnQpIHtcbiAgICAgICAgY29uc3QgeyB4LCB5LCB3aWR0aCwgaGVpZ2h0IH0gPSBjZWxsRG9tLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCBmaWVsZElkID0gY2VsbERvbS5nZXRBdHRyaWJ1dGUoJ2ZpZWxkSWQnKSE7XG4gICAgICAgIGNvbnN0IHJlY29yZElkID0gY2VsbERvbS5nZXRBdHRyaWJ1dGUoJ3JlY29yZElkJykhO1xuICAgICAgICBjb25zdCBmaWVsZCA9IGdldFJlY29yZE9yRmllbGQodGhpcy5haVRhYmxlLmZpZWxkcywgZmllbGRJZCkgYXMgU2lnbmFsPEFJVGFibGVGaWVsZD47XG4gICAgICAgIGNvbnN0IHJlY29yZCA9IGdldFJlY29yZE9yRmllbGQodGhpcy5haVRhYmxlLnJlY29yZHMsIHJlY29yZElkKSBhcyBTaWduYWw8QUlUYWJsZVJlY29yZD47XG4gICAgICAgIGNvbnN0IGNvbXBvbmVudCA9IHRoaXMuZ2V0RWRpdG9yQ29tcG9uZW50KGZpZWxkKCkudHlwZSk7XG4gICAgICAgIGNvbnN0IHJlZiA9IHRoaXMudGh5UG9wb3Zlci5vcGVuKGNvbXBvbmVudCwge1xuICAgICAgICAgICAgb3JpZ2luOiBjZWxsRG9tLFxuICAgICAgICAgICAgb3JpZ2luUG9zaXRpb246IHtcbiAgICAgICAgICAgICAgICB4OiB4IC0gMSxcbiAgICAgICAgICAgICAgICB5OiB5ICsgMSxcbiAgICAgICAgICAgICAgICB3aWR0aDogd2lkdGggKyAyLFxuICAgICAgICAgICAgICAgIGhlaWdodDogaGVpZ2h0ICsgMlxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHdpZHRoOiB3aWR0aCArIDEgKyAncHgnLFxuICAgICAgICAgICAgaGVpZ2h0OiBoZWlnaHQgKyAyICsgJ3B4JyxcbiAgICAgICAgICAgIHBsYWNlbWVudDogJ3RvcCcsXG4gICAgICAgICAgICBvZmZzZXQ6IC0oaGVpZ2h0ICsgNCksXG4gICAgICAgICAgICBtaW5XaWR0aDogd2lkdGgsXG4gICAgICAgICAgICBpbml0aWFsU3RhdGU6IHtcbiAgICAgICAgICAgICAgICBmaWVsZDogZmllbGQsXG4gICAgICAgICAgICAgICAgcmVjb3JkOiByZWNvcmQsXG4gICAgICAgICAgICAgICAgYWlUYWJsZTogdGhpcy5haVRhYmxlXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcGFuZWxDbGFzczogJ2dyaWQtY2VsbC1lZGl0b3InLFxuICAgICAgICAgICAgb3V0c2lkZUNsb3NhYmxlOiBmYWxzZSxcbiAgICAgICAgICAgIGhhc0JhY2tkcm9wOiBmYWxzZSxcbiAgICAgICAgICAgIG1hbnVhbENsb3N1cmU6IHRydWUsXG4gICAgICAgICAgICBhbmltYXRpb25EaXNhYmxlZDogdHJ1ZSxcbiAgICAgICAgICAgIGF1dG9BZGFwdGl2ZTogdHJ1ZVxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHJlZjtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,72 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class AITableGridSelectionService {
4
+ constructor() { }
5
+ initialize(aiTable) {
6
+ this.aiTable = aiTable;
7
+ }
8
+ clearSelection() {
9
+ this.aiTable.selection.set({
10
+ selectedRecords: new Map(),
11
+ selectedFields: new Map(),
12
+ selectedCells: new Map()
13
+ });
14
+ }
15
+ selectCell(recordId, fieldId) {
16
+ this.clearSelection();
17
+ this.aiTable.selection().selectedCells.set(recordId, { [fieldId]: true });
18
+ }
19
+ selectField(fieldId) {
20
+ this.clearSelection();
21
+ this.aiTable.selection().selectedFields.set(fieldId, true);
22
+ }
23
+ selectRecord(recordId) {
24
+ if (this.aiTable.selection().selectedRecords.has(recordId)) {
25
+ this.aiTable.selection().selectedRecords.delete(recordId);
26
+ }
27
+ else {
28
+ this.aiTable.selection().selectedRecords.set(recordId, true);
29
+ }
30
+ this.aiTable.selection.set({
31
+ selectedRecords: this.aiTable.selection().selectedRecords,
32
+ selectedFields: new Map(),
33
+ selectedCells: new Map()
34
+ });
35
+ }
36
+ toggleSelectAll(checked) {
37
+ this.clearSelection();
38
+ if (checked) {
39
+ this.aiTable.records().forEach((item) => {
40
+ this.selectRecord(item._id);
41
+ });
42
+ }
43
+ }
44
+ updateSelect(event) {
45
+ const target = event?.target;
46
+ if (!target) {
47
+ return;
48
+ }
49
+ const cellDom = target.closest('.grid-cell');
50
+ const colDom = target.closest('.grid-field');
51
+ const checkbox = target.tagName === 'INPUT' && target.type === 'checkbox' && target.closest('.grid-checkbox');
52
+ const fieldAction = target.closest('.grid-field-action');
53
+ if (cellDom) {
54
+ const fieldId = cellDom.getAttribute('fieldId');
55
+ const recordId = cellDom.getAttribute('recordId');
56
+ fieldId && recordId && this.selectCell(recordId, fieldId);
57
+ }
58
+ if (colDom && !fieldAction) {
59
+ const fieldId = colDom.getAttribute('fieldId');
60
+ fieldId && this.selectField(fieldId);
61
+ }
62
+ if (!cellDom && !colDom && !checkbox) {
63
+ this.clearSelection();
64
+ }
65
+ }
66
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AITableGridSelectionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
67
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AITableGridSelectionService }); }
68
+ }
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AITableGridSelectionService, decorators: [{
70
+ type: Injectable
71
+ }], ctorParameters: () => [] });
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9zZXJ2aWNlcy9zZWxlY3Rpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUkzQyxNQUFNLE9BQU8sMkJBQTJCO0lBR3BDLGdCQUFlLENBQUM7SUFFaEIsVUFBVSxDQUFDLE9BQWdCO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQzNCLENBQUM7SUFFRCxjQUFjO1FBQ1YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDO1lBQ3ZCLGVBQWUsRUFBRSxJQUFJLEdBQUcsRUFBRTtZQUMxQixjQUFjLEVBQUUsSUFBSSxHQUFHLEVBQUU7WUFDekIsYUFBYSxFQUFFLElBQUksR0FBRyxFQUFFO1NBQzNCLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxVQUFVLENBQUMsUUFBZ0IsRUFBRSxPQUFlO1FBQ3hDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBZTtRQUN2QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsWUFBWSxDQUFDLFFBQWdCO1FBQ3pCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDekQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzlELENBQUM7YUFBTSxDQUFDO1lBQ0osSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNqRSxDQUFDO1FBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDO1lBQ3ZCLGVBQWUsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDLGVBQWU7WUFDekQsY0FBYyxFQUFFLElBQUksR0FBRyxFQUFFO1lBQ3pCLGFBQWEsRUFBRSxJQUFJLEdBQUcsRUFBRTtTQUMzQixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsZUFBZSxDQUFDLE9BQWdCO1FBQzVCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN0QixJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtnQkFDcEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDaEMsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDO0lBQ0wsQ0FBQztJQUVELFlBQVksQ0FBQyxLQUFpQjtRQUMxQixNQUFNLE1BQU0sR0FBRyxLQUFLLEVBQUUsTUFBcUIsQ0FBQztRQUM1QyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDVixPQUFPO1FBQ1gsQ0FBQztRQUNELE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDN0MsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM3QyxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsT0FBTyxLQUFLLE9BQU8sSUFBSyxNQUEyQixDQUFDLElBQUksS0FBSyxVQUFVLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3BJLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUN6RCxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1YsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNoRCxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ2xELE9BQU8sSUFBSSxRQUFRLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDOUQsQ0FBQztRQUNELElBQUksTUFBTSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDekIsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUMvQyxPQUFPLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN6QyxDQUFDO1FBQ0QsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ25DLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUMxQixDQUFDO0lBQ0wsQ0FBQzs4R0F0RVEsMkJBQTJCO2tIQUEzQiwyQkFBMkI7OzJGQUEzQiwyQkFBMkI7a0JBRHZDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBSVRhYmxlIH0gZnJvbSAnLi4vY29yZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBSVRhYmxlR3JpZFNlbGVjdGlvblNlcnZpY2Uge1xuICAgIGFpVGFibGUhOiBBSVRhYmxlO1xuXG4gICAgY29uc3RydWN0b3IoKSB7fVxuXG4gICAgaW5pdGlhbGl6ZShhaVRhYmxlOiBBSVRhYmxlKSB7XG4gICAgICAgIHRoaXMuYWlUYWJsZSA9IGFpVGFibGU7XG4gICAgfVxuXG4gICAgY2xlYXJTZWxlY3Rpb24oKSB7XG4gICAgICAgIHRoaXMuYWlUYWJsZS5zZWxlY3Rpb24uc2V0KHtcbiAgICAgICAgICAgIHNlbGVjdGVkUmVjb3JkczogbmV3IE1hcCgpLFxuICAgICAgICAgICAgc2VsZWN0ZWRGaWVsZHM6IG5ldyBNYXAoKSxcbiAgICAgICAgICAgIHNlbGVjdGVkQ2VsbHM6IG5ldyBNYXAoKVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBzZWxlY3RDZWxsKHJlY29yZElkOiBzdHJpbmcsIGZpZWxkSWQ6IHN0cmluZykge1xuICAgICAgICB0aGlzLmNsZWFyU2VsZWN0aW9uKCk7XG4gICAgICAgIHRoaXMuYWlUYWJsZS5zZWxlY3Rpb24oKS5zZWxlY3RlZENlbGxzLnNldChyZWNvcmRJZCwgeyBbZmllbGRJZF06IHRydWUgfSk7XG4gICAgfVxuXG4gICAgc2VsZWN0RmllbGQoZmllbGRJZDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuY2xlYXJTZWxlY3Rpb24oKTtcbiAgICAgICAgdGhpcy5haVRhYmxlLnNlbGVjdGlvbigpLnNlbGVjdGVkRmllbGRzLnNldChmaWVsZElkLCB0cnVlKTtcbiAgICB9XG5cbiAgICBzZWxlY3RSZWNvcmQocmVjb3JkSWQ6IHN0cmluZykge1xuICAgICAgICBpZiAodGhpcy5haVRhYmxlLnNlbGVjdGlvbigpLnNlbGVjdGVkUmVjb3Jkcy5oYXMocmVjb3JkSWQpKSB7XG4gICAgICAgICAgICB0aGlzLmFpVGFibGUuc2VsZWN0aW9uKCkuc2VsZWN0ZWRSZWNvcmRzLmRlbGV0ZShyZWNvcmRJZCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmFpVGFibGUuc2VsZWN0aW9uKCkuc2VsZWN0ZWRSZWNvcmRzLnNldChyZWNvcmRJZCwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5haVRhYmxlLnNlbGVjdGlvbi5zZXQoe1xuICAgICAgICAgICAgc2VsZWN0ZWRSZWNvcmRzOiB0aGlzLmFpVGFibGUuc2VsZWN0aW9uKCkuc2VsZWN0ZWRSZWNvcmRzLFxuICAgICAgICAgICAgc2VsZWN0ZWRGaWVsZHM6IG5ldyBNYXAoKSxcbiAgICAgICAgICAgIHNlbGVjdGVkQ2VsbHM6IG5ldyBNYXAoKVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICB0b2dnbGVTZWxlY3RBbGwoY2hlY2tlZDogYm9vbGVhbikge1xuICAgICAgICB0aGlzLmNsZWFyU2VsZWN0aW9uKCk7XG4gICAgICAgIGlmIChjaGVja2VkKSB7XG4gICAgICAgICAgICB0aGlzLmFpVGFibGUucmVjb3JkcygpLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdFJlY29yZChpdGVtLl9pZCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHVwZGF0ZVNlbGVjdChldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBjb25zdCB0YXJnZXQgPSBldmVudD8udGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xuICAgICAgICBpZiAoIXRhcmdldCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGNlbGxEb20gPSB0YXJnZXQuY2xvc2VzdCgnLmdyaWQtY2VsbCcpO1xuICAgICAgICBjb25zdCBjb2xEb20gPSB0YXJnZXQuY2xvc2VzdCgnLmdyaWQtZmllbGQnKTtcbiAgICAgICAgY29uc3QgY2hlY2tib3ggPSB0YXJnZXQudGFnTmFtZSA9PT0gJ0lOUFVUJyAmJiAodGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLnR5cGUgPT09ICdjaGVja2JveCcgJiYgdGFyZ2V0LmNsb3Nlc3QoJy5ncmlkLWNoZWNrYm94Jyk7XG4gICAgICAgIGNvbnN0IGZpZWxkQWN0aW9uID0gdGFyZ2V0LmNsb3Nlc3QoJy5ncmlkLWZpZWxkLWFjdGlvbicpO1xuICAgICAgICBpZiAoY2VsbERvbSkge1xuICAgICAgICAgICAgY29uc3QgZmllbGRJZCA9IGNlbGxEb20uZ2V0QXR0cmlidXRlKCdmaWVsZElkJyk7XG4gICAgICAgICAgICBjb25zdCByZWNvcmRJZCA9IGNlbGxEb20uZ2V0QXR0cmlidXRlKCdyZWNvcmRJZCcpO1xuICAgICAgICAgICAgZmllbGRJZCAmJiByZWNvcmRJZCAmJiB0aGlzLnNlbGVjdENlbGwocmVjb3JkSWQsIGZpZWxkSWQpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjb2xEb20gJiYgIWZpZWxkQWN0aW9uKSB7XG4gICAgICAgICAgICBjb25zdCBmaWVsZElkID0gY29sRG9tLmdldEF0dHJpYnV0ZSgnZmllbGRJZCcpO1xuICAgICAgICAgICAgZmllbGRJZCAmJiB0aGlzLnNlbGVjdEZpZWxkKGZpZWxkSWQpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghY2VsbERvbSAmJiAhY29sRG9tICYmICFjaGVja2JveCkge1xuICAgICAgICAgICAgdGhpcy5jbGVhclNlbGVjdGlvbigpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy90eXBlcy9maWVsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudFJlZiwgU2lnbmFsLCBXcml0YWJsZVNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQUlUYWJsZSwgQUlUYWJsZUZpZWxkIH0gZnJvbSAnLi4vY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZUZpZWxkTWVudSB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBuYW1lPzogc3RyaW5nO1xuICAgIGljb24/OiBzdHJpbmc7XG4gICAgZXhlYz86IChhaVRhYmxlOiBBSVRhYmxlLCBmaWVsZDogV3JpdGFibGVTaWduYWw8QUlUYWJsZUZpZWxkPiwgb3JpZ2luPzogSFRNTEVsZW1lbnQgfCBFbGVtZW50UmVmPGFueT4pID0+IHZvaWQ7XG4gICAgaGlkZGVuPzogKGFpVGFibGU6IEFJVGFibGUsIGZpZWxkOiBTaWduYWw8QUlUYWJsZUZpZWxkPikgPT4gYm9vbGVhbjtcbiAgICBkaXNhYmxlZD86IChhaVRhYmxlOiBBSVRhYmxlLCBmaWVsZDogU2lnbmFsPEFJVGFibGVGaWVsZD4pID0+IGJvb2xlYW47XG59XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy90eXBlcy9maWVsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudFJlZiwgU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBSVRhYmxlLCBBSVRhYmxlRmllbGQgfSBmcm9tICcuLi9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlRmllbGRNZW51SXRlbSB7XG4gICAgdHlwZTogc3RyaW5nO1xuICAgIG5hbWU/OiBzdHJpbmc7XG4gICAgaWNvbj86IHN0cmluZztcbiAgICBleGVjPzogKGFpVGFibGU6IEFJVGFibGUsIGZpZWxkOiBTaWduYWw8QUlUYWJsZUZpZWxkPiwgb3JpZ2luPzogSFRNTEVsZW1lbnQgfCBFbGVtZW50UmVmPGFueT4pID0+IHZvaWQ7XG4gICAgaGlkZGVuPzogKGFpVGFibGU6IEFJVGFibGUsIGZpZWxkOiBTaWduYWw8QUlUYWJsZUZpZWxkPikgPT4gYm9vbGVhbjtcbiAgICBkaXNhYmxlZD86IChhaVRhYmxlOiBBSVRhYmxlLCBmaWVsZDogU2lnbmFsPEFJVGFibGVGaWVsZD4pID0+IGJvb2xlYW47XG59XG4iXX0=
@@ -1,8 +1,2 @@
1
- export var AITableRowHeight;
2
- (function (AITableRowHeight) {
3
- AITableRowHeight[AITableRowHeight["Short"] = 1] = "Short";
4
- AITableRowHeight[AITableRowHeight["Medium"] = 2] = "Medium";
5
- AITableRowHeight[AITableRowHeight["Tall"] = 3] = "Tall";
6
- AITableRowHeight[AITableRowHeight["ExtraTall"] = 4] = "ExtraTall";
7
- })(AITableRowHeight || (AITableRowHeight = {}));
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3R5cGVzL2dyaWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxDQUFOLElBQVksZ0JBS1g7QUFMRCxXQUFZLGdCQUFnQjtJQUN4Qix5REFBUyxDQUFBO0lBQ1QsMkRBQVUsQ0FBQTtJQUNWLHVEQUFRLENBQUE7SUFDUixpRUFBYSxDQUFBO0FBQ2pCLENBQUMsRUFMVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBSzNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUlUYWJsZUZpZWxkLCBBSVRhYmxlRmllbGRUeXBlLCBBSVRhYmxlUmVjb3JkIH0gZnJvbSAnLi4vY29yZSc7XG5pbXBvcnQgeyBBSVRhYmxlRmllbGRNZW51IH0gZnJvbSAnLi9maWVsZCc7XG5cbmV4cG9ydCBlbnVtIEFJVGFibGVSb3dIZWlnaHQge1xuICAgIFNob3J0ID0gMSxcbiAgICBNZWRpdW0gPSAyLFxuICAgIFRhbGwgPSAzLFxuICAgIEV4dHJhVGFsbCA9IDRcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlR3JpZENlbGxSZW5kZXJTY2hlbWEge1xuICAgIGVkaXRvcjogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVHcmlkRGF0YSB7XG4gICAgdHlwZTogJ2dyaWQnO1xuICAgIGZpZWxkczogQUlUYWJsZUZpZWxkW107XG4gICAgcmVjb3JkczogQUlUYWJsZVJlY29yZFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJRmllbGRDb25maWcge1xuICAgIGZpZWxkUmVuZGVyZXJzPzogUGFydGlhbDxSZWNvcmQ8QUlUYWJsZUZpZWxkVHlwZSwgQUlUYWJsZUdyaWRDZWxsUmVuZGVyU2NoZW1hPj47XG4gICAgZmllbGRQcm9wZXJ0eUVkaXRvcj86IGFueTtcbiAgICBmaWVsZE1lbnVzPzogQUlUYWJsZUZpZWxkTWVudVtdO1xufVxuXG5cbiJdfQ==
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3R5cGVzL2dyaWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFJVGFibGVGaWVsZCwgQUlUYWJsZUZpZWxkVHlwZSwgQUlUYWJsZVJlY29yZCB9IGZyb20gJy4uL2NvcmUnO1xuaW1wb3J0IHsgQUlUYWJsZUZpZWxkTWVudUl0ZW0gfSBmcm9tICcuL2ZpZWxkJztcblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlR3JpZENlbGxSZW5kZXJTY2hlbWEge1xuICAgIGVkaXRvcjogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVHcmlkRGF0YSB7XG4gICAgdHlwZTogJ2dyaWQnO1xuICAgIGZpZWxkczogQUlUYWJsZUZpZWxkW107XG4gICAgcmVjb3JkczogQUlUYWJsZVJlY29yZFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVTZWxlY3Rpb24ge1xuICAgIHNlbGVjdGVkUmVjb3JkczogTWFwPHN0cmluZywgYm9vbGVhbj47XG4gICAgc2VsZWN0ZWRGaWVsZHM6IE1hcDxzdHJpbmcsIGJvb2xlYW4+O1xuICAgIHNlbGVjdGVkQ2VsbHM6IE1hcDxzdHJpbmcsIHt9Pjtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgQUlGaWVsZENvbmZpZyB7XG4gICAgZmllbGRSZW5kZXJlcnM/OiBQYXJ0aWFsPFJlY29yZDxBSVRhYmxlRmllbGRUeXBlLCBBSVRhYmxlR3JpZENlbGxSZW5kZXJTY2hlbWE+PjtcbiAgICBmaWVsZFByb3BlcnR5RWRpdG9yPzogYW55O1xuICAgIGZpZWxkTWVudXM/OiBBSVRhYmxlRmllbGRNZW51SXRlbVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVVc2VySW5mbyB7XG4gICAgdWlkPzogc3RyaW5nO1xuICAgIGRpc3BsYXlfbmFtZT86IHN0cmluZztcbiAgICBhdmF0YXI/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZVJlZmVyZW5jZXMge1xuICAgIG1lbWJlcnM6IEFJVGFibGVVc2VySW5mb1tdO1xufVxuIl19
@@ -1,9 +1,44 @@
1
- ;
2
- export const buildGridData = (recordValue, fieldsValue) => {
1
+ import { createDraft, finishDraft } from 'immer';
2
+ import { AITableFieldType, FieldsMap } from '../core';
3
+ export const buildGridData = (recordValue, fieldsValue, references) => {
4
+ const fields = fieldsValue.map((item) => {
5
+ return {
6
+ ...item,
7
+ icon: item.icon || FieldsMap[item.type].icon,
8
+ width: item.width || FieldsMap[item.type].width
9
+ };
10
+ });
11
+ let records = buildRecordsByReferences(recordValue, fieldsValue, references);
3
12
  return {
4
13
  type: 'grid',
5
- fields: fieldsValue,
6
- records: recordValue
14
+ fields,
15
+ records
7
16
  };
8
17
  };
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy91dGlscy9idWlsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBeUQsQ0FBQztBQUcxRCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FBQyxXQUEyQixFQUFFLFdBQTBCLEVBQW1CLEVBQUU7SUFDdEcsT0FBTztRQUNILElBQUksRUFBRSxNQUFNO1FBQ1osTUFBTSxFQUFFLFdBQVc7UUFDbkIsT0FBTyxFQUFFLFdBQVc7S0FDdkIsQ0FBQztBQUNOLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFJVGFibGVGaWVsZHMsIEFJVGFibGVSZWNvcmRzIH0gIGZyb20gJy4uL2NvcmUnOztcbmltcG9ydCB7IEFJVGFibGVHcmlkRGF0YSB9IGZyb20gJy4uL3R5cGVzJztcblxuZXhwb3J0IGNvbnN0IGJ1aWxkR3JpZERhdGEgPSAocmVjb3JkVmFsdWU6IEFJVGFibGVSZWNvcmRzLCBmaWVsZHNWYWx1ZTogQUlUYWJsZUZpZWxkcyk6IEFJVGFibGVHcmlkRGF0YSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgdHlwZTogJ2dyaWQnLFxuICAgICAgICBmaWVsZHM6IGZpZWxkc1ZhbHVlLFxuICAgICAgICByZWNvcmRzOiByZWNvcmRWYWx1ZVxuICAgIH07XG59O1xuIl19
18
+ export function buildRecordsByReferences(records, fields, references) {
19
+ if (!references) {
20
+ return records;
21
+ }
22
+ const memberFields = fields.filter((field) => [AITableFieldType.createdBy, AITableFieldType.updatedBy, AITableFieldType.member].includes(field.type));
23
+ if (memberFields.length) {
24
+ const uidToMember = references.members.reduce((map, member) => {
25
+ map[member.uid] = member;
26
+ return map;
27
+ }, {});
28
+ const draftRecords = createDraft(records);
29
+ draftRecords.forEach((record) => {
30
+ memberFields.forEach((field) => {
31
+ const value = record.values[field._id];
32
+ if (field.isMultiple) {
33
+ record.values[field._id] = value.map((uid) => uidToMember[uid]).filter(Boolean);
34
+ }
35
+ else {
36
+ record.values[field._id] = uidToMember[value] || {};
37
+ }
38
+ });
39
+ });
40
+ records = finishDraft(draftRecords);
41
+ }
42
+ return records;
43
+ }
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy91dGlscy9idWlsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUNqRCxPQUFPLEVBQWlCLGdCQUFnQixFQUFrQixTQUFTLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFHckYsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLENBQ3pCLFdBQTJCLEVBQzNCLFdBQTBCLEVBQzFCLFVBQThCLEVBQ2YsRUFBRTtJQUNqQixNQUFNLE1BQU0sR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7UUFDcEMsT0FBTztZQUNILEdBQUcsSUFBSTtZQUNQLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxJQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSTtZQUM1QyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUs7U0FDbEQsQ0FBQztJQUNOLENBQUMsQ0FBQyxDQUFDO0lBQ0gsSUFBSSxPQUFPLEdBQUcsd0JBQXdCLENBQUMsV0FBVyxFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUM3RSxPQUFPO1FBQ0gsSUFBSSxFQUFFLE1BQU07UUFDWixNQUFNO1FBQ04sT0FBTztLQUNWLENBQUM7QUFDTixDQUFDLENBQUM7QUFFRixNQUFNLFVBQVUsd0JBQXdCLENBQUMsT0FBdUIsRUFBRSxNQUFxQixFQUFFLFVBQThCO0lBQ25ILElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNkLE9BQU8sT0FBTyxDQUFDO0lBQ25CLENBQUM7SUFDRCxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDekMsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQ3pHLENBQUM7SUFDRixJQUFJLFlBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN0QixNQUFNLFdBQVcsR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FDekMsQ0FBQyxHQUEyQixFQUFFLE1BQXVCLEVBQUUsRUFBRTtZQUNyRCxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQztZQUMxQixPQUFPLEdBQUcsQ0FBQztRQUNmLENBQUMsRUFDRCxFQUFxQyxDQUN4QyxDQUFDO1FBQ0YsTUFBTSxZQUFZLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUM1QixZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQzNCLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUN2QyxJQUFJLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztvQkFDbkIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQVcsRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUM1RixDQUFDO3FCQUFNLENBQUM7b0JBQ0osTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsV0FBVyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDeEQsQ0FBQztZQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLEdBQUcsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFDRCxPQUFPLE9BQU8sQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlRHJhZnQsIGZpbmlzaERyYWZ0IH0gZnJvbSAnaW1tZXInO1xuaW1wb3J0IHsgQUlUYWJsZUZpZWxkcywgQUlUYWJsZUZpZWxkVHlwZSwgQUlUYWJsZVJlY29yZHMsIEZpZWxkc01hcCB9IGZyb20gJy4uL2NvcmUnO1xuaW1wb3J0IHsgQUlUYWJsZUdyaWREYXRhLCBBSVRhYmxlUmVmZXJlbmNlcywgQUlUYWJsZVNlbGVjdGlvbiwgQUlUYWJsZVVzZXJJbmZvIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgYnVpbGRHcmlkRGF0YSA9IChcbiAgICByZWNvcmRWYWx1ZTogQUlUYWJsZVJlY29yZHMsXG4gICAgZmllbGRzVmFsdWU6IEFJVGFibGVGaWVsZHMsXG4gICAgcmVmZXJlbmNlcz86IEFJVGFibGVSZWZlcmVuY2VzXG4pOiBBSVRhYmxlR3JpZERhdGEgPT4ge1xuICAgIGNvbnN0IGZpZWxkcyA9IGZpZWxkc1ZhbHVlLm1hcCgoaXRlbSkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4uaXRlbSxcbiAgICAgICAgICAgIGljb246IGl0ZW0uaWNvbiB8fCBGaWVsZHNNYXBbaXRlbS50eXBlXS5pY29uLFxuICAgICAgICAgICAgd2lkdGg6IGl0ZW0ud2lkdGggfHwgRmllbGRzTWFwW2l0ZW0udHlwZV0ud2lkdGhcbiAgICAgICAgfTtcbiAgICB9KTtcbiAgICBsZXQgcmVjb3JkcyA9IGJ1aWxkUmVjb3Jkc0J5UmVmZXJlbmNlcyhyZWNvcmRWYWx1ZSwgZmllbGRzVmFsdWUsIHJlZmVyZW5jZXMpO1xuICAgIHJldHVybiB7XG4gICAgICAgIHR5cGU6ICdncmlkJyxcbiAgICAgICAgZmllbGRzLFxuICAgICAgICByZWNvcmRzXG4gICAgfTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBidWlsZFJlY29yZHNCeVJlZmVyZW5jZXMocmVjb3JkczogQUlUYWJsZVJlY29yZHMsIGZpZWxkczogQUlUYWJsZUZpZWxkcywgcmVmZXJlbmNlcz86IEFJVGFibGVSZWZlcmVuY2VzKSB7XG4gICAgaWYgKCFyZWZlcmVuY2VzKSB7XG4gICAgICAgIHJldHVybiByZWNvcmRzO1xuICAgIH1cbiAgICBjb25zdCBtZW1iZXJGaWVsZHMgPSBmaWVsZHMuZmlsdGVyKChmaWVsZCkgPT5cbiAgICAgICAgW0FJVGFibGVGaWVsZFR5cGUuY3JlYXRlZEJ5LCBBSVRhYmxlRmllbGRUeXBlLnVwZGF0ZWRCeSwgQUlUYWJsZUZpZWxkVHlwZS5tZW1iZXJdLmluY2x1ZGVzKGZpZWxkLnR5cGUpXG4gICAgKTtcbiAgICBpZiAobWVtYmVyRmllbGRzLmxlbmd0aCkge1xuICAgICAgICBjb25zdCB1aWRUb01lbWJlciA9IHJlZmVyZW5jZXMubWVtYmVycy5yZWR1Y2UoXG4gICAgICAgICAgICAobWFwOiB7IFtrZXk6IHN0cmluZ106IGFueSB9LCBtZW1iZXI6IEFJVGFibGVVc2VySW5mbykgPT4ge1xuICAgICAgICAgICAgICAgIG1hcFttZW1iZXIudWlkIV0gPSBtZW1iZXI7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG1hcDtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7fSBhcyBSZWNvcmQ8c3RyaW5nLCBBSVRhYmxlVXNlckluZm8+XG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IGRyYWZ0UmVjb3JkcyA9IGNyZWF0ZURyYWZ0KHJlY29yZHMpO1xuICAgICAgICBkcmFmdFJlY29yZHMuZm9yRWFjaCgocmVjb3JkKSA9PiB7XG4gICAgICAgICAgICBtZW1iZXJGaWVsZHMuZm9yRWFjaCgoZmllbGQpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHJlY29yZC52YWx1ZXNbZmllbGQuX2lkXTtcbiAgICAgICAgICAgICAgICBpZiAoZmllbGQuaXNNdWx0aXBsZSkge1xuICAgICAgICAgICAgICAgICAgICByZWNvcmQudmFsdWVzW2ZpZWxkLl9pZF0gPSB2YWx1ZS5tYXAoKHVpZDogc3RyaW5nKSA9PiB1aWRUb01lbWJlclt1aWRdKS5maWx0ZXIoQm9vbGVhbik7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmVjb3JkLnZhbHVlc1tmaWVsZC5faWRdID0gdWlkVG9NZW1iZXJbdmFsdWVdIHx8IHt9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgcmVjb3JkcyA9IGZpbmlzaERyYWZ0KGRyYWZ0UmVjb3Jkcyk7XG4gICAgfVxuICAgIHJldHVybiByZWNvcmRzO1xufVxuIl19
@@ -1,7 +1,7 @@
1
1
  import { computed } from '@angular/core';
2
- export function getRecordOrField(value, id) {
2
+ export function getRecordOrField(value, _id) {
3
3
  return computed(() => {
4
- return value().find((item) => item.id === id);
4
+ return value().find((item) => item._id === _id);
5
5
  });
6
6
  }
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3V0aWxzL2NlbGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUdqRCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsS0FBNkMsRUFBRSxFQUFVO0lBQ3RGLE9BQU8sUUFBUSxDQUFDLEdBQUcsRUFBRTtRQUNqQixPQUFPLEtBQUssRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUUsQ0FBQztJQUNuRCxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb21wdXRlZCwgU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBSVRhYmxlRmllbGQsIEFJVGFibGVGaWVsZHMsIEFJVGFibGVSZWNvcmQsIEFJVGFibGVSZWNvcmRzIH0gZnJvbSAnLi4vY29yZSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRSZWNvcmRPckZpZWxkKHZhbHVlOiBTaWduYWw8QUlUYWJsZVJlY29yZHMgfCBBSVRhYmxlRmllbGRzPiwgaWQ6IHN0cmluZyk6IFNpZ25hbDxBSVRhYmxlRmllbGQgfCBBSVRhYmxlUmVjb3JkPiB7XG4gICAgcmV0dXJuIGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgcmV0dXJuIHZhbHVlKCkuZmluZCgoaXRlbSkgPT4gaXRlbS5pZCA9PT0gaWQpITtcbiAgICB9KTtcbn1cbiJdfQ==
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3V0aWxzL2NlbGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUdqRCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsS0FBNkMsRUFBRSxHQUFXO0lBQ3ZGLE9BQU8sUUFBUSxDQUFDLEdBQUcsRUFBRTtRQUNqQixPQUFPLEtBQUssRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxHQUFHLENBQUUsQ0FBQztJQUNyRCxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb21wdXRlZCwgU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBSVRhYmxlRmllbGQsIEFJVGFibGVGaWVsZHMsIEFJVGFibGVSZWNvcmQsIEFJVGFibGVSZWNvcmRzIH0gZnJvbSAnLi4vY29yZSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRSZWNvcmRPckZpZWxkKHZhbHVlOiBTaWduYWw8QUlUYWJsZVJlY29yZHMgfCBBSVRhYmxlRmllbGRzPiwgX2lkOiBzdHJpbmcpOiBTaWduYWw8QUlUYWJsZUZpZWxkIHwgQUlUYWJsZVJlY29yZD4ge1xuICAgIHJldHVybiBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiB2YWx1ZSgpLmZpbmQoKGl0ZW0pID0+IGl0ZW0uX2lkID09PSBfaWQpITtcbiAgICB9KTtcbn1cbiJdfQ==