@sankhyalabs/core 1.0.42 → 1.0.45
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/.eslintignore +1 -1
- package/.eslintrc.cjs +34 -34
- package/README.md +54 -54
- package/dist/dataunit/DataUnit.d.ts +87 -82
- package/dist/dataunit/DataUnit.js +290 -278
- package/dist/dataunit/DataUnit.js.map +1 -1
- package/dist/dataunit/metadata/DataType.d.ts +9 -9
- package/dist/dataunit/metadata/DataType.js +36 -36
- package/dist/dataunit/metadata/UnitMetadata.d.ts +71 -71
- package/dist/dataunit/metadata/UnitMetadata.js +31 -31
- package/dist/dataunit/state/HistReducer.d.ts +10 -10
- package/dist/dataunit/state/HistReducer.js +27 -27
- package/dist/dataunit/state/StateManager.d.ts +57 -57
- package/dist/dataunit/state/StateManager.js +96 -96
- package/dist/dataunit/state/action/DataUnitAction.d.ts +29 -28
- package/dist/dataunit/state/action/DataUnitAction.js +34 -33
- package/dist/dataunit/state/action/DataUnitAction.js.map +1 -1
- package/dist/dataunit/state/slice/AddedRecordsSlice.d.ts +11 -11
- package/dist/dataunit/state/slice/AddedRecordsSlice.js +25 -25
- package/dist/dataunit/state/slice/ChangesSlice.d.ts +12 -12
- package/dist/dataunit/state/slice/ChangesSlice.js +76 -72
- package/dist/dataunit/state/slice/ChangesSlice.js.map +1 -1
- package/dist/dataunit/state/slice/CurrentRecordsSlice.d.ts +11 -11
- package/dist/dataunit/state/slice/CurrentRecordsSlice.js +45 -45
- package/dist/dataunit/state/slice/RecordsSlice.d.ts +10 -10
- package/dist/dataunit/state/slice/RecordsSlice.js +43 -43
- package/dist/dataunit/state/slice/RemovedRecordsSlice.d.ts +9 -9
- package/dist/dataunit/state/slice/RemovedRecordsSlice.js +24 -24
- package/dist/dataunit/state/slice/SelectionSlice.d.ts +11 -11
- package/dist/dataunit/state/slice/SelectionSlice.js +111 -111
- package/dist/dataunit/state/slice/UnitMetadataSlice.d.ts +11 -11
- package/dist/dataunit/state/slice/UnitMetadataSlice.js +20 -20
- package/dist/dataunit/state/slice/WaitingChangesSlice.d.ts +9 -0
- package/dist/dataunit/state/slice/WaitingChangesSlice.js +32 -0
- package/dist/dataunit/state/slice/WaitingChangesSlice.js.map +1 -0
- package/dist/http/AuthorizedServiceCaller.d.ts +11 -11
- package/dist/http/AuthorizedServiceCaller.js +53 -53
- package/dist/http/HttpProvider.d.ts +25 -25
- package/dist/http/HttpProvider.js +73 -73
- package/dist/http/RequestMetadata.d.ts +30 -30
- package/dist/http/RequestMetadata.js +24 -24
- package/dist/http/SkwHttpProvider.d.ts +9 -9
- package/dist/http/SkwHttpProvider.js +66 -66
- package/dist/index.d.ts +16 -16
- package/dist/index.js +17 -17
- package/dist/index.js.map +1 -1
- package/dist/ui/FloatingManager.d.ts +25 -24
- package/dist/ui/FloatingManager.js +124 -122
- package/dist/ui/FloatingManager.js.map +1 -1
- package/dist/utils/ApplicationContext.d.ts +5 -5
- package/dist/utils/ApplicationContext.js +16 -16
- package/dist/utils/CriteriaModel.d.ts +109 -109
- package/dist/utils/CriteriaModel.js +173 -173
- package/dist/utils/CriteriaParameter.d.ts +69 -69
- package/dist/utils/CriteriaParameter.js +82 -82
- package/dist/utils/DateUtils.d.ts +5 -5
- package/dist/utils/DateUtils.js +42 -42
- package/dist/utils/MaskFormatter.d.ts +126 -126
- package/dist/utils/MaskFormatter.js +275 -275
- package/dist/utils/NumberUtils.d.ts +53 -53
- package/dist/utils/NumberUtils.js +141 -141
- package/dist/utils/StringUtils.d.ts +18 -18
- package/dist/utils/StringUtils.js +53 -53
- package/dist/utils/TimeFormatter.d.ts +33 -33
- package/dist/utils/TimeFormatter.js +97 -97
- package/jest.config.ts +16 -16
- package/mock/http/XMLHttpRequest-mock.js +25 -25
- package/package.json +38 -37
- package/scripts/runlink.bat +1 -0
- package/src/dataunit/DataUnit.ts +374 -356
- package/src/dataunit/metadata/DataType.ts +37 -37
- package/src/dataunit/metadata/UnitMetadata.ts +82 -82
- package/src/dataunit/state/HistReducer.ts +33 -33
- package/src/dataunit/state/StateManager.ts +141 -141
- package/src/dataunit/state/action/DataUnitAction.ts +52 -50
- package/src/dataunit/state/slice/AddedRecordsSlice.ts +32 -32
- package/src/dataunit/state/slice/ChangesSlice.ts +95 -90
- package/src/dataunit/state/slice/CurrentRecordsSlice.ts +53 -53
- package/src/dataunit/state/slice/RecordsSlice.ts +56 -56
- package/src/dataunit/state/slice/RemovedRecordsSlice.ts +29 -29
- package/src/dataunit/state/slice/SelectionSlice.ts +130 -130
- package/src/dataunit/state/slice/UnitMetadataSlice.ts +29 -29
- package/src/dataunit/state/slice/WaitingChangesSlice.ts +44 -0
- package/src/http/AuthorizedServiceCaller.ts +58 -58
- package/src/http/HttpProvider.ts +93 -93
- package/src/http/RequestMetadata.ts +41 -41
- package/src/http/SkwHttpProvider.ts +77 -77
- package/src/index.ts +45 -44
- package/src/ui/FloatingManager.ts +167 -165
- package/src/utils/ApplicationContext.ts +18 -18
- package/src/utils/CriteriaModel.ts +207 -207
- package/src/utils/CriteriaParameter.ts +107 -107
- package/src/utils/DateUtils.ts +52 -52
- package/src/utils/MaskFormatter.ts +322 -322
- package/src/utils/NumberUtils.ts +174 -174
- package/src/utils/StringUtils.ts +60 -60
- package/src/utils/TimeFormatter.ts +97 -97
- package/test/http/HttpProvider.spec.ts +34 -34
- package/test/http/SkwHttpProvider.ts.spec.ts +33 -33
- package/test/util/CriteriaModel.spec.ts +231 -231
- package/test/util/CriteriaParameter.spec.ts +51 -51
- package/test/util/MaskFormatter.spec.ts +138 -138
- package/test/util/NumberUtils.spec.ts +156 -156
- package/test/util/StringUtils.spec.ts +43 -43
- package/test/util/TimeFormatter.spec.ts +25 -25
- package/tsconfig.json +15 -15
- package/dist/application/Application.d.ts +0 -8
- package/dist/application/Application.js +0 -19
- package/dist/application/Application.js.map +0 -1
- package/dist/http/data-fetcher/HttpFetcher.d.ts +0 -14
- package/dist/http/data-fetcher/HttpFetcher.js +0 -164
- package/dist/http/data-fetcher/HttpFetcher.js.map +0 -1
- package/dist/http/data-fetcher/default/DefaultGraphQL.d.ts +0 -3
- package/dist/http/data-fetcher/default/DefaultGraphQL.js +0 -18
- package/dist/http/data-fetcher/default/DefaultGraphQL.js.map +0 -1
- package/dist/http/data-fetcher/default/application-config-fetcher.d.ts +0 -6
- package/dist/http/data-fetcher/default/application-config-fetcher.js +0 -21
- package/dist/http/data-fetcher/default/application-config-fetcher.js.map +0 -1
- package/dist/http/data-fetcher/default/data-unit-graphql.d.ts +0 -3
- package/dist/http/data-fetcher/default/data-unit-graphql.js +0 -18
- package/dist/http/data-fetcher/default/data-unit-graphql.js.map +0 -1
- package/dist/http/data-fetcher/default/dataunit-executor.d.ts +0 -10
- package/dist/http/data-fetcher/default/dataunit-executor.js +0 -56
- package/dist/http/data-fetcher/default/dataunit-executor.js.map +0 -1
- package/dist/http/data-fetcher/default/dataunit-fetcher.d.ts +0 -9
- package/dist/http/data-fetcher/default/dataunit-fetcher.js +0 -69
- package/dist/http/data-fetcher/default/dataunit-fetcher.js.map +0 -1
- package/dist/http/data-fetcher/default/form-config-fetcher.d.ts +0 -2
- package/dist/http/data-fetcher/default/form-config-fetcher.js +0 -3
- package/dist/http/data-fetcher/default/form-config-fetcher.js.map +0 -1
- package/dist/http/data-fetcher/default/grid-config-fetcher.d.ts +0 -2
- package/dist/http/data-fetcher/default/grid-config-fetcher.js +0 -3
- package/dist/http/data-fetcher/default/grid-config-fetcher.js.map +0 -1
- package/dist/http/data-fetcher/default/index.d.ts +0 -0
- package/dist/http/data-fetcher/default/index.js +0 -2
- package/dist/http/data-fetcher/default/index.js.map +0 -1
- package/dist/http/data-fetcher/default/sankhya-graphql.d.ts +0 -3
- package/dist/http/data-fetcher/default/sankhya-graphql.js +0 -8
- package/dist/http/data-fetcher/default/sankhya-graphql.js.map +0 -1
- package/dist/http/data-fetcher/graphql/DefaultGraphQl.d.ts +0 -3
- package/dist/http/data-fetcher/graphql/DefaultGraphQl.js +0 -18
- package/dist/http/data-fetcher/graphql/DefaultGraphQl.js.map +0 -1
- package/dist/http/data-fetcher/state/LoadStateManager.d.ts +0 -23
- package/dist/http/data-fetcher/state/LoadStateManager.js +0 -78
- package/dist/http/data-fetcher/state/LoadStateManager.js.map +0 -1
|
@@ -1,28 +1,29 @@
|
|
|
1
|
-
import { StateAction } from "../StateManager.js";
|
|
2
|
-
export declare class DataUnitAction implements StateAction {
|
|
3
|
-
private _type;
|
|
4
|
-
private _payload;
|
|
5
|
-
constructor(type: Action, payload?: any);
|
|
6
|
-
get type(): Action;
|
|
7
|
-
get payload(): any;
|
|
8
|
-
}
|
|
9
|
-
export declare enum Action {
|
|
10
|
-
LOADING_METADATA = "loadingMetadata",
|
|
11
|
-
METADATA_LOADED = "metadataLoaded",
|
|
12
|
-
LOADING_DATA = "loadingData",
|
|
13
|
-
DATA_LOADED = "dataLoaded",
|
|
14
|
-
SAVING_DATA = "savingData",
|
|
15
|
-
DATA_SAVED = "dataSaved",
|
|
16
|
-
REMOVING_RECORDS = "removingRecords",
|
|
17
|
-
RECORDS_REMOVED = "recordsRemoved",
|
|
18
|
-
RECORDS_ADDED = "recordsAdded",
|
|
19
|
-
RECORDS_COPIED = "recordsCopied",
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
1
|
+
import { StateAction } from "../StateManager.js";
|
|
2
|
+
export declare class DataUnitAction implements StateAction {
|
|
3
|
+
private _type;
|
|
4
|
+
private _payload;
|
|
5
|
+
constructor(type: Action, payload?: any);
|
|
6
|
+
get type(): Action;
|
|
7
|
+
get payload(): any;
|
|
8
|
+
}
|
|
9
|
+
export declare enum Action {
|
|
10
|
+
LOADING_METADATA = "loadingMetadata",
|
|
11
|
+
METADATA_LOADED = "metadataLoaded",
|
|
12
|
+
LOADING_DATA = "loadingData",
|
|
13
|
+
DATA_LOADED = "dataLoaded",
|
|
14
|
+
SAVING_DATA = "savingData",
|
|
15
|
+
DATA_SAVED = "dataSaved",
|
|
16
|
+
REMOVING_RECORDS = "removingRecords",
|
|
17
|
+
RECORDS_REMOVED = "recordsRemoved",
|
|
18
|
+
RECORDS_ADDED = "recordsAdded",
|
|
19
|
+
RECORDS_COPIED = "recordsCopied",
|
|
20
|
+
CHANGING_DATA = "changingData",
|
|
21
|
+
DATA_CHANGED = "dataChanged",
|
|
22
|
+
EDITION_CANCELED = "editionCanceled",
|
|
23
|
+
CHANGE_UNDONE = "changeUndone",
|
|
24
|
+
CHANGE_REDONE = "changeRedone",
|
|
25
|
+
SELECTION_CHANGED = "selectionChanged",
|
|
26
|
+
NEXT_SELECTED = "nextSelected",
|
|
27
|
+
PREVIOUS_SELECTED = "previousSelected",
|
|
28
|
+
STATE_CHANGED = "stateChanged"
|
|
29
|
+
}
|
|
@@ -1,34 +1,35 @@
|
|
|
1
|
-
export class DataUnitAction {
|
|
2
|
-
constructor(type, payload) {
|
|
3
|
-
this._type = type;
|
|
4
|
-
this._payload = payload;
|
|
5
|
-
}
|
|
6
|
-
get type() {
|
|
7
|
-
return this._type;
|
|
8
|
-
}
|
|
9
|
-
get payload() {
|
|
10
|
-
return this._payload;
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
export var Action;
|
|
14
|
-
(function (Action) {
|
|
15
|
-
Action["LOADING_METADATA"] = "loadingMetadata";
|
|
16
|
-
Action["METADATA_LOADED"] = "metadataLoaded";
|
|
17
|
-
Action["LOADING_DATA"] = "loadingData";
|
|
18
|
-
Action["DATA_LOADED"] = "dataLoaded";
|
|
19
|
-
Action["SAVING_DATA"] = "savingData";
|
|
20
|
-
Action["DATA_SAVED"] = "dataSaved";
|
|
21
|
-
Action["REMOVING_RECORDS"] = "removingRecords";
|
|
22
|
-
Action["RECORDS_REMOVED"] = "recordsRemoved";
|
|
23
|
-
Action["RECORDS_ADDED"] = "recordsAdded";
|
|
24
|
-
Action["RECORDS_COPIED"] = "recordsCopied";
|
|
25
|
-
Action["
|
|
26
|
-
Action["
|
|
27
|
-
Action["
|
|
28
|
-
Action["
|
|
29
|
-
Action["
|
|
30
|
-
Action["
|
|
31
|
-
Action["
|
|
32
|
-
Action["
|
|
33
|
-
|
|
1
|
+
export class DataUnitAction {
|
|
2
|
+
constructor(type, payload) {
|
|
3
|
+
this._type = type;
|
|
4
|
+
this._payload = payload;
|
|
5
|
+
}
|
|
6
|
+
get type() {
|
|
7
|
+
return this._type;
|
|
8
|
+
}
|
|
9
|
+
get payload() {
|
|
10
|
+
return this._payload;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
export var Action;
|
|
14
|
+
(function (Action) {
|
|
15
|
+
Action["LOADING_METADATA"] = "loadingMetadata";
|
|
16
|
+
Action["METADATA_LOADED"] = "metadataLoaded";
|
|
17
|
+
Action["LOADING_DATA"] = "loadingData";
|
|
18
|
+
Action["DATA_LOADED"] = "dataLoaded";
|
|
19
|
+
Action["SAVING_DATA"] = "savingData";
|
|
20
|
+
Action["DATA_SAVED"] = "dataSaved";
|
|
21
|
+
Action["REMOVING_RECORDS"] = "removingRecords";
|
|
22
|
+
Action["RECORDS_REMOVED"] = "recordsRemoved";
|
|
23
|
+
Action["RECORDS_ADDED"] = "recordsAdded";
|
|
24
|
+
Action["RECORDS_COPIED"] = "recordsCopied";
|
|
25
|
+
Action["CHANGING_DATA"] = "changingData";
|
|
26
|
+
Action["DATA_CHANGED"] = "dataChanged";
|
|
27
|
+
Action["EDITION_CANCELED"] = "editionCanceled";
|
|
28
|
+
Action["CHANGE_UNDONE"] = "changeUndone";
|
|
29
|
+
Action["CHANGE_REDONE"] = "changeRedone";
|
|
30
|
+
Action["SELECTION_CHANGED"] = "selectionChanged";
|
|
31
|
+
Action["NEXT_SELECTED"] = "nextSelected";
|
|
32
|
+
Action["PREVIOUS_SELECTED"] = "previousSelected";
|
|
33
|
+
Action["STATE_CHANGED"] = "stateChanged";
|
|
34
|
+
})(Action || (Action = {}));
|
|
34
35
|
//# sourceMappingURL=DataUnitAction.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataUnitAction.js","sourceRoot":"","sources":["../../../../src/dataunit/state/action/DataUnitAction.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,cAAc;IAKvB,YAAY,IAAY,EAAE,OAAY;QAClC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC5B,CAAC;IAED,IAAW,IAAI;QACX,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;CACJ;AAED,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"DataUnitAction.js","sourceRoot":"","sources":["../../../../src/dataunit/state/action/DataUnitAction.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,cAAc;IAKvB,YAAY,IAAY,EAAE,OAAY;QAClC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC5B,CAAC;IAED,IAAW,IAAI;QACX,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;CACJ;AAED,MAAM,CAAN,IAAY,MA8BX;AA9BD,WAAY,MAAM;IAEd,8CAAoC,CAAA;IACpC,4CAAkC,CAAA;IAElC,sCAA4B,CAAA;IAC5B,oCAA0B,CAAA;IAE1B,oCAA0B,CAAA;IAC1B,kCAAwB,CAAA;IAExB,8CAAoC,CAAA;IACpC,4CAAkC,CAAA;IAElC,wCAA8B,CAAA;IAC9B,0CAAgC,CAAA;IAEhC,wCAA8B,CAAA;IAC9B,sCAA4B,CAAA;IAE5B,8CAAoC,CAAA;IACpC,wCAA8B,CAAA;IAC9B,wCAA8B,CAAA;IAE9B,gDAAsC,CAAA;IACtC,wCAA8B,CAAA;IAC9B,gDAAsC,CAAA;IAEtC,wCAA8B,CAAA;AAElC,CAAC,EA9BW,MAAM,KAAN,MAAM,QA8BjB"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { ActionReducer, StateAction } from "../StateManager.js";
|
|
2
|
-
import StateManager from "../StateManager.js";
|
|
3
|
-
import { Record } from "../../DataUnit.js";
|
|
4
|
-
declare class AddedRecordsReducerImpl implements ActionReducer {
|
|
5
|
-
sliceName: string;
|
|
6
|
-
reduce(_stateManager: StateManager, currentState: Array<Record>, action: StateAction): Array<Record> | undefined;
|
|
7
|
-
}
|
|
8
|
-
export declare const AddedRecordsReducer: AddedRecordsReducerImpl;
|
|
9
|
-
export declare const getAddedRecords: (stateManager: StateManager) => Array<Record>;
|
|
10
|
-
export declare const prepareAddedRecordId: (stateManager: StateManager, source: Array<any>) => Array<Record>;
|
|
11
|
-
export {};
|
|
1
|
+
import { ActionReducer, StateAction } from "../StateManager.js";
|
|
2
|
+
import StateManager from "../StateManager.js";
|
|
3
|
+
import { Record } from "../../DataUnit.js";
|
|
4
|
+
declare class AddedRecordsReducerImpl implements ActionReducer {
|
|
5
|
+
sliceName: string;
|
|
6
|
+
reduce(_stateManager: StateManager, currentState: Array<Record>, action: StateAction): Array<Record> | undefined;
|
|
7
|
+
}
|
|
8
|
+
export declare const AddedRecordsReducer: AddedRecordsReducerImpl;
|
|
9
|
+
export declare const getAddedRecords: (stateManager: StateManager) => Array<Record>;
|
|
10
|
+
export declare const prepareAddedRecordId: (stateManager: StateManager, source: Array<any>) => Array<Record>;
|
|
11
|
+
export {};
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
import { Action } from "../action/DataUnitAction.js";
|
|
2
|
-
class AddedRecordsReducerImpl {
|
|
3
|
-
constructor() {
|
|
4
|
-
this.sliceName = "hist::addedRecords";
|
|
5
|
-
}
|
|
6
|
-
reduce(_stateManager, currentState, action) {
|
|
7
|
-
switch (action.type) {
|
|
8
|
-
case Action.RECORDS_ADDED:
|
|
9
|
-
case Action.RECORDS_COPIED:
|
|
10
|
-
return (currentState || []).concat(action.payload);
|
|
11
|
-
case Action.DATA_SAVED:
|
|
12
|
-
case Action.EDITION_CANCELED:
|
|
13
|
-
return undefined;
|
|
14
|
-
}
|
|
15
|
-
return currentState;
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
export const AddedRecordsReducer = new AddedRecordsReducerImpl();
|
|
19
|
-
export const getAddedRecords = (stateManager) => {
|
|
20
|
-
return stateManager.select(AddedRecordsReducer.sliceName, (state) => state);
|
|
21
|
-
};
|
|
22
|
-
export const prepareAddedRecordId = (stateManager, source) => {
|
|
23
|
-
let index = (getAddedRecords(stateManager) || []).length;
|
|
24
|
-
return source.map(item => { return Object.assign(Object.assign({}, item), { __record__id__: "NEW_" + (index++) }); });
|
|
25
|
-
};
|
|
1
|
+
import { Action } from "../action/DataUnitAction.js";
|
|
2
|
+
class AddedRecordsReducerImpl {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.sliceName = "hist::addedRecords";
|
|
5
|
+
}
|
|
6
|
+
reduce(_stateManager, currentState, action) {
|
|
7
|
+
switch (action.type) {
|
|
8
|
+
case Action.RECORDS_ADDED:
|
|
9
|
+
case Action.RECORDS_COPIED:
|
|
10
|
+
return (currentState || []).concat(action.payload);
|
|
11
|
+
case Action.DATA_SAVED:
|
|
12
|
+
case Action.EDITION_CANCELED:
|
|
13
|
+
return undefined;
|
|
14
|
+
}
|
|
15
|
+
return currentState;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
export const AddedRecordsReducer = new AddedRecordsReducerImpl();
|
|
19
|
+
export const getAddedRecords = (stateManager) => {
|
|
20
|
+
return stateManager.select(AddedRecordsReducer.sliceName, (state) => state);
|
|
21
|
+
};
|
|
22
|
+
export const prepareAddedRecordId = (stateManager, source) => {
|
|
23
|
+
let index = (getAddedRecords(stateManager) || []).length;
|
|
24
|
+
return source.map(item => { return Object.assign(Object.assign({}, item), { __record__id__: "NEW_" + (index++) }); });
|
|
25
|
+
};
|
|
26
26
|
//# sourceMappingURL=AddedRecordsSlice.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { ActionReducer, StateAction } from "../StateManager.js";
|
|
2
|
-
import StateManager from "../StateManager.js";
|
|
3
|
-
import { Change } from "../../DataUnit.js";
|
|
4
|
-
declare class ChangesReducerImpl implements ActionReducer {
|
|
5
|
-
sliceName: string;
|
|
6
|
-
reduce(stateManager: StateManager, currentState: Map<string, any>, action: StateAction): Map<string, any> | undefined;
|
|
7
|
-
}
|
|
8
|
-
export declare const ChangesReducer: ChangesReducerImpl;
|
|
9
|
-
export declare const getChanges: (stateManager: StateManager) => Map<string, any>;
|
|
10
|
-
export declare const isDirty: (stateManager: StateManager) => boolean;
|
|
11
|
-
export declare const getChangesToSave: (dataUnit: string, stateManager: StateManager) => Array<Change>;
|
|
12
|
-
export {};
|
|
1
|
+
import { ActionReducer, StateAction } from "../StateManager.js";
|
|
2
|
+
import StateManager from "../StateManager.js";
|
|
3
|
+
import { Change } from "../../DataUnit.js";
|
|
4
|
+
declare class ChangesReducerImpl implements ActionReducer {
|
|
5
|
+
sliceName: string;
|
|
6
|
+
reduce(stateManager: StateManager, currentState: Map<string, any>, action: StateAction): Map<string, any> | undefined;
|
|
7
|
+
}
|
|
8
|
+
export declare const ChangesReducer: ChangesReducerImpl;
|
|
9
|
+
export declare const getChanges: (stateManager: StateManager) => Map<string, any>;
|
|
10
|
+
export declare const isDirty: (stateManager: StateManager) => boolean;
|
|
11
|
+
export declare const getChangesToSave: (dataUnit: string, stateManager: StateManager) => Array<Change>;
|
|
12
|
+
export {};
|
|
@@ -1,73 +1,77 @@
|
|
|
1
|
-
import { Action } from "../action/DataUnitAction.js";
|
|
2
|
-
import { getSelection } from "./SelectionSlice.js";
|
|
3
|
-
import { getRecords } from "./RecordsSlice.js";
|
|
4
|
-
import { getRemovedRecords } from "./RemovedRecordsSlice.js";
|
|
5
|
-
import { getAddedRecords } from "./AddedRecordsSlice.js";
|
|
6
|
-
import { Change, ChangeOperation } from "../../DataUnit.js";
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
case Action.
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
export const
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
1
|
+
import { Action } from "../action/DataUnitAction.js";
|
|
2
|
+
import { getSelection } from "./SelectionSlice.js";
|
|
3
|
+
import { getRecords } from "./RecordsSlice.js";
|
|
4
|
+
import { getRemovedRecords } from "./RemovedRecordsSlice.js";
|
|
5
|
+
import { getAddedRecords } from "./AddedRecordsSlice.js";
|
|
6
|
+
import { Change, ChangeOperation } from "../../DataUnit.js";
|
|
7
|
+
import { getWaitingChanges } from "./WaitingChangesSlice.js";
|
|
8
|
+
class ChangesReducerImpl {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.sliceName = "hist::changes";
|
|
11
|
+
}
|
|
12
|
+
reduce(stateManager, currentState, action) {
|
|
13
|
+
switch (action.type) {
|
|
14
|
+
case Action.DATA_CHANGED:
|
|
15
|
+
const selection = action.payload.records || getSelection(stateManager);
|
|
16
|
+
if (selection) {
|
|
17
|
+
const newState = new Map(currentState);
|
|
18
|
+
selection.forEach(recordId => {
|
|
19
|
+
const newChanges = Object.assign(Object.assign({}, newState.get(recordId)), action.payload);
|
|
20
|
+
delete newChanges.records;
|
|
21
|
+
newState.set(recordId, newChanges);
|
|
22
|
+
});
|
|
23
|
+
return newState;
|
|
24
|
+
}
|
|
25
|
+
return currentState;
|
|
26
|
+
case Action.DATA_SAVED:
|
|
27
|
+
case Action.EDITION_CANCELED:
|
|
28
|
+
return undefined;
|
|
29
|
+
}
|
|
30
|
+
return currentState;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
export const ChangesReducer = new ChangesReducerImpl();
|
|
34
|
+
export const getChanges = (stateManager) => {
|
|
35
|
+
return stateManager.select(ChangesReducer.sliceName, (state) => state);
|
|
36
|
+
};
|
|
37
|
+
export const isDirty = (stateManager) => {
|
|
38
|
+
if (getAddedRecords(stateManager) !== undefined) {
|
|
39
|
+
return true;
|
|
40
|
+
}
|
|
41
|
+
if (getRemovedRecords(stateManager) !== undefined) {
|
|
42
|
+
return true;
|
|
43
|
+
}
|
|
44
|
+
if (getWaitingChanges(stateManager) !== undefined) {
|
|
45
|
+
return true;
|
|
46
|
+
}
|
|
47
|
+
return getChanges(stateManager) !== undefined;
|
|
48
|
+
};
|
|
49
|
+
export const getChangesToSave = (dataUnit, stateManager) => {
|
|
50
|
+
const result = [];
|
|
51
|
+
const changes = getChanges(stateManager);
|
|
52
|
+
const records = getRecords(stateManager);
|
|
53
|
+
records === null || records === void 0 ? void 0 : records.forEach(r => {
|
|
54
|
+
if (changes) {
|
|
55
|
+
const c = changes.get(r.__record__id__);
|
|
56
|
+
if (c) {
|
|
57
|
+
result.push(new Change(dataUnit, r, c, ChangeOperation.UPDATE));
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
const addedRecords = getAddedRecords(stateManager);
|
|
62
|
+
if (addedRecords) {
|
|
63
|
+
addedRecords.forEach(r => {
|
|
64
|
+
result.push(new Change(dataUnit, r, changes === null || changes === void 0 ? void 0 : changes.get(r.__record__id__), ChangeOperation.INSERT));
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
const removedRecords = getRemovedRecords(stateManager);
|
|
68
|
+
const recordsById = {};
|
|
69
|
+
records === null || records === void 0 ? void 0 : records.forEach(r => recordsById[r.__record__id__] = r);
|
|
70
|
+
if (removedRecords) {
|
|
71
|
+
removedRecords.forEach(id => {
|
|
72
|
+
result.push(new Change(dataUnit, recordsById[id], undefined, ChangeOperation.DELETE));
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
return result;
|
|
76
|
+
};
|
|
73
77
|
//# sourceMappingURL=ChangesSlice.js.map
|
|
@@ -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;AACzD,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"ChangesSlice.js","sourceRoot":"","sources":["../../../../src/dataunit/state/slice/ChangesSlice.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { ActionReducer } from "../StateManager.js";
|
|
2
|
-
import StateManager from "../StateManager.js";
|
|
3
|
-
import { Record } from "../../DataUnit.js";
|
|
4
|
-
declare class CurrentRecordsReducerImpl implements ActionReducer {
|
|
5
|
-
sliceName: string;
|
|
6
|
-
reduce(stateManager: StateManager): Map<string, Record> | undefined;
|
|
7
|
-
}
|
|
8
|
-
export declare const CurrentRecordsReducer: CurrentRecordsReducerImpl;
|
|
9
|
-
export declare const getCurrentRecords: (stateManager: StateManager) => Map<string, Record>;
|
|
10
|
-
export declare const getFieldValue: (stateManager: StateManager, fieldName: string) => any;
|
|
11
|
-
export {};
|
|
1
|
+
import { ActionReducer } from "../StateManager.js";
|
|
2
|
+
import StateManager from "../StateManager.js";
|
|
3
|
+
import { Record } from "../../DataUnit.js";
|
|
4
|
+
declare class CurrentRecordsReducerImpl implements ActionReducer {
|
|
5
|
+
sliceName: string;
|
|
6
|
+
reduce(stateManager: StateManager): Map<string, Record> | undefined;
|
|
7
|
+
}
|
|
8
|
+
export declare const CurrentRecordsReducer: CurrentRecordsReducerImpl;
|
|
9
|
+
export declare const getCurrentRecords: (stateManager: StateManager) => Map<string, Record>;
|
|
10
|
+
export declare const getFieldValue: (stateManager: StateManager, fieldName: string) => any;
|
|
11
|
+
export {};
|
|
@@ -1,46 +1,46 @@
|
|
|
1
|
-
import { getRecords } from "./RecordsSlice.js";
|
|
2
|
-
import { getSelection } from "./SelectionSlice.js";
|
|
3
|
-
import { getChanges } from "./ChangesSlice.js";
|
|
4
|
-
import { getRemovedRecords } from "./RemovedRecordsSlice.js";
|
|
5
|
-
import { getAddedRecords } from "./AddedRecordsSlice.js";
|
|
6
|
-
class CurrentRecordsReducerImpl {
|
|
7
|
-
constructor() {
|
|
8
|
-
this.sliceName = "currentRecords";
|
|
9
|
-
}
|
|
10
|
-
reduce(stateManager) {
|
|
11
|
-
let records = getRecords(stateManager);
|
|
12
|
-
const added = getAddedRecords(stateManager);
|
|
13
|
-
if (!records && !added) {
|
|
14
|
-
return undefined;
|
|
15
|
-
}
|
|
16
|
-
if (added) {
|
|
17
|
-
records = (records || []).concat(added);
|
|
18
|
-
}
|
|
19
|
-
const removedRecords = getRemovedRecords(stateManager);
|
|
20
|
-
if (removedRecords) {
|
|
21
|
-
records = records.filter(r => !removedRecords.includes(r.__record__id__));
|
|
22
|
-
}
|
|
23
|
-
const changes = getChanges(stateManager);
|
|
24
|
-
return new Map(records.map(r => {
|
|
25
|
-
const recordId = r.__record__id__;
|
|
26
|
-
const record = Object.assign(Object.assign({}, r), changes === null || changes === void 0 ? void 0 : changes.get(recordId));
|
|
27
|
-
return [recordId, record];
|
|
28
|
-
}));
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
export const CurrentRecordsReducer = new CurrentRecordsReducerImpl();
|
|
32
|
-
export const getCurrentRecords = (stateManager) => {
|
|
33
|
-
return stateManager.select(CurrentRecordsReducer.sliceName, (state) => state);
|
|
34
|
-
};
|
|
35
|
-
export const getFieldValue = (stateManager, fieldName) => {
|
|
36
|
-
const selection = getSelection(stateManager);
|
|
37
|
-
if (selection && selection.length > 0) {
|
|
38
|
-
const currentRecords = getCurrentRecords(stateManager);
|
|
39
|
-
if (currentRecords) {
|
|
40
|
-
const record = currentRecords.get(selection[0]);
|
|
41
|
-
return record ? record[fieldName] : undefined;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
return undefined;
|
|
45
|
-
};
|
|
1
|
+
import { getRecords } from "./RecordsSlice.js";
|
|
2
|
+
import { getSelection } from "./SelectionSlice.js";
|
|
3
|
+
import { getChanges } from "./ChangesSlice.js";
|
|
4
|
+
import { getRemovedRecords } from "./RemovedRecordsSlice.js";
|
|
5
|
+
import { getAddedRecords } from "./AddedRecordsSlice.js";
|
|
6
|
+
class CurrentRecordsReducerImpl {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.sliceName = "currentRecords";
|
|
9
|
+
}
|
|
10
|
+
reduce(stateManager) {
|
|
11
|
+
let records = getRecords(stateManager);
|
|
12
|
+
const added = getAddedRecords(stateManager);
|
|
13
|
+
if (!records && !added) {
|
|
14
|
+
return undefined;
|
|
15
|
+
}
|
|
16
|
+
if (added) {
|
|
17
|
+
records = (records || []).concat(added);
|
|
18
|
+
}
|
|
19
|
+
const removedRecords = getRemovedRecords(stateManager);
|
|
20
|
+
if (removedRecords) {
|
|
21
|
+
records = records.filter(r => !removedRecords.includes(r.__record__id__));
|
|
22
|
+
}
|
|
23
|
+
const changes = getChanges(stateManager);
|
|
24
|
+
return new Map(records.map(r => {
|
|
25
|
+
const recordId = r.__record__id__;
|
|
26
|
+
const record = Object.assign(Object.assign({}, r), changes === null || changes === void 0 ? void 0 : changes.get(recordId));
|
|
27
|
+
return [recordId, record];
|
|
28
|
+
}));
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
export const CurrentRecordsReducer = new CurrentRecordsReducerImpl();
|
|
32
|
+
export const getCurrentRecords = (stateManager) => {
|
|
33
|
+
return stateManager.select(CurrentRecordsReducer.sliceName, (state) => state);
|
|
34
|
+
};
|
|
35
|
+
export const getFieldValue = (stateManager, fieldName) => {
|
|
36
|
+
const selection = getSelection(stateManager);
|
|
37
|
+
if (selection && selection.length > 0) {
|
|
38
|
+
const currentRecords = getCurrentRecords(stateManager);
|
|
39
|
+
if (currentRecords) {
|
|
40
|
+
const record = currentRecords.get(selection[0]);
|
|
41
|
+
return record ? record[fieldName] : undefined;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
return undefined;
|
|
45
|
+
};
|
|
46
46
|
//# sourceMappingURL=CurrentRecordsSlice.js.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { ActionReducer, StateAction } from "../StateManager.js";
|
|
2
|
-
import StateManager from "../StateManager.js";
|
|
3
|
-
import { Record } from "../../DataUnit.js";
|
|
4
|
-
declare class RecordsReducerImpl implements ActionReducer {
|
|
5
|
-
sliceName: string;
|
|
6
|
-
reduce(stateManager: StateManager, currentState: Array<Record>, action: StateAction): Array<Record>;
|
|
7
|
-
}
|
|
8
|
-
export declare const RecordsReducer: RecordsReducerImpl;
|
|
9
|
-
export declare const getRecords: (stateManager: StateManager) => Array<Record>;
|
|
10
|
-
export {};
|
|
1
|
+
import { ActionReducer, StateAction } from "../StateManager.js";
|
|
2
|
+
import StateManager from "../StateManager.js";
|
|
3
|
+
import { Record } from "../../DataUnit.js";
|
|
4
|
+
declare class RecordsReducerImpl implements ActionReducer {
|
|
5
|
+
sliceName: string;
|
|
6
|
+
reduce(stateManager: StateManager, currentState: Array<Record>, action: StateAction): Array<Record>;
|
|
7
|
+
}
|
|
8
|
+
export declare const RecordsReducer: RecordsReducerImpl;
|
|
9
|
+
export declare const getRecords: (stateManager: StateManager) => Array<Record>;
|
|
10
|
+
export {};
|
|
@@ -1,44 +1,44 @@
|
|
|
1
|
-
import { Action } from "../action/DataUnitAction.js";
|
|
2
|
-
import { getRemovedRecords } from "./RemovedRecordsSlice.js";
|
|
3
|
-
class RecordsReducerImpl {
|
|
4
|
-
constructor() {
|
|
5
|
-
this.sliceName = "records";
|
|
6
|
-
}
|
|
7
|
-
reduce(stateManager, currentState, action) {
|
|
8
|
-
switch (action.type) {
|
|
9
|
-
case Action.DATA_LOADED:
|
|
10
|
-
return action.payload;
|
|
11
|
-
case Action.RECORDS_REMOVED:
|
|
12
|
-
const { records, buffered } = action.payload;
|
|
13
|
-
if (!buffered) {
|
|
14
|
-
return currentState.filter(r => !records.includes(r.__record__id__));
|
|
15
|
-
}
|
|
16
|
-
return currentState;
|
|
17
|
-
case Action.DATA_SAVED:
|
|
18
|
-
const recordsMap = new Map();
|
|
19
|
-
const currentRecords = getRecords(stateManager);
|
|
20
|
-
if (currentRecords) {
|
|
21
|
-
const removed = getRemovedRecords(stateManager) || [];
|
|
22
|
-
currentRecords.forEach(r => {
|
|
23
|
-
if (!removed.includes(r.__record__id__)) {
|
|
24
|
-
recordsMap.set(r.__record__id__, r);
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
const savedRecords = action.payload.records;
|
|
29
|
-
savedRecords.forEach(sr => {
|
|
30
|
-
const recordId = sr.__old__id__ || sr.__record__id__;
|
|
31
|
-
const newRecord = Object.assign({}, sr);
|
|
32
|
-
delete newRecord["__old__id__"];
|
|
33
|
-
recordsMap.set(recordId, newRecord);
|
|
34
|
-
});
|
|
35
|
-
return Array.from(recordsMap.values());
|
|
36
|
-
}
|
|
37
|
-
return currentState;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
export const RecordsReducer = new RecordsReducerImpl();
|
|
41
|
-
export const getRecords = (stateManager) => {
|
|
42
|
-
return stateManager.select(RecordsReducer.sliceName, (state) => state);
|
|
43
|
-
};
|
|
1
|
+
import { Action } from "../action/DataUnitAction.js";
|
|
2
|
+
import { getRemovedRecords } from "./RemovedRecordsSlice.js";
|
|
3
|
+
class RecordsReducerImpl {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.sliceName = "records";
|
|
6
|
+
}
|
|
7
|
+
reduce(stateManager, currentState, action) {
|
|
8
|
+
switch (action.type) {
|
|
9
|
+
case Action.DATA_LOADED:
|
|
10
|
+
return action.payload;
|
|
11
|
+
case Action.RECORDS_REMOVED:
|
|
12
|
+
const { records, buffered } = action.payload;
|
|
13
|
+
if (!buffered) {
|
|
14
|
+
return currentState.filter(r => !records.includes(r.__record__id__));
|
|
15
|
+
}
|
|
16
|
+
return currentState;
|
|
17
|
+
case Action.DATA_SAVED:
|
|
18
|
+
const recordsMap = new Map();
|
|
19
|
+
const currentRecords = getRecords(stateManager);
|
|
20
|
+
if (currentRecords) {
|
|
21
|
+
const removed = getRemovedRecords(stateManager) || [];
|
|
22
|
+
currentRecords.forEach(r => {
|
|
23
|
+
if (!removed.includes(r.__record__id__)) {
|
|
24
|
+
recordsMap.set(r.__record__id__, r);
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
const savedRecords = action.payload.records;
|
|
29
|
+
savedRecords.forEach(sr => {
|
|
30
|
+
const recordId = sr.__old__id__ || sr.__record__id__;
|
|
31
|
+
const newRecord = Object.assign({}, sr);
|
|
32
|
+
delete newRecord["__old__id__"];
|
|
33
|
+
recordsMap.set(recordId, newRecord);
|
|
34
|
+
});
|
|
35
|
+
return Array.from(recordsMap.values());
|
|
36
|
+
}
|
|
37
|
+
return currentState;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
export const RecordsReducer = new RecordsReducerImpl();
|
|
41
|
+
export const getRecords = (stateManager) => {
|
|
42
|
+
return stateManager.select(RecordsReducer.sliceName, (state) => state);
|
|
43
|
+
};
|
|
44
44
|
//# sourceMappingURL=RecordsSlice.js.map
|