@ai-table/state 0.0.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (77) hide show
  1. package/ai-table-state.d.ts.map +1 -0
  2. package/esm2022/ai-table-state.mjs +5 -0
  3. package/esm2022/index.mjs +2 -0
  4. package/esm2022/public-api.mjs +6 -0
  5. package/esm2022/shared/index.mjs +5 -0
  6. package/esm2022/shared/to-table/array-event.mjs +136 -0
  7. package/esm2022/shared/to-table/index.mjs +29 -0
  8. package/esm2022/shared/to-table/map-event.mjs +50 -0
  9. package/esm2022/shared/to-yjs/add-node.mjs +30 -0
  10. package/esm2022/shared/to-yjs/index.mjs +30 -0
  11. package/esm2022/shared/to-yjs/remove-node.mjs +40 -0
  12. package/esm2022/shared/to-yjs/set-node.mjs +33 -0
  13. package/esm2022/shared/to-yjs/update-field-value.mjs +17 -0
  14. package/esm2022/shared/utils/index.mjs +4 -0
  15. package/esm2022/shared/utils/init-shared.mjs +48 -0
  16. package/esm2022/shared/utils/init-table.mjs +13 -0
  17. package/esm2022/shared/utils/translate.mjs +62 -0
  18. package/esm2022/shared/yjs-table.mjs +39 -0
  19. package/esm2022/types/index.mjs +3 -0
  20. package/esm2022/types/shared.mjs +2 -0
  21. package/esm2022/types/view.mjs +39 -0
  22. package/esm2022/view/action/general.mjs +53 -0
  23. package/esm2022/view/action/index.mjs +3 -0
  24. package/esm2022/view/action/view.mjs +47 -0
  25. package/esm2022/view/constants/view.mjs +3 -0
  26. package/esm2022/view/plugins/view.plugin.mjs +25 -0
  27. package/fesm2022/ai-table-state.mjs +668 -0
  28. package/fesm2022/ai-table-state.mjs.map +1 -0
  29. package/index.d.ts +2 -0
  30. package/index.d.ts.map +1 -0
  31. package/package.json +24 -0
  32. package/public-api.d.ts +6 -0
  33. package/public-api.d.ts.map +1 -0
  34. package/shared/index.d.ts +5 -0
  35. package/shared/index.d.ts.map +1 -0
  36. package/shared/to-table/array-event.d.ts +7 -0
  37. package/shared/to-table/array-event.d.ts.map +1 -0
  38. package/shared/to-table/index.d.ts +6 -0
  39. package/shared/to-table/index.d.ts.map +1 -0
  40. package/shared/to-table/map-event.d.ts +4 -0
  41. package/shared/to-table/map-event.d.ts.map +1 -0
  42. package/shared/to-yjs/add-node.d.ts +4 -0
  43. package/shared/to-yjs/add-node.d.ts.map +1 -0
  44. package/shared/to-yjs/index.d.ts +11 -0
  45. package/shared/to-yjs/index.d.ts.map +1 -0
  46. package/shared/to-yjs/remove-node.d.ts +4 -0
  47. package/shared/to-yjs/remove-node.d.ts.map +1 -0
  48. package/shared/to-yjs/set-node.d.ts +4 -0
  49. package/shared/to-yjs/set-node.d.ts.map +1 -0
  50. package/shared/to-yjs/update-field-value.d.ts +4 -0
  51. package/shared/to-yjs/update-field-value.d.ts.map +1 -0
  52. package/shared/utils/index.d.ts +4 -0
  53. package/shared/utils/index.d.ts.map +1 -0
  54. package/shared/utils/init-shared.d.ts +16 -0
  55. package/shared/utils/init-shared.d.ts.map +1 -0
  56. package/shared/utils/init-table.d.ts +7 -0
  57. package/shared/utils/init-table.d.ts.map +1 -0
  58. package/shared/utils/translate.d.ts +15 -0
  59. package/shared/utils/translate.d.ts.map +1 -0
  60. package/shared/yjs-table.d.ts +14 -0
  61. package/shared/yjs-table.d.ts.map +1 -0
  62. package/types/index.d.ts +3 -0
  63. package/types/index.d.ts.map +1 -0
  64. package/types/shared.d.ts +5 -0
  65. package/types/shared.d.ts.map +1 -0
  66. package/types/view.d.ts +87 -0
  67. package/types/view.d.ts.map +1 -0
  68. package/view/action/general.d.ts +6 -0
  69. package/view/action/general.d.ts.map +1 -0
  70. package/view/action/index.d.ts +3 -0
  71. package/view/action/index.d.ts.map +1 -0
  72. package/view/action/view.d.ts +10 -0
  73. package/view/action/view.d.ts.map +1 -0
  74. package/view/constants/view.d.ts +3 -0
  75. package/view/constants/view.d.ts.map +1 -0
  76. package/view/plugins/view.plugin.d.ts +3 -0
  77. package/view/plugins/view.plugin.d.ts.map +1 -0
