@ai-table/state 0.0.8 → 0.0.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (76) hide show
  1. package/esm2022/public-api.mjs +2 -1
  2. package/esm2022/shared/to-table/array-event.mjs +45 -15
  3. package/esm2022/shared/to-table/index.mjs +8 -8
  4. package/esm2022/shared/to-yjs/add-node.mjs +21 -10
  5. package/esm2022/shared/to-yjs/index.mjs +3 -1
  6. package/esm2022/shared/to-yjs/remove-node.mjs +21 -10
  7. package/esm2022/types/view.mjs +28 -25
  8. package/esm2022/utils/build.mjs +16 -0
  9. package/esm2022/utils/common.mjs +11 -0
  10. package/esm2022/utils/field/date.mjs +56 -0
  11. package/esm2022/utils/field/field.mjs +32 -0
  12. package/esm2022/utils/field/index.mjs +22 -0
  13. package/esm2022/utils/field/number.mjs +28 -0
  14. package/esm2022/utils/field/rate.mjs +20 -0
  15. package/esm2022/utils/field/select.mjs +33 -0
  16. package/esm2022/utils/field/text.mjs +21 -0
  17. package/esm2022/utils/filter-records.mjs +52 -0
  18. package/esm2022/utils/index.mjs +6 -0
  19. package/esm2022/utils/view.mjs +69 -0
  20. package/esm2022/view/action/general.mjs +89 -5
  21. package/esm2022/view/action/index.mjs +2 -1
  22. package/esm2022/view/action/position.mjs +21 -0
  23. package/esm2022/view/action/view.mjs +4 -4
  24. package/esm2022/view/constants/view.mjs +3 -2
  25. package/esm2022/view/plugins/view.plugin.mjs +15 -6
  26. package/fesm2022/ai-table-state.mjs +565 -67
  27. package/fesm2022/ai-table-state.mjs.map +1 -1
  28. package/package.json +1 -1
  29. package/public-api.d.ts +1 -0
  30. package/public-api.d.ts.map +1 -1
  31. package/shared/to-table/array-event.d.ts +3 -2
  32. package/shared/to-table/array-event.d.ts.map +1 -1
  33. package/shared/to-table/index.d.ts +3 -3
  34. package/shared/to-table/index.d.ts.map +1 -1
  35. package/shared/to-yjs/add-node.d.ts +2 -2
  36. package/shared/to-yjs/add-node.d.ts.map +1 -1
  37. package/shared/to-yjs/index.d.ts.map +1 -1
  38. package/shared/to-yjs/remove-node.d.ts +2 -2
  39. package/shared/to-yjs/remove-node.d.ts.map +1 -1
  40. package/types/view.d.ts +32 -14
  41. package/types/view.d.ts.map +1 -1
  42. package/utils/build.d.ts +5 -0
  43. package/utils/build.d.ts.map +1 -0
  44. package/utils/common.d.ts +2 -0
  45. package/utils/common.d.ts.map +1 -0
  46. package/utils/field/date.d.ts +8 -0
  47. package/utils/field/date.d.ts.map +1 -0
  48. package/utils/field/field.d.ts +8 -0
  49. package/utils/field/field.d.ts.map +1 -0
  50. package/utils/field/index.d.ts +4 -0
  51. package/utils/field/index.d.ts.map +1 -0
  52. package/utils/field/number.d.ts +7 -0
  53. package/utils/field/number.d.ts.map +1 -0
  54. package/utils/field/rate.d.ts +7 -0
  55. package/utils/field/rate.d.ts.map +1 -0
  56. package/utils/field/select.d.ts +7 -0
  57. package/utils/field/select.d.ts.map +1 -0
  58. package/utils/field/text.d.ts +8 -0
  59. package/utils/field/text.d.ts.map +1 -0
  60. package/utils/filter-records.d.ts +5 -0
  61. package/utils/filter-records.d.ts.map +1 -0
  62. package/utils/index.d.ts +6 -0
  63. package/utils/index.d.ts.map +1 -0
  64. package/utils/view.d.ts +6 -0
  65. package/utils/view.d.ts.map +1 -0
  66. package/view/action/general.d.ts +9 -1
  67. package/view/action/general.d.ts.map +1 -1
  68. package/view/action/index.d.ts +1 -0
  69. package/view/action/index.d.ts.map +1 -1
  70. package/view/action/position.d.ts +8 -0
  71. package/view/action/position.d.ts.map +1 -0
  72. package/view/action/view.d.ts +4 -3
  73. package/view/action/view.d.ts.map +1 -1
  74. package/view/constants/view.d.ts +2 -1
  75. package/view/constants/view.d.ts.map +1 -1
  76. package/view/plugins/view.plugin.d.ts.map +1 -1
@@ -3,4 +3,5 @@ export * from './types';
3
3
  export * from './view/action';
4
4
  export * from './view/plugins/view.plugin';
5
5
  export * from './view/constants/view';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL3N0YXRlL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2hhcmVkJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi92aWV3L2FjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3ZpZXcvcGx1Z2lucy92aWV3LnBsdWdpbic7XG5leHBvcnQgKiBmcm9tICcuL3ZpZXcvY29uc3RhbnRzL3ZpZXcnO1xuIl19
6
+ export * from './utils';
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL3N0YXRlL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2hhcmVkJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi92aWV3L2FjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3ZpZXcvcGx1Z2lucy92aWV3LnBsdWdpbic7XG5leHBvcnQgKiBmcm9tICcuL3ZpZXcvY29uc3RhbnRzL3ZpZXcnO1xuZXhwb3J0ICogZnJvbSAnLi91dGlscyc7Il19
@@ -1,16 +1,17 @@
1
1
  import { ActionName, AITableQueries } from '@ai-table/grid';
2
2
  import * as Y from 'yjs';
3
3
  import { isArray } from 'ngx-tethys/util';
4
- import { ViewActionName } from '../../types';
4
+ import { PositionActionName, ViewActionName } from '../../types';
5
5
  import { translatePositionToPath, getShareTypeNumberPath } from '../utils';
6
6
  import { getSharedMapValueId, getSharedRecordId, translateToRecordValues } from '../utils/translate';
