@sankhyalabs/core 5.11.3 → 5.11.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/dataunit/state/slice/AddedRecordsSlice.d.ts +1 -0
- package/dist/dataunit/state/slice/AddedRecordsSlice.js +7 -0
- package/dist/dataunit/state/slice/AddedRecordsSlice.js.map +1 -1
- package/dist/dataunit/state/slice/ChangesSlice.js +5 -2
- package/dist/dataunit/state/slice/ChangesSlice.js.map +1 -1
- package/package.json +1 -1
- package/src/dataunit/state/slice/AddedRecordsSlice.ts +10 -0
- package/src/dataunit/state/slice/ChangesSlice.ts +10 -2
|
@@ -7,6 +7,7 @@ declare class AddedRecordsReducerImpl implements ActionReducer {
|
|
|
7
7
|
}
|
|
8
8
|
export declare const AddedRecordsReducer: AddedRecordsReducerImpl;
|
|
9
9
|
export declare const getAddedRecords: (stateManager: StateManager) => Array<Record>;
|
|
10
|
+
export declare const isAddedRecord: (recordId: string, stateManager: StateManager) => boolean;
|
|
10
11
|
export declare const prepareAddedRecordId: (stateManager: StateManager, source: Array<any>, parentRecordId?: string) => Array<Record>;
|
|
11
12
|
export declare const prepareCopiedRecord: (stateManager: StateManager, source: Array<Record>, parentRecordId?: string) => Array<Record>;
|
|
12
13
|
export {};
|
|
@@ -19,6 +19,13 @@ export const AddedRecordsReducer = new AddedRecordsReducerImpl();
|
|
|
19
19
|
export const getAddedRecords = (stateManager) => {
|
|
20
20
|
return stateManager.select(AddedRecordsReducer.sliceName, (state) => state);
|
|
21
21
|
};
|
|
22
|
+
export const isAddedRecord = (recordId, stateManager) => {
|
|
23
|
+
const addedRecords = getAddedRecords(stateManager);
|
|
24
|
+
if (addedRecords == undefined || addedRecords.length === 0) {
|
|
25
|
+
return false;
|
|
26
|
+
}
|
|
27
|
+
return addedRecords.some(record => record.__record__id__ === recordId);
|
|
28
|
+
};
|
|
22
29
|
export const prepareAddedRecordId = (stateManager, source, parentRecordId) => {
|
|
23
30
|
let index = (getAddedRecords(stateManager) || []).length;
|
|
24
31
|
return source.map(item => (Object.assign(Object.assign(Object.assign({}, item), { __record__id__: `NEW_${index++}` }), (parentRecordId && { __parent__record__id__: parentRecordId }))));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AddedRecordsSlice.js","sourceRoot":"","sources":["../../../../src/dataunit/state/slice/AddedRecordsSlice.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAIrD,MAAM,uBAAuB;IAA7B;QAEW,cAAS,GAAW,oBAAoB,CAAC;IAapD,CAAC;IAXU,MAAM,CAAC,aAA0B,EAAE,YAA2B,EAAE,MAAmB;QACtF,QAAO,MAAM,CAAC,IAAI,EAAC;YACf,KAAK,MAAM,CAAC,aAAa,CAAC;YAC1B,KAAK,MAAM,CAAC,cAAc;gBACtB,OAAO,CAAC,YAAY,IAAE,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACrD,KAAK,MAAM,CAAC,UAAU,CAAC;YACvB,KAAK,MAAM,CAAC,gBAAgB;gBACxB,OAAO,SAAS,CAAC;SACxB;QACD,OAAO,YAAY,CAAC;IACxB,CAAC;CACJ;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,uBAAuB,EAAE,CAAC;AAEjE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,YAA0B,EAAiB,EAAE;IACzE,OAAO,YAAY,CAAC,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,CAAC,KAAoB,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;AAC/F,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,YAA0B,EAAE,MAAkB,EAAE,cAAuB,EAAiB,EAAE;IAC3H,IAAI,KAAK,GAAG,CAAC,eAAe,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;IACzD,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,+CACnB,IAAI,KACP,cAAc,EAAE,OAAO,KAAK,EAAE,EAAE,KAC7B,CAAC,cAAc,IAAI,EAAE,sBAAsB,EAAE,cAAc,EAAE,CAAC,EACnE,CAAC,CAAC;AACR,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,YAA0B,EAAE,MAAqB,EAAE,cAAuB,EAAiB,EAAE;IAC7H,IAAI,KAAK,GAAG,CAAC,eAAe,CAAC,YAAY,CAAC,IAAE,EAAE,CAAC,CAAC,MAAM,CAAC;IACvD,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,6DACnB,IAAI,KACP,cAAc,EAAE,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,KAC/B,CAAC,cAAc,IAAI,EAAE,sBAAsB,EAAE,cAAc,EAAE,CAAC,KACjE,sBAAsB,EAAE,IAAI,CAAC,cAAc,EAC3C,QAAQ,EAAE,IAAI,IAAE,CACnB,CAAC;AACN,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"AddedRecordsSlice.js","sourceRoot":"","sources":["../../../../src/dataunit/state/slice/AddedRecordsSlice.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAIrD,MAAM,uBAAuB;IAA7B;QAEW,cAAS,GAAW,oBAAoB,CAAC;IAapD,CAAC;IAXU,MAAM,CAAC,aAA0B,EAAE,YAA2B,EAAE,MAAmB;QACtF,QAAO,MAAM,CAAC,IAAI,EAAC;YACf,KAAK,MAAM,CAAC,aAAa,CAAC;YAC1B,KAAK,MAAM,CAAC,cAAc;gBACtB,OAAO,CAAC,YAAY,IAAE,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACrD,KAAK,MAAM,CAAC,UAAU,CAAC;YACvB,KAAK,MAAM,CAAC,gBAAgB;gBACxB,OAAO,SAAS,CAAC;SACxB;QACD,OAAO,YAAY,CAAC;IACxB,CAAC;CACJ;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,uBAAuB,EAAE,CAAC;AAEjE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,YAA0B,EAAiB,EAAE;IACzE,OAAO,YAAY,CAAC,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,CAAC,KAAoB,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;AAC/F,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,QAAgB,EAAE,YAA0B,EAAW,EAAE;IACnF,MAAM,YAAY,GAAG,eAAe,CAAC,YAAY,CAAC,CAAC;IAEnD,IAAG,YAAY,IAAI,SAAS,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAC;QACtD,OAAO,KAAK,CAAC;KAChB;IAED,OAAO,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAC;AAC3E,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,YAA0B,EAAE,MAAkB,EAAE,cAAuB,EAAiB,EAAE;IAC3H,IAAI,KAAK,GAAG,CAAC,eAAe,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;IACzD,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,+CACnB,IAAI,KACP,cAAc,EAAE,OAAO,KAAK,EAAE,EAAE,KAC7B,CAAC,cAAc,IAAI,EAAE,sBAAsB,EAAE,cAAc,EAAE,CAAC,EACnE,CAAC,CAAC;AACR,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,YAA0B,EAAE,MAAqB,EAAE,cAAuB,EAAiB,EAAE;IAC7H,IAAI,KAAK,GAAG,CAAC,eAAe,CAAC,YAAY,CAAC,IAAE,EAAE,CAAC,CAAC,MAAM,CAAC;IACvD,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,6DACnB,IAAI,KACP,cAAc,EAAE,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,KAC/B,CAAC,cAAc,IAAI,EAAE,sBAAsB,EAAE,cAAc,EAAE,CAAC,KACjE,sBAAsB,EAAE,IAAI,CAAC,cAAc,EAC3C,QAAQ,EAAE,IAAI,IAAE,CACnB,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -2,7 +2,7 @@ import { Action } from "../action/DataUnitAction.js";
|
|
|
2
2
|
import { getSelection } from "./SelectionSlice.js";
|
|
3
3
|
import { getRecords } from "./RecordsSlice.js";
|
|
4
4
|
import { getRemovedRecords } from "./RemovedRecordsSlice.js";
|
|
5
|
-
import { getAddedRecords } from "./AddedRecordsSlice.js";
|
|
5
|
+
import { getAddedRecords, isAddedRecord } from "./AddedRecordsSlice.js";
|
|
6
6
|
import { Change, ChangeOperation } from "../../DataUnit.js";
|
|
7
7
|
import { getWaitingChanges } from "./WaitingChangesSlice.js";
|
|
8
8
|
import { getSelectionRecords } from "./SnapshotSlice.js";
|
|
@@ -78,7 +78,10 @@ export const getChangedFieldValue = (fieldName, record, stateManager) => {
|
|
|
78
78
|
export const getChangesToSave = (dataUnit, stateManager) => {
|
|
79
79
|
const result = [];
|
|
80
80
|
const changes = getChanges(stateManager);
|
|
81
|
-
const
|
|
81
|
+
const selectedRecords = getSelectionRecords(stateManager) || [];
|
|
82
|
+
const records = new Set(getRecords(stateManager)
|
|
83
|
+
.concat(selectedRecords
|
|
84
|
+
.filter(record => !isAddedRecord(record.__record__id__, stateManager))));
|
|
82
85
|
records === null || records === void 0 ? void 0 : records.forEach(r => {
|
|
83
86
|
if (changes) {
|
|
84
87
|
const c = changes.get(r.__record__id__);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChangesSlice.js","sourceRoot":"","sources":["../../../../src/dataunit/state/slice/ChangesSlice.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"ChangesSlice.js","sourceRoot":"","sources":["../../../../src/dataunit/state/slice/ChangesSlice.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,eAAe,EAAU,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD,MAAM,kBAAkB;IAAxB;QAEW,cAAS,GAAW,eAAe,CAAC;IAyC/C,CAAC;IAvCU,MAAM,CAAC,YAAyB,EAAE,YAA8B,EAAE,MAAmB;QACxF,QAAO,MAAM,CAAC,IAAI,EAAC;YACf,KAAK,MAAM,CAAC,cAAc;gBACtB,MAAM,OAAO,GAAkB,MAAM,CAAC,OAAO,CAAC;gBAC9C,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;gBAClD,OAAO,CAAC,OAAO,CACX,CAAC,CAAC,EAAE;oBACA,MAAM,QAAQ,mCAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,GAAK,CAAC,CAAC,CAAC;oBAC1D,OAAO,QAAQ,CAAC,WAAW,CAAC;oBAC5B,OAAO,QAAQ,CAAC,cAAc,CAAC;oBAC/B,OAAO,QAAQ,CAAC,sBAAsB,CAAC;oBACvC,OAAO,QAAQ,CAAC,sBAAsB,CAAC;oBACvC,OAAO,QAAQ,CAAC,iBAAiB,CAAC;oBAClC,OAAO,QAAQ,CAAC,QAAQ,CAAC;oBACzB,OAAO,QAAQ,CAAC,yBAAyB,CAAC;oBAC1C,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;gBAC5C,CAAC,CACJ,CAAC;gBACF,OAAO,OAAO,CAAC;YACnB,KAAK,MAAM,CAAC,YAAY;gBACpB,MAAM,SAAS,GAAkB,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,YAAY,CAAC,YAAY,CAAC,CAAC;gBACtF,IAAG,SAAS,EAAC;oBACT,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;oBACvC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;wBACzB,MAAM,UAAU,mCAAO,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAK,MAAM,CAAC,OAAO,CAAC,CAAC;wBAClE,OAAO,UAAU,CAAC,OAAO,CAAC;wBAC1B,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;oBACvC,CAAC,CAAC,CAAC;oBACH,OAAO,QAAQ,CAAC;iBACnB;gBACD,OAAO,YAAY,CAAC;YAExB,KAAK,MAAM,CAAC,UAAU,CAAC;YACvB,KAAK,MAAM,CAAC,gBAAgB;gBACxB,OAAO,SAAS,CAAC;SACxB;QACD,OAAO,YAAY,CAAC;IACxB,CAAC;CAEJ;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,kBAAkB,EAAE,CAAC;AAEvD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,YAA0B,EAAoB,EAAE;IACvE,OAAO,YAAY,CAAC,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC,KAAuB,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;AAC7F,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,YAA0B,EAAW,EAAE;IAE3D,IAAI,eAAe,CAAC,YAAY,CAAC,KAAK,SAAS,EAAE;QAC7C,OAAO,IAAI,CAAC;KACf;IAED,IAAI,iBAAiB,CAAC,YAAY,CAAC,KAAK,SAAS,EAAE;QAC/C,OAAO,IAAI,CAAC;KACf;IAED,OAAO,eAAe,CAAC,YAAY,CAAC,CAAC;AACzC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,YAA0B,EAAW,EAAE;IACnE,IAAG,iBAAiB,CAAC,YAAY,CAAC,KAAK,SAAS,EAAC;QAC7C,OAAO,IAAI,CAAC;KACf;IAED,OAAO,UAAU,CAAC,YAAY,CAAC,KAAK,SAAS,CAAC;AAClD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,SAAiB,EAAE,MAAc,EAAE,YAA0B,EAAO,EAAE;IACvG,MAAM,OAAO,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IACzC,IAAG,OAAO,EAAC;QACP,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACzD,IAAI,aAAa,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,SAAS,CAAC,EAAE;YAC1D,OAAO,aAAa,CAAC,SAAS,CAAC,CAAC;SACnC;KACJ;IACD,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC;AAC7B,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,QAAgB,EAAE,YAA0B,EAAiB,EAAE;IAC5F,MAAM,MAAM,GAAkB,EAAE,CAAC;IAEjC,MAAM,OAAO,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IACzC,MAAM,eAAe,GAAG,mBAAmB,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAChE,MAAM,OAAO,GAAgB,IAAI,GAAG,CAChC,UAAU,CAAC,YAAY,CAAC;SACvB,MAAM,CACH,eAAe;SACV,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,cAAc,EAAE,YAAY,CAAC,CACxE,CACJ,CACJ,CAAC;IAEF,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,CAAC,CAAC,EAAE;QACjB,IAAG,OAAO,EAAC;YACP,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;YACxC,IAAI,CAAC,EAAE;gBACH,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,MAAM,EAAG,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC;aAC9F;SACJ;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,eAAe,CAAC,YAAY,CAAC,CAAC;IACnD,IAAI,YAAY,EAAE;QACd,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACrB,MAAM,SAAS,GAAoB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC;YAC9F,MAAM,aAAa,qBAAO,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;YAC1D,IAAG,SAAS,KAAK,eAAe,CAAC,MAAM,EAAC;gBACpC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;;oBAC/B,IAAG,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,MAAA,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,0CAAE,QAAQ,CAAC,SAAS,CAAC,CAAA,EAAC;wBAC/E,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;qBAC3C;gBACL,CAAC,CAAC,CAAC;aACN;YACD,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAC7F,CAAC,CAAC,CAAC;KACN;IAED,MAAM,cAAc,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;IACvD,MAAM,WAAW,GAAQ,EAAE,CAAC;IAC5B,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,CAAC,CAAA,EAAE,CAAA,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;IACvD,IAAI,cAAc,EAAE;QAChB,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YACxB,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;QAC1F,CAAC,CAAC,CAAC;KACN;IAED,OAAO,MAAM,CAAC;AAClB,CAAC,CAAA"}
|
package/package.json
CHANGED
|
@@ -27,6 +27,16 @@ export const getAddedRecords = (stateManager: StateManager): Array<Record> => {
|
|
|
27
27
|
return stateManager.select(AddedRecordsReducer.sliceName, (state: Array<Record>) => state);
|
|
28
28
|
};
|
|
29
29
|
|
|
30
|
+
export const isAddedRecord = (recordId: string, stateManager: StateManager): boolean => {
|
|
31
|
+
const addedRecords = getAddedRecords(stateManager);
|
|
32
|
+
|
|
33
|
+
if(addedRecords == undefined || addedRecords.length === 0){
|
|
34
|
+
return false;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
return addedRecords.some(record => record.__record__id__ === recordId);
|
|
38
|
+
}
|
|
39
|
+
|
|
30
40
|
export const prepareAddedRecordId = (stateManager: StateManager, source: Array<any>, parentRecordId?: string): Array<Record> => {
|
|
31
41
|
let index = (getAddedRecords(stateManager) || []).length;
|
|
32
42
|
return source.map(item => ({
|
|
@@ -5,7 +5,7 @@ import StateManager from "../StateManager.js";
|
|
|
5
5
|
import { getSelection } from "./SelectionSlice.js";
|
|
6
6
|
import { getRecords } from "./RecordsSlice.js";
|
|
7
7
|
import { getRemovedRecords } from "./RemovedRecordsSlice.js";
|
|
8
|
-
import { getAddedRecords } from "./AddedRecordsSlice.js";
|
|
8
|
+
import { getAddedRecords, isAddedRecord } from "./AddedRecordsSlice.js";
|
|
9
9
|
import { Change, ChangeOperation, Record } from "../../DataUnit.js";
|
|
10
10
|
import { getWaitingChanges } from "./WaitingChangesSlice.js";
|
|
11
11
|
import { getSelectionRecords } from "./SnapshotSlice.js";
|
|
@@ -97,7 +97,15 @@ export const getChangesToSave = (dataUnit: string, stateManager: StateManager):
|
|
|
97
97
|
const result: Array<Change> = [];
|
|
98
98
|
|
|
99
99
|
const changes = getChanges(stateManager);
|
|
100
|
-
const
|
|
100
|
+
const selectedRecords = getSelectionRecords(stateManager) || [];
|
|
101
|
+
const records: Set<Record> = new Set(
|
|
102
|
+
getRecords(stateManager)
|
|
103
|
+
.concat(
|
|
104
|
+
selectedRecords
|
|
105
|
+
.filter(record => !isAddedRecord(record.__record__id__, stateManager)
|
|
106
|
+
)
|
|
107
|
+
)
|
|
108
|
+
);
|
|
101
109
|
|
|
102
110
|
records?.forEach(r => {
|
|
103
111
|
if(changes){
|