@@ -0,0 +1,62 @@
1
+ export const translateToRecordValues = (arrayRecord, fields) => {
2
+ const fieldIds = fields.map((item) => item._id);
3
+ const recordValue = {};
4
+ fieldIds.forEach((item, index) => {
5
+ recordValue[item] = arrayRecord[index] || '';
6
+ });
7
+ return recordValue;
8
+ };
9
+ export const translateToRecords = (arrayRecords, fields) => {
10
+ return arrayRecords.map((record) => {
11
+ const [nonEditableArray, editableArray] = record;
12
+ return {
13
+ _id: nonEditableArray[0]['_id'],
14
+ positions: editableArray[editableArray.length - 1],
15
+ values: translateToRecordValues(editableArray.slice(0, editableArray.length - 1), fields)
16
+ };
17
+ });
18
+ };
19
+ export function translatePositionToPath(data, position, activeViewId) {
20
+ let index = data.findIndex((value, index) => {
21
+ if (index === 0) {
22
+ return position < value.positions[activeViewId];
23
+ }
24
+ return position > data[index - 1].positions[activeViewId] && position < value.positions[activeViewId];
25
+ });
26
+ if (index === -1) {
27
+ index = data.length;
28
+ }
29
+ return [index];
30
+ }
31
+ export function getShareTypeNumberPath(path) {
32
+ return path.filter((node) => typeof node === 'number');
33
+ }
34
+ export function getSharedRecordId(records, recordIndex) {
35
+ return records && records.get(recordIndex).get(0).get(0)['_id'];
36
+ }
37
+ export function getSharedMapValueId(values, index) {
38
+ return values && values.get(index).get('_id');
39
+ }
40
+ export function getSharedRecordIndex(sharedRecords, recordId) {
41
+ let recordIndex = -1;
42
+ for (let index = 0; index < sharedRecords.length; index++) {
43
+ const sharedRecordId = getSharedRecordId(sharedRecords, index);
44
+ if (sharedRecordId === recordId) {
45
+ recordIndex = index;
46
+ break;
47
+ }
48
+ }
49
+ return recordIndex;
50
+ }
51
+ export function getSharedMapValueIndex(sharedNodes, id) {
52
+ let nodeIndex = -1;
53
+ for (let index = 0; index < sharedNodes.length; index++) {
54
+ const sharedId = getSharedMapValueId(sharedNodes, index);
55
+ if (sharedId === id) {
56
+ nodeIndex = index;
57
+ break;
58
+ }
59
+ }
60
+ return nodeIndex;
61
+ }
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RhdGUvc3JjL3NoYXJlZC91dGlscy90cmFuc2xhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsQ0FBQyxXQUFrQixFQUFFLE1BQXlCLEVBQUUsRUFBRTtJQUNyRixNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDaEQsTUFBTSxXQUFXLEdBQXdCLEVBQUUsQ0FBQztJQUM1QyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFO1FBQzdCLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2pELENBQUMsQ0FBQyxDQUFDO0lBQ0gsT0FBTyxXQUFXLENBQUM7QUFDdkIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxZQUFtQixFQUFFLE1BQXlCLEVBQUUsRUFBRTtJQUNqRixPQUFPLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRTtRQUNwQyxNQUFNLENBQUMsZ0JBQWdCLEVBQUUsYUFBYSxDQUFDLEdBQUcsTUFBTSxDQUFDO1FBQ2pELE9BQU87WUFDSCxHQUFHLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBQy9CLFNBQVMsRUFBRSxhQUFhLENBQUMsYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7WUFDbEQsTUFBTSxFQUFFLHVCQUF1QixDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDO1NBQzVGLENBQUM7SUFDTixDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMsQ0FBQztBQUVGLE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxJQUE0QyxFQUFFLFFBQWdCLEVBQUUsWUFBb0I7SUFDeEgsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRTtRQUN4QyxJQUFJLEtBQUssS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNkLE9BQU8sUUFBUSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDcEQsQ0FBQztRQUNELE9BQU8sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxJQUFJLFFBQVEsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzFHLENBQUMsQ0FBQyxDQUFDO0lBQ0gsSUFBSSxLQUFLLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNmLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDbkIsQ0FBQztBQUVELE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxJQUF5QjtJQUM1RCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLE9BQU8sSUFBSSxLQUFLLFFBQVEsQ0FBYSxDQUFDO0FBQ3ZFLENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsT0FBa0MsRUFBRSxXQUFtQjtJQUNyRixPQUFPLE9BQU8sSUFBSyxPQUFxQyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ25HLENBQUM7QUFFRCxNQUFNLFVBQVUsbUJBQW1CLENBQUMsTUFBK0IsRUFBRSxLQUFhO0lBQzlFLE9BQU8sTUFBTSxJQUFJLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ2xELENBQUM7QUFFRCxNQUFNLFVBQVUsb0JBQW9CLENBQUMsYUFBd0MsRUFBRSxRQUFnQjtJQUMzRixJQUFJLFdBQVcsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNyQixLQUFLLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxLQUFLLEdBQUcsYUFBYSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDO1FBQ3hELE1BQU0sY0FBYyxHQUFHLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMvRCxJQUFJLGNBQWMsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUM5QixXQUFXLEdBQUcsS0FBSyxDQUFDO1lBQ3BCLE1BQU07UUFDVixDQUFDO0lBQ0wsQ0FBQztJQUNELE9BQU8sV0FBVyxDQUFDO0FBQ3ZCLENBQUM7QUFFRCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsV0FBb0MsRUFBRSxFQUFVO0lBQ25GLElBQUksU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ25CLEtBQUssSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEtBQUssR0FBRyxXQUFXLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUM7UUFDdEQsTUFBTSxRQUFRLEdBQUcsbUJBQW1CLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3pELElBQUksUUFBUSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQ2xCLFNBQVMsR0FBRyxLQUFLLENBQUM7WUFDbEIsTUFBTTtRQUNWLENBQUM7SUFDTCxDQUFDO0lBQ0QsT0FBTyxTQUFTLENBQUM7QUFDckIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFJVGFibGVWaWV3RmllbGRzLCBBSVRhYmxlVmlld1JlY29yZHMsIFN5bmNBcnJheUVsZW1lbnQsIFN5bmNNYXBFbGVtZW50IH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0ICogYXMgWSBmcm9tICd5anMnO1xuXG5leHBvcnQgY29uc3QgdHJhbnNsYXRlVG9SZWNvcmRWYWx1ZXMgPSAoYXJyYXlSZWNvcmQ6IGFueVtdLCBmaWVsZHM6IEFJVGFibGVWaWV3RmllbGRzKSA9PiB7XG4gICAgY29uc3QgZmllbGRJZHMgPSBmaWVsZHMubWFwKChpdGVtKSA9PiBpdGVtLl9pZCk7XG4gICAgY29uc3QgcmVjb3JkVmFsdWU6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcbiAgICBmaWVsZElkcy5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICByZWNvcmRWYWx1ZVtpdGVtXSA9IGFycmF5UmVjb3JkW2luZGV4XSB8fCAnJztcbiAgICB9KTtcbiAgICByZXR1cm4gcmVjb3JkVmFsdWU7XG59O1xuXG5leHBvcnQgY29uc3QgdHJhbnNsYXRlVG9SZWNvcmRzID0gKGFycmF5UmVjb3JkczogYW55W10sIGZpZWxkczogQUlUYWJsZVZpZXdGaWVsZHMpID0+IHtcbiAgICByZXR1cm4gYXJyYXlSZWNvcmRzLm1hcCgocmVjb3JkOiBhbnkpID0+IHtcbiAgICAgICAgY29uc3QgW25vbkVkaXRhYmxlQXJyYXksIGVkaXRhYmxlQXJyYXldID0gcmVjb3JkO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgX2lkOiBub25FZGl0YWJsZUFycmF5WzBdWydfaWQnXSxcbiAgICAgICAgICAgIHBvc2l0aW9uczogZWRpdGFibGVBcnJheVtlZGl0YWJsZUFycmF5Lmxlbmd0aCAtIDFdLFxuICAgICAgICAgICAgdmFsdWVzOiB0cmFuc2xhdGVUb1JlY29yZFZhbHVlcyhlZGl0YWJsZUFycmF5LnNsaWNlKDAsIGVkaXRhYmxlQXJyYXkubGVuZ3RoIC0gMSksIGZpZWxkcylcbiAgICAgICAgfTtcbiAgICB9KTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2xhdGVQb3NpdGlvblRvUGF0aChkYXRhOiBBSVRhYmxlVmlld1JlY29yZHMgfCBBSVRhYmxlVmlld0ZpZWxkcywgcG9zaXRpb246IG51bWJlciwgYWN0aXZlVmlld0lkOiBzdHJpbmcpIHtcbiAgICBsZXQgaW5kZXggPSBkYXRhLmZpbmRJbmRleCgodmFsdWUsIGluZGV4KSA9PiB7XG4gICAgICAgIGlmIChpbmRleCA9PT0gMCkge1xuICAgICAgICAgICAgcmV0dXJuIHBvc2l0aW9uIDwgdmFsdWUucG9zaXRpb25zW2FjdGl2ZVZpZXdJZF07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHBvc2l0aW9uID4gZGF0YVtpbmRleCAtIDFdLnBvc2l0aW9uc1thY3RpdmVWaWV3SWRdICYmIHBvc2l0aW9uIDwgdmFsdWUucG9zaXRpb25zW2FjdGl2ZVZpZXdJZF07XG4gICAgfSk7XG4gICAgaWYgKGluZGV4ID09PSAtMSkge1xuICAgICAgICBpbmRleCA9IGRhdGEubGVuZ3RoO1xuICAgIH1cblxuICAgIHJldHVybiBbaW5kZXhdO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2hhcmVUeXBlTnVtYmVyUGF0aChwYXRoOiAoc3RyaW5nIHwgbnVtYmVyKVtdKTogbnVtYmVyW10ge1xuICAgIHJldHVybiBwYXRoLmZpbHRlcigobm9kZSkgPT4gdHlwZW9mIG5vZGUgPT09ICdudW1iZXInKSBhcyBudW1iZXJbXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFNoYXJlZFJlY29yZElkKHJlY29yZHM6IFkuQXJyYXk8U3luY0FycmF5RWxlbWVudD4sIHJlY29yZEluZGV4OiBudW1iZXIpIHtcbiAgICByZXR1cm4gcmVjb3JkcyAmJiAocmVjb3JkcyBhcyBZLkFycmF5PFN5bmNBcnJheUVsZW1lbnQ+KS5nZXQocmVjb3JkSW5kZXgpLmdldCgwKS5nZXQoMClbJ19pZCddO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2hhcmVkTWFwVmFsdWVJZCh2YWx1ZXM6IFkuQXJyYXk8U3luY01hcEVsZW1lbnQ+LCBpbmRleDogbnVtYmVyKSB7XG4gICAgcmV0dXJuIHZhbHVlcyAmJiB2YWx1ZXMuZ2V0KGluZGV4KS5nZXQoJ19pZCcpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2hhcmVkUmVjb3JkSW5kZXgoc2hhcmVkUmVjb3JkczogWS5BcnJheTxTeW5jQXJyYXlFbGVtZW50PiwgcmVjb3JkSWQ6IHN0cmluZykge1xuICAgIGxldCByZWNvcmRJbmRleCA9IC0xO1xuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBzaGFyZWRSZWNvcmRzLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICBjb25zdCBzaGFyZWRSZWNvcmRJZCA9IGdldFNoYXJlZFJlY29yZElkKHNoYXJlZFJlY29yZHMsIGluZGV4KTtcbiAgICAgICAgaWYgKHNoYXJlZFJlY29yZElkID09PSByZWNvcmRJZCkge1xuICAgICAgICAgICAgcmVjb3JkSW5kZXggPSBpbmRleDtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZWNvcmRJbmRleDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFNoYXJlZE1hcFZhbHVlSW5kZXgoc2hhcmVkTm9kZXM6IFkuQXJyYXk8U3luY01hcEVsZW1lbnQ+LCBpZDogc3RyaW5nKSB7XG4gICAgbGV0IG5vZGVJbmRleCA9IC0xO1xuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBzaGFyZWROb2Rlcy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgY29uc3Qgc2hhcmVkSWQgPSBnZXRTaGFyZWRNYXBWYWx1ZUlkKHNoYXJlZE5vZGVzLCBpbmRleCk7XG4gICAgICAgIGlmIChzaGFyZWRJZCA9PT0gaWQpIHtcbiAgICAgICAgICAgIG5vZGVJbmRleCA9IGluZGV4O1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG5vZGVJbmRleDtcbn1cbiJdfQ==
@@ -0,0 +1,39 @@
1
+ const IS_LOCAL = new WeakSet();
2
+ const IS_REMOTE = new WeakSet();
3
+ const IS_UNDO = new WeakSet();
4
+ export const YjsAITable = {
5
+ isLocal: (aiTable) => {
6
+ return IS_LOCAL.has(aiTable);
7
+ },
8
+ asLocal: (aiTable, fn) => {
9
+ const wasLocal = YjsAITable.isLocal(aiTable);
10
+ IS_LOCAL.add(aiTable);
11
+ fn();
12
+ if (!wasLocal) {
13
+ IS_LOCAL.delete(aiTable);
14
+ }
15
+ },
16
+ isRemote: (aiTable) => {
17
+ return IS_REMOTE.has(aiTable);
18
+ },
19
+ asRemote: (aiTable, fn) => {
20
+ const wasRemote = YjsAITable.isRemote(aiTable);
21
+ IS_REMOTE.add(aiTable);
22
+ fn();
23
+ if (!wasRemote) {
24
+ Promise.resolve().then(() => IS_REMOTE.delete(aiTable));
25
+ }
26
+ },
27
+ isUndo: (aiTable) => {
28
+ return IS_UNDO.has(aiTable);
29
+ },
30
+ asUndo: (aiTable, fn) => {
31
+ const wasUndo = YjsAITable.isUndo(aiTable);
32
+ IS_UNDO.add(aiTable);
33
+ fn();
34
+ if (!wasUndo) {
35
+ Promise.resolve().then(() => IS_UNDO.delete(aiTable));
36
+ }
37
+ }
38
+ };
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWpzLXRhYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RhdGUvc3JjL3NoYXJlZC95anMtdGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxRQUFRLEdBQWlCLElBQUksT0FBTyxFQUFFLENBQUM7QUFDN0MsTUFBTSxTQUFTLEdBQWlCLElBQUksT0FBTyxFQUFFLENBQUM7QUFDOUMsTUFBTSxPQUFPLEdBQWlCLElBQUksT0FBTyxFQUFFLENBQUM7QUFPNUMsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3RCLE9BQU8sRUFBRSxDQUFDLE9BQWdCLEVBQVcsRUFBRTtRQUNuQyxPQUFPLFFBQVEsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELE9BQU8sRUFBRSxDQUFDLE9BQWdCLEVBQUUsRUFBYyxFQUFRLEVBQUU7UUFDaEQsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM3QyxRQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXRCLEVBQUUsRUFBRSxDQUFDO1FBRUwsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ1osUUFBUSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM3QixDQUFDO0lBQ0wsQ0FBQztJQUVELFFBQVEsRUFBRSxDQUFDLE9BQWdCLEVBQVcsRUFBRTtRQUNwQyxPQUFPLFNBQVMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELFFBQVEsRUFBRSxDQUFDLE9BQWdCLEVBQUUsRUFBYyxFQUFRLEVBQUU7UUFDakQsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMvQyxTQUFTLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXZCLEVBQUUsRUFBRSxDQUFDO1FBRUwsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2IsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDNUQsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNLEVBQUUsQ0FBQyxPQUFnQixFQUFXLEVBQUU7UUFDbEMsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxNQUFNLEVBQUUsQ0FBQyxPQUFnQixFQUFFLEVBQWMsRUFBUSxFQUFFO1FBQy9DLE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDM0MsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVyQixFQUFFLEVBQUUsQ0FBQztRQUVMLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNYLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQzFELENBQUM7SUFDTCxDQUFDO0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFJVGFibGUgfSBmcm9tIFwiQGFpLXRhYmxlL2dyaWRcIjtcblxuY29uc3QgSVNfTE9DQUw6IFdlYWtTZXQ8YW55PiA9IG5ldyBXZWFrU2V0KCk7XG5jb25zdCBJU19SRU1PVEU6IFdlYWtTZXQ8YW55PiA9IG5ldyBXZWFrU2V0KCk7XG5jb25zdCBJU19VTkRPOiBXZWFrU2V0PGFueT4gPSBuZXcgV2Vha1NldCgpO1xuXG5leHBvcnQgaW50ZXJmYWNlIFlqc0FJVGFibGUge1xuICAgIGlzTG9jYWw6ICgpID0+IGJvb2xlYW47XG4gICAgYXNMb2NhbDogKCkgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGNvbnN0IFlqc0FJVGFibGUgPSB7XG4gICAgaXNMb2NhbDogKGFpVGFibGU6IEFJVGFibGUpOiBib29sZWFuID0+IHtcbiAgICAgICAgcmV0dXJuIElTX0xPQ0FMLmhhcyhhaVRhYmxlKTtcbiAgICB9LFxuXG4gICAgYXNMb2NhbDogKGFpVGFibGU6IEFJVGFibGUsIGZuOiAoKSA9PiB2b2lkKTogdm9pZCA9PiB7XG4gICAgICAgIGNvbnN0IHdhc0xvY2FsID0gWWpzQUlUYWJsZS5pc0xvY2FsKGFpVGFibGUpO1xuICAgICAgICBJU19MT0NBTC5hZGQoYWlUYWJsZSk7XG5cbiAgICAgICAgZm4oKTtcblxuICAgICAgICBpZiAoIXdhc0xvY2FsKSB7XG4gICAgICAgICAgICBJU19MT0NBTC5kZWxldGUoYWlUYWJsZSk7XG4gICAgICAgIH1cbiAgICB9LFxuXG4gICAgaXNSZW1vdGU6IChhaVRhYmxlOiBBSVRhYmxlKTogYm9vbGVhbiA9PiB7XG4gICAgICAgIHJldHVybiBJU19SRU1PVEUuaGFzKGFpVGFibGUpO1xuICAgIH0sXG5cbiAgICBhc1JlbW90ZTogKGFpVGFibGU6IEFJVGFibGUsIGZuOiAoKSA9PiB2b2lkKTogdm9pZCA9PiB7XG4gICAgICAgIGNvbnN0IHdhc1JlbW90ZSA9IFlqc0FJVGFibGUuaXNSZW1vdGUoYWlUYWJsZSk7XG4gICAgICAgIElTX1JFTU9URS5hZGQoYWlUYWJsZSk7XG5cbiAgICAgICAgZm4oKTtcblxuICAgICAgICBpZiAoIXdhc1JlbW90ZSkge1xuICAgICAgICAgICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiBJU19SRU1PVEUuZGVsZXRlKGFpVGFibGUpKTtcbiAgICAgICAgfVxuICAgIH0sXG5cbiAgICBpc1VuZG86IChhaVRhYmxlOiBBSVRhYmxlKTogYm9vbGVhbiA9PiB7XG4gICAgICAgIHJldHVybiBJU19VTkRPLmhhcyhhaVRhYmxlKTtcbiAgICB9LFxuXG4gICAgYXNVbmRvOiAoYWlUYWJsZTogQUlUYWJsZSwgZm46ICgpID0+IHZvaWQpOiB2b2lkID0+IHtcbiAgICAgICAgY29uc3Qgd2FzVW5kbyA9IFlqc0FJVGFibGUuaXNVbmRvKGFpVGFibGUpO1xuICAgICAgICBJU19VTkRPLmFkZChhaVRhYmxlKTtcblxuICAgICAgICBmbigpO1xuXG4gICAgICAgIGlmICghd2FzVW5kbykge1xuICAgICAgICAgICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiBJU19VTkRPLmRlbGV0ZShhaVRhYmxlKSk7XG4gICAgICAgIH1cbiAgICB9XG59O1xuIl19
@@ -0,0 +1,3 @@
1
+ export * from './view';
2
+ export * from './shared';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdGF0ZS9zcmMvdHlwZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxVQUFVLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3ZpZXcnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQnOyJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RhdGUvc3JjL3R5cGVzL3NoYXJlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgWSBmcm9tICd5anMnO1xuXG5leHBvcnQgdHlwZSBTeW5jTWFwRWxlbWVudCA9IFkuTWFwPGFueT47XG5cbmV4cG9ydCB0eXBlIFN5bmNBcnJheUVsZW1lbnQgPSBZLkFycmF5PGFueT47XG5cbmV4cG9ydCB0eXBlIFNoYXJlZFR5cGUgPSBZLk1hcDxZLkFycmF5PFN5bmNNYXBFbGVtZW50IHwgU3luY0FycmF5RWxlbWVudD4+OyJdfQ==
@@ -0,0 +1,39 @@
1
+ export class Positions {
2
+ }
3
+ export var Direction;
4
+ (function (Direction) {
5
+ Direction[Direction["default"] = 0] = "default";
6
+ Direction[Direction["ascending"] = 1] = "ascending";
7
+ Direction[Direction["descending"] = -1] = "descending";
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
+ }
33
+ export var ViewActionName;
34
+ (function (ViewActionName) {
35
+ ViewActionName["SetView"] = "set_view";
36
+ ViewActionName["AddView"] = "add_view";
37
+ ViewActionName["RemoveView"] = "remove_view";
38
+ })(ViewActionName || (ViewActionName = {}));
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0YXRlL3NyYy90eXBlcy92aWV3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sT0FBTyxTQUFTO0NBRXJCO0FBY0QsTUFBTSxDQUFOLElBQVksU0FJWDtBQUpELFdBQVksU0FBUztJQUNqQiwrQ0FBVyxDQUFBO0lBQ1gsbURBQWEsQ0FBQTtJQUNiLHNEQUFlLENBQUE7QUFDbkIsQ0FBQyxFQUpXLFNBQVMsS0FBVCxTQUFTLFFBSXBCO0FBRUQsTUFBTSxDQUFOLElBQVksZUFHWDtBQUhELFdBQVksZUFBZTtJQUN2Qiw4QkFBVyxDQUFBO0lBQ1gsNEJBQVMsQ0FBQTtBQUNiLENBQUMsRUFIVyxlQUFlLEtBQWYsZUFBZSxRQUcxQjtBQUVELE1BQU0sQ0FBTixJQUFZLHFCQWVYO0FBZkQsV0FBWSxxQkFBcUI7SUFDN0Isa0NBQVMsQ0FBQTtJQUNULG9DQUFXLENBQUE7SUFDWCxvQ0FBVyxDQUFBO0lBQ1gsa0NBQVMsQ0FBQTtJQUNULGtDQUFTLENBQUE7SUFDVCxrQ0FBUyxDQUFBO0lBQ1QsNENBQW1CLENBQUE7SUFDbkIsa0NBQVMsQ0FBQTtJQUNULG9DQUFXLENBQUE7SUFDWCw0Q0FBbUIsQ0FBQTtJQUNuQiw0Q0FBbUIsQ0FBQTtJQUNuQix3Q0FBZSxDQUFBO0lBQ2YsMENBQWlCLENBQUE7SUFDakIsbURBQTBCLENBQUE7QUFDOUIsQ0FBQyxFQWZXLHFCQUFxQixLQUFyQixxQkFBcUIsUUFlaEM7QUFTRCxNQUFNLE9BQU8sWUFBWTtDQWF4QjtBQVdELE1BQU0sQ0FBTixJQUFZLGNBSVg7QUFKRCxXQUFZLGNBQWM7SUFDdEIsc0NBQW9CLENBQUE7SUFDcEIsc0NBQW9CLENBQUE7SUFDcEIsNENBQTBCLENBQUE7QUFDOUIsQ0FBQyxFQUpXLGNBQWMsS0FBZCxjQUFjLFFBSXpCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUlUYWJsZSwgQUlUYWJsZUFjdGlvbiwgQUlUYWJsZUZpZWxkLCBBSVRhYmxlUmVjb3JkIH0gZnJvbSAnQGFpLXRhYmxlL2dyaWQnO1xuaW1wb3J0IHsgV3JpdGFibGVTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElkIH0gZnJvbSAnbmd4LXRldGh5cy90eXBlcyc7XG5cbmV4cG9ydCBjbGFzcyBQb3NpdGlvbnMge1xuICAgIFt2aWV3X2lkOiBzdHJpbmddOiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZVZpZXdSZWNvcmQgZXh0ZW5kcyBBSVRhYmxlUmVjb3JkIHtcbiAgICBwb3NpdGlvbnM6IFBvc2l0aW9ucztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlVmlld0ZpZWxkIGV4dGVuZHMgQUlUYWJsZUZpZWxkIHtcbiAgICBwb3NpdGlvbnM6IFBvc2l0aW9ucztcbn1cblxuZXhwb3J0IHR5cGUgQUlUYWJsZVZpZXdSZWNvcmRzID0gQUlUYWJsZVZpZXdSZWNvcmRbXTtcblxuZXhwb3J0IHR5cGUgQUlUYWJsZVZpZXdGaWVsZHMgPSBBSVRhYmxlVmlld0ZpZWxkW107XG5cbmV4cG9ydCBlbnVtIERpcmVjdGlvbiB7XG4gICAgZGVmYXVsdCA9IDAsXG4gICAgYXNjZW5kaW5nID0gMSxcbiAgICBkZXNjZW5kaW5nID0gLTFcbn1cblxuZXhwb3J0IGVudW0gTG9naWNhbE9wZXJhdG9yIHtcbiAgICBhbmQgPSAnYW5kJyxcbiAgICBvciA9ICdvcidcbn1cblxuZXhwb3J0IGVudW0gRmlsdGVyT3BlcmF0aW9uU3ltYm9sIHtcbiAgICBlcSA9ICdlcScsXG4gICAgZ3RlID0gJ2d0ZScsXG4gICAgbHRlID0gJ2x0ZScsXG4gICAgZ3QgPSAnZ3QnLFxuICAgIGx0ID0gJ2x0JyxcbiAgICBpbiA9ICdpbicsXG4gICAgY29udGFpbiA9ICdjb250YWluJyxcbiAgICBuZSA9ICduZScsXG4gICAgbmluID0gJ25pbicsXG4gICAgYmV0d2VlbiA9ICdiZXR3ZWVuJyxcbiAgICBiZXNpZGVzID0gJ2Jlc2lkZXMnLFxuICAgIGVtcHR5ID0gJ2VtcHR5JyxcbiAgICBleGlzdHMgPSAnZXhpc3RzJyxcbiAgICBub3RDb250YWluID0gJ25vdF9jb250YWluJ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVWaWV3IHtcbiAgICBfaWQ6IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgZW1vamlfaWNvbj86IHN0cmluZztcbiAgICBzZXR0aW5ncz86IEdyaWRTZXR0aW5ncztcbn1cblxuZXhwb3J0IGNsYXNzIEdyaWRTZXR0aW5ncyB7XG4gICAgaXNfa2VlcF9zb3J0PzogYm9vbGVhbjtcbiAgICBzb3J0cz86IHtcbiAgICAgICAgc29ydF9ieTogSWQ7XG4gICAgICAgIGRpcmVjdGlvbjogRGlyZWN0aW9uO1xuICAgICAgICAvLyB4eHhcbiAgICB9W107XG4gICAgY29uZGl0aW9uX2xvZ2ljYWw/OiBMb2dpY2FsT3BlcmF0b3I7XG4gICAgY29uZGl0aW9ucz86IHtcbiAgICAgICAgZmllbGRfaWQ6IElkO1xuICAgICAgICBvcGVyYXRpb246IEZpbHRlck9wZXJhdGlvblN5bWJvbDtcbiAgICAgICAgdmFsdWU6IHN0cmluZyB8IFtdOyAvLyBUT0RPIOaYjuehruexu+Wei1xuICAgIH1bXTtcbn1cblxuZXhwb3J0IHR5cGUgQUlUYWJsZVZpZXdzID0gQUlUYWJsZVZpZXdbXTtcblxuZXhwb3J0IHR5cGUgQUlWaWV3UGF0aCA9IFtzdHJpbmddO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFJVmlld1RhYmxlIGV4dGVuZHMgQUlUYWJsZSB7XG4gICAgdmlld3M6IFdyaXRhYmxlU2lnbmFsPEFJVGFibGVWaWV3W10+O1xuICAgIGFwcGx5OiAoYWN0aW9uOiBBSVRhYmxlU2hhcmVkQWN0aW9uKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgZW51bSBWaWV3QWN0aW9uTmFtZSB7XG4gICAgU2V0VmlldyA9ICdzZXRfdmlldycsXG4gICAgQWRkVmlldyA9ICdhZGRfdmlldycsXG4gICAgUmVtb3ZlVmlldyA9ICdyZW1vdmVfdmlldydcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZXRWaWV3QWN0aW9uIHtcbiAgICB0eXBlOiBWaWV3QWN0aW9uTmFtZS5TZXRWaWV3O1xuICAgIHByb3BlcnRpZXM6IFBhcnRpYWw8QUlUYWJsZVZpZXc+O1xuICAgIG5ld1Byb3BlcnRpZXM6IFBhcnRpYWw8QUlUYWJsZVZpZXc+O1xuICAgIHBhdGg6IEFJVmlld1BhdGg7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWRkVmlld0FjdGlvbiB7XG4gICAgdHlwZTogVmlld0FjdGlvbk5hbWUuQWRkVmlldztcbiAgICB2aWV3OiBBSVRhYmxlVmlldztcbiAgICBwYXRoOiBbbnVtYmVyXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZW1vdmVWaWV3QWN0aW9uIHtcbiAgICB0eXBlOiBWaWV3QWN0aW9uTmFtZS5SZW1vdmVWaWV3O1xuICAgIHBhdGg6IEFJVmlld1BhdGg7XG59XG5cbmV4cG9ydCB0eXBlIEFJVGFibGVWaWV3QWN0aW9uID0gU2V0Vmlld0FjdGlvbiB8IEFkZFZpZXdBY3Rpb24gfCBSZW1vdmVWaWV3QWN0aW9uO1xuXG5leHBvcnQgdHlwZSBBSVRhYmxlU2hhcmVkQWN0aW9uID0gQUlUYWJsZVZpZXdBY3Rpb24gfCBBSVRhYmxlQWN0aW9uO1xuIl19
@@ -0,0 +1,53 @@
1
+ import { createDraft, finishDraft } from 'immer';
2
+ import { ViewActionName } from '../../types';
3
+ export const GeneralViewActions = {
4
+ transform(aiTable, action) {
5
+ const views = createDraft(aiTable.views());
6
+ applyView(aiTable, views, action);
7
+ aiTable.views.update(() => {
8
+ return finishDraft(views);
9
+ });
10
+ }
11
+ };
12
+ export const applyView = (aiTable, views, action) => {
13
+ switch (action.type) {
14
+ case ViewActionName.SetView: {
15
+ const view = views.find((item) => item._id === action.path[0]);
16
+ if (view) {
17
+ for (const key in action.newProperties) {
18
+ const k = key;
19
+ const value = action.newProperties[k];
20
+ if (value == null) {
21
+ delete view[k];
22
+ }
23
+ else {
24
+ view[k] = value;
25
+ }
26
+ }
27
+ // properties that were previously defined, but are now missing, must be deleted
28
+ for (const key in action.properties) {
29
+ if (!action.newProperties.hasOwnProperty(key)) {
30
+ delete view[key];
31
+ }
32
+ }
33
+ }
34
+ break;
35
+ }
36
+ case ViewActionName.AddView: {
37
+ const [viewIndex] = action.path;
38
+ if (viewIndex > -1) {
39
+ views.splice(viewIndex, 0, action.view);
40
+ }
41
+ break;
42
+ }
43
+ case ViewActionName.RemoveView: {
44
+ const [viewId] = action.path;
45
+ const viewIndex = views.findIndex((item) => item._id === viewId);
46
+ if (viewIndex > -1) {
47
+ views.splice(viewIndex, 1);
48
+ }
49
+ break;
50
+ }
51
+ }
52
+ };
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0YXRlL3NyYy92aWV3L2FjdGlvbi9nZW5lcmFsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQ2pELE9BQU8sRUFBK0MsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTFGLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHO0lBQzlCLFNBQVMsQ0FBQyxPQUFvQixFQUFFLE1BQXlCO1FBQ3JELE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUMzQyxTQUFTLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNsQyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDdEIsT0FBTyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0NBQ0osQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxDQUFDLE9BQW9CLEVBQUUsS0FBb0IsRUFBRSxNQUF5QixFQUFFLEVBQUU7SUFDL0YsUUFBUSxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbEIsS0FBSyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztZQUMxQixNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxLQUFLLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQWdCLENBQUM7WUFDOUUsSUFBSSxJQUFJLEVBQUUsQ0FBQztnQkFDUCxLQUFLLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxhQUFhLEVBQUUsQ0FBQztvQkFDckMsTUFBTSxDQUFDLEdBQUcsR0FBd0IsQ0FBQztvQkFDbkMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDdEMsSUFBSSxLQUFLLElBQUksSUFBSSxFQUFFLENBQUM7d0JBQ2hCLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUNuQixDQUFDO3lCQUFNLENBQUM7d0JBQ0gsSUFBSSxDQUFDLENBQUMsQ0FBUyxHQUFHLEtBQUssQ0FBQztvQkFDN0IsQ0FBQztnQkFDTCxDQUFDO2dCQUVELGdGQUFnRjtnQkFDaEYsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7b0JBQ2xDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO3dCQUM1QyxPQUFPLElBQUksQ0FBb0IsR0FBRyxDQUFDLENBQUM7b0JBQ3hDLENBQUM7Z0JBQ0wsQ0FBQztZQUNMLENBQUM7WUFDRCxNQUFNO1FBQ1YsQ0FBQztRQUNELEtBQUssY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7WUFDMUIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFDaEMsSUFBSSxTQUFTLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDakIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM1QyxDQUFDO1lBQ0QsTUFBTTtRQUNWLENBQUM7UUFDRCxLQUFLLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1lBQzdCLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO1lBQzdCLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssTUFBTSxDQUFDLENBQUM7WUFDakUsSUFBSSxTQUFTLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDakIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDL0IsQ0FBQztZQUNELE1BQU07UUFDVixDQUFDO0lBQ0wsQ0FBQztBQUNMLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZURyYWZ0LCBmaW5pc2hEcmFmdCB9IGZyb20gJ2ltbWVyJztcbmltcG9ydCB7IEFJVGFibGVWaWV3LCBBSVRhYmxlVmlld0FjdGlvbiwgQUlWaWV3VGFibGUsIFZpZXdBY3Rpb25OYW1lIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgR2VuZXJhbFZpZXdBY3Rpb25zID0ge1xuICAgIHRyYW5zZm9ybShhaVRhYmxlOiBBSVZpZXdUYWJsZSwgYWN0aW9uOiBBSVRhYmxlVmlld0FjdGlvbik6IHZvaWQge1xuICAgICAgICBjb25zdCB2aWV3cyA9IGNyZWF0ZURyYWZ0KGFpVGFibGUudmlld3MoKSk7XG4gICAgICAgIGFwcGx5VmlldyhhaVRhYmxlLCB2aWV3cywgYWN0aW9uKTtcbiAgICAgICAgYWlUYWJsZS52aWV3cy51cGRhdGUoKCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGZpbmlzaERyYWZ0KHZpZXdzKTtcbiAgICAgICAgfSk7XG4gICAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGFwcGx5VmlldyA9IChhaVRhYmxlOiBBSVZpZXdUYWJsZSwgdmlld3M6IEFJVGFibGVWaWV3W10sIGFjdGlvbjogQUlUYWJsZVZpZXdBY3Rpb24pID0+IHtcbiAgICBzd2l0Y2ggKGFjdGlvbi50eXBlKSB7XG4gICAgICAgIGNhc2UgVmlld0FjdGlvbk5hbWUuU2V0Vmlldzoge1xuICAgICAgICAgICAgY29uc3QgdmlldyA9IHZpZXdzLmZpbmQoKGl0ZW0pID0+IGl0ZW0uX2lkID09PSBhY3Rpb24ucGF0aFswXSkgYXMgQUlUYWJsZVZpZXc7XG4gICAgICAgICAgICBpZiAodmlldykge1xuICAgICAgICAgICAgICAgIGZvciAoY29uc3Qga2V5IGluIGFjdGlvbi5uZXdQcm9wZXJ0aWVzKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGsgPSBrZXkgYXMga2V5b2YgQUlUYWJsZVZpZXc7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gYWN0aW9uLm5ld1Byb3BlcnRpZXNba107XG4gICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkZWxldGUgdmlld1trXTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICh2aWV3W2tdIGFzIGFueSkgPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIHByb3BlcnRpZXMgdGhhdCB3ZXJlIHByZXZpb3VzbHkgZGVmaW5lZCwgYnV0IGFyZSBub3cgbWlzc2luZywgbXVzdCBiZSBkZWxldGVkXG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gYWN0aW9uLnByb3BlcnRpZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFhY3Rpb24ubmV3UHJvcGVydGllcy5oYXNPd25Qcm9wZXJ0eShrZXkpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkZWxldGUgdmlld1s8a2V5b2YgQUlUYWJsZVZpZXc+a2V5XTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgVmlld0FjdGlvbk5hbWUuQWRkVmlldzoge1xuICAgICAgICAgICAgY29uc3QgW3ZpZXdJbmRleF0gPSBhY3Rpb24ucGF0aDtcbiAgICAgICAgICAgIGlmICh2aWV3SW5kZXggPiAtMSkge1xuICAgICAgICAgICAgICAgIHZpZXdzLnNwbGljZSh2aWV3SW5kZXgsIDAsIGFjdGlvbi52aWV3KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgVmlld0FjdGlvbk5hbWUuUmVtb3ZlVmlldzoge1xuICAgICAgICAgICAgY29uc3QgW3ZpZXdJZF0gPSBhY3Rpb24ucGF0aDtcbiAgICAgICAgICAgIGNvbnN0IHZpZXdJbmRleCA9IHZpZXdzLmZpbmRJbmRleCgoaXRlbSkgPT4gaXRlbS5faWQgPT09IHZpZXdJZCk7XG4gICAgICAgICAgICBpZiAodmlld0luZGV4ID4gLTEpIHtcbiAgICAgICAgICAgICAgICB2aWV3cy5zcGxpY2Uodmlld0luZGV4LCAxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxufTtcbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './general';
2
+ export * from './view';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdGF0ZS9zcmMvdmlldy9hY3Rpb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2dlbmVyYWwnO1xuZXhwb3J0ICogZnJvbSAnLi92aWV3JzsiXX0=
@@ -0,0 +1,47 @@
1
+ import { ViewActionName } from '../../types';
2
+ export function setView(aiTable, value, path) {
3
+ const view = aiTable.views().find((item) => item._id === path[0]);
4
+ if (view) {
5
+ const properties = {};
6
+ const newProperties = {};
7
+ for (const key in value) {
8
+ const k = key;
9
+ if (JSON.stringify(view[k]) !== JSON.stringify(value[k])) {
10
+ if (view.hasOwnProperty(k)) {
11
+ properties[k] = view[k];
12
+ }
13
+ if (newProperties[k] !== null) {
14
+ newProperties[k] = value[k];
15
+ }
16
+ }
17
+ }
18
+ const operation = {
19
+ type: ViewActionName.SetView,
20
+ properties,
21
+ newProperties,
22
+ path
23
+ };
24
+ aiTable.apply(operation);
25
+ }
26
+ }
27
+ export function addView(aiTable, view, path) {
28
+ const operation = {
29
+ type: ViewActionName.AddView,
30
+ view,
31
+ path
32
+ };
33
+ aiTable.apply(operation);
34
+ }
35
+ export function removeView(aiTable, path) {
36
+ const operation = {
37
+ type: ViewActionName.RemoveView,
38
+ path
39
+ };
40
+ aiTable.apply(operation);
41
+ }
42
+ export const ViewActions = {
43
+ setView,
44
+ addView,
45
+ removeView
46
+ };
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0YXRlL3NyYy92aWV3L2FjdGlvbi92aWV3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBNEUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXZILE1BQU0sVUFBVSxPQUFPLENBQUMsT0FBb0IsRUFBRSxLQUEyQixFQUFFLElBQWM7SUFDckYsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNsRSxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ1AsTUFBTSxVQUFVLEdBQXlCLEVBQUUsQ0FBQztRQUM1QyxNQUFNLGFBQWEsR0FBeUIsRUFBRSxDQUFDO1FBQy9DLEtBQUssTUFBTSxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7WUFDdEIsTUFBTSxDQUFDLEdBQUcsR0FBd0IsQ0FBQztZQUNuQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUN2RCxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztvQkFDekIsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQVEsQ0FBQztnQkFDbkMsQ0FBQztnQkFDRCxJQUFJLGFBQWEsQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztvQkFDNUIsYUFBYSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQVEsQ0FBQztnQkFDdkMsQ0FBQztZQUNMLENBQUM7UUFDTCxDQUFDO1FBRUQsTUFBTSxTQUFTLEdBQWtCO1lBQzdCLElBQUksRUFBRSxjQUFjLENBQUMsT0FBTztZQUM1QixVQUFVO1lBQ1YsYUFBYTtZQUNiLElBQUk7U0FDUCxDQUFDO1FBQ0YsT0FBTyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM3QixDQUFDO0FBQ0wsQ0FBQztBQUVELE1BQU0sVUFBVSxPQUFPLENBQUMsT0FBb0IsRUFBRSxJQUFpQixFQUFFLElBQWM7SUFDM0UsTUFBTSxTQUFTLEdBQWtCO1FBQzdCLElBQUksRUFBRSxjQUFjLENBQUMsT0FBTztRQUM1QixJQUFJO1FBQ0osSUFBSTtLQUNQLENBQUM7SUFDRixPQUFPLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQzdCLENBQUM7QUFFRCxNQUFNLFVBQVUsVUFBVSxDQUFDLE9BQW9CLEVBQUUsSUFBYztJQUMzRCxNQUFNLFNBQVMsR0FBcUI7UUFDaEMsSUFBSSxFQUFFLGNBQWMsQ0FBQyxVQUFVO1FBQy9CLElBQUk7S0FDUCxDQUFDO0lBQ0YsT0FBTyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUM3QixDQUFDO0FBR0QsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHO0lBQ3ZCLE9BQU87SUFDUCxPQUFPO0lBQ1AsVUFBVTtDQUNiLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZGRWaWV3QWN0aW9uLCBBSVRhYmxlVmlldywgQUlWaWV3VGFibGUsIFJlbW92ZVZpZXdBY3Rpb24sIFNldFZpZXdBY3Rpb24sIFZpZXdBY3Rpb25OYW1lIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gc2V0VmlldyhhaVRhYmxlOiBBSVZpZXdUYWJsZSwgdmFsdWU6IFBhcnRpYWw8QUlUYWJsZVZpZXc+LCBwYXRoOiBbc3RyaW5nXSkge1xuICAgIGNvbnN0IHZpZXcgPSBhaVRhYmxlLnZpZXdzKCkuZmluZCgoaXRlbSkgPT4gaXRlbS5faWQgPT09IHBhdGhbMF0pO1xuICAgIGlmICh2aWV3KSB7XG4gICAgICAgIGNvbnN0IHByb3BlcnRpZXM6IFBhcnRpYWw8QUlUYWJsZVZpZXc+ID0ge307XG4gICAgICAgIGNvbnN0IG5ld1Byb3BlcnRpZXM6IFBhcnRpYWw8QUlUYWJsZVZpZXc+ID0ge307XG4gICAgICAgIGZvciAoY29uc3Qga2V5IGluIHZhbHVlKSB7XG4gICAgICAgICAgICBjb25zdCBrID0ga2V5IGFzIGtleW9mIEFJVGFibGVWaWV3O1xuICAgICAgICAgICAgaWYgKEpTT04uc3RyaW5naWZ5KHZpZXdba10pICE9PSBKU09OLnN0cmluZ2lmeSh2YWx1ZVtrXSkpIHtcbiAgICAgICAgICAgICAgICBpZiAodmlldy5oYXNPd25Qcm9wZXJ0eShrKSkge1xuICAgICAgICAgICAgICAgICAgICBwcm9wZXJ0aWVzW2tdID0gdmlld1trXSBhcyBhbnk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChuZXdQcm9wZXJ0aWVzW2tdICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgIG5ld1Byb3BlcnRpZXNba10gPSB2YWx1ZVtrXSBhcyBhbnk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgb3BlcmF0aW9uOiBTZXRWaWV3QWN0aW9uID0ge1xuICAgICAgICAgICAgdHlwZTogVmlld0FjdGlvbk5hbWUuU2V0VmlldyxcbiAgICAgICAgICAgIHByb3BlcnRpZXMsXG4gICAgICAgICAgICBuZXdQcm9wZXJ0aWVzLFxuICAgICAgICAgICAgcGF0aFxuICAgICAgICB9O1xuICAgICAgICBhaVRhYmxlLmFwcGx5KG9wZXJhdGlvbik7XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gYWRkVmlldyhhaVRhYmxlOiBBSVZpZXdUYWJsZSwgdmlldzogQUlUYWJsZVZpZXcsIHBhdGg6IFtudW1iZXJdKSB7XG4gICAgY29uc3Qgb3BlcmF0aW9uOiBBZGRWaWV3QWN0aW9uID0ge1xuICAgICAgICB0eXBlOiBWaWV3QWN0aW9uTmFtZS5BZGRWaWV3LFxuICAgICAgICB2aWV3LFxuICAgICAgICBwYXRoXG4gICAgfTtcbiAgICBhaVRhYmxlLmFwcGx5KG9wZXJhdGlvbik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVWaWV3KGFpVGFibGU6IEFJVmlld1RhYmxlLCBwYXRoOiBbc3RyaW5nXSkge1xuICAgIGNvbnN0IG9wZXJhdGlvbjogUmVtb3ZlVmlld0FjdGlvbiA9IHtcbiAgICAgICAgdHlwZTogVmlld0FjdGlvbk5hbWUuUmVtb3ZlVmlldyxcbiAgICAgICAgcGF0aFxuICAgIH07XG4gICAgYWlUYWJsZS5hcHBseShvcGVyYXRpb24pO1xufVxuXG5cbmV4cG9ydCBjb25zdCBWaWV3QWN0aW9ucyA9IHtcbiAgICBzZXRWaWV3LFxuICAgIGFkZFZpZXcsXG4gICAgcmVtb3ZlVmlld1xufTsiXX0=
@@ -0,0 +1,3 @@
1
+ import { ViewActionName } from '../../types';
2
+ export const VIEW_ACTIONS = [ViewActionName.SetView, ViewActionName.AddView, ViewActionName.RemoveView];
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0YXRlL3NyYy92aWV3L2NvbnN0YW50cy92aWV3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFN0MsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZpZXdBY3Rpb25OYW1lIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgVklFV19BQ1RJT05TID0gW1ZpZXdBY3Rpb25OYW1lLlNldFZpZXcsIFZpZXdBY3Rpb25OYW1lLkFkZFZpZXcsIFZpZXdBY3Rpb25OYW1lLlJlbW92ZVZpZXddO1xuIl19
@@ -0,0 +1,25 @@
1
+ import { Actions, FLUSHING } from '@ai-table/grid';
2
+ import { GeneralViewActions } from '../action';
3
+ import { VIEW_ACTIONS } from '../constants/view';
4
+ export const withView = (aiTable) => {
5
+ const viewTable = aiTable;
6
+ viewTable.apply = (action) => {
7
+ aiTable.actions.push(action);
8
+ if (VIEW_ACTIONS.includes(action.type)) {
9
+ GeneralViewActions.transform(viewTable, action);
10
+ }
11
+ else {
12
+ Actions.transform(aiTable, action);
13
+ }
14
+ if (!FLUSHING.get(aiTable)) {
15
+ FLUSHING.set(aiTable, true);
16
+ Promise.resolve().then(() => {
17
+ FLUSHING.set(aiTable, false);
18
+ aiTable.onChange();
19
+ aiTable.actions = [];
20
+ });
21
+ }
22
+ };
23
+ return aiTable;
24
+ };
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy5wbHVnaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdGF0ZS9zcmMvdmlldy9wbHVnaW5zL3ZpZXcucGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQTBCLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUUvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFakQsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLENBQUMsT0FBZ0IsRUFBRSxFQUFFO0lBQ3pDLE1BQU0sU0FBUyxHQUFHLE9BQXNCLENBQUM7SUFDekMsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLE1BQTJCLEVBQUUsRUFBRTtRQUM3QyxPQUFPLENBQUMsT0FBaUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDeEQsSUFBSSxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFzQixDQUFDLEVBQUUsQ0FBQztZQUN2RCxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsU0FBUyxFQUFFLE1BQTJCLENBQUMsQ0FBQztRQUN6RSxDQUFDO2FBQU0sQ0FBQztZQUNKLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLE1BQXVCLENBQUMsQ0FBQztRQUN4RCxDQUFDO1FBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUN6QixRQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztZQUM1QixPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDeEIsUUFBUSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQzdCLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDbkIsT0FBTyxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDekIsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDO0lBQ0wsQ0FBQyxDQUFDO0lBQ0YsT0FBTyxPQUFPLENBQUM7QUFDbkIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aW9ucywgQUlUYWJsZSwgQUlUYWJsZUFjdGlvbiwgRkxVU0hJTkcgfSBmcm9tICdAYWktdGFibGUvZ3JpZCc7XG5pbXBvcnQgeyBHZW5lcmFsVmlld0FjdGlvbnMgfSBmcm9tICcuLi9hY3Rpb24nO1xuaW1wb3J0IHsgQUlUYWJsZVNoYXJlZEFjdGlvbiwgQUlUYWJsZVZpZXdBY3Rpb24sIEFJVmlld1RhYmxlLCBWaWV3QWN0aW9uTmFtZSB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IFZJRVdfQUNUSU9OUyB9IGZyb20gJy4uL2NvbnN0YW50cy92aWV3JztcblxuZXhwb3J0IGNvbnN0IHdpdGhWaWV3ID0gKGFpVGFibGU6IEFJVGFibGUpID0+IHtcbiAgICBjb25zdCB2aWV3VGFibGUgPSBhaVRhYmxlIGFzIEFJVmlld1RhYmxlO1xuICAgIHZpZXdUYWJsZS5hcHBseSA9IChhY3Rpb246IEFJVGFibGVTaGFyZWRBY3Rpb24pID0+IHtcbiAgICAgICAgKGFpVGFibGUuYWN0aW9ucyBhcyBBSVRhYmxlU2hhcmVkQWN0aW9uW10pLnB1c2goYWN0aW9uKTtcbiAgICAgICAgaWYgKFZJRVdfQUNUSU9OUy5pbmNsdWRlcyhhY3Rpb24udHlwZSBhcyBWaWV3QWN0aW9uTmFtZSkpIHtcbiAgICAgICAgICAgIEdlbmVyYWxWaWV3QWN0aW9ucy50cmFuc2Zvcm0odmlld1RhYmxlLCBhY3Rpb24gYXMgQUlUYWJsZVZpZXdBY3Rpb24pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgQWN0aW9ucy50cmFuc2Zvcm0oYWlUYWJsZSwgYWN0aW9uIGFzIEFJVGFibGVBY3Rpb24pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFGTFVTSElORy5nZXQoYWlUYWJsZSkpIHtcbiAgICAgICAgICAgIEZMVVNISU5HLnNldChhaVRhYmxlLCB0cnVlKTtcbiAgICAgICAgICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgIEZMVVNISU5HLnNldChhaVRhYmxlLCBmYWxzZSk7XG4gICAgICAgICAgICAgICAgYWlUYWJsZS5vbkNoYW5nZSgpO1xuICAgICAgICAgICAgICAgIGFpVGFibGUuYWN0aW9ucyA9IFtdO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIHJldHVybiBhaVRhYmxlO1xufTtcbiJdfQ==