7
- export default function translateArrayEvent(aiTable, activeViewId, sharedType, event) {
7
+ export default function translateArrayEvent(aiTable, sharedType, event) {
8
8
  let offset = 0;
9
9
  let targetPath = getShareTypeNumberPath(event.path);
10
10
  const isRecordsTranslate = event.path.includes('records');
11
11
  const isFieldsTranslate = event.path.includes('fields');
12
12
  const isViewsTranslate = event.path.includes('views');
13
13
  const actions = [];
14
+ const activeViewId = aiTable.activeViewId();
14
15
  event.changes.delta.forEach((delta) => {
15
16
  if ('retain' in delta) {
16
17
  offset += delta.retain ?? 0;
@@ -61,21 +62,47 @@ export default function translateArrayEvent(aiTable, activeViewId, sharedType, e
61
62
  }
62
63
  else {
63
64
  try {
65
+ const sharedRecords = sharedType.get('records');
66
+ const sharedFields = sharedType.get('fields');
64
67
  delta.insert?.map((item) => {
65
68
  const recordIndex = targetPath[0];
66
69
  const fieldIndex = offset;
67
- const recordId = getSharedRecordId(sharedType.get('records'), recordIndex);
68
- const fieldId = getSharedMapValueId(sharedType.get('fields'), fieldIndex);
69
- const path = [recordId, fieldId];
70
- const fieldValue = AITableQueries.getFieldValue(aiTable, path);
71
- // To exclude insert triggered by field inserts.
72
- if (fieldValue !== item) {
73
- actions.push({
74
- type: ActionName.UpdateFieldValue,
75
- path,
76
- fieldValue,
77
- newFieldValue: item
78
- });
70
+ const record = aiTable.records()[recordIndex];
71
+ if (isPositionOperation(fieldIndex, sharedFields)) {
72
+ for (const key in item) {
73
+ if (!record.positions[key] && record.positions[key] !== 0) {
74
+ actions.push({
75
+ type: PositionActionName.AddRecordPosition,
76
+ path: [record._id],
77
+ position: {
78
+ [key]: item[key]
79
+ }
80
+ });
81
+ }
82
+ }
83
+ for (const key in record.positions) {
84
+ if (!item[key] && item[key] !== 0) {
85
+ actions.push({
86
+ type: PositionActionName.RemoveRecordPosition,
87
+ path: [key, record._id]
88
+ });
89
+ }
90
+ }
91
+ }
92
+ else {
93
+ const recordId = getSharedRecordId(sharedRecords, recordIndex);
94
+ const fieldId = getSharedMapValueId(sharedFields, fieldIndex);
95
+ const path = [recordId, fieldId];
96
+ const fieldValue = AITableQueries.getFieldValue(aiTable, path);
97
+ // To exclude insert triggered by field inserts.
98
+ if (fieldValue !== item) {
99
+ actions.push({
100
+ type: ActionName.UpdateFieldValue,
101
+ path,
102
+ fieldValue,
103
+ newFieldValue: item
104
+ });
105
+ }
79
106
  }
80
107
  });
81
108
  }
@@ -111,6 +138,9 @@ export default function translateArrayEvent(aiTable, activeViewId, sharedType, e
111
138
  export function isAddOrRemove(targetPath) {
112
139
  return targetPath.length === 0;
113
140
  }
141
+ export function isPositionOperation(fieldIndex, sharedFields) {
142
+ return fieldIndex === sharedFields.length;
143
+ }
114
144
  export function getRemoveIds(event, type) {
115
145
  const ids = [];
116
146
  if (!type) {
@@ -133,4 +163,4 @@ export function getRemoveIds(event, type) {
133
163
  });
134
164
  return ids;
135
165
  }
136
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdGF0ZS9zcmMvc2hhcmVkL3RvLXRhYmxlL2FycmF5LWV2ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQThFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hJLE9BQU8sS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDO0FBQ3pCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBU0gsY0FBYyxFQUNqQixNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDM0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLHVCQUF1QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFckcsTUFBTSxDQUFDLE9BQU8sVUFBVSxtQkFBbUIsQ0FBQyxPQUFvQixFQUFFLFlBQW9CLEVBQUUsVUFBc0IsRUFBRSxLQUFvQjtJQUNoSSxJQUFJLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDZixJQUFJLFVBQVUsR0FBRyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEQsTUFBTSxrQkFBa0IsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMxRCxNQUFNLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3hELE1BQU0sZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdEQsTUFBTSxPQUFPLEdBQTBCLEVBQUUsQ0FBQztJQUUxQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMs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LENBQUMsQ0FBQztZQUN6RCxDQUFDO1lBQ0QsSUFBSSxJQUFJLEtBQUssVUFBVSxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUNuQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUMxQyxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztvQkFDbEMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2xDLENBQUM7WUFDTCxDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUMsQ0FDSixDQUFDO0lBQ0YsT0FBTyxHQUFHLENBQUM7QUFDZixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aW9uTmFtZSwgQUlGaWVsZElkUGF0aCwgQUlGaWVsZFBhdGgsIEFJRmllbGRWYWx1ZUlkUGF0aCwgQUlSZWNvcmRQYXRoLCBBSVRhYmxlRmllbGQsIEFJVGFibGVRdWVyaWVzIH0gZnJvbSAnQGFpLXRhYmxlL2dyaWQnO1xuaW1wb3J0ICogYXMgWSBmcm9tICd5anMnO1xuaW1wb3J0IHsgaXNBcnJheSB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5pbXBvcnQge1xuICAgIEFJVGFibGVTaGFyZWRBY3Rpb24sXG4gICAgQUlUYWJsZVZpZXcsXG4gICAgQUlUYWJsZVZpZXdGaWVsZHMsXG4gICAgQUlUYWJsZVZpZXdSZWNvcmRzLFxuICAgIEFJVmlld1RhYmxlLFxuICAgIFNoYXJlZFR5cGUsXG4gICAgU3luY0FycmF5RWxlbWVudCxcbiAgICBTeW5jTWFwRWxlbWVudCxcbiAgICBWaWV3QWN0aW9uTmFtZVxufSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyB0cmFuc2xhdGVQb3NpdGlvblRvUGF0aCwgZ2V0U2hhcmVUeXBlTnVtYmVyUGF0aCB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IGdldFNoYXJlZE1hcFZhbHVlSWQsIGdldFNoYXJlZFJlY29yZElkLCB0cmFuc2xhdGVUb1JlY29yZFZhbHVlcyB9IGZyb20gJy4uL3V0aWxzL3RyYW5zbGF0ZSc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHRyYW5zbGF0ZUFycmF5RXZlbnQoYWlUYWJsZTogQUlWaWV3VGFibGUsIGFjdGl2ZVZpZXdJZDogc3RyaW5nLCBzaGFyZWRUeXBlOiBTaGFyZWRUeXBlLCBldmVudDogWS5ZRXZlbnQ8YW55Pik6IEFJVGFibGVTaGFyZWRBY3Rpb25bXSB7XG4gICAgbGV0IG9mZnNldCA9IDA7XG4gICAgbGV0IHRhcmdldFBhdGggPSBnZXRTaGFyZVR5cGVOdW1iZXJQYXRoKGV2ZW50LnBhdGgpO1xuICAgIGNvbnN0IGlzUmVjb3Jkc1RyYW5zbGF0ZSA9IGV2ZW50LnBhdGguaW5jbHVkZXMoJ3JlY29yZHMnKTtcbiAgICBjb25zdCBpc0ZpZWxkc1RyYW5zbGF0ZSA9IGV2ZW50LnBhdGguaW5jbHVkZXMoJ2ZpZWxkcycpO1xuICAgIGNvbnN0IGlzVmlld3NUcmFuc2xhdGUgPSBldmVudC5wYXRoLmluY2x1ZGVzKCd2aWV3cycpO1xuICAgIGNvbnN0IGFjdGlvbnM6IEFJVGFibGVTaGFyZWRBY3Rpb25bXSA9IFtdO1xuXG4gICAgZXZlbnQuY2hhbmdlcy5kZWx0YS5mb3JFYWNoKChkZWx0YSkgPT4ge1xuICAgICAgICBpZiAoJ3JldGFpbicgaW4gZGVsdGEpIHtcbiAgICAgICAgICAgIG9mZnNldCArPSBkZWx0YS5yZXRhaW4gPz8gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICgnZGVsZXRlJyBpbiBkZWx0YSkge1xuICAgICAgICAgICAgaWYgKGlzQWRkT3JSZW1vdmUodGFyZ2V0UGF0aCkpIHtcbiAgICAgICAgICAgICAgICBpZiAoaXNWaWV3c1RyYW5zbGF0ZSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByZW1vdmVWaWV3ID0gYWlUYWJsZS52aWV3cygpW29mZnNldF07XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZW1vdmVWaWV3KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhY3Rpb25zLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFZpZXdBY3Rpb25OYW1lLlJlbW92ZVZpZXcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aDogW3JlbW92ZVZpZXcuX2lkXVxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB0eXBlID0gaXNSZWNvcmRzVHJhbnNsYXRlID8gQWN0aW9uTmFtZS5SZW1vdmVSZWNvcmQgOiBBY3Rpb25OYW1lLlJlbW92ZUZpZWxkO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByZW1vdmVJZHMgPSBnZXRSZW1vdmVJZHMoZXZlbnQsIHR5cGUpO1xuICAgICAgICAgICAgICAgICAgICBpZiAocmVtb3ZlSWRzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVtb3ZlSWRzLmZvckVhY2goKHBhdGgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3Rpb25zLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmICgnaW5zZXJ0JyBpbiBkZWx0YSkge1xuICAgICAgICAgICAgaWYgKGlzQXJyYXkoZGVsdGEuaW5zZXJ0KSkge1xuICAgICAgICAgICAgICAgIGlmIChpc1JlY29yZHNUcmFuc2xhdGUpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGlzQWRkT3JSZW1vdmUodGFyZ2V0UGF0aCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlbHRhLmluc2VydD8ubWFwKChpdGVtOiBZLkFycmF5PGFueT4pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBkYXRhID0gaXRlbS50b0pTT04oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBbZml4ZWRGaWVsZCwgY3VzdG9tRmllbGRdID0gZGF0YTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwb3NpdGlvbiA9IGN1c3RvbUZpZWxkW2N1c3RvbUZpZWxkLmxlbmd0aCAtIDFdW2FjdGl2ZVZpZXdJZF07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcGF0aCA9IHRyYW5zbGF0ZVBvc2l0aW9uVG9QYXRoKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhaVRhYmxlLnJlY29yZHMoKSBhcyBBSVRhYmxlVmlld1JlY29yZHMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3RpdmVWaWV3SWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApIGFzIEFJUmVjb3JkUGF0aDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbnMucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IEFjdGlvbk5hbWUuQWRkUmVjb3JkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoOiBwYXRoLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWNvcmQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9pZDogZml4ZWRGaWVsZFswXVsnX2lkJ10sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM6IHRyYW5zbGF0ZVRvUmVjb3JkVmFsdWVzKGN1c3RvbUZpZWxkLCBhaVRhYmxlLmZpZWxkcygpIGFzIEFJVGFibGVWaWV3RmllbGRzKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVsdGEuaW5zZXJ0Py5tYXAoKGl0ZW06IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByZWNvcmRJbmRleCA9IHRhcmdldFBhdGhbMF0gYXMgbnVtYmVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBmaWVsZEluZGV4ID0gb2Zmc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByZWNvcmRJZCA9IGdldFNoYXJlZFJlY29yZElkKHNoYXJlZFR5cGUuZ2V0KCdyZWNvcmRzJykhIGFzIFkuQXJyYXk8U3luY0FycmF5RWxlbWVudD4sIHJlY29yZEluZGV4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZmllbGRJZCA9IGdldFNoYXJlZE1hcFZhbHVlSWQoc2hhcmVkVHlwZS5nZXQoJ2ZpZWxkcycpISBhcyBZLkFycmF5PFN5bmNNYXBFbGVtZW50PiwgZmllbGRJbmRleCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHBhdGggPSBbcmVjb3JkSWQsIGZpZWxkSWRdIGFzIEFJRmllbGRWYWx1ZUlkUGF0aDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZmllbGRWYWx1ZSA9IEFJVGFibGVRdWVyaWVzLmdldEZpZWxkVmFsdWUoYWlUYWJsZSwgcGF0aCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVG8gZXhjbHVkZSBpbnNlcnQgdHJpZ2dlcmVkIGJ5IGZpZWxkIGluc2VydHMuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmaWVsZFZhbHVlICE9PSBpdGVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3Rpb25zLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IEFjdGlvbk5hbWUuVXBkYXRlRmllbGRWYWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkVmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3RmllbGRWYWx1ZTogaXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7fVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChpc0ZpZWxkc1RyYW5zbGF0ZSkge1xuICAgICAgICAgICAgICAgICAgICBkZWx0YS5pbnNlcnQ/Lm1hcCgoaXRlbTogWS5NYXA8YW55PikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZGF0YSA9IGl0ZW0udG9KU09OKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwYXRoID0gdHJhbnNsYXRlUG9zaXRpb25Ub1BhdGgoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWlUYWJsZS5maWVsZHMoKSBhcyBBSVRhYmxlVmlld0ZpZWxkcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhWydwb3NpdGlvbnMnXVthY3RpdmVWaWV3SWRdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGl2ZVZpZXdJZFxuICAgICAgICAgICAgICAgICAgICAgICAgKSBhcyBBSUZpZWxkUGF0aDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbnMucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogQWN0aW9uTmFtZS5BZGRGaWVsZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkOiBkYXRhIGFzIEFJVGFibGVGaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoaXNWaWV3c1RyYW5zbGF0ZSkge1xuICAgICAgICAgICAgICAgICAgICBkZWx0YS5pbnNlcnQ/Lm1hcCgoaXRlbTogWS5NYXA8YW55PiwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBpdGVtLnRvSlNPTigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9ucy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBWaWV3QWN0aW9uTmFtZS5BZGRWaWV3LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGg6IFtvZmZzZXQgKyBpbmRleF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlldzogZGF0YSBhcyBBSVRhYmxlVmlld1xuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBhY3Rpb25zO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNBZGRPclJlbW92ZSh0YXJnZXRQYXRoOiBudW1iZXJbXSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0YXJnZXRQYXRoLmxlbmd0aCA9PT0gMDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJlbW92ZUlkcyhldmVudDogWS5ZRXZlbnQ8YW55PiwgdHlwZTogQWN0aW9uTmFtZS5SZW1vdmVGaWVsZCB8IEFjdGlvbk5hbWUuUmVtb3ZlUmVjb3JkKSB7XG4gICAgY29uc3QgaWRzOiBbc3RyaW5nXVtdID0gW107XG4gICAgaWYgKCF0eXBlKSB7XG4gICAgICAgIHJldHVybiBpZHM7XG4gICAgfVxuXG4gICAgWS5pdGVyYXRlRGVsZXRlZFN0cnVjdHMoXG4gICAgICAgIGV2ZW50LnRyYW5zYWN0aW9uLFxuICAgICAgICBldmVudC50cmFuc2FjdGlvbi5kZWxldGVTZXQsXG4gICAgICAgIC8vIEBwYXJhbSB7SXRlbXxHQ30gaXRlbVxuICAgICAgICAoaXRlbSkgPT4ge1xuICAgICAgICAgICAgaWYgKGl0ZW0gaW5zdGFuY2VvZiBZLkl0ZW0gJiYgaXRlbS5kZWxldGVkKSB7XG4gICAgICAgICAgICAgICAgaWYgKHR5cGUgPT09IEFjdGlvbk5hbWUuUmVtb3ZlRmllbGQgJiYgaXRlbS5wYXJlbnRTdWIgPT09ICdfaWQnKSB7XG4gICAgICAgICAgICAgICAgICAgIGlkcy5wdXNoKGl0ZW0uY29udGVudC5nZXRDb250ZW50KCkgYXMgQUlGaWVsZElkUGF0aCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0eXBlID09PSBBY3Rpb25OYW1lLlJlbW92ZVJlY29yZCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjb250ZW50ID0gaXRlbS5jb250ZW50LmdldENvbnRlbnQoKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbnRlbnRbMF0gJiYgY29udGVudFswXVsnX2lkJ10pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkcy5wdXNoKFtjb250ZW50WzBdWydfaWQnXV0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgKTtcbiAgICByZXR1cm4gaWRzO1xufVxuIl19
166
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdGF0ZS9zcmMvc2hhcmVkL3RvLXRhYmxlL2FycmF5LWV2ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQThFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hJLE9BQU8sS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDO0FBQ3pCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBTUgsa0JBQWtCLEVBSWxCLGNBQWMsRUFDakIsTUFBTSxhQUFhLENBQUM7QUFDckIsT0FBTyxFQUFFLHVCQUF1QixFQUFFLHNCQUFzQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzNFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXJHLE1BQU0sQ0FBQyxPQUFPLFVBQVUsbUJBQW1CLENBQUMsT0FBb0IsRUFBRSxVQUFzQixFQUFFLEtBQW9CO0lBQzFHLElBQUksTUFBTSxHQUFHLENBQUMsQ0FBQztJQUNmLElBQUksVUFBVSxHQUFHLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwRCxNQUFNLGtCQUFrQixHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzFELE1BQU0saUJBQWlCLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDeEQsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0RCxNQUFNLE9BQU8sR0FBMEIsRUFBRSxDQUFDO0lBQzFDLE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FB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VyxJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssS0FBSyxFQUFFLENBQUM7Z0JBQzlELEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQW1CLENBQUMsQ0FBQztZQUN6RCxDQUFDO1lBQ0QsSUFBSSxJQUFJLEtBQUssVUFBVSxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUNuQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUMxQyxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztvQkFDbEMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2xDLENBQUM7WUFDTCxDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUMsQ0FDSixDQUFDO0lBQ0YsT0FBTyxHQUFHLENBQUM7QUFDZixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aW9uTmFtZSwgQUlGaWVsZElkUGF0aCwgQUlGaWVsZFBhdGgsIEFJRmllbGRWYWx1ZUlkUGF0aCwgQUlSZWNvcmRQYXRoLCBBSVRhYmxlRmllbGQsIEFJVGFibGVRdWVyaWVzIH0gZnJvbSAnQGFpLXRhYmxlL2dyaWQnO1xuaW1wb3J0ICogYXMgWSBmcm9tICd5anMnO1xuaW1wb3J0IHsgaXNBcnJheSB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5pbXBvcnQge1xuICAgIEFJVGFibGVTaGFyZWRBY3Rpb24sXG4gICAgQUlUYWJsZVZpZXcsXG4gICAgQUlUYWJsZVZpZXdGaWVsZHMsXG4gICAgQUlUYWJsZVZpZXdSZWNvcmRzLFxuICAgIEFJVmlld1RhYmxlLFxuICAgIFBvc2l0aW9uQWN0aW9uTmFtZSxcbiAgICBTaGFyZWRUeXBlLFxuICAgIFN5bmNBcnJheUVsZW1lbnQsXG4gICAgU3luY01hcEVsZW1lbnQsXG4gICAgVmlld0FjdGlvbk5hbWVcbn0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgdHJhbnNsYXRlUG9zaXRpb25Ub1BhdGgsIGdldFNoYXJlVHlwZU51bWJlclBhdGggfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBnZXRTaGFyZWRNYXBWYWx1ZUlkLCBnZXRTaGFyZWRSZWNvcmRJZCwgdHJhbnNsYXRlVG9SZWNvcmRWYWx1ZXMgfSBmcm9tICcuLi91dGlscy90cmFuc2xhdGUnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB0cmFuc2xhdGVBcnJheUV2ZW50KGFpVGFibGU6IEFJVmlld1RhYmxlLCBzaGFyZWRUeXBlOiBTaGFyZWRUeXBlLCBldmVudDogWS5ZRXZlbnQ8YW55Pik6IEFJVGFibGVTaGFyZWRBY3Rpb25bXSB7XG4gICAgbGV0IG9mZnNldCA9IDA7XG4gICAgbGV0IHRhcmdldFBhdGggPSBnZXRTaGFyZVR5cGVOdW1iZXJQYXRoKGV2ZW50LnBhdGgpO1xuICAgIGNvbnN0IGlzUmVjb3Jkc1RyYW5zbGF0ZSA9IGV2ZW50LnBhdGguaW5jbHVkZXMoJ3JlY29yZHMnKTtcbiAgICBjb25zdCBpc0ZpZWxkc1RyYW5zbGF0ZSA9IGV2ZW50LnBhdGguaW5jbHVkZXMoJ2ZpZWxkcycpO1xuICAgIGNvbnN0IGlzVmlld3NUcmFuc2xhdGUgPSBldmVudC5wYXRoLmluY2x1ZGVzKCd2aWV3cycpO1xuICAgIGNvbnN0IGFjdGlvbnM6IEFJVGFibGVTaGFyZWRBY3Rpb25bXSA9IFtdO1xuICAgIGNvbnN0IGFjdGl2ZVZpZXdJZCA9IGFpVGFibGUuYWN0aXZlVmlld0lkKCk7XG5cbiAgICBldmVudC5jaGFuZ2VzLmRlbHRhLmZvckVhY2goKGRlbHRhKSA9PiB7XG4gICAgICAgIGlmICgncmV0YWluJyBpbiBkZWx0YSkge1xuICAgICAgICAgICAgb2Zmc2V0ICs9IGRlbHRhLnJldGFpbiA/PyAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCdkZWxldGUnIGluIGRlbHRhKSB7XG4gICAgICAgICAgICBpZiAoaXNBZGRPclJlbW92ZSh0YXJnZXRQYXRoKSkge1xuICAgICAgICAgICAgICAgIGlmIChpc1ZpZXdzVHJhbnNsYXRlKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlbW92ZVZpZXcgPSBhaVRhYmxlLnZpZXdzKClbb2Zmc2V0XTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlbW92ZVZpZXcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbnMucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogVmlld0FjdGlvbk5hbWUuUmVtb3ZlVmlldyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoOiBbcmVtb3ZlVmlldy5faWRdXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHR5cGUgPSBpc1JlY29yZHNUcmFuc2xhdGUgPyBBY3Rpb25OYW1lLlJlbW92ZVJlY29yZCA6IEFjdGlvbk5hbWUuUmVtb3ZlRmllbGQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlbW92ZUlkcyA9IGdldFJlbW92ZUlkcyhldmVudCwgdHlwZSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZW1vdmVJZHMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZW1vdmVJZHMuZm9yRWFjaCgocGF0aCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbnMucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCdpbnNlcnQnIGluIGRlbHRhKSB7XG4gICAgICAgICAgICBpZiAoaXNBcnJheShkZWx0YS5pbnNlcnQpKSB7XG4gICAgICAgICAgICAgICAgaWYgKGlzUmVjb3Jkc1RyYW5zbGF0ZSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXNBZGRPclJlbW92ZSh0YXJnZXRQYXRoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGVsdGEuaW5zZXJ0Py5tYXAoKGl0ZW06IFkuQXJyYXk8YW55PikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBpdGVtLnRvSlNPTigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFtmaXhlZEZpZWxkLCBjdXN0b21GaWVsZF0gPSBkYXRhO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHBvc2l0aW9uID0gY3VzdG9tRmllbGRbY3VzdG9tRmllbGQubGVuZ3RoIC0gMV1bYWN0aXZlVmlld0lkXTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwYXRoID0gdHJhbnNsYXRlUG9zaXRpb25Ub1BhdGgoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFpVGFibGUucmVjb3JkcygpIGFzIEFJVGFibGVWaWV3UmVjb3JkcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGl2ZVZpZXdJZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICkgYXMgQUlSZWNvcmRQYXRoO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9ucy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogQWN0aW9uTmFtZS5BZGRSZWNvcmQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGg6IHBhdGgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlY29yZDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2lkOiBmaXhlZEZpZWxkWzBdWydfaWQnXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlczogdHJhbnNsYXRlVG9SZWNvcmRWYWx1ZXMoY3VzdG9tRmllbGQsIGFpVGFibGUuZmllbGRzKCkgYXMgQUlUYWJsZVZpZXdGaWVsZHMpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzaGFyZWRSZWNvcmRzID0gc2hhcmVkVHlwZS5nZXQoJ3JlY29yZHMnKSEgYXMgWS5BcnJheTxTeW5jQXJyYXlFbGVtZW50PjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzaGFyZWRGaWVsZHMgPSBzaGFyZWRUeXBlLmdldCgnZmllbGRzJykhIGFzIFkuQXJyYXk8U3luY01hcEVsZW1lbnQ+O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlbHRhLmluc2VydD8ubWFwKChpdGVtOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVjb3JkSW5kZXggPSB0YXJnZXRQYXRoWzBdIGFzIG51bWJlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZmllbGRJbmRleCA9IG9mZnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVjb3JkID0gKGFpVGFibGUucmVjb3JkcygpIGFzIEFJVGFibGVWaWV3UmVjb3JkcylbcmVjb3JkSW5kZXhdO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoaXNQb3NpdGlvbk9wZXJhdGlvbihmaWVsZEluZGV4LCBzaGFyZWRGaWVsZHMpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBpdGVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFyZWNvcmQucG9zaXRpb25zW2tleV0gJiYgcmVjb3JkLnBvc2l0aW9uc1trZXldICE9PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbnMucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBQb3NpdGlvbkFjdGlvbk5hbWUuQWRkUmVjb3JkUG9zaXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoOiBbcmVjb3JkLl9pZF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtrZXldOiBpdGVtW2tleV1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gcmVjb3JkLnBvc2l0aW9ucykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghaXRlbVtrZXldICYmIGl0ZW1ba2V5XSAhPT0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3Rpb25zLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogUG9zaXRpb25BY3Rpb25OYW1lLlJlbW92ZVJlY29yZFBvc2l0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aDogW2tleSwgcmVjb3JkLl9pZF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVjb3JkSWQgPSBnZXRTaGFyZWRSZWNvcmRJZChzaGFyZWRSZWNvcmRzLCByZWNvcmRJbmRleCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBmaWVsZElkID0gZ2V0U2hhcmVkTWFwVmFsdWVJZChzaGFyZWRGaWVsZHMsIGZpZWxkSW5kZXgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcGF0aCA9IFtyZWNvcmRJZCwgZmllbGRJZF0gYXMgQUlGaWVsZFZhbHVlSWRQYXRoO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZmllbGRWYWx1ZSA9IEFJVGFibGVRdWVyaWVzLmdldEZpZWxkVmFsdWUoYWlUYWJsZSwgcGF0aCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFRvIGV4Y2x1ZGUgaW5zZXJ0IHRyaWdnZXJlZCBieSBmaWVsZCBpbnNlcnRzLlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGZpZWxkVmFsdWUgIT09IGl0ZW0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3Rpb25zLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBBY3Rpb25OYW1lLlVwZGF0ZUZpZWxkVmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkVmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ld0ZpZWxkVmFsdWU6IGl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHt9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGlzRmllbGRzVHJhbnNsYXRlKSB7XG4gICAgICAgICAgICAgICAgICAgIGRlbHRhLmluc2VydD8ubWFwKChpdGVtOiBZLk1hcDxhbnk+KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBkYXRhID0gaXRlbS50b0pTT04oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHBhdGggPSB0cmFuc2xhdGVQb3NpdGlvblRvUGF0aChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhaVRhYmxlLmZpZWxkcygpIGFzIEFJVGFibGVWaWV3RmllbGRzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFbJ3Bvc2l0aW9ucyddW2FjdGl2ZVZpZXdJZF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWN0aXZlVmlld0lkXG4gICAgICAgICAgICAgICAgICAgICAgICApIGFzIEFJRmllbGRQYXRoO1xuICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9ucy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBBY3Rpb25OYW1lLkFkZEZpZWxkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGQ6IGRhdGEgYXMgQUlUYWJsZUZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChpc1ZpZXdzVHJhbnNsYXRlKSB7XG4gICAgICAgICAgICAgICAgICAgIGRlbHRhLmluc2VydD8ubWFwKChpdGVtOiBZLk1hcDxhbnk+LCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZGF0YSA9IGl0ZW0udG9KU09OKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBhY3Rpb25zLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFZpZXdBY3Rpb25OYW1lLkFkZFZpZXcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aDogW29mZnNldCArIGluZGV4XSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3OiBkYXRhIGFzIEFJVGFibGVWaWV3XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIGFjdGlvbnM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0FkZE9yUmVtb3ZlKHRhcmdldFBhdGg6IG51bWJlcltdKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRhcmdldFBhdGgubGVuZ3RoID09PSAwO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNQb3NpdGlvbk9wZXJhdGlvbihmaWVsZEluZGV4OiBudW1iZXIsIHNoYXJlZEZpZWxkczogWS5BcnJheTxTeW5jTWFwRWxlbWVudD4pOiBib29sZWFuIHtcbiAgICByZXR1cm4gZmllbGRJbmRleCA9PT0gc2hhcmVkRmllbGRzLmxlbmd0aDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJlbW92ZUlkcyhldmVudDogWS5ZRXZlbnQ8YW55PiwgdHlwZTogQWN0aW9uTmFtZS5SZW1vdmVGaWVsZCB8IEFjdGlvbk5hbWUuUmVtb3ZlUmVjb3JkKSB7XG4gICAgY29uc3QgaWRzOiBbc3RyaW5nXVtdID0gW107XG4gICAgaWYgKCF0eXBlKSB7XG4gICAgICAgIHJldHVybiBpZHM7XG4gICAgfVxuXG4gICAgWS5pdGVyYXRlRGVsZXRlZFN0cnVjdHMoXG4gICAgICAgIGV2ZW50LnRyYW5zYWN0aW9uLFxuICAgICAgICBldmVudC50cmFuc2FjdGlvbi5kZWxldGVTZXQsXG4gICAgICAgIC8vIEBwYXJhbSB7SXRlbXxHQ30gaXRlbVxuICAgICAgICAoaXRlbSkgPT4ge1xuICAgICAgICAgICAgaWYgKGl0ZW0gaW5zdGFuY2VvZiBZLkl0ZW0gJiYgaXRlbS5kZWxldGVkKSB7XG4gICAgICAgICAgICAgICAgaWYgKHR5cGUgPT09IEFjdGlvbk5hbWUuUmVtb3ZlRmllbGQgJiYgaXRlbS5wYXJlbnRTdWIgPT09ICdfaWQnKSB7XG4gICAgICAgICAgICAgICAgICAgIGlkcy5wdXNoKGl0ZW0uY29udGVudC5nZXRDb250ZW50KCkgYXMgQUlGaWVsZElkUGF0aCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0eXBlID09PSBBY3Rpb25OYW1lLlJlbW92ZVJlY29yZCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjb250ZW50ID0gaXRlbS5jb250ZW50LmdldENvbnRlbnQoKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbnRlbnRbMF0gJiYgY29udGVudFswXVsnX2lkJ10pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkcy5wdXNoKFtjb250ZW50WzBdWydfaWQnXV0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgKTtcbiAgICByZXR1cm4gaWRzO1xufVxuIl19
@@ -2,28 +2,28 @@ import * as Y from 'yjs';
2
2
  import translateArrayEvent from './array-event';
3
3
  import translateMapEvent from './map-event';
4
4
  import { YjsAITable } from '../yjs-table';
5
- export function translateYjsEvent(aiTable, activeViewId, sharedType, event) {
5
+ export function translateYjsEvent(aiTable, sharedType, event) {
6
6
  if (event instanceof Y.YArrayEvent) {
7
- return translateArrayEvent(aiTable, activeViewId, sharedType, event);
7
+ return translateArrayEvent(aiTable, sharedType, event);
8
8
  }
9
9
  if (event instanceof Y.YMapEvent) {
10
10
  return translateMapEvent(aiTable, sharedType, event);
11
11
  }
12
12
  return [];
13
13
  }
14
- export function applyEvents(aiTable, activeViewId, sharedType, events) {
15
- events.forEach((event) => translateYjsEvent(aiTable, activeViewId, sharedType, event).forEach((item) => {
14
+ export function applyEvents(aiTable, sharedType, events) {
15
+ events.forEach((event) => translateYjsEvent(aiTable, sharedType, event).forEach((item) => {
16
16
  aiTable.apply(item);
17
17
  }));
18
18
  }
19
- export function applyYjsEvents(aiTable, activeViewId, sharedType, events) {
19
+ export function applyYjsEvents(aiTable, sharedType, events) {
20
20
  if (YjsAITable.isUndo(aiTable)) {
21
- applyEvents(aiTable, activeViewId, sharedType, events);
21
+ applyEvents(aiTable, sharedType, events);
22
22
  }
23
23
  else {
24
24
  YjsAITable.asRemote(aiTable, () => {
25
- applyEvents(aiTable, activeViewId, sharedType, events);
25
+ applyEvents(aiTable, sharedType, events);
26
26
  });
27
27
  }
28
28
  }
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdGF0ZS9zcmMvc2hhcmVkL3RvLXRhYmxlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDO0FBQ3pCLE9BQU8sbUJBQW1CLE1BQU0sZUFBZSxDQUFDO0FBQ2hELE9BQU8saUJBQWlCLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFHMUMsTUFBTSxVQUFVLGlCQUFpQixDQUFDLE9BQW9CLEVBQUUsWUFBb0IsRUFBRSxVQUFzQixFQUFFLEtBQW9CO0lBQ3RILElBQUksS0FBSyxZQUFZLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNqQyxPQUFPLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFDRCxJQUFJLEtBQUssWUFBWSxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDL0IsT0FBTyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFDRCxPQUFPLEVBQUUsQ0FBQztBQUNkLENBQUM7QUFFRCxNQUFNLFVBQVUsV0FBVyxDQUFDLE9BQW9CLEVBQUUsWUFBb0IsRUFBRSxVQUFzQixFQUFFLE1BQXVCO0lBQ25ILE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUNyQixpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUF5QixFQUFFLEVBQUU7UUFDOUYsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4QixDQUFDLENBQUMsQ0FDTCxDQUFDO0FBQ04sQ0FBQztBQUVELE1BQU0sVUFBVSxjQUFjLENBQUMsT0FBb0IsRUFBRSxZQUFvQixFQUFFLFVBQXNCLEVBQUUsTUFBdUI7SUFDdEgsSUFBSSxVQUFVLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7UUFDN0IsV0FBVyxDQUFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzNELENBQUM7U0FBTSxDQUFDO1FBQ0osVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFO1lBQzlCLFdBQVcsQ0FBQyxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUMzRCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgWSBmcm9tICd5anMnO1xuaW1wb3J0IHRyYW5zbGF0ZUFycmF5RXZlbnQgZnJvbSAnLi9hcnJheS1ldmVudCc7XG5pbXBvcnQgdHJhbnNsYXRlTWFwRXZlbnQgZnJvbSAnLi9tYXAtZXZlbnQnO1xuaW1wb3J0IHsgWWpzQUlUYWJsZSB9IGZyb20gJy4uL3lqcy10YWJsZSc7XG5pbXBvcnQgeyBBSVRhYmxlU2hhcmVkQWN0aW9uLCBBSVZpZXdUYWJsZSwgU2hhcmVkVHlwZSB9IGZyb20gJy4uLy4uL3R5cGVzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zbGF0ZVlqc0V2ZW50KGFpVGFibGU6IEFJVmlld1RhYmxlLCBhY3RpdmVWaWV3SWQ6IHN0cmluZywgc2hhcmVkVHlwZTogU2hhcmVkVHlwZSwgZXZlbnQ6IFkuWUV2ZW50PGFueT4pOiBBSVRhYmxlU2hhcmVkQWN0aW9uW10ge1xuICAgIGlmIChldmVudCBpbnN0YW5jZW9mIFkuWUFycmF5RXZlbnQpIHtcbiAgICAgICAgcmV0dXJuIHRyYW5zbGF0ZUFycmF5RXZlbnQoYWlUYWJsZSwgYWN0aXZlVmlld0lkLCBzaGFyZWRUeXBlLCBldmVudCk7XG4gICAgfVxuICAgIGlmIChldmVudCBpbnN0YW5jZW9mIFkuWU1hcEV2ZW50KSB7XG4gICAgICAgIHJldHVybiB0cmFuc2xhdGVNYXBFdmVudChhaVRhYmxlLCBzaGFyZWRUeXBlLCBldmVudCk7XG4gICAgfVxuICAgIHJldHVybiBbXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFwcGx5RXZlbnRzKGFpVGFibGU6IEFJVmlld1RhYmxlLCBhY3RpdmVWaWV3SWQ6IHN0cmluZywgc2hhcmVkVHlwZTogU2hhcmVkVHlwZSwgZXZlbnRzOiBZLllFdmVudDxhbnk+W10pIHtcbiAgICBldmVudHMuZm9yRWFjaCgoZXZlbnQpID0+XG4gICAgICAgIHRyYW5zbGF0ZVlqc0V2ZW50KGFpVGFibGUsIGFjdGl2ZVZpZXdJZCwgc2hhcmVkVHlwZSwgZXZlbnQpLmZvckVhY2goKGl0ZW06IEFJVGFibGVTaGFyZWRBY3Rpb24pID0+IHtcbiAgICAgICAgICAgIGFpVGFibGUuYXBwbHkoaXRlbSk7XG4gICAgICAgIH0pXG4gICAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFwcGx5WWpzRXZlbnRzKGFpVGFibGU6IEFJVmlld1RhYmxlLCBhY3RpdmVWaWV3SWQ6IHN0cmluZywgc2hhcmVkVHlwZTogU2hhcmVkVHlwZSwgZXZlbnRzOiBZLllFdmVudDxhbnk+W10pOiB2b2lkIHtcbiAgICBpZiAoWWpzQUlUYWJsZS5pc1VuZG8oYWlUYWJsZSkpIHtcbiAgICAgICAgYXBwbHlFdmVudHMoYWlUYWJsZSwgYWN0aXZlVmlld0lkLCBzaGFyZWRUeXBlLCBldmVudHMpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIFlqc0FJVGFibGUuYXNSZW1vdGUoYWlUYWJsZSwgKCkgPT4ge1xuICAgICAgICAgICAgYXBwbHlFdmVudHMoYWlUYWJsZSwgYWN0aXZlVmlld0lkLCBzaGFyZWRUeXBlLCBldmVudHMpO1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdGF0ZS9zcmMvc2hhcmVkL3RvLXRhYmxlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDO0FBQ3pCLE9BQU8sbUJBQW1CLE1BQU0sZUFBZSxDQUFDO0FBQ2hELE9BQU8saUJBQWlCLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFHMUMsTUFBTSxVQUFVLGlCQUFpQixDQUFDLE9BQW9CLEVBQUUsVUFBc0IsRUFBRSxLQUFvQjtJQUNoRyxJQUFJLEtBQUssWUFBWSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDakMsT0FBTyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFDRCxJQUFJLEtBQUssWUFBWSxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDL0IsT0FBTyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFDRCxPQUFPLEVBQUUsQ0FBQztBQUNkLENBQUM7QUFFRCxNQUFNLFVBQVUsV0FBVyxDQUFDLE9BQW9CLEVBQUUsVUFBc0IsRUFBRSxNQUF1QjtJQUM3RixNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDckIsaUJBQWlCLENBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUF5QixFQUFFLEVBQUU7UUFDaEYsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4QixDQUFDLENBQUMsQ0FDTCxDQUFDO0FBQ04sQ0FBQztBQUVELE1BQU0sVUFBVSxjQUFjLENBQUMsT0FBb0IsRUFBRSxVQUFzQixFQUFFLE1BQXVCO0lBQ2hHLElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQzdCLFdBQVcsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzdDLENBQUM7U0FBTSxDQUFDO1FBQ0osVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFO1lBQzlCLFdBQVcsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzdDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBZIGZyb20gJ3lqcyc7XG5pbXBvcnQgdHJhbnNsYXRlQXJyYXlFdmVudCBmcm9tICcuL2FycmF5LWV2ZW50JztcbmltcG9ydCB0cmFuc2xhdGVNYXBFdmVudCBmcm9tICcuL21hcC1ldmVudCc7XG5pbXBvcnQgeyBZanNBSVRhYmxlIH0gZnJvbSAnLi4veWpzLXRhYmxlJztcbmltcG9ydCB7IEFJVGFibGVTaGFyZWRBY3Rpb24sIEFJVmlld1RhYmxlLCBTaGFyZWRUeXBlIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNsYXRlWWpzRXZlbnQoYWlUYWJsZTogQUlWaWV3VGFibGUsIHNoYXJlZFR5cGU6IFNoYXJlZFR5cGUsIGV2ZW50OiBZLllFdmVudDxhbnk+KTogQUlUYWJsZVNoYXJlZEFjdGlvbltdIHtcbiAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBZLllBcnJheUV2ZW50KSB7XG4gICAgICAgIHJldHVybiB0cmFuc2xhdGVBcnJheUV2ZW50KGFpVGFibGUsIHNoYXJlZFR5cGUsIGV2ZW50KTtcbiAgICB9XG4gICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgWS5ZTWFwRXZlbnQpIHtcbiAgICAgICAgcmV0dXJuIHRyYW5zbGF0ZU1hcEV2ZW50KGFpVGFibGUsIHNoYXJlZFR5cGUsIGV2ZW50KTtcbiAgICB9XG4gICAgcmV0dXJuIFtdO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYXBwbHlFdmVudHMoYWlUYWJsZTogQUlWaWV3VGFibGUsIHNoYXJlZFR5cGU6IFNoYXJlZFR5cGUsIGV2ZW50czogWS5ZRXZlbnQ8YW55PltdKSB7XG4gICAgZXZlbnRzLmZvckVhY2goKGV2ZW50KSA9PlxuICAgICAgICB0cmFuc2xhdGVZanNFdmVudChhaVRhYmxlLCBzaGFyZWRUeXBlLCBldmVudCkuZm9yRWFjaCgoaXRlbTogQUlUYWJsZVNoYXJlZEFjdGlvbikgPT4ge1xuICAgICAgICAgICAgYWlUYWJsZS5hcHBseShpdGVtKTtcbiAgICAgICAgfSlcbiAgICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYXBwbHlZanNFdmVudHMoYWlUYWJsZTogQUlWaWV3VGFibGUsIHNoYXJlZFR5cGU6IFNoYXJlZFR5cGUsIGV2ZW50czogWS5ZRXZlbnQ8YW55PltdKTogdm9pZCB7XG4gICAgaWYgKFlqc0FJVGFibGUuaXNVbmRvKGFpVGFibGUpKSB7XG4gICAgICAgIGFwcGx5RXZlbnRzKGFpVGFibGUsIHNoYXJlZFR5cGUsIGV2ZW50cyk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgWWpzQUlUYWJsZS5hc1JlbW90ZShhaVRhYmxlLCAoKSA9PiB7XG4gICAgICAgICAgICBhcHBseUV2ZW50cyhhaVRhYmxlLCBzaGFyZWRUeXBlLCBldmVudHMpO1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
@@ -1,23 +1,34 @@
1
- import { toRecordSyncElement, toSyncElement } from '../utils';
2
- import { ViewActionName } from '../../types';
1
+ import { getSharedRecordIndex, toRecordSyncElement, toSyncElement } from '../utils';
2
+ import { PositionActionName, ViewActionName } from '../../types';
3
3
  import { ActionName, getDefaultFieldValue } from '@ai-table/grid';
4
4
  export default function addNode(sharedType, action) {
5
+ const records = sharedType.get('records');
6
+ const views = sharedType.get('views');
7
+ const fields = sharedType.get('fields');
5
8
  switch (action.type) {
6
9
  case ActionName.AddRecord:
7
- const records = sharedType.get('records');
8
10
  records && records.push([toRecordSyncElement(action.record)]);
9
11
  break;
10
12
  case ViewActionName.AddView:
11
- const views = sharedType.get('views');
12
13
  views && views.push([toSyncElement(action.view)]);
13
14
  break;
15
+ case PositionActionName.AddRecordPosition:
16
+ if (records) {
17
+ const recordIndex = getSharedRecordIndex(records, action.path[0]);
18
+ const record = records.get(recordIndex);
19
+ const customField = record.get(1);
20
+ const positionsIndex = customField.length - 1;
21
+ const positions = customField.get(positionsIndex);
22
+ const newPositions = { ...positions, ...action.position };
23
+ customField.delete(positionsIndex);
24
+ customField.insert(positionsIndex, [newPositions]);
25
+ }
26
+ break;
14
27
  case ActionName.AddField:
15
- const sharedFields = sharedType.get('fields');
16
- const sharedRecords = sharedType.get('records');
17
- if (sharedFields && sharedRecords) {
18
- sharedFields.push([toSyncElement(action.field)]);
28
+ if (fields && records) {
29
+ fields.push([toSyncElement(action.field)]);
19
30
  const path = action.path[0];
20
- for (let value of sharedRecords) {
31
+ for (let value of records) {
21
32
  const newRecord = getDefaultFieldValue(action.field);
22
33
  const customField = value.get(1);
23
34
  customField.insert(path, [newRecord]);
@@ -27,4 +38,4 @@ export default function addNode(sharedType, action) {
27
38
  }
28
39
  return sharedType;
29
40
  }
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLW5vZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdGF0ZS9zcmMvc2hhcmVkL3RvLXlqcy9hZGQtbm9kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzlELE9BQU8sRUFBa0UsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzdHLE9BQU8sRUFBRSxVQUFVLEVBQW1DLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkcsTUFBTSxDQUFDLE9BQU8sVUFBVSxPQUFPLENBQUMsVUFBc0IsRUFBRSxNQUF3RDtJQUM1RyxRQUFRLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNsQixLQUFLLFVBQVUsQ0FBQyxTQUFTO1lBQ3JCLE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFFLENBQUM7WUFDM0MsT0FBTyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsTUFBMkIsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNuRixNQUFNO1FBQ1YsS0FBSyxjQUFjLENBQUMsT0FBTztZQUN2QixNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBRSxDQUFDO1lBQ3ZDLEtBQUssSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDbEQsTUFBTTtRQUNWLEtBQUssVUFBVSxDQUFDLFFBQVE7WUFDcEIsTUFBTSxZQUFZLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUUsQ0FBQztZQUMvQyxNQUFNLGFBQWEsR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBcUIsQ0FBQztZQUNwRSxJQUFJLFlBQVksSUFBSSxhQUFhLEVBQUUsQ0FBQztnQkFDaEMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNqRCxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUM1QixLQUFLLElBQUksS0FBSyxJQUFJLGFBQWEsRUFBRSxDQUFDO29CQUM5QixNQUFNLFNBQVMsR0FBRyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ3JELE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ2pDLFdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztnQkFDMUMsQ0FBQztZQUNMLENBQUM7WUFDRCxNQUFNO0lBQ2QsQ0FBQztJQUVELE9BQU8sVUFBVSxDQUFDO0FBQ3RCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0b1JlY29yZFN5bmNFbGVtZW50LCB0b1N5bmNFbGVtZW50IH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgQWRkVmlld0FjdGlvbiwgQUlUYWJsZVZpZXdSZWNvcmQsIFNoYXJlZFR5cGUsIFN5bmNBcnJheUVsZW1lbnQsIFZpZXdBY3Rpb25OYW1lIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgQWN0aW9uTmFtZSwgQWRkRmllbGRBY3Rpb24sIEFkZFJlY29yZEFjdGlvbiwgZ2V0RGVmYXVsdEZpZWxkVmFsdWUgfSBmcm9tICdAYWktdGFibGUvZ3JpZCc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGFkZE5vZGUoc2hhcmVkVHlwZTogU2hhcmVkVHlwZSwgYWN0aW9uOiBBZGRGaWVsZEFjdGlvbiB8IEFkZFJlY29yZEFjdGlvbiB8IEFkZFZpZXdBY3Rpb24pOiBTaGFyZWRUeXBlIHtcbiAgICBzd2l0Y2ggKGFjdGlvbi50eXBlKSB7XG4gICAgICAgIGNhc2UgQWN0aW9uTmFtZS5BZGRSZWNvcmQ6XG4gICAgICAgICAgICBjb25zdCByZWNvcmRzID0gc2hhcmVkVHlwZS5nZXQoJ3JlY29yZHMnKSE7XG4gICAgICAgICAgICByZWNvcmRzICYmIHJlY29yZHMucHVzaChbdG9SZWNvcmRTeW5jRWxlbWVudChhY3Rpb24ucmVjb3JkIGFzIEFJVGFibGVWaWV3UmVjb3JkKV0pO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgVmlld0FjdGlvbk5hbWUuQWRkVmlldzpcbiAgICAgICAgICAgIGNvbnN0IHZpZXdzID0gc2hhcmVkVHlwZS5nZXQoJ3ZpZXdzJykhO1xuICAgICAgICAgICAgdmlld3MgJiYgdmlld3MucHVzaChbdG9TeW5jRWxlbWVudChhY3Rpb24udmlldyldKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEFjdGlvbk5hbWUuQWRkRmllbGQ6XG4gICAgICAgICAgICBjb25zdCBzaGFyZWRGaWVsZHMgPSBzaGFyZWRUeXBlLmdldCgnZmllbGRzJykhO1xuICAgICAgICAgICAgY29uc3Qgc2hhcmVkUmVjb3JkcyA9IHNoYXJlZFR5cGUuZ2V0KCdyZWNvcmRzJykgYXMgU3luY0FycmF5RWxlbWVudDtcbiAgICAgICAgICAgIGlmIChzaGFyZWRGaWVsZHMgJiYgc2hhcmVkUmVjb3Jkcykge1xuICAgICAgICAgICAgICAgIHNoYXJlZEZpZWxkcy5wdXNoKFt0b1N5bmNFbGVtZW50KGFjdGlvbi5maWVsZCldKTtcbiAgICAgICAgICAgICAgICBjb25zdCBwYXRoID0gYWN0aW9uLnBhdGhbMF07XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgdmFsdWUgb2Ygc2hhcmVkUmVjb3Jkcykge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdSZWNvcmQgPSBnZXREZWZhdWx0RmllbGRWYWx1ZShhY3Rpb24uZmllbGQpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjdXN0b21GaWVsZCA9IHZhbHVlLmdldCgxKTtcbiAgICAgICAgICAgICAgICAgICAgY3VzdG9tRmllbGQuaW5zZXJ0KHBhdGgsIFtuZXdSZWNvcmRdKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICByZXR1cm4gc2hhcmVkVHlwZTtcbn1cbiJdfQ==
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLW5vZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdGF0ZS9zcmMvc2hhcmVkL3RvLXlqcy9hZGQtbm9kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsbUJBQW1CLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3BGLE9BQU8sRUFJSCxrQkFBa0IsRUFJbEIsY0FBYyxFQUNqQixNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEVBQUUsVUFBVSxFQUFtQyxvQkFBb0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR25HLE1BQU0sQ0FBQyxPQUFPLFVBQVUsT0FBTyxDQUMzQixVQUFzQixFQUN0QixNQUFrRjtJQUVsRixNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBK0IsQ0FBQztJQUN4RSxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBRSxDQUFDO0lBQ3ZDLE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUE2QixDQUFDO0lBQ3BFLFFBQVEsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2xCLEtBQUssVUFBVSxDQUFDLFNBQVM7WUFDckIsT0FBTyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsTUFBMkIsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNuRixNQUFNO1FBQ1YsS0FBSyxjQUFjLENBQUMsT0FBTztZQUN2QixLQUFLLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2xELE1BQU07UUFDVixLQUFLLGtCQUFrQixDQUFDLGlCQUFpQjtZQUNyQyxJQUFJLE9BQU8sRUFBRSxDQUFDO2dCQUNWLE1BQU0sV0FBVyxHQUFHLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2xFLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7Z0JBQ3hDLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFpQixDQUFDO2dCQUNsRCxNQUFNLGNBQWMsR0FBRyxXQUFXLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztnQkFDOUMsTUFBTSxTQUFTLEdBQUcsV0FBVyxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztnQkFDbEQsTUFBTSxZQUFZLEdBQUcsRUFBRSxHQUFHLFNBQVMsRUFBRSxHQUFHLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDMUQsV0FBVyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztnQkFDbkMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1lBQ3ZELENBQUM7WUFDRCxNQUFNO1FBQ1YsS0FBSyxVQUFVLENBQUMsUUFBUTtZQUNwQixJQUFJLE1BQU0sSUFBSSxPQUFPLEVBQUUsQ0FBQztnQkFDcEIsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUMzQyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUM1QixLQUFLLElBQUksS0FBSyxJQUFJLE9BQU8sRUFBRSxDQUFDO29CQUN4QixNQUFNLFNBQVMsR0FBRyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ3JELE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ2pDLFdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztnQkFDMUMsQ0FBQztZQUNMLENBQUM7WUFDRCxNQUFNO0lBQ2QsQ0FBQztJQUVELE9BQU8sVUFBVSxDQUFDO0FBQ3RCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRTaGFyZWRSZWNvcmRJbmRleCwgdG9SZWNvcmRTeW5jRWxlbWVudCwgdG9TeW5jRWxlbWVudCB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7XG4gICAgQWRkUmVjb3JkUG9zaXRpb25BY3Rpb24sXG4gICAgQWRkVmlld0FjdGlvbixcbiAgICBBSVRhYmxlVmlld1JlY29yZCxcbiAgICBQb3NpdGlvbkFjdGlvbk5hbWUsXG4gICAgU2hhcmVkVHlwZSxcbiAgICBTeW5jQXJyYXlFbGVtZW50LFxuICAgIFN5bmNNYXBFbGVtZW50LFxuICAgIFZpZXdBY3Rpb25OYW1lXG59IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IEFjdGlvbk5hbWUsIEFkZEZpZWxkQWN0aW9uLCBBZGRSZWNvcmRBY3Rpb24sIGdldERlZmF1bHRGaWVsZFZhbHVlIH0gZnJvbSAnQGFpLXRhYmxlL2dyaWQnO1xuaW1wb3J0ICogYXMgWSBmcm9tICd5anMnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBhZGROb2RlKFxuICAgIHNoYXJlZFR5cGU6IFNoYXJlZFR5cGUsXG4gICAgYWN0aW9uOiBBZGRGaWVsZEFjdGlvbiB8IEFkZFJlY29yZEFjdGlvbiB8IEFkZFZpZXdBY3Rpb24gfCBBZGRSZWNvcmRQb3NpdGlvbkFjdGlvblxuKTogU2hhcmVkVHlwZSB7XG4gICAgY29uc3QgcmVjb3JkcyA9IHNoYXJlZFR5cGUuZ2V0KCdyZWNvcmRzJykhIGFzIFkuQXJyYXk8U3luY0FycmF5RWxlbWVudD47XG4gICAgY29uc3Qgdmlld3MgPSBzaGFyZWRUeXBlLmdldCgndmlld3MnKSE7XG4gICAgY29uc3QgZmllbGRzID0gc2hhcmVkVHlwZS5nZXQoJ2ZpZWxkcycpISBhcyBZLkFycmF5PFN5bmNNYXBFbGVtZW50PjtcbiAgICBzd2l0Y2ggKGFjdGlvbi50eXBlKSB7XG4gICAgICAgIGNhc2UgQWN0aW9uTmFtZS5BZGRSZWNvcmQ6XG4gICAgICAgICAgICByZWNvcmRzICYmIHJlY29yZHMucHVzaChbdG9SZWNvcmRTeW5jRWxlbWVudChhY3Rpb24ucmVjb3JkIGFzIEFJVGFibGVWaWV3UmVjb3JkKV0pO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgVmlld0FjdGlvbk5hbWUuQWRkVmlldzpcbiAgICAgICAgICAgIHZpZXdzICYmIHZpZXdzLnB1c2goW3RvU3luY0VsZW1lbnQoYWN0aW9uLnZpZXcpXSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBQb3NpdGlvbkFjdGlvbk5hbWUuQWRkUmVjb3JkUG9zaXRpb246XG4gICAgICAgICAgICBpZiAocmVjb3Jkcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlY29yZEluZGV4ID0gZ2V0U2hhcmVkUmVjb3JkSW5kZXgocmVjb3JkcywgYWN0aW9uLnBhdGhbMF0pO1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlY29yZCA9IHJlY29yZHMuZ2V0KHJlY29yZEluZGV4KTtcbiAgICAgICAgICAgICAgICBjb25zdCBjdXN0b21GaWVsZCA9IHJlY29yZC5nZXQoMSkgYXMgWS5BcnJheTxhbnk+O1xuICAgICAgICAgICAgICAgIGNvbnN0IHBvc2l0aW9uc0luZGV4ID0gY3VzdG9tRmllbGQubGVuZ3RoIC0gMTtcbiAgICAgICAgICAgICAgICBjb25zdCBwb3NpdGlvbnMgPSBjdXN0b21GaWVsZC5nZXQocG9zaXRpb25zSW5kZXgpO1xuICAgICAgICAgICAgICAgIGNvbnN0IG5ld1Bvc2l0aW9ucyA9IHsgLi4ucG9zaXRpb25zLCAuLi5hY3Rpb24ucG9zaXRpb24gfTtcbiAgICAgICAgICAgICAgICBjdXN0b21GaWVsZC5kZWxldGUocG9zaXRpb25zSW5kZXgpO1xuICAgICAgICAgICAgICAgIGN1c3RvbUZpZWxkLmluc2VydChwb3NpdGlvbnNJbmRleCwgW25ld1Bvc2l0aW9uc10pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgQWN0aW9uTmFtZS5BZGRGaWVsZDpcbiAgICAgICAgICAgIGlmIChmaWVsZHMgJiYgcmVjb3Jkcykge1xuICAgICAgICAgICAgICAgIGZpZWxkcy5wdXNoKFt0b1N5bmNFbGVtZW50KGFjdGlvbi5maWVsZCldKTtcbiAgICAgICAgICAgICAgICBjb25zdCBwYXRoID0gYWN0aW9uLnBhdGhbMF07XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgdmFsdWUgb2YgcmVjb3Jkcykge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdSZWNvcmQgPSBnZXREZWZhdWx0RmllbGRWYWx1ZShhY3Rpb24uZmllbGQpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjdXN0b21GaWVsZCA9IHZhbHVlLmdldCgxKTtcbiAgICAgICAgICAgICAgICAgICAgY3VzdG9tRmllbGQuaW5zZXJ0KHBhdGgsIFtuZXdSZWNvcmRdKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICByZXR1cm4gc2hhcmVkVHlwZTtcbn1cbiJdfQ==
@@ -12,6 +12,8 @@ export const actionMappers = {
12
12
  set_view: setNode,
13
13
  add_view: addNode,
14
14
  remove_view: removeNode,
15
+ add_record_position: addNode,
16
+ remove_record_position: removeNode
15
17
  };
16
18
  export function applyActionOps(sharedType, actions, aiTable) {
17
19
  if (actions.length > 0) {
@@ -27,4 +29,4 @@ export function applyActionOps(sharedType, actions, aiTable) {
27
29
  }
28
30
  return sharedType;
29
31
  }
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdGF0ZS9zcmMvc2hhcmVkL3RvLXlqcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLGdCQUFnQixNQUFNLHNCQUFzQixDQUFDO0FBRXBELE9BQU8sT0FBTyxNQUFNLFlBQVksQ0FBQztBQUNqQyxPQUFPLE9BQU8sTUFBTSxZQUFZLENBQUM7QUFDakMsT0FBTyxVQUFVLE1BQU0sZUFBZSxDQUFDO0FBUXZDLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBK0I7SUFDckQsVUFBVSxFQUFFLE9BQU87SUFDbkIsa0JBQWtCLEVBQUUsZ0JBQWdCO0lBQ3BDLGFBQWEsRUFBRSxVQUFVO0lBQ3pCLFNBQVMsRUFBRSxPQUFPO0lBQ2xCLFNBQVMsRUFBRSxPQUFPO0lBQ2xCLFlBQVksRUFBRSxVQUFVO0lBQ3hCLFFBQVEsRUFBRSxPQUFPO0lBQ2pCLFFBQVEsRUFBRSxPQUFPO0lBQ2pCLFdBQVcsRUFBRSxVQUFVO0NBQzFCLENBQUM7QUFFRixNQUFNLFVBQVUsY0FBYyxDQUFDLFVBQXNCLEVBQUUsT0FBd0IsRUFBRSxPQUFnQjtJQUM3RixJQUFJLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDckIsVUFBVSxDQUFDLEdBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQzFCLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtnQkFDdkIsTUFBTSxLQUFLLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQTZCLENBQUM7Z0JBQ3JFLElBQUksS0FBSyxFQUFFLENBQUM7b0JBQ1IsT0FBTyxLQUFLLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO2dCQUNyQyxDQUFDO2dCQUNELE9BQU8sSUFBSSxDQUFDO1lBQ2hCLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2hCLENBQUM7SUFFRCxPQUFPLFVBQVUsQ0FBQztBQUN0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUlUYWJsZSwgQUlUYWJsZUFjdGlvbiB9IGZyb20gJ0BhaS10YWJsZS9ncmlkJztcbmltcG9ydCB1cGRhdGVGaWVsZFZhbHVlIGZyb20gJy4vdXBkYXRlLWZpZWxkLXZhbHVlJztcbmltcG9ydCB7IFNoYXJlZFR5cGUgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgc2V0Tm9kZSBmcm9tICcuL3NldC1ub2RlJztcbmltcG9ydCBhZGROb2RlIGZyb20gJy4vYWRkLW5vZGUnO1xuaW1wb3J0IHJlbW92ZU5vZGUgZnJvbSAnLi9yZW1vdmUtbm9kZSc7XG5cbmV4cG9ydCB0eXBlIEFjdGlvbk1hcHBlcjxPIGV4dGVuZHMgQUlUYWJsZUFjdGlvbiA9IEFJVGFibGVBY3Rpb24+ID0ge1xuICAgIFtLIGluIE9bJ3R5cGUnXV06IE8gZXh0ZW5kcyB7IHR5cGU6IEsgfSA/IEFwcGx5RnVuYzxPPiA6IG5ldmVyO1xufTtcblxuZXhwb3J0IHR5cGUgQXBwbHlGdW5jPE8gZXh0ZW5kcyBBSVRhYmxlQWN0aW9uID0gQUlUYWJsZUFjdGlvbj4gPSAoc2hhcmVkVHlwZTogU2hhcmVkVHlwZSwgb3A6IE8pID0+IFNoYXJlZFR5cGU7XG5cbmV4cG9ydCBjb25zdCBhY3Rpb25NYXBwZXJzOiBQYXJ0aWFsPEFjdGlvbk1hcHBlcjxhbnk+PiA9IHtcbiAgICBhZGRfcmVjb3JkOiBhZGROb2RlLFxuICAgIHVwZGF0ZV9maWVsZF92YWx1ZTogdXBkYXRlRmllbGRWYWx1ZSxcbiAgICByZW1vdmVfcmVjb3JkOiByZW1vdmVOb2RlLFxuICAgIGFkZF9maWVsZDogYWRkTm9kZSxcbiAgICBzZXRfZmllbGQ6IHNldE5vZGUsXG4gICAgcmVtb3ZlX2ZpZWxkOiByZW1vdmVOb2RlLFxuICAgIHNldF92aWV3OiBzZXROb2RlLFxuICAgIGFkZF92aWV3OiBhZGROb2RlLFxuICAgIHJlbW92ZV92aWV3OiByZW1vdmVOb2RlLFxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGFwcGx5QWN0aW9uT3BzKHNoYXJlZFR5cGU6IFNoYXJlZFR5cGUsIGFjdGlvbnM6IEFJVGFibGVBY3Rpb25bXSwgYWlUYWJsZTogQUlUYWJsZSk6IFNoYXJlZFR5cGUge1xuICAgIGlmIChhY3Rpb25zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgc2hhcmVkVHlwZS5kb2MhLnRyYW5zYWN0KCgpID0+IHtcbiAgICAgICAgICAgIGFjdGlvbnMuZm9yRWFjaCgoYWN0aW9uKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgYXBwbHkgPSBhY3Rpb25NYXBwZXJzW2FjdGlvbi50eXBlXSBhcyBBcHBseUZ1bmM8dHlwZW9mIGFjdGlvbj47XG4gICAgICAgICAgICAgICAgaWYgKGFwcGx5KSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBhcHBseShzaGFyZWRUeXBlLCBhY3Rpb24pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9LCBhaVRhYmxlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gc2hhcmVkVHlwZTtcbn1cbiJdfQ==
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdGF0ZS9zcmMvc2hhcmVkL3RvLXlqcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLGdCQUFnQixNQUFNLHNCQUFzQixDQUFDO0FBRXBELE9BQU8sT0FBTyxNQUFNLFlBQVksQ0FBQztBQUNqQyxPQUFPLE9BQU8sTUFBTSxZQUFZLENBQUM7QUFDakMsT0FBTyxVQUFVLE1BQU0sZUFBZSxDQUFDO0FBUXZDLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBK0I7SUFDckQsVUFBVSxFQUFFLE9BQU87SUFDbkIsa0JBQWtCLEVBQUUsZ0JBQWdCO0lBQ3BDLGFBQWEsRUFBRSxVQUFVO0lBQ3pCLFNBQVMsRUFBRSxPQUFPO0lBQ2xCLFNBQVMsRUFBRSxPQUFPO0lBQ2xCLFlBQVksRUFBRSxVQUFVO0lBQ3hCLFFBQVEsRUFBRSxPQUFPO0lBQ2pCLFFBQVEsRUFBRSxPQUFPO0lBQ2pCLFdBQVcsRUFBRSxVQUFVO0lBQ3ZCLG1CQUFtQixFQUFFLE9BQU87SUFDNUIsc0JBQXNCLEVBQUUsVUFBVTtDQUNyQyxDQUFDO0FBRUYsTUFBTSxVQUFVLGNBQWMsQ0FBQyxVQUFzQixFQUFFLE9BQXdCLEVBQUUsT0FBZ0I7SUFDN0YsSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ3JCLFVBQVUsQ0FBQyxHQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUMxQixPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQ3ZCLE1BQU0sS0FBSyxHQUFHLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUE2QixDQUFDO2dCQUNyRSxJQUFJLEtBQUssRUFBRSxDQUFDO29CQUNSLE9BQU8sS0FBSyxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFDckMsQ0FBQztnQkFDRCxPQUFPLElBQUksQ0FBQztZQUNoQixDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNoQixDQUFDO0lBRUQsT0FBTyxVQUFVLENBQUM7QUFDdEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFJVGFibGUsIEFJVGFibGVBY3Rpb24gfSBmcm9tICdAYWktdGFibGUvZ3JpZCc7XG5pbXBvcnQgdXBkYXRlRmllbGRWYWx1ZSBmcm9tICcuL3VwZGF0ZS1maWVsZC12YWx1ZSc7XG5pbXBvcnQgeyBTaGFyZWRUeXBlIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHNldE5vZGUgZnJvbSAnLi9zZXQtbm9kZSc7XG5pbXBvcnQgYWRkTm9kZSBmcm9tICcuL2FkZC1ub2RlJztcbmltcG9ydCByZW1vdmVOb2RlIGZyb20gJy4vcmVtb3ZlLW5vZGUnO1xuXG5leHBvcnQgdHlwZSBBY3Rpb25NYXBwZXI8TyBleHRlbmRzIEFJVGFibGVBY3Rpb24gPSBBSVRhYmxlQWN0aW9uPiA9IHtcbiAgICBbSyBpbiBPWyd0eXBlJ11dOiBPIGV4dGVuZHMgeyB0eXBlOiBLIH0gPyBBcHBseUZ1bmM8Tz4gOiBuZXZlcjtcbn07XG5cbmV4cG9ydCB0eXBlIEFwcGx5RnVuYzxPIGV4dGVuZHMgQUlUYWJsZUFjdGlvbiA9IEFJVGFibGVBY3Rpb24+ID0gKHNoYXJlZFR5cGU6IFNoYXJlZFR5cGUsIG9wOiBPKSA9PiBTaGFyZWRUeXBlO1xuXG5leHBvcnQgY29uc3QgYWN0aW9uTWFwcGVyczogUGFydGlhbDxBY3Rpb25NYXBwZXI8YW55Pj4gPSB7XG4gICAgYWRkX3JlY29yZDogYWRkTm9kZSxcbiAgICB1cGRhdGVfZmllbGRfdmFsdWU6IHVwZGF0ZUZpZWxkVmFsdWUsXG4gICAgcmVtb3ZlX3JlY29yZDogcmVtb3ZlTm9kZSxcbiAgICBhZGRfZmllbGQ6IGFkZE5vZGUsXG4gICAgc2V0X2ZpZWxkOiBzZXROb2RlLFxuICAgIHJlbW92ZV9maWVsZDogcmVtb3ZlTm9kZSxcbiAgICBzZXRfdmlldzogc2V0Tm9kZSxcbiAgICBhZGRfdmlldzogYWRkTm9kZSxcbiAgICByZW1vdmVfdmlldzogcmVtb3ZlTm9kZSxcbiAgICBhZGRfcmVjb3JkX3Bvc2l0aW9uOiBhZGROb2RlLFxuICAgIHJlbW92ZV9yZWNvcmRfcG9zaXRpb246IHJlbW92ZU5vZGVcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBhcHBseUFjdGlvbk9wcyhzaGFyZWRUeXBlOiBTaGFyZWRUeXBlLCBhY3Rpb25zOiBBSVRhYmxlQWN0aW9uW10sIGFpVGFibGU6IEFJVGFibGUpOiBTaGFyZWRUeXBlIHtcbiAgICBpZiAoYWN0aW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICAgIHNoYXJlZFR5cGUuZG9jIS50cmFuc2FjdCgoKSA9PiB7XG4gICAgICAgICAgICBhY3Rpb25zLmZvckVhY2goKGFjdGlvbikgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGFwcGx5ID0gYWN0aW9uTWFwcGVyc1thY3Rpb24udHlwZV0gYXMgQXBwbHlGdW5jPHR5cGVvZiBhY3Rpb24+O1xuICAgICAgICAgICAgICAgIGlmIChhcHBseSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gYXBwbHkoc2hhcmVkVHlwZSwgYWN0aW9uKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSwgYWlUYWJsZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHNoYXJlZFR5cGU7XG59XG4iXX0=
@@ -1,10 +1,12 @@
1
1
  import { ActionName } from '@ai-table/grid';
2
- import { ViewActionName } from '../../types';
2
+ import { PositionActionName, ViewActionName } from '../../types';
3
3
  import { getSharedMapValueIndex, getSharedRecordIndex } from '../utils';
4
4
  export default function removeNode(sharedType, action) {
5
+ const fields = sharedType.get('fields');
6
+ const records = sharedType.get('records');
7
+ const views = sharedType.get('views');
5
8
  switch (action.type) {
6
9
  case ActionName.RemoveRecord:
7
- const records = sharedType.get('records');
8
10
  if (records) {
9
11
  const recordIndex = getSharedRecordIndex(records, action.path[0]);
10
12
  if (recordIndex > -1) {
@@ -13,7 +15,6 @@ export default function removeNode(sharedType, action) {
13
15
  }
14
16
  break;
15
17
  case ViewActionName.RemoveView:
16
- const views = sharedType.get('views');
17
18
  if (views) {
18
19
  const viewIndex = getSharedMapValueIndex(views, action.path[0]);
19
20
  if (viewIndex > -1) {
@@ -21,14 +22,24 @@ export default function removeNode(sharedType, action) {
21
22
  }
22
23
  }
23
24
  break;
25
+ case PositionActionName.RemoveRecordPosition:
26
+ if (records) {
27
+ const recordIndex = getSharedRecordIndex(records, action.path[1]);
28
+ const record = records.get(recordIndex);
29
+ const customField = record.get(1);
30
+ const positionsIndex = customField.length - 1;
31
+ const positions = customField.get(positionsIndex);
32
+ delete positions[action.path[0]];
33
+ customField.delete(positionsIndex);
34
+ customField.insert(positionsIndex, [positions]);
35
+ }
36
+ break;
24
37
  case ActionName.RemoveField:
25
- const sharedFields = sharedType.get('fields');
26
- const sharedRecords = sharedType.get('records');
27
- if (sharedFields && sharedRecords) {
28
- const fieldIndex = getSharedMapValueIndex(sharedFields, action.path[0]);
38
+ if (fields && records) {
39
+ const fieldIndex = getSharedMapValueIndex(fields, action.path[0]);
29
40
  if (fieldIndex > -1) {
30
- sharedFields.delete(fieldIndex);
31
- for (let value of sharedRecords) {
41
+ fields.delete(fieldIndex);
42
+ for (let value of records) {
32
43
  value.get(1).delete(fieldIndex);
33
44
  }
34
45
  }
@@ -37,4 +48,4 @@ export default function removeNode(sharedType, action) {
37
48
  }
38
49
  return sharedType;
39
50
  }
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLW5vZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdGF0ZS9zcmMvc2hhcmVkL3RvLXlqcy9yZW1vdmUtbm9kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUF5QyxNQUFNLGdCQUFnQixDQUFDO0FBQ25GLE9BQU8sRUFBa0UsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzdHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUd4RSxNQUFNLENBQUMsT0FBTyxVQUFVLFVBQVUsQ0FBQyxVQUFzQixFQUFFLE1BQWlFO0lBQ3hILFFBQVEsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2xCLEtBQUssVUFBVSxDQUFDLFlBQVk7WUFDeEIsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQStCLENBQUM7WUFDeEUsSUFBSSxPQUFPLEVBQUUsQ0FBQztnQkFDVixNQUFNLFdBQVcsR0FBRyxvQkFBb0IsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNsRSxJQUFJLFdBQVcsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO29CQUNuQixPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUNoQyxDQUFDO1lBQ0wsQ0FBQztZQUNELE1BQU07UUFDVixLQUFLLGNBQWMsQ0FBQyxVQUFVO1lBQzFCLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUE2QixDQUFDO1lBQ2xFLElBQUksS0FBSyxFQUFFLENBQUM7Z0JBQ1IsTUFBTSxTQUFTLEdBQUcsc0JBQXNCLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDaEUsSUFBSSxTQUFTLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQztvQkFDakIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDNUIsQ0FBQztZQUNMLENBQUM7WUFDRCxNQUFNO1FBQ1YsS0FBSyxVQUFVLENBQUMsV0FBVztZQUN2QixNQUFNLFlBQVksR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBNEIsQ0FBQztZQUN6RSxNQUFNLGFBQWEsR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBOEIsQ0FBQztZQUM3RSxJQUFJLFlBQVksSUFBSSxhQUFhLEVBQUUsQ0FBQztnQkFDaEMsTUFBTSxVQUFVLEdBQUcsc0JBQXNCLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDeEUsSUFBSSxVQUFVLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQztvQkFDbEIsWUFBWSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztvQkFDaEMsS0FBSyxJQUFJLEtBQUssSUFBSSxhQUFhLEVBQUUsQ0FBQzt3QkFDOUIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7b0JBQ3BDLENBQUM7Z0JBQ0wsQ0FBQztZQUNMLENBQUM7WUFDRCxNQUFNO0lBQ2QsQ0FBQztJQUVELE9BQU8sVUFBVSxDQUFDO0FBQ3RCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3Rpb25OYW1lLCBSZW1vdmVGaWVsZEFjdGlvbiwgUmVtb3ZlUmVjb3JkQWN0aW9uIH0gZnJvbSAnQGFpLXRhYmxlL2dyaWQnO1xuaW1wb3J0IHsgUmVtb3ZlVmlld0FjdGlvbiwgU2hhcmVkVHlwZSwgU3luY0FycmF5RWxlbWVudCwgU3luY01hcEVsZW1lbnQsIFZpZXdBY3Rpb25OYW1lIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgZ2V0U2hhcmVkTWFwVmFsdWVJbmRleCwgZ2V0U2hhcmVkUmVjb3JkSW5kZXggfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgKiBhcyBZIGZyb20gJ3lqcyc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHJlbW92ZU5vZGUoc2hhcmVkVHlwZTogU2hhcmVkVHlwZSwgYWN0aW9uOiBSZW1vdmVGaWVsZEFjdGlvbiB8IFJlbW92ZVJlY29yZEFjdGlvbiB8IFJlbW92ZVZpZXdBY3Rpb24pOiBTaGFyZWRUeXBlIHtcbiAgICBzd2l0Y2ggKGFjdGlvbi50eXBlKSB7XG4gICAgICAgIGNhc2UgQWN0aW9uTmFtZS5SZW1vdmVSZWNvcmQ6XG4gICAgICAgICAgICBjb25zdCByZWNvcmRzID0gc2hhcmVkVHlwZS5nZXQoJ3JlY29yZHMnKSEgYXMgWS5BcnJheTxTeW5jQXJyYXlFbGVtZW50PjtcbiAgICAgICAgICAgIGlmIChyZWNvcmRzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVjb3JkSW5kZXggPSBnZXRTaGFyZWRSZWNvcmRJbmRleChyZWNvcmRzLCBhY3Rpb24ucGF0aFswXSk7XG4gICAgICAgICAgICAgICAgaWYgKHJlY29yZEluZGV4ID4gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVjb3Jkcy5kZWxldGUocmVjb3JkSW5kZXgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFZpZXdBY3Rpb25OYW1lLlJlbW92ZVZpZXc6XG4gICAgICAgICAgICBjb25zdCB2aWV3cyA9IHNoYXJlZFR5cGUuZ2V0KCd2aWV3cycpISBhcyBZLkFycmF5PFN5bmNNYXBFbGVtZW50PjtcbiAgICAgICAgICAgIGlmICh2aWV3cykge1xuICAgICAgICAgICAgICAgIGNvbnN0IHZpZXdJbmRleCA9IGdldFNoYXJlZE1hcFZhbHVlSW5kZXgodmlld3MsIGFjdGlvbi5wYXRoWzBdKTtcbiAgICAgICAgICAgICAgICBpZiAodmlld0luZGV4ID4gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgdmlld3MuZGVsZXRlKHZpZXdJbmRleCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgQWN0aW9uTmFtZS5SZW1vdmVGaWVsZDpcbiAgICAgICAgICAgIGNvbnN0IHNoYXJlZEZpZWxkcyA9IHNoYXJlZFR5cGUuZ2V0KCdmaWVsZHMnKSBhcyBZLkFycmF5PFN5bmNNYXBFbGVtZW50PjtcbiAgICAgICAgICAgIGNvbnN0IHNoYXJlZFJlY29yZHMgPSBzaGFyZWRUeXBlLmdldCgncmVjb3JkcycpIGFzIFkuQXJyYXk8U3luY0FycmF5RWxlbWVudD47XG4gICAgICAgICAgICBpZiAoc2hhcmVkRmllbGRzICYmIHNoYXJlZFJlY29yZHMpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBmaWVsZEluZGV4ID0gZ2V0U2hhcmVkTWFwVmFsdWVJbmRleChzaGFyZWRGaWVsZHMsIGFjdGlvbi5wYXRoWzBdKTtcbiAgICAgICAgICAgICAgICBpZiAoZmllbGRJbmRleCA+IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIHNoYXJlZEZpZWxkcy5kZWxldGUoZmllbGRJbmRleCk7XG4gICAgICAgICAgICAgICAgICAgIGZvciAobGV0IHZhbHVlIG9mIHNoYXJlZFJlY29yZHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlLmdldCgxKS5kZWxldGUoZmllbGRJbmRleCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICByZXR1cm4gc2hhcmVkVHlwZTtcbn1cbiJdfQ==
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLW5vZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdGF0ZS9zcmMvc2hhcmVkL3RvLXlqcy9yZW1vdmUtbm9kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUF5QyxNQUFNLGdCQUFnQixDQUFDO0FBQ25GLE9BQU8sRUFDSCxrQkFBa0IsRUFNbEIsY0FBYyxFQUNqQixNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFHeEUsTUFBTSxDQUFDLE9BQU8sVUFBVSxVQUFVLENBQzlCLFVBQXNCLEVBQ3RCLE1BQThGO0lBRTlGLE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUE0QixDQUFDO0lBQ25FLE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUE4QixDQUFDO0lBQ3ZFLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUE2QixDQUFDO0lBRWxFLFFBQVEsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2xCLEtBQUssVUFBVSxDQUFDLFlBQVk7WUFDeEIsSUFBSSxPQUFPLEVBQUUsQ0FBQztnQkFDVixNQUFNLFdBQVcsR0FBRyxvQkFBb0IsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNsRSxJQUFJLFdBQVcsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO29CQUNuQixPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUNoQyxDQUFDO1lBQ0wsQ0FBQztZQUNELE1BQU07UUFDVixLQUFLLGNBQWMsQ0FBQyxVQUFVO1lBQzFCLElBQUksS0FBSyxFQUFFLENBQUM7Z0JBQ1IsTUFBTSxTQUFTLEdBQUcsc0JBQXNCLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDaEUsSUFBSSxTQUFTLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQztvQkFDakIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDNUIsQ0FBQztZQUNMLENBQUM7WUFDRCxNQUFNO1FBQ1YsS0FBSyxrQkFBa0IsQ0FBQyxvQkFBb0I7WUFDeEMsSUFBSSxPQUFPLEVBQUUsQ0FBQztnQkFDVixNQUFNLFdBQVcsR0FBRyxvQkFBb0IsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNsRSxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUN4QyxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBaUIsQ0FBQztnQkFDbEQsTUFBTSxjQUFjLEdBQUcsV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7Z0JBQzlDLE1BQU0sU0FBUyxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7Z0JBQ2xELE9BQU8sU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDakMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztnQkFDbkMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBQ3BELENBQUM7WUFDRCxNQUFNO1FBQ1YsS0FBSyxVQUFVLENBQUMsV0FBVztZQUN2QixJQUFJLE1BQU0sSUFBSSxPQUFPLEVBQUUsQ0FBQztnQkFDcEIsTUFBTSxVQUFVLEdBQUcsc0JBQXNCLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDbEUsSUFBSSxVQUFVLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQztvQkFDbEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztvQkFDMUIsS0FBSyxJQUFJLEtBQUssSUFBSSxPQUFPLEVBQUUsQ0FBQzt3QkFDeEIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7b0JBQ3BDLENBQUM7Z0JBQ0wsQ0FBQztZQUNMLENBQUM7WUFDRCxNQUFNO0lBQ2QsQ0FBQztJQUVELE9BQU8sVUFBVSxDQUFDO0FBQ3RCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3Rpb25OYW1lLCBSZW1vdmVGaWVsZEFjdGlvbiwgUmVtb3ZlUmVjb3JkQWN0aW9uIH0gZnJvbSAnQGFpLXRhYmxlL2dyaWQnO1xuaW1wb3J0IHtcbiAgICBQb3NpdGlvbkFjdGlvbk5hbWUsXG4gICAgUmVtb3ZlUmVjb3JkUG9zaXRpb25BY3Rpb24sXG4gICAgUmVtb3ZlVmlld0FjdGlvbixcbiAgICBTaGFyZWRUeXBlLFxuICAgIFN5bmNBcnJheUVsZW1lbnQsXG4gICAgU3luY01hcEVsZW1lbnQsXG4gICAgVmlld0FjdGlvbk5hbWVcbn0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgZ2V0U2hhcmVkTWFwVmFsdWVJbmRleCwgZ2V0U2hhcmVkUmVjb3JkSW5kZXggfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgKiBhcyBZIGZyb20gJ3lqcyc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHJlbW92ZU5vZGUoXG4gICAgc2hhcmVkVHlwZTogU2hhcmVkVHlwZSxcbiAgICBhY3Rpb246IFJlbW92ZUZpZWxkQWN0aW9uIHwgUmVtb3ZlUmVjb3JkQWN0aW9uIHwgUmVtb3ZlVmlld0FjdGlvbiB8IFJlbW92ZVJlY29yZFBvc2l0aW9uQWN0aW9uXG4pOiBTaGFyZWRUeXBlIHtcbiAgICBjb25zdCBmaWVsZHMgPSBzaGFyZWRUeXBlLmdldCgnZmllbGRzJykgYXMgWS5BcnJheTxTeW5jTWFwRWxlbWVudD47XG4gICAgY29uc3QgcmVjb3JkcyA9IHNoYXJlZFR5cGUuZ2V0KCdyZWNvcmRzJykgYXMgWS5BcnJheTxTeW5jQXJyYXlFbGVtZW50PjtcbiAgICBjb25zdCB2aWV3cyA9IHNoYXJlZFR5cGUuZ2V0KCd2aWV3cycpISBhcyBZLkFycmF5PFN5bmNNYXBFbGVtZW50PjtcblxuICAgIHN3aXRjaCAoYWN0aW9uLnR5cGUpIHtcbiAgICAgICAgY2FzZSBBY3Rpb25OYW1lLlJlbW92ZVJlY29yZDpcbiAgICAgICAgICAgIGlmIChyZWNvcmRzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVjb3JkSW5kZXggPSBnZXRTaGFyZWRSZWNvcmRJbmRleChyZWNvcmRzLCBhY3Rpb24ucGF0aFswXSk7XG4gICAgICAgICAgICAgICAgaWYgKHJlY29yZEluZGV4ID4gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVjb3Jkcy5kZWxldGUocmVjb3JkSW5kZXgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFZpZXdBY3Rpb25OYW1lLlJlbW92ZVZpZXc6XG4gICAgICAgICAgICBpZiAodmlld3MpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB2aWV3SW5kZXggPSBnZXRTaGFyZWRNYXBWYWx1ZUluZGV4KHZpZXdzLCBhY3Rpb24ucGF0aFswXSk7XG4gICAgICAgICAgICAgICAgaWYgKHZpZXdJbmRleCA+IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIHZpZXdzLmRlbGV0ZSh2aWV3SW5kZXgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFBvc2l0aW9uQWN0aW9uTmFtZS5SZW1vdmVSZWNvcmRQb3NpdGlvbjpcbiAgICAgICAgICAgIGlmIChyZWNvcmRzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVjb3JkSW5kZXggPSBnZXRTaGFyZWRSZWNvcmRJbmRleChyZWNvcmRzLCBhY3Rpb24ucGF0aFsxXSk7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVjb3JkID0gcmVjb3Jkcy5nZXQocmVjb3JkSW5kZXgpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGN1c3RvbUZpZWxkID0gcmVjb3JkLmdldCgxKSBhcyBZLkFycmF5PGFueT47XG4gICAgICAgICAgICAgICAgY29uc3QgcG9zaXRpb25zSW5kZXggPSBjdXN0b21GaWVsZC5sZW5ndGggLSAxO1xuICAgICAgICAgICAgICAgIGNvbnN0IHBvc2l0aW9ucyA9IGN1c3RvbUZpZWxkLmdldChwb3NpdGlvbnNJbmRleCk7XG4gICAgICAgICAgICAgICAgZGVsZXRlIHBvc2l0aW9uc1thY3Rpb24ucGF0aFswXV07XG4gICAgICAgICAgICAgICAgY3VzdG9tRmllbGQuZGVsZXRlKHBvc2l0aW9uc0luZGV4KTtcbiAgICAgICAgICAgICAgICBjdXN0b21GaWVsZC5pbnNlcnQocG9zaXRpb25zSW5kZXgsIFtwb3NpdGlvbnNdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEFjdGlvbk5hbWUuUmVtb3ZlRmllbGQ6XG4gICAgICAgICAgICBpZiAoZmllbGRzICYmIHJlY29yZHMpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBmaWVsZEluZGV4ID0gZ2V0U2hhcmVkTWFwVmFsdWVJbmRleChmaWVsZHMsIGFjdGlvbi5wYXRoWzBdKTtcbiAgICAgICAgICAgICAgICBpZiAoZmllbGRJbmRleCA+IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkcy5kZWxldGUoZmllbGRJbmRleCk7XG4gICAgICAgICAgICAgICAgICAgIGZvciAobGV0IHZhbHVlIG9mIHJlY29yZHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlLmdldCgxKS5kZWxldGUoZmllbGRJbmRleCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICByZXR1cm4gc2hhcmVkVHlwZTtcbn1cbiJdfQ==
@@ -6,34 +6,37 @@ export var Direction;
6
6
  Direction[Direction["ascending"] = 1] = "ascending";
7
7
  Direction[Direction["descending"] = -1] = "descending";
8
8
  })(Direction || (Direction = {}));
9
- export var LogicalOperator;
10
- (function (LogicalOperator) {
11
- LogicalOperator["and"] = "and";
12
- LogicalOperator["or"] = "or";
13
- })(LogicalOperator || (LogicalOperator = {}));
14
- export var FilterOperationSymbol;
15
- (function (FilterOperationSymbol) {
16
- FilterOperationSymbol["eq"] = "eq";
17
- FilterOperationSymbol["gte"] = "gte";
18
- FilterOperationSymbol["lte"] = "lte";
19
- FilterOperationSymbol["gt"] = "gt";
20
- FilterOperationSymbol["lt"] = "lt";
21
- FilterOperationSymbol["in"] = "in";
22
- FilterOperationSymbol["contain"] = "contain";
23
- FilterOperationSymbol["ne"] = "ne";
24
- FilterOperationSymbol["nin"] = "nin";
25
- FilterOperationSymbol["between"] = "between";
26
- FilterOperationSymbol["besides"] = "besides";
27
- FilterOperationSymbol["empty"] = "empty";
28
- FilterOperationSymbol["exists"] = "exists";
29
- FilterOperationSymbol["notContain"] = "not_contain";
30
- })(FilterOperationSymbol || (FilterOperationSymbol = {}));
31
- export class GridSettings {
32
- }
9
+ export var AITableFilterLogical;
10
+ (function (AITableFilterLogical) {
11
+ AITableFilterLogical["and"] = "and";
12
+ AITableFilterLogical["or"] = "or";
13
+ })(AITableFilterLogical || (AITableFilterLogical = {}));
14
+ export var AITableFilterOperation;
15
+ (function (AITableFilterOperation) {
16
+ AITableFilterOperation["eq"] = "eq";
17
+ AITableFilterOperation["gte"] = "gte";
18
+ AITableFilterOperation["lte"] = "lte";
19
+ AITableFilterOperation["gt"] = "gt";
20
+ AITableFilterOperation["lt"] = "lt";
21
+ AITableFilterOperation["in"] = "in";
22
+ AITableFilterOperation["contain"] = "contain";
23
+ AITableFilterOperation["ne"] = "ne";
24
+ AITableFilterOperation["nin"] = "nin";
25
+ AITableFilterOperation["between"] = "between";
26
+ AITableFilterOperation["besides"] = "besides";
27
+ AITableFilterOperation["empty"] = "empty";
28
+ AITableFilterOperation["exists"] = "exists";
29
+ AITableFilterOperation["notContain"] = "not_contain";
30
+ })(AITableFilterOperation || (AITableFilterOperation = {}));
33
31
  export var ViewActionName;
34
32
  (function (ViewActionName) {
35
33
  ViewActionName["SetView"] = "set_view";
36
34
  ViewActionName["AddView"] = "add_view";
37
35
  ViewActionName["RemoveView"] = "remove_view";
38
36
  })(ViewActionName || (ViewActionName = {}));
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0YXRlL3NyYy90eXBlcy92aWV3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sT0FBTyxTQUFTO0NBRXJCO0FBY0QsTUFBTSxDQUFOLElBQVksU0FJWDtBQUpELFdBQVksU0FBUztJQUNqQiwrQ0FBVyxDQUFBO0lBQ1gsbURBQWEsQ0FBQTtJQUNiLHNEQUFlLENBQUE7QUFDbkIsQ0FBQyxFQUpXLFNBQVMsS0FBVCxTQUFTLFFBSXBCO0FBRUQsTUFBTSxDQUFOLElBQVksZUFHWDtBQUhELFdBQVksZUFBZTtJQUN2Qiw4QkFBVyxDQUFBO0lBQ1gsNEJBQVMsQ0FBQTtBQUNiLENBQUMsRUFIVyxlQUFlLEtBQWYsZUFBZSxRQUcxQjtBQUVELE1BQU0sQ0FBTixJQUFZLHFCQWVYO0FBZkQsV0FBWSxxQkFBcUI7SUFDN0Isa0NBQVMsQ0FBQTtJQUNULG9DQUFXLENBQUE7SUFDWCxvQ0FBVyxDQUFBO0lBQ1gsa0NBQVMsQ0FBQTtJQUNULGtDQUFTLENBQUE7SUFDVCxrQ0FBUyxDQUFBO0lBQ1QsNENBQW1CLENBQUE7SUFDbkIsa0NBQVMsQ0FBQTtJQUNULG9DQUFXLENBQUE7SUFDWCw0Q0FBbUIsQ0FBQTtJQUNuQiw0Q0FBbUIsQ0FBQTtJQUNuQix3Q0FBZSxDQUFBO0lBQ2YsMENBQWlCLENBQUE7SUFDakIsbURBQTBCLENBQUE7QUFDOUIsQ0FBQyxFQWZXLHFCQUFxQixLQUFyQixxQkFBcUIsUUFlaEM7QUFTRCxNQUFNLE9BQU8sWUFBWTtDQWF4QjtBQVdELE1BQU0sQ0FBTixJQUFZLGNBSVg7QUFKRCxXQUFZLGNBQWM7SUFDdEIsc0NBQW9CLENBQUE7SUFDcEIsc0NBQW9CLENBQUE7SUFDcEIsNENBQTBCLENBQUE7QUFDOUIsQ0FBQyxFQUpXLGNBQWMsS0FBZCxjQUFjLFFBSXpCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUlUYWJsZSwgQUlUYWJsZUFjdGlvbiwgQUlUYWJsZUZpZWxkLCBBSVRhYmxlUmVjb3JkIH0gZnJvbSAnQGFpLXRhYmxlL2dyaWQnO1xuaW1wb3J0IHsgV3JpdGFibGVTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElkIH0gZnJvbSAnbmd4LXRldGh5cy90eXBlcyc7XG5cbmV4cG9ydCBjbGFzcyBQb3NpdGlvbnMge1xuICAgIFt2aWV3X2lkOiBzdHJpbmddOiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZVZpZXdSZWNvcmQgZXh0ZW5kcyBBSVRhYmxlUmVjb3JkIHtcbiAgICBwb3NpdGlvbnM6IFBvc2l0aW9ucztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlVmlld0ZpZWxkIGV4dGVuZHMgQUlUYWJsZUZpZWxkIHtcbiAgICBwb3NpdGlvbnM6IFBvc2l0aW9ucztcbn1cblxuZXhwb3J0IHR5cGUgQUlUYWJsZVZpZXdSZWNvcmRzID0gQUlUYWJsZVZpZXdSZWNvcmRbXTtcblxuZXhwb3J0IHR5cGUgQUlUYWJsZVZpZXdGaWVsZHMgPSBBSVRhYmxlVmlld0ZpZWxkW107XG5cbmV4cG9ydCBlbnVtIERpcmVjdGlvbiB7XG4gICAgZGVmYXVsdCA9IDAsXG4gICAgYXNjZW5kaW5nID0gMSxcbiAgICBkZXNjZW5kaW5nID0gLTFcbn1cblxuZXhwb3J0IGVudW0gTG9naWNhbE9wZXJhdG9yIHtcbiAgICBhbmQgPSAnYW5kJyxcbiAgICBvciA9ICdvcidcbn1cblxuZXhwb3J0IGVudW0gRmlsdGVyT3BlcmF0aW9uU3ltYm9sIHtcbiAgICBlcSA9ICdlcScsXG4gICAgZ3RlID0gJ2d0ZScsXG4gICAgbHRlID0gJ2x0ZScsXG4gICAgZ3QgPSAnZ3QnLFxuICAgIGx0ID0gJ2x0JyxcbiAgICBpbiA9ICdpbicsXG4gICAgY29udGFpbiA9ICdjb250YWluJyxcbiAgICBuZSA9ICduZScsXG4gICAgbmluID0gJ25pbicsXG4gICAgYmV0d2VlbiA9ICdiZXR3ZWVuJyxcbiAgICBiZXNpZGVzID0gJ2Jlc2lkZXMnLFxuICAgIGVtcHR5ID0gJ2VtcHR5JyxcbiAgICBleGlzdHMgPSAnZXhpc3RzJyxcbiAgICBub3RDb250YWluID0gJ25vdF9jb250YWluJ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVWaWV3IHtcbiAgICBfaWQ6IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgZW1vamlfaWNvbj86IHN0cmluZztcbiAgICBzZXR0aW5ncz86IEdyaWRTZXR0aW5ncztcbn1cblxuZXhwb3J0IGNsYXNzIEdyaWRTZXR0aW5ncyB7XG4gICAgaXNfa2VlcF9zb3J0PzogYm9vbGVhbjtcbiAgICBzb3J0cz86IHtcbiAgICAgICAgc29ydF9ieTogSWQ7XG4gICAgICAgIGRpcmVjdGlvbjogRGlyZWN0aW9uO1xuICAgICAgICAvLyB4eHhcbiAgICB9W107XG4gICAgY29uZGl0aW9uX2xvZ2ljYWw/OiBMb2dpY2FsT3BlcmF0b3I7XG4gICAgY29uZGl0aW9ucz86IHtcbiAgICAgICAgZmllbGRfaWQ6IElkO1xuICAgICAgICBvcGVyYXRpb246IEZpbHRlck9wZXJhdGlvblN5bWJvbDtcbiAgICAgICAgdmFsdWU6IHN0cmluZyB8IFtdOyAvLyBUT0RPIOaYjuehruexu+Wei1xuICAgIH1bXTtcbn1cblxuZXhwb3J0IHR5cGUgQUlUYWJsZVZpZXdzID0gQUlUYWJsZVZpZXdbXTtcblxuZXhwb3J0IHR5cGUgQUlWaWV3UGF0aCA9IFtzdHJpbmddO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFJVmlld1RhYmxlIGV4dGVuZHMgQUlUYWJsZSB7XG4gICAgdmlld3M6IFdyaXRhYmxlU2lnbmFsPEFJVGFibGVWaWV3W10+O1xuICAgIGFwcGx5OiAoYWN0aW9uOiBBSVRhYmxlU2hhcmVkQWN0aW9uKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgZW51bSBWaWV3QWN0aW9uTmFtZSB7XG4gICAgU2V0VmlldyA9ICdzZXRfdmlldycsXG4gICAgQWRkVmlldyA9ICdhZGRfdmlldycsXG4gICAgUmVtb3ZlVmlldyA9ICdyZW1vdmVfdmlldydcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZXRWaWV3QWN0aW9uIHtcbiAgICB0eXBlOiBWaWV3QWN0aW9uTmFtZS5TZXRWaWV3O1xuICAgIHByb3BlcnRpZXM6IFBhcnRpYWw8QUlUYWJsZVZpZXc+O1xuICAgIG5ld1Byb3BlcnRpZXM6IFBhcnRpYWw8QUlUYWJsZVZpZXc+O1xuICAgIHBhdGg6IEFJVmlld1BhdGg7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWRkVmlld0FjdGlvbiB7XG4gICAgdHlwZTogVmlld0FjdGlvbk5hbWUuQWRkVmlldztcbiAgICB2aWV3OiBBSVRhYmxlVmlldztcbiAgICBwYXRoOiBbbnVtYmVyXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZW1vdmVWaWV3QWN0aW9uIHtcbiAgICB0eXBlOiBWaWV3QWN0aW9uTmFtZS5SZW1vdmVWaWV3O1xuICAgIHBhdGg6IEFJVmlld1BhdGg7XG59XG5cbmV4cG9ydCB0eXBlIEFJVGFibGVWaWV3QWN0aW9uID0gU2V0Vmlld0FjdGlvbiB8IEFkZFZpZXdBY3Rpb24gfCBSZW1vdmVWaWV3QWN0aW9uO1xuXG5leHBvcnQgdHlwZSBBSVRhYmxlU2hhcmVkQWN0aW9uID0gQUlUYWJsZVZpZXdBY3Rpb24gfCBBSVRhYmxlQWN0aW9uO1xuIl19
37
+ export var PositionActionName;
38
+ (function (PositionActionName) {
39
+ PositionActionName["AddRecordPosition"] = "add_record_position";
40
+ PositionActionName["RemoveRecordPosition"] = "remove_record_position";
41
+ })(PositionActionName || (PositionActionName = {}));
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0YXRlL3NyYy90eXBlcy92aWV3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sT0FBTyxTQUFTO0NBRXJCO0FBY0QsTUFBTSxDQUFOLElBQVksU0FJWDtBQUpELFdBQVksU0FBUztJQUNqQiwrQ0FBVyxDQUFBO0lBQ1gsbURBQWEsQ0FBQTtJQUNiLHNEQUFlLENBQUE7QUFDbkIsQ0FBQyxFQUpXLFNBQVMsS0FBVCxTQUFTLFFBSXBCO0FBRUQsTUFBTSxDQUFOLElBQVksb0JBR1g7QUFIRCxXQUFZLG9CQUFvQjtJQUM1QixtQ0FBVyxDQUFBO0lBQ1gsaUNBQVMsQ0FBQTtBQUNiLENBQUMsRUFIVyxvQkFBb0IsS0FBcEIsb0JBQW9CLFFBRy9CO0FBRUQsTUFBTSxDQUFOLElBQVksc0JBZVg7QUFmRCxXQUFZLHNCQUFzQjtJQUM5QixtQ0FBUyxDQUFBO0lBQ1QscUNBQVcsQ0FBQTtJQUNYLHFDQUFXLENBQUE7SUFDWCxtQ0FBUyxDQUFBO0lBQ1QsbUNBQVMsQ0FBQTtJQUNULG1DQUFTLENBQUE7SUFDVCw2Q0FBbUIsQ0FBQTtJQUNuQixtQ0FBUyxDQUFBO0lBQ1QscUNBQVcsQ0FBQTtJQUNYLDZDQUFtQixDQUFBO0lBQ25CLDZDQUFtQixDQUFBO0lBQ25CLHlDQUFlLENBQUE7SUFDZiwyQ0FBaUIsQ0FBQTtJQUNqQixvREFBMEIsQ0FBQTtBQUM5QixDQUFDLEVBZlcsc0JBQXNCLEtBQXRCLHNCQUFzQixRQWVqQztBQXVDRCxNQUFNLENBQU4sSUFBWSxjQUlYO0FBSkQsV0FBWSxjQUFjO0lBQ3RCLHNDQUFvQixDQUFBO0lBQ3BCLHNDQUFvQixDQUFBO0lBQ3BCLDRDQUEwQixDQUFBO0FBQzlCLENBQUMsRUFKVyxjQUFjLEtBQWQsY0FBYyxRQUl6QjtBQUVELE1BQU0sQ0FBTixJQUFZLGtCQUdYO0FBSEQsV0FBWSxrQkFBa0I7SUFDMUIsK0RBQXlDLENBQUE7SUFDekMscUVBQStDLENBQUE7QUFDbkQsQ0FBQyxFQUhXLGtCQUFrQixLQUFsQixrQkFBa0IsUUFHN0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBSVJlY29yZElkUGF0aCwgQUlUYWJsZSwgQUlUYWJsZUFjdGlvbiwgQUlUYWJsZUZpZWxkLCBBSVRhYmxlUmVjb3JkIH0gZnJvbSAnQGFpLXRhYmxlL2dyaWQnO1xuaW1wb3J0IHsgV3JpdGFibGVTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElkIH0gZnJvbSAnbmd4LXRldGh5cy90eXBlcyc7XG5cbmV4cG9ydCBjbGFzcyBQb3NpdGlvbnMge1xuICAgIFt2aWV3X2lkOiBzdHJpbmddOiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZVZpZXdSZWNvcmQgZXh0ZW5kcyBBSVRhYmxlUmVjb3JkIHtcbiAgICBwb3NpdGlvbnM6IFBvc2l0aW9ucztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlVmlld0ZpZWxkIGV4dGVuZHMgQUlUYWJsZUZpZWxkIHtcbiAgICBwb3NpdGlvbnM6IFBvc2l0aW9ucztcbn1cblxuZXhwb3J0IHR5cGUgQUlUYWJsZVZpZXdSZWNvcmRzID0gQUlUYWJsZVZpZXdSZWNvcmRbXTtcblxuZXhwb3J0IHR5cGUgQUlUYWJsZVZpZXdGaWVsZHMgPSBBSVRhYmxlVmlld0ZpZWxkW107XG5cbmV4cG9ydCBlbnVtIERpcmVjdGlvbiB7XG4gICAgZGVmYXVsdCA9IDAsXG4gICAgYXNjZW5kaW5nID0gMSxcbiAgICBkZXNjZW5kaW5nID0gLTFcbn1cblxuZXhwb3J0IGVudW0gQUlUYWJsZUZpbHRlckxvZ2ljYWwge1xuICAgIGFuZCA9ICdhbmQnLFxuICAgIG9yID0gJ29yJ1xufVxuXG5leHBvcnQgZW51bSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uIHtcbiAgICBlcSA9ICdlcScsXG4gICAgZ3RlID0gJ2d0ZScsXG4gICAgbHRlID0gJ2x0ZScsXG4gICAgZ3QgPSAnZ3QnLFxuICAgIGx0ID0gJ2x0JyxcbiAgICBpbiA9ICdpbicsXG4gICAgY29udGFpbiA9ICdjb250YWluJyxcbiAgICBuZSA9ICduZScsXG4gICAgbmluID0gJ25pbicsXG4gICAgYmV0d2VlbiA9ICdiZXR3ZWVuJyxcbiAgICBiZXNpZGVzID0gJ2Jlc2lkZXMnLFxuICAgIGVtcHR5ID0gJ2VtcHR5JyxcbiAgICBleGlzdHMgPSAnZXhpc3RzJyxcbiAgICBub3RDb250YWluID0gJ25vdF9jb250YWluJ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVWaWV3IHtcbiAgICBfaWQ6IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgZW1vamlfaWNvbj86IHN0cmluZztcbiAgICBzZXR0aW5ncz86IEdyaWRTZXR0aW5ncztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlRmlsdGVyQ29uZGl0aW9uPFRWYWx1ZSA9IHVua25vd24+IHtcbiAgICBmaWVsZF9pZDogSWQ7XG4gICAgb3BlcmF0aW9uOiBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uO1xuICAgIHZhbHVlOiBUVmFsdWU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZUZpbHRlckNvbmRpdGlvbnM8VFZhbHVlID0gdW5rbm93bj4ge1xuICAgIGNvbmRpdGlvbl9sb2dpY2FsPzogQUlUYWJsZUZpbHRlckxvZ2ljYWw7XG4gICAgY29uZGl0aW9ucz86IEFJVGFibGVGaWx0ZXJDb25kaXRpb248VFZhbHVlPltdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdyaWRTZXR0aW5nczxUVmFsdWUgPSB1bmtub3duPiBleHRlbmRzIEFJVGFibGVGaWx0ZXJDb25kaXRpb25zPFRWYWx1ZT4ge1xuICAgIGlzX2tlZXBfc29ydD86IGJvb2xlYW47XG4gICAgc29ydHM/OiB7XG4gICAgICAgIHNvcnRfYnk6IElkO1xuICAgICAgICBkaXJlY3Rpb246IERpcmVjdGlvbjtcbiAgICAgICAgLy8geHh4XG4gICAgfVtdO1xufVxuXG5leHBvcnQgdHlwZSBBSVRhYmxlVmlld3MgPSBBSVRhYmxlVmlld1tdO1xuXG5leHBvcnQgdHlwZSBBSVZpZXdJZFBhdGggPSBbc3RyaW5nXTtcblxuZXhwb3J0IGludGVyZmFjZSBBSVZpZXdUYWJsZSBleHRlbmRzIEFJVGFibGUge1xuICAgIHZpZXdzOiBXcml0YWJsZVNpZ25hbDxBSVRhYmxlVmlld1tdPjtcbiAgICBhY3RpdmVWaWV3SWQ6IFdyaXRhYmxlU2lnbmFsPHN0cmluZz47XG4gICAgYXBwbHk6IChhY3Rpb246IEFJVGFibGVTaGFyZWRBY3Rpb24pID0+IHZvaWQ7XG59XG5cbmV4cG9ydCBlbnVtIFZpZXdBY3Rpb25OYW1lIHtcbiAgICBTZXRWaWV3ID0gJ3NldF92aWV3JyxcbiAgICBBZGRWaWV3ID0gJ2FkZF92aWV3JyxcbiAgICBSZW1vdmVWaWV3ID0gJ3JlbW92ZV92aWV3J1xufVxuXG5leHBvcnQgZW51bSBQb3NpdGlvbkFjdGlvbk5hbWUge1xuICAgIEFkZFJlY29yZFBvc2l0aW9uID0gJ2FkZF9yZWNvcmRfcG9zaXRpb24nLFxuICAgIFJlbW92ZVJlY29yZFBvc2l0aW9uID0gJ3JlbW92ZV9yZWNvcmRfcG9zaXRpb24nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2V0Vmlld0FjdGlvbiB7XG4gICAgdHlwZTogVmlld0FjdGlvbk5hbWUuU2V0VmlldztcbiAgICBwcm9wZXJ0aWVzOiBQYXJ0aWFsPEFJVGFibGVWaWV3PjtcbiAgICBuZXdQcm9wZXJ0aWVzOiBQYXJ0aWFsPEFJVGFibGVWaWV3PjtcbiAgICBwYXRoOiBBSVZpZXdJZFBhdGg7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWRkVmlld0FjdGlvbiB7XG4gICAgdHlwZTogVmlld0FjdGlvbk5hbWUuQWRkVmlldztcbiAgICB2aWV3OiBBSVRhYmxlVmlldztcbiAgICBwYXRoOiBbbnVtYmVyXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZW1vdmVWaWV3QWN0aW9uIHtcbiAgICB0eXBlOiBWaWV3QWN0aW9uTmFtZS5SZW1vdmVWaWV3O1xuICAgIHBhdGg6IEFJVmlld0lkUGF0aDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZGRSZWNvcmRQb3NpdGlvbkFjdGlvbiB7XG4gICAgdHlwZTogUG9zaXRpb25BY3Rpb25OYW1lLkFkZFJlY29yZFBvc2l0aW9uO1xuICAgIHBvc2l0aW9uOiBQb3NpdGlvbnM7XG4gICAgcGF0aDogQUlSZWNvcmRJZFBhdGg7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVtb3ZlUmVjb3JkUG9zaXRpb25BY3Rpb24ge1xuICAgIHR5cGU6IFBvc2l0aW9uQWN0aW9uTmFtZS5SZW1vdmVSZWNvcmRQb3NpdGlvbjtcbiAgICBwYXRoOiBbc3RyaW5nLCBzdHJpbmddO1xufVxuXG5leHBvcnQgdHlwZSBBSVRhYmxlVmlld0FjdGlvbiA9IFNldFZpZXdBY3Rpb24gfCBBZGRWaWV3QWN0aW9uIHwgUmVtb3ZlVmlld0FjdGlvbjtcblxuZXhwb3J0IHR5cGUgQUlUYWJsZVBvc2l0aW9uQWN0aW9uID0gQWRkUmVjb3JkUG9zaXRpb25BY3Rpb24gfCBSZW1vdmVSZWNvcmRQb3NpdGlvbkFjdGlvbjtcblxuZXhwb3J0IHR5cGUgQUlUYWJsZVNoYXJlZEFjdGlvbiA9IEFJVGFibGVWaWV3QWN0aW9uIHwgQUlUYWJsZUFjdGlvbiB8IEFJVGFibGVQb3NpdGlvbkFjdGlvbjtcbiJdfQ==
@@ -0,0 +1,16 @@
1
+ import { getFilteredRecords } from './filter-records';
2
+ export function sortByView(data, activeViewId) {
3
+ const hasPositions = data.every((item) => item.positions && item.positions);
4
+ if (hasPositions) {
5
+ return [...data].sort((a, b) => a.positions[activeViewId] - b.positions[activeViewId]);
6
+ }
7
+ return data;
8
+ }
9
+ export function buildRecordsByView(records, fields, activeView) {
10
+ const filteredRecords = getFilteredRecords(records, fields, activeView);
11
+ return sortByView(filteredRecords, activeView._id);
12
+ }
13
+ export function buildFieldsByView(fields, activeView) {
14
+ return sortByView(fields, activeView._id);
15
+ }
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdGF0ZS9zcmMvdXRpbHMvYnVpbGQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFdEQsTUFBTSxVQUFVLFVBQVUsQ0FBQyxJQUE0QyxFQUFFLFlBQW9CO0lBQ3pGLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzVFLElBQUksWUFBWSxFQUFFLENBQUM7UUFDZixPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztJQUMzRixDQUFDO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDaEIsQ0FBQztBQUVELE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxPQUEyQixFQUFFLE1BQXlCLEVBQUUsVUFBdUI7SUFDOUcsTUFBTSxlQUFlLEdBQUcsa0JBQWtCLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQztJQUN4RSxPQUFPLFVBQVUsQ0FBQyxlQUFlLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3ZELENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsTUFBeUIsRUFBRSxVQUF1QjtJQUNoRixPQUFPLFVBQVUsQ0FBQyxNQUEyQixFQUFFLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNuRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUlUYWJsZVZpZXcsIEFJVGFibGVWaWV3RmllbGRzLCBBSVRhYmxlVmlld1JlY29yZHMgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBnZXRGaWx0ZXJlZFJlY29yZHMgfSBmcm9tICcuL2ZpbHRlci1yZWNvcmRzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHNvcnRCeVZpZXcoZGF0YTogQUlUYWJsZVZpZXdSZWNvcmRzIHwgQUlUYWJsZVZpZXdGaWVsZHMsIGFjdGl2ZVZpZXdJZDogc3RyaW5nKSB7XG4gICAgY29uc3QgaGFzUG9zaXRpb25zID0gZGF0YS5ldmVyeSgoaXRlbSkgPT4gaXRlbS5wb3NpdGlvbnMgJiYgaXRlbS5wb3NpdGlvbnMpO1xuICAgIGlmIChoYXNQb3NpdGlvbnMpIHtcbiAgICAgICAgcmV0dXJuIFsuLi5kYXRhXS5zb3J0KChhLCBiKSA9PiBhLnBvc2l0aW9uc1thY3RpdmVWaWV3SWRdIC0gYi5wb3NpdGlvbnNbYWN0aXZlVmlld0lkXSk7XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRSZWNvcmRzQnlWaWV3KHJlY29yZHM6IEFJVGFibGVWaWV3UmVjb3JkcywgZmllbGRzOiBBSVRhYmxlVmlld0ZpZWxkcywgYWN0aXZlVmlldzogQUlUYWJsZVZpZXcpIHtcbiAgICBjb25zdCBmaWx0ZXJlZFJlY29yZHMgPSBnZXRGaWx0ZXJlZFJlY29yZHMocmVjb3JkcywgZmllbGRzLCBhY3RpdmVWaWV3KTtcbiAgICByZXR1cm4gc29ydEJ5VmlldyhmaWx0ZXJlZFJlY29yZHMsIGFjdGl2ZVZpZXcuX2lkKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkRmllbGRzQnlWaWV3KGZpZWxkczogQUlUYWJsZVZpZXdGaWVsZHMsIGFjdGl2ZVZpZXc6IEFJVGFibGVWaWV3KSB7XG4gICAgcmV0dXJuIHNvcnRCeVZpZXcoZmllbGRzIGFzIEFJVGFibGVWaWV3RmllbGRzLCBhY3RpdmVWaWV3Ll9pZCk7XG59XG4iXX0=
@@ -0,0 +1,11 @@
1
+ import { isUndefinedOrNull, isEmpty as isArrayEmpty, isArray, isObject } from 'ngx-tethys/util';
2
+ export function isEmpty(value) {
3
+ if (isArray(value)) {
4
+ return isArrayEmpty(value);
5
+ }
6
+ if (isObject(value)) {
7
+ return Reflect.ownKeys(value).length === 0;
8
+ }
9
+ return isUndefinedOrNull(value) || value == '';
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RhdGUvc3JjL3V0aWxzL2NvbW1vbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsT0FBTyxJQUFJLFlBQVksRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFaEcsTUFBTSxVQUFVLE9BQU8sQ0FBQyxLQUFVO0lBQzlCLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDakIsT0FBTyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQUksUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDbEIsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELE9BQU8saUJBQWlCLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUUsQ0FBQztBQUNuRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNVbmRlZmluZWRPck51bGwsIGlzRW1wdHkgYXMgaXNBcnJheUVtcHR5LCBpc0FycmF5LCBpc09iamVjdCB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0VtcHR5KHZhbHVlOiBhbnkpIHtcbiAgICBpZiAoaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIGlzQXJyYXlFbXB0eSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgaWYgKGlzT2JqZWN0KHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gUmVmbGVjdC5vd25LZXlzKHZhbHVlKS5sZW5ndGggPT09IDA7XG4gICAgfVxuXG4gICAgcmV0dXJuIGlzVW5kZWZpbmVkT3JOdWxsKHZhbHVlKSB8fCB2YWx1ZSA9PSAnJztcbn1cbiJdfQ==
@@ -0,0 +1,56 @@
1
+ import { Field } from './field';
2
+ import { fromUnixTime, subDays } from 'date-fns';
3
+ import { isArray, TinyDate } from 'ngx-tethys/util';
4
+ import { AITableFilterOperation } from '../../types';
5
+ import { isEmpty } from '../common';
6
+ export class DateField extends Field {
7
+ isMeetFilter(condition, cellValue) {
8
+ const [left, right] = this.getTimeRange(condition.value);
9
+ switch (condition.operation) {
10
+ case AITableFilterOperation.empty:
11
+ return isEmpty(cellValue.timestamp) || cellValue.timestamp === 0;
12
+ case AITableFilterOperation.exists:
13
+ return !isEmpty(cellValue.timestamp) && cellValue.timestamp !== 0;
14
+ case AITableFilterOperation.eq:
15
+ return left <= cellValue.timestamp && cellValue.timestamp < right;
16
+ case AITableFilterOperation.gt:
17
+ return cellValue.timestamp > right;
18
+ case AITableFilterOperation.lt:
19
+ return cellValue.timestamp < left;
20
+ case AITableFilterOperation.between:
21
+ return left <= cellValue.timestamp && cellValue.timestamp < right;
22
+ default:
23
+ return super.isMeetFilter(condition, cellValue);
24
+ }
25
+ }
26
+ getTimeRange(value) {
27
+ switch (value) {
28
+ case 'today':
29
+ return [new TinyDate(new Date()).startOfDay().getUnixTime(), new TinyDate(new Date()).endOfDay().getUnixTime()];
30
+ case 'current_week':
31
+ return [
32
+ new TinyDate().startOfWeek({ weekStartsOn: 1 }).getUnixTime(),
33
+ new TinyDate().endOfWeek({ weekStartsOn: 1 }).getUnixTime()
34
+ ];
35
+ case 'yesterday':
36
+ return [
37
+ new TinyDate(subDays(new Date(), 1)).startOfDay().getUnixTime(),
38
+ new TinyDate(subDays(new Date(), 1)).endOfDay().getUnixTime()
39
+ ];
40
+ case 'current_month':
41
+ return [new TinyDate().startOfMonth().getUnixTime(), new TinyDate().endOfMonth().getUnixTime()];
42
+ default:
43
+ if (isArray(value)) {
44
+ return [
45
+ new TinyDate(fromUnixTime(value[0])).startOfDay().getUnixTime(),
46
+ new TinyDate(fromUnixTime(value[1])).endOfDay().getUnixTime()
47
+ ];
48
+ }
49
+ return [
50
+ new TinyDate(fromUnixTime(value)).startOfDay().getUnixTime(),
51
+ new TinyDate(fromUnixTime(value)).endOfDay().getUnixTime()
52
+ ];
53
+ }
54
+ }
55
+ }
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0YXRlL3NyYy91dGlscy9maWVsZC9kYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFaEMsT0FBTyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDakQsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQTBCLHNCQUFzQixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQzVFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFcEMsTUFBTSxPQUFPLFNBQVUsU0FBUSxLQUFLO0lBQ3ZCLFlBQVksQ0FBQyxTQUF5QyxFQUFFLFNBQXlCO1FBQ3RGLE1BQU0sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekQsUUFBUSxTQUFTLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDMUIsS0FBSyxzQkFBc0IsQ0FBQyxLQUFLO2dCQUM3QixPQUFPLE9BQU8sQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUksU0FBUyxDQUFDLFNBQVMsS0FBSyxDQUFDLENBQUM7WUFDckUsS0FBSyxzQkFBc0IsQ0FBQyxNQUFNO2dCQUM5QixPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxTQUFTLENBQUMsU0FBUyxLQUFLLENBQUMsQ0FBQztZQUN0RSxLQUFLLHNCQUFzQixDQUFDLEVBQUU7Z0JBQzFCLE9BQU8sSUFBSSxJQUFJLFNBQVMsQ0FBQyxTQUFTLElBQUksU0FBUyxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7WUFDdEUsS0FBSyxzQkFBc0IsQ0FBQyxFQUFFO2dCQUMxQixPQUFPLFNBQVMsQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1lBQ3ZDLEtBQUssc0JBQXNCLENBQUMsRUFBRTtnQkFDMUIsT0FBTyxTQUFTLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztZQUN0QyxLQUFLLHNCQUFzQixDQUFDLE9BQU87Z0JBQy9CLE9BQU8sSUFBSSxJQUFJLFNBQVMsQ0FBQyxTQUFTLElBQUksU0FBUyxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7WUFDdEU7Z0JBQ0ksT0FBTyxLQUFLLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUN4RCxDQUFDO0lBQ0wsQ0FBQztJQUVELFlBQVksQ0FBQyxLQUFpQztRQUMxQyxRQUFRLEtBQUssRUFBRSxDQUFDO1lBQ1osS0FBSyxPQUFPO2dCQUNSLE9BQU8sQ0FBQyxJQUFJLFFBQVEsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxRQUFRLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7WUFDcEgsS0FBSyxjQUFjO2dCQUNmLE9BQU87b0JBQ0gsSUFBSSxRQUFRLEVBQUUsQ0FBQyxXQUFXLENBQUMsRUFBRSxZQUFZLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxXQUFXLEVBQUU7b0JBQzdELElBQUksUUFBUSxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsWUFBWSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsV0FBVyxFQUFFO2lCQUM5RCxDQUFDO1lBQ04sS0FBSyxXQUFXO2dCQUNaLE9BQU87b0JBQ0gsSUFBSSxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxXQUFXLEVBQUU7b0JBQy9ELElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsV0FBVyxFQUFFO2lCQUNoRSxDQUFDO1lBQ04sS0FBSyxlQUFlO2dCQUNoQixPQUFPLENBQUMsSUFBSSxRQUFRLEVBQUUsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxXQUFXLEVBQUUsRUFBRSxJQUFJLFFBQVEsRUFBRSxDQUFDLFVBQVUsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7WUFDcEc7Z0JBQ0ksSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztvQkFDakIsT0FBTzt3QkFDSCxJQUFJLFFBQVEsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBVyxDQUFDLENBQUMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxXQUFXLEVBQUU7d0JBQ3pFLElBQUksUUFBUSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFXLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLFdBQVcsRUFBRTtxQkFDMUUsQ0FBQztnQkFDTixDQUFDO2dCQUNELE9BQU87b0JBQ0gsSUFBSSxRQUFRLENBQUMsWUFBWSxDQUFDLEtBQWUsQ0FBQyxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUMsV0FBVyxFQUFFO29CQUN0RSxJQUFJLFFBQVEsQ0FBQyxZQUFZLENBQUMsS0FBZSxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxXQUFXLEVBQUU7aUJBQ3ZFLENBQUM7UUFDVixDQUFDO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuL2ZpZWxkJztcbmltcG9ydCB7IERhdGVGaWVsZFZhbHVlIH0gZnJvbSAnQGFpLXRhYmxlL2dyaWQnO1xuaW1wb3J0IHsgZnJvbVVuaXhUaW1lLCBzdWJEYXlzIH0gZnJvbSAnZGF0ZS1mbnMnO1xuaW1wb3J0IHsgaXNBcnJheSwgVGlueURhdGUgfSBmcm9tICduZ3gtdGV0aHlzL3V0aWwnO1xuaW1wb3J0IHsgQUlUYWJsZUZpbHRlckNvbmRpdGlvbiwgQUlUYWJsZUZpbHRlck9wZXJhdGlvbiB9IGZyb20gJy4uLy4uL3R5cGVzJ1xuaW1wb3J0IHsgaXNFbXB0eSB9IGZyb20gJy4uL2NvbW1vbic7XG5cbmV4cG9ydCBjbGFzcyBEYXRlRmllbGQgZXh0ZW5kcyBGaWVsZCB7XG4gICAgb3ZlcnJpZGUgaXNNZWV0RmlsdGVyKGNvbmRpdGlvbjogQUlUYWJsZUZpbHRlckNvbmRpdGlvbjxzdHJpbmc+LCBjZWxsVmFsdWU6IERhdGVGaWVsZFZhbHVlKSB7XG4gICAgICAgIGNvbnN0IFtsZWZ0LCByaWdodF0gPSB0aGlzLmdldFRpbWVSYW5nZShjb25kaXRpb24udmFsdWUpO1xuICAgICAgICBzd2l0Y2ggKGNvbmRpdGlvbi5vcGVyYXRpb24pIHtcbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpbHRlck9wZXJhdGlvbi5lbXB0eTpcbiAgICAgICAgICAgICAgICByZXR1cm4gaXNFbXB0eShjZWxsVmFsdWUudGltZXN0YW1wKSB8fCBjZWxsVmFsdWUudGltZXN0YW1wID09PSAwO1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmV4aXN0czpcbiAgICAgICAgICAgICAgICByZXR1cm4gIWlzRW1wdHkoY2VsbFZhbHVlLnRpbWVzdGFtcCkgJiYgY2VsbFZhbHVlLnRpbWVzdGFtcCAhPT0gMDtcbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpbHRlck9wZXJhdGlvbi5lcTpcbiAgICAgICAgICAgICAgICByZXR1cm4gbGVmdCA8PSBjZWxsVmFsdWUudGltZXN0YW1wICYmIGNlbGxWYWx1ZS50aW1lc3RhbXAgPCByaWdodDtcbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpbHRlck9wZXJhdGlvbi5ndDpcbiAgICAgICAgICAgICAgICByZXR1cm4gY2VsbFZhbHVlLnRpbWVzdGFtcCA+IHJpZ2h0O1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBjZWxsVmFsdWUudGltZXN0YW1wIDwgbGVmdDtcbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpbHRlck9wZXJhdGlvbi5iZXR3ZWVuOlxuICAgICAgICAgICAgICAgIHJldHVybiBsZWZ0IDw9IGNlbGxWYWx1ZS50aW1lc3RhbXAgJiYgY2VsbFZhbHVlLnRpbWVzdGFtcCA8IHJpZ2h0O1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gc3VwZXIuaXNNZWV0RmlsdGVyKGNvbmRpdGlvbiwgY2VsbFZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldFRpbWVSYW5nZSh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgbnVtYmVyW10pIHtcbiAgICAgICAgc3dpdGNoICh2YWx1ZSkge1xuICAgICAgICAgICAgY2FzZSAndG9kYXknOlxuICAgICAgICAgICAgICAgIHJldHVybiBbbmV3IFRpbnlEYXRlKG5ldyBEYXRlKCkpLnN0YXJ0T2ZEYXkoKS5nZXRVbml4VGltZSgpLCBuZXcgVGlueURhdGUobmV3IERhdGUoKSkuZW5kT2ZEYXkoKS5nZXRVbml4VGltZSgpXTtcbiAgICAgICAgICAgIGNhc2UgJ2N1cnJlbnRfd2Vlayc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICAgICAgICAgbmV3IFRpbnlEYXRlKCkuc3RhcnRPZldlZWsoeyB3ZWVrU3RhcnRzT246IDEgfSkuZ2V0VW5peFRpbWUoKSxcbiAgICAgICAgICAgICAgICAgICAgbmV3IFRpbnlEYXRlKCkuZW5kT2ZXZWVrKHsgd2Vla1N0YXJ0c09uOiAxIH0pLmdldFVuaXhUaW1lKClcbiAgICAgICAgICAgICAgICBdO1xuICAgICAgICAgICAgY2FzZSAneWVzdGVyZGF5JzpcbiAgICAgICAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgICAgICAgICBuZXcgVGlueURhdGUoc3ViRGF5cyhuZXcgRGF0ZSgpLCAxKSkuc3RhcnRPZkRheSgpLmdldFVuaXhUaW1lKCksXG4gICAgICAgICAgICAgICAgICAgIG5ldyBUaW55RGF0ZShzdWJEYXlzKG5ldyBEYXRlKCksIDEpKS5lbmRPZkRheSgpLmdldFVuaXhUaW1lKClcbiAgICAgICAgICAgICAgICBdO1xuICAgICAgICAgICAgY2FzZSAnY3VycmVudF9tb250aCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFtuZXcgVGlueURhdGUoKS5zdGFydE9mTW9udGgoKS5nZXRVbml4VGltZSgpLCBuZXcgVGlueURhdGUoKS5lbmRPZk1vbnRoKCkuZ2V0VW5peFRpbWUoKV07XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIGlmIChpc0FycmF5KHZhbHVlKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgICAgICAgICAgICAgbmV3IFRpbnlEYXRlKGZyb21Vbml4VGltZSh2YWx1ZVswXSBhcyBudW1iZXIpKS5zdGFydE9mRGF5KCkuZ2V0VW5peFRpbWUoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBUaW55RGF0ZShmcm9tVW5peFRpbWUodmFsdWVbMV0gYXMgbnVtYmVyKSkuZW5kT2ZEYXkoKS5nZXRVbml4VGltZSgpXG4gICAgICAgICAgICAgICAgICAgIF07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAgICAgICAgIG5ldyBUaW55RGF0ZShmcm9tVW5peFRpbWUodmFsdWUgYXMgbnVtYmVyKSkuc3RhcnRPZkRheSgpLmdldFVuaXhUaW1lKCksXG4gICAgICAgICAgICAgICAgICAgIG5ldyBUaW55RGF0ZShmcm9tVW5peFRpbWUodmFsdWUgYXMgbnVtYmVyKSkuZW5kT2ZEYXkoKS5nZXRVbml4VGltZSgpXG4gICAgICAgICAgICAgICAgXTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==