@sankhyalabs/core 1.0.59 → 1.0.62

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.
@@ -16,8 +16,9 @@ export default class DataUnit {
16
16
  private validateAndTypeValue;
17
17
  private getFilters;
18
18
  private getSort;
19
- loadMetadata(): Promise<UnitMetadata>;
20
- loadData(page?: PageRequest): Promise<PageResponse>;
19
+ private getFielterProviderKey;
20
+ loadMetadata(): Promise<UnitMetadata | void>;
21
+ loadData(page?: PageRequest): Promise<PageResponse | void>;
21
22
  saveData(): Promise<void>;
22
23
  removeSelectedRecords(buffered?: boolean): Promise<Array<string>>;
23
24
  removeRecords(records: Array<string>, buffered?: boolean): Promise<Array<string>>;
@@ -16,11 +16,12 @@ import { RecordsReducer } from "./state/slice/RecordsSlice.js";
16
16
  import { SelectionReducer, getSelection, hasNext, hasPrevious } from "./state/slice/SelectionSlice.js";
17
17
  import { ChangesReducer, isDirty, getChangesToSave } from "./state/slice/ChangesSlice.js";
18
18
  import { RemovedRecordsReducer } from "./state/slice/RemovedRecordsSlice.js";
19
- import { AddedRecordsReducer, prepareAddedRecordId } from "./state/slice/AddedRecordsSlice.js";
19
+ import { AddedRecordsReducer, prepareAddedRecordId, prepareCopiedRecord } from "./state/slice/AddedRecordsSlice.js";
20
20
  import { CurrentRecordsReducer, getCurrentRecords, getFieldValue, getModifiedRecords } from "./state/slice/CurrentRecordsSlice.js";
21
21
  import { getBlockingWaitingChanges, getWaitingChangePromisses, isWaiting, WaitingChangesReducer } from "./state/slice/WaitingChangesSlice.js";
22
22
  import WaitingChangeException from "../exceptions/WaitingChangeException.js";
23
23
  import ErrorException from "../exceptions/ErrorException.js";
24
+ import { StringUtils } from "../utils/StringUtils.js";
24
25
  export default class DataUnit {
25
26
  constructor(name) {
26
27
  this._name = name;
@@ -36,7 +37,7 @@ export default class DataUnit {
36
37
  CurrentRecordsReducer
37
38
  ]);
38
39
  this._observers = [];
39
- this._filterProviders = [];
40
+ this._filterProviders = new Map();
40
41
  this._sortingProvider = undefined;
41
42
  this._interceptors = [];
42
43
  }
@@ -62,33 +63,41 @@ export default class DataUnit {
62
63
  getSort() {
63
64
  return this._sortingProvider ? this._sortingProvider.getSort(this._name) : undefined;
64
65
  }
66
+ getFielterProviderKey(provider) {
67
+ if (provider.getKey) {
68
+ return provider.getKey();
69
+ }
70
+ return StringUtils.hashCode(provider.getFilter.toString());
71
+ }
65
72
  // Loaders
66
73
  loadMetadata() {
67
74
  return __awaiter(this, void 0, void 0, function* () {
68
- this.dispatchAction(Action.LOADING_METADATA);
69
- return new Promise((resolve, fail) => {
70
- if (this.metadataLoader) {
71
- this.metadataLoader(this).then(metadata => {
72
- this.metadata = metadata;
73
- resolve(this.metadata);
74
- }).catch(error => fail(error));
75
- }
76
- });
75
+ if (this.dispatchAction(Action.LOADING_METADATA)) {
76
+ return new Promise((resolve, fail) => {
77
+ if (this.metadataLoader) {
78
+ this.metadataLoader(this).then(metadata => {
79
+ this.metadata = metadata;
80
+ resolve(this.metadata);
81
+ }).catch(error => fail(new ErrorException("Problema carregando metadados", error)));
82
+ }
83
+ });
84
+ }
77
85
  });
78
86
  }
79
87
  loadData(page) {
80
88
  return __awaiter(this, void 0, void 0, function* () {
81
- this.dispatchAction(Action.LOADING_DATA);
82
- return new Promise((resolve, fail) => {
83
- if (this.dataLoader) {
84
- const sort = this.getSort();
85
- const filters = this.getFilters();
86
- this.dataLoader(this, page, sort, filters).then(pageRes => {
87
- this.records = pageRes.records;
88
- resolve(pageRes);
89
- }).catch(error => fail(error));
90
- }
91
- });
89
+ if (this.dispatchAction(Action.LOADING_DATA)) {
90
+ return new Promise((resolve, fail) => {
91
+ if (this.dataLoader) {
92
+ const sort = this.getSort();
93
+ const filters = this.getFilters();
94
+ this.dataLoader(this, page, sort, filters).then(pageRes => {
95
+ this.records = pageRes.records;
96
+ resolve(pageRes);
97
+ }).catch(error => fail(new ErrorException("Problema carregando registros", error)));
98
+ }
99
+ });
100
+ }
92
101
  });
93
102
  }
94
103
  saveData() {
@@ -100,22 +109,23 @@ export default class DataUnit {
100
109
  }
101
110
  else {
102
111
  if (isDirty(this._stateManager)) {
103
- this.dispatchAction(Action.SAVING_DATA);
104
- const promisses = getWaitingChangePromisses(this._stateManager);
105
- return new Promise((resolve, fail) => {
106
- Promise.all(promisses || []).then(() => {
107
- if (this.saveLoader) {
108
- const changes = getChangesToSave(this._name, this._stateManager);
109
- this.saveLoader(this, changes).then(records => {
110
- this.dispatchAction(Action.DATA_SAVED, { changes, records });
112
+ if (this.dispatchAction(Action.SAVING_DATA)) {
113
+ const promisses = getWaitingChangePromisses(this._stateManager);
114
+ return new Promise((resolve, fail) => {
115
+ Promise.all(promisses || []).then(() => {
116
+ if (this.saveLoader) {
117
+ const changes = getChangesToSave(this._name, this._stateManager);
118
+ this.saveLoader(this, changes).then(records => {
119
+ this.dispatchAction(Action.DATA_SAVED, { changes, records });
120
+ resolve();
121
+ }).catch(cause => fail(new ErrorException("Erro salvando alterações", cause)));
122
+ }
123
+ else {
111
124
  resolve();
112
- }).catch(cause => fail(new ErrorException("Erro salvando alterações", cause)));
113
- }
114
- else {
115
- resolve();
116
- }
125
+ }
126
+ });
117
127
  });
118
- });
128
+ }
119
129
  }
120
130
  }
121
131
  return Promise.resolve();
@@ -137,24 +147,25 @@ export default class DataUnit {
137
147
  this.dispatchAction(Action.RECORDS_REMOVED, { records, buffered: true });
138
148
  }
139
149
  else {
140
- this.dispatchAction(Action.REMOVING_RECORDS);
141
- return new Promise((resolve, fail) => {
142
- if (this.removeLoader) {
143
- this.removeLoader(this, records).then(records => {
144
- let currentIndex = 0;
145
- const removedIndex = [];
146
- const currentRecords = getCurrentRecords(this._stateManager);
147
- currentRecords.forEach((value, key) => {
148
- if (records.includes(key)) {
149
- removedIndex.push(currentIndex);
150
- }
151
- currentIndex++;
152
- });
153
- this.dispatchAction(Action.RECORDS_REMOVED, { records, removedIndex, buffered: false });
154
- resolve(records);
155
- }).catch(error => fail(error));
156
- }
157
- });
150
+ if (this.dispatchAction(Action.REMOVING_RECORDS)) {
151
+ return new Promise((resolve, fail) => {
152
+ if (this.removeLoader) {
153
+ this.removeLoader(this, records).then(records => {
154
+ let currentIndex = 0;
155
+ const removedIndex = [];
156
+ const currentRecords = getCurrentRecords(this._stateManager);
157
+ currentRecords.forEach((value, key) => {
158
+ if (records.includes(key)) {
159
+ removedIndex.push(currentIndex);
160
+ }
161
+ currentIndex++;
162
+ });
163
+ this.dispatchAction(Action.RECORDS_REMOVED, { records, removedIndex, buffered: false });
164
+ resolve(records);
165
+ }).catch(error => fail(new ErrorException("Problema removendo registros", error)));
166
+ }
167
+ });
168
+ }
158
169
  }
159
170
  }
160
171
  return Promise.resolve(records);
@@ -176,7 +187,7 @@ export default class DataUnit {
176
187
  this._interceptors = this._interceptors.filter(i => i !== interceptor);
177
188
  }
178
189
  addFilterProvider(provider) {
179
- this._filterProviders.push(provider);
190
+ this._filterProviders.set(this.getFielterProviderKey(provider), provider);
180
191
  }
181
192
  set sortingProvider(provider) {
182
193
  this._sortingProvider = provider;
@@ -207,7 +218,7 @@ export default class DataUnit {
207
218
  copySelected() {
208
219
  const selectedRecords = this.getSelectedRecords();
209
220
  if (selectedRecords) {
210
- this.dispatchAction(Action.RECORDS_COPIED, prepareAddedRecordId(this._stateManager, selectedRecords));
221
+ this.dispatchAction(Action.RECORDS_COPIED, prepareCopiedRecord(this._stateManager, selectedRecords));
211
222
  }
212
223
  }
213
224
  waitingForChange(fieldName) {
@@ -287,7 +298,10 @@ export default class DataUnit {
287
298
  action = interceptor.interceptAction(action);
288
299
  }
289
300
  });
290
- if (action) {
301
+ if (!action) {
302
+ return false;
303
+ }
304
+ else {
291
305
  this._stateManager.process(action);
292
306
  this._observers.forEach(f => {
293
307
  /*
@@ -302,6 +316,7 @@ export default class DataUnit {
302
316
  }
303
317
  });
304
318
  }
319
+ return true;
305
320
  }
306
321
  subscribe(observer) {
307
322
  this._observers.push(observer);
@@ -1 +1 @@
1
- {"version":3,"file":"DataUnit.js","sourceRoot":"","sources":["../../src/dataunit/DataUnit.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,YAAY,MAAM,yBAAyB,CAAC;AAEnD,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AAChG,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACvG,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAC1F,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC/F,OAAO,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AACnI,OAAO,EAAE,yBAAyB,EAAE,yBAAyB,EAAqB,SAAS,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AACjK,OAAO,sBAAsB,MAAM,yCAAyC,CAAC;AAC7E,OAAO,cAAc,MAAM,iCAAiC,CAAC;AAE7D,MAAM,CAAC,OAAO,OAAO,QAAQ;IAczB,YAAY,IAAY;QACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,aAAa,GAAG,IAAI,YAAY,CACjC;YACI,WAAW;YACX,mBAAmB;YACnB,cAAc;YACd,qBAAqB;YACrB,mBAAmB;YACnB,gBAAgB;YAChB,cAAc;YACd,qBAAqB;YACrB,qBAAqB;SACxB,CACJ,CAAC;QACF,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;QAC3B,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;QAClC,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;IAC5B,CAAC;IAED,IAAW,IAAI;QACX,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,mBAAmB;IACX,oBAAoB,CAAC,SAAiB,EAAE,QAAa;QACzD,yCAAyC;QACzC,MAAM,UAAU,GAAgC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACzE,OAAO,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC9E,CAAC;IAEO,UAAU;QACd,IAAI,OAAO,GAA8B,SAAS,CAAC;QACnD,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YAC9B,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,CAAC,EAAE;gBACH,OAAO,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;aACvC;QACL,CAAC,CAAC,CAAC;QACH,OAAO,OAAO,CAAC;IACnB,CAAC;IAEO,OAAO;QACX,OAAO,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACzF,CAAC;IAED,UAAU;IACG,YAAY;;YACrB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;YAC7C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;gBACjC,IAAI,IAAI,CAAC,cAAc,EAAE;oBACrB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,CAC1B,QAAQ,CAAC,EAAE;wBACP,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;wBACxB,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC3B,CAAC,CACJ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;iBACjC;YACL,CAAC,CAAC,CAAC;QACP,CAAC;KAAA;IAEY,QAAQ,CAAC,IAAkB;;YACpC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YACzC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;gBACjC,IAAI,IAAI,CAAC,UAAU,EAAE;oBACjB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;oBAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;oBAClC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAC3C,OAAO,CAAC,EAAE;wBACN,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;wBAC/B,OAAO,CAAC,OAAO,CAAC,CAAC;oBACrB,CAAC,CACJ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;iBACjC;YACL,CAAC,CAAC,CAAC;QACP,CAAC;KAAA;IAEY,QAAQ;;YACjB,MAAM,sBAAsB,GAAG,yBAAyB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAE7E,IAAI,sBAAsB,IAAI,sBAAsB,CAAC,IAAI,GAAG,CAAC,EAAE;gBAC3D,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,GAAG,sBAAsB,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;gBAC7E,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,sBAAsB,CAAC,+BAA+B,EAAI,aAA+B,CAAC,WAAW,CAAC,CAAC,CAAC;aACrI;iBAAM;gBACH,IAAI,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;oBAC7B,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;oBACxC,MAAM,SAAS,GAAG,yBAAyB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;oBAChE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;wBACjC,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;4BACnC,IAAI,IAAI,CAAC,UAAU,EAAE;gCACjB,MAAM,OAAO,GAAkB,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;gCAChF,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAC/B,OAAO,CAAC,EAAE;oCACN,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;oCAC7D,OAAO,EAAE,CAAC;gCACd,CAAC,CACJ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;6BACjF;iCAAM;gCACH,OAAO,EAAE,CAAC;6BACb;wBACL,CAAC,CAAC,CAAC;oBACP,CAAC,CAAC,CAAC;iBACN;aACJ;YAED,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC7B,CAAC;KAAA;IAEY,qBAAqB,CAAC,WAAoB,KAAK;;YACxD,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACnD,IAAI,SAAS,EAAE;gBACX,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;aAClD;YACD,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACtC,CAAC;KAAA;IAEY,aAAa,CAAC,OAAsB,EAAE,WAAoB,KAAK;;YACxE,IAAI,OAAO,EAAE;gBACT,IAAI,QAAQ,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;oBAChC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,eAAe,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;iBAC5E;qBAAM;oBACH,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;oBAC7C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;wBACjC,IAAI,IAAI,CAAC,YAAY,EAAE;4BACnB,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CACjC,OAAO,CAAC,EAAE;gCACN,IAAI,YAAY,GAAG,CAAC,CAAC;gCACrB,MAAM,YAAY,GAAkB,EAAE,CAAC;gCACvC,MAAM,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gCAE7D,cAAc,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;oCAClC,IAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;wCACtB,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;qCACnC;oCAED,YAAY,EAAE,CAAA;gCAClB,CAAC,CAAC,CAAC;gCAEH,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,eAAe,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;gCACxF,OAAO,CAAC,OAAO,CAAC,CAAC;4BACrB,CAAC,CACJ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;yBACjC;oBACL,CAAC,CAAC,CAAC;iBACN;aACJ;YACD,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;KAAA;IAED,MAAM;IACC,eAAe,CAAC,SAAiB,EAAE,KAAa;QACnD,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC5C,OAAO,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACxE,CAAC;IAEM,aAAa,CAAC,SAAiB,EAAE,KAAU;QAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC5C,OAAO,QAAQ,CAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IACjD,CAAC;IAEM,cAAc,CAAC,WAAgC;QAClD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACzC,CAAC;IAEM,iBAAiB,CAAC,WAAgC;QACrD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC;IAC3E,CAAC;IAEM,iBAAiB,CAAC,QAAwB;QAC7C,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED,IAAW,eAAe,CAAC,QAAyB;QAChD,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;IACrC,CAAC;IAED,IAAW,QAAQ,CAAC,EAAgB;QAChC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC3C,CAAC;IAED,IAAW,OAAO,CAAC,CAAgB;QAC/B,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC/C,CAAC;IAED,IAAW,OAAO;QACd,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACtD,OAAO,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACvD,CAAC;IAEM,kBAAkB;QACrB,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACxD,OAAO,QAAQ,IAAI,EAAE,CAAC;IAC1B,CAAC;IAEM,QAAQ,CAAC,SAAiB;QAC7B,OAAO,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IACnD,CAAC;IAEM,SAAS;QACZ,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,aAAa,EAAE,oBAAoB,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9F,CAAC;IAEM,YAAY;QACf,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAClD,IAAI,eAAe,EAAE;YACjB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,cAAc,EAAE,oBAAoB,CAAC,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC;SACzG;IACL,CAAC;IAEM,gBAAgB,CAAC,SAAiB;QACrC,OAAO,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IACpD,CAAC;IAEM,aAAa,CAAC,SAAiB;QAClC,OAAO,aAAa,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IACxD,CAAC;IAEM,aAAa,CAAC,SAAiB,EAAE,QAAa,EAAE,OAAuB;QAE1E,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAClE,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QAEnD,IAAI,YAAY,KAAK,UAAU,EAAE;YAC7B,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;SAClF;IACL,CAAC;IAEM,WAAW,CAAC,SAAiB,EAAE,aAA4B;QAC9D,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC;IAC9E,CAAC;IAEM,mBAAmB,CAAC,SAAiB;QACxC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,uBAAuB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;IACvE,CAAC;IAEM,YAAY;QACf,OAAO,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC5C,CAAC;IAEM,YAAY,CAAC,SAAwB;QACxC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;IAC7E,CAAC;IAEM,mBAAmB,CAAC,SAAwB;QAC/C,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;IAChF,CAAC;IAEM,kBAAkB;QACrB,MAAM,SAAS,GAAkB,IAAI,CAAC,YAAY,EAAE,CAAC;QACrD,IAAI,SAAS,EAAE;YACX,MAAM,cAAc,GAAkB,IAAI,CAAC,OAAO,CAAC;YACnD,OAAO,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;SAC5E;IACL,CAAC;IAEM,UAAU;QACb,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC9C,CAAC;IAEM,cAAc;QACjB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAClD,CAAC;IAEM,aAAa;QAChB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;IACjD,CAAC;IAEM,OAAO;QACV,OAAO,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACvC,CAAC;IAEM,OAAO;QACV,OAAO,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACvC,CAAC;IAEM,WAAW;QACd,OAAO,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC3C,CAAC;IAEM,OAAO;QACV,OAAO,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACvC,CAAC;IAEM,OAAO;QACV,OAAO,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACvC,CAAC;IAEM,IAAI;QACP,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC9C,CAAC;IAEM,IAAI;QACP,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC9C,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAED,0BAA0B;IAClB,cAAc,CAAC,UAAkB,EAAE,OAAa;;QACpD,IAAI,MAAM,GAAG,IAAI,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAErD,MAAA,IAAI,CAAC,aAAa,0CAAE,OAAO,CAAC,WAAW,CAAC,EAAE;YACtC,IAAI,MAAM,EAAE;gBACR,MAAM,GAAG,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;aAChD;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,MAAM,EAAE;YAER,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACnC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBACxB;;;kBAGE;gBACF,IAAI;oBACA,CAAC,CAAC,MAAM,CAAC,CAAC;iBACb;gBAAC,OAAO,CAAC,EAAE;oBACR,OAAO,CAAC,IAAI,CAAC,sCAAsC,EAAE,CAAC,CAAC,CAAC;iBAC3D;YACL,CAAC,CAAC,CAAC;SACN;IACL,CAAC;IAEM,SAAS,CAAC,QAA0C;QACvD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;IAEM,WAAW,CAAC,QAAkB;QACjC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC;IAClE,CAAC;CACJ;AAgBD,MAAM,CAAN,IAAY,eAKX;AALD,WAAY,eAAe;IACvB,oCAAiB,CAAA;IACjB,gCAAa,CAAA;IACb,oCAAiB,CAAA;IACjB,oCAAiB,CAAA;AACrB,CAAC,EALW,eAAe,KAAf,eAAe,QAK1B;AAED,MAAM,OAAO,MAAM;IASf,YAAY,QAAgB,EAAE,MAAc,EAAE,OAAY,EAAE,SAA0B,EAAE,QAAiB;QACrG,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;QAC9B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAChC,CAAC;IAED,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;IACtC,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,UAAU,KAAK,eAAe,CAAC,MAAM,CAAC;IACtD,CAAC;IAEM,MAAM;QACT,OAAO,IAAI,CAAC,UAAU,KAAK,eAAe,CAAC,IAAI,CAAC;IACpD,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,UAAU,KAAK,eAAe,CAAC,MAAM,CAAC;IACtD,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,UAAU,KAAK,eAAe,CAAC,MAAM,CAAC;IACtD,CAAC;CAEJ"}
1
+ {"version":3,"file":"DataUnit.js","sourceRoot":"","sources":["../../src/dataunit/DataUnit.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,9 @@ export const convertType = (dataType, value) => {
19
19
  case DataType.OBJECT:
20
20
  return typeof value === "string" ? JSON.parse(value) : value;
21
21
  case DataType.BOOLEAN:
22
+ if (typeof value == 'string') {
23
+ return Boolean(value === 'true');
24
+ }
22
25
  return Boolean(value);
23
26
  case DataType.DATE:
24
27
  return new Date(value.toString());
@@ -1 +1 @@
1
- {"version":3,"file":"DataType.js","sourceRoot":"","sources":["../../../src/dataunit/metadata/DataType.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,QAMX;AAND,WAAY,QAAQ;IAChB,6BAAiB,CAAA;IACjB,yBAAa,CAAA;IACb,yBAAa,CAAA;IACb,+BAAmB,CAAA;IACnB,6BAAiB,CAAA;AACrB,CAAC,EANW,QAAQ,KAAR,QAAQ,QAMnB;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,QAAkB,EAAE,KAAU,EAAO,EAAE;IAE/D,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;QACvC,OAAO,KAAK,CAAC;KAChB;IAED,IAAG,OAAO,KAAK,KAAK,QAAQ,IAAI,QAAQ,KAAK,QAAQ,CAAC,MAAM,IAAI,OAAO,IAAI,KAAK,EAAC;QAC7E,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;KACvB;IAED,QAAQ,QAAQ,EAAE;QACd,KAAK,QAAQ,CAAC,MAAM;YAChB,OAAO,KAAK,KAAK,EAAE,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/D,KAAK,QAAQ,CAAC,MAAM;YAChB,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACjE,KAAK,QAAQ,CAAC,OAAO;YACjB,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC;QAC1B,KAAK,QAAQ,CAAC,IAAI;YACd,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtC;YACI,OAAO,KAAK,CAAC;KACpB;AACL,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAE,QAA4B,EAAE,KAAU,EAAU,EAAE;IAE1E,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;QACvC,OAAO,KAAK,CAAC;KAChB;IAED,IAAI,QAAQ,EAAE;QACV,IAAI,QAAQ,KAAK,QAAQ,CAAC,MAAM,EAAE;YAC9B,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;SAChC;aAAM,IAAI,QAAQ,KAAK,QAAQ,CAAC,IAAI,EAAE;YACnC,OAAQ,KAAc,CAAC,WAAW,EAAE,CAAC;SACxC;aAAM;YACH,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;SAC3B;KACJ;SAAM;QACH,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC3B,OAAO,KAAK,CAAC;SAChB;aAAM,IAAI,KAAK,YAAY,IAAI,EAAE;YAC9B,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;SAC9B;aAAM;YACH,IAAI;gBACA,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;aAChC;YAAC,WAAM;gBACJ,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;aAC5B;YAED,OAAO,KAAK,CAAC;SAChB;KACJ;AACL,CAAC,CAAA"}
1
+ {"version":3,"file":"DataType.js","sourceRoot":"","sources":["../../../src/dataunit/metadata/DataType.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,QAMX;AAND,WAAY,QAAQ;IAChB,6BAAiB,CAAA;IACjB,yBAAa,CAAA;IACb,yBAAa,CAAA;IACb,+BAAmB,CAAA;IACnB,6BAAiB,CAAA;AACrB,CAAC,EANW,QAAQ,KAAR,QAAQ,QAMnB;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,QAAkB,EAAE,KAAU,EAAO,EAAE;IAE/D,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;QACvC,OAAO,KAAK,CAAC;KAChB;IAED,IAAG,OAAO,KAAK,KAAK,QAAQ,IAAI,QAAQ,KAAK,QAAQ,CAAC,MAAM,IAAI,OAAO,IAAI,KAAK,EAAC;QAC7E,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;KACvB;IAED,QAAQ,QAAQ,EAAE;QACd,KAAK,QAAQ,CAAC,MAAM;YAChB,OAAO,KAAK,KAAK,EAAE,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/D,KAAK,QAAQ,CAAC,MAAM;YAChB,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACjE,KAAK,QAAQ,CAAC,OAAO;YACjB,IAAG,OAAO,KAAK,IAAI,QAAQ,EAAC;gBACxB,OAAO,OAAO,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC;aACpC;YACD,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC;QAC1B,KAAK,QAAQ,CAAC,IAAI;YACd,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtC;YACI,OAAO,KAAK,CAAC;KACpB;AACL,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAE,QAA4B,EAAE,KAAU,EAAU,EAAE;IAE1E,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;QACvC,OAAO,KAAK,CAAC;KAChB;IAED,IAAI,QAAQ,EAAE;QACV,IAAI,QAAQ,KAAK,QAAQ,CAAC,MAAM,EAAE;YAC9B,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;SAChC;aAAM,IAAI,QAAQ,KAAK,QAAQ,CAAC,IAAI,EAAE;YACnC,OAAQ,KAAc,CAAC,WAAW,EAAE,CAAC;SACxC;aAAM;YACH,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;SAC3B;KACJ;SAAM;QACH,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC3B,OAAO,KAAK,CAAC;SAChB;aAAM,IAAI,KAAK,YAAY,IAAI,EAAE;YAC9B,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;SAC9B;aAAM;YACH,IAAI;gBACA,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;aAChC;YAAC,WAAM;gBACJ,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;aAC5B;YAED,OAAO,KAAK,CAAC;SAChB;KACJ;AACL,CAAC,CAAA"}
@@ -38,6 +38,7 @@ export interface Sort {
38
38
  }
39
39
  export interface FilterProvider {
40
40
  getFilter(dataUnit: string): Array<Filter> | undefined;
41
+ getKey?: () => string;
41
42
  }
42
43
  export interface SortingProvider {
43
44
  getSort(dataUnit: string): Array<Sort> | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"UnitMetadata.js","sourceRoot":"","sources":["../../../src/dataunit/metadata/UnitMetadata.ts"],"names":[],"mappings":"AAqDA,MAAM,CAAN,IAAY,QAGX;AAHD,WAAY,QAAQ;IAChB,uBAAW,CAAA;IACX,yBAAa,CAAA;AACjB,CAAC,EAHW,QAAQ,KAAR,QAAQ,QAGnB;AAED,MAAM,CAAN,IAAY,cAIX;AAJD,WAAY,cAAc;IACtB,yCAAuB,CAAA;IACvB,6CAA2B,CAAA;IAC3B,4CAA0B,CAAA;AAC9B,CAAC,EAJW,cAAc,KAAd,cAAc,QAIzB;AAED,MAAM,CAAN,IAAY,aAkBX;AAlBD,WAAY,aAAa;IACrB,8BAAa,CAAA;IACb,gCAAe,CAAA;IACf,8BAAa,CAAA;IACb,sCAAqB,CAAA;IACrB,8BAAa,CAAA;IACb,4CAA2B,CAAA;IAC3B,sCAAqB,CAAA;IACrB,kCAAiB,CAAA;IACjB,kDAAiC,CAAA;IACjC,gDAA+B,CAAA;IAC/B,gDAA+B,CAAA;IAC/B,kCAAiB,CAAA;IACjB,wCAAuB,CAAA;IACvB,sCAAqB,CAAA;IACrB,0CAAyB,CAAA;IACzB,sCAAqB,CAAA;IACrB,8BAAa,CAAA;AACjB,CAAC,EAlBW,aAAa,KAAb,aAAa,QAkBxB"}
1
+ {"version":3,"file":"UnitMetadata.js","sourceRoot":"","sources":["../../../src/dataunit/metadata/UnitMetadata.ts"],"names":[],"mappings":"AAsDA,MAAM,CAAN,IAAY,QAGX;AAHD,WAAY,QAAQ;IAChB,uBAAW,CAAA;IACX,yBAAa,CAAA;AACjB,CAAC,EAHW,QAAQ,KAAR,QAAQ,QAGnB;AAED,MAAM,CAAN,IAAY,cAIX;AAJD,WAAY,cAAc;IACtB,yCAAuB,CAAA;IACvB,6CAA2B,CAAA;IAC3B,4CAA0B,CAAA;AAC9B,CAAC,EAJW,cAAc,KAAd,cAAc,QAIzB;AAED,MAAM,CAAN,IAAY,aAkBX;AAlBD,WAAY,aAAa;IACrB,8BAAa,CAAA;IACb,gCAAe,CAAA;IACf,8BAAa,CAAA;IACb,sCAAqB,CAAA;IACrB,8BAAa,CAAA;IACb,4CAA2B,CAAA;IAC3B,sCAAqB,CAAA;IACrB,kCAAiB,CAAA;IACjB,kDAAiC,CAAA;IACjC,gDAA+B,CAAA;IAC/B,gDAA+B,CAAA;IAC/B,kCAAiB,CAAA;IACjB,wCAAuB,CAAA;IACvB,sCAAqB,CAAA;IACrB,0CAAyB,CAAA;IACzB,sCAAqB,CAAA;IACrB,8BAAa,CAAA;AACjB,CAAC,EAlBW,aAAa,KAAb,aAAa,QAkBxB"}
@@ -8,4 +8,5 @@ declare class AddedRecordsReducerImpl implements ActionReducer {
8
8
  export declare const AddedRecordsReducer: AddedRecordsReducerImpl;
9
9
  export declare const getAddedRecords: (stateManager: StateManager) => Array<Record>;
10
10
  export declare const prepareAddedRecordId: (stateManager: StateManager, source: Array<any>) => Array<Record>;
11
+ export declare const prepareCopiedRecord: (stateManager: StateManager, source: Array<Record>) => Array<Record>;
11
12
  export {};
@@ -21,6 +21,10 @@ export const getAddedRecords = (stateManager) => {
21
21
  };
22
22
  export const prepareAddedRecordId = (stateManager, source) => {
23
23
  let index = (getAddedRecords(stateManager) || []).length;
24
- return source.map(item => { return Object.assign(Object.assign({}, item), { __record__id__: "NEW_" + (index++), __record__source__id__: item.__record__id__ }); });
24
+ return source.map(item => { return Object.assign(Object.assign({}, item), { __record__id__: "NEW_" + (index++) }); });
25
+ };
26
+ export const prepareCopiedRecord = (stateManager, source) => {
27
+ let index = (getAddedRecords(stateManager) || []).length;
28
+ return source.map(item => { return Object.assign(Object.assign({}, item), { __record__id__: "NEW_" + (index++), __record__source__id__: item.__record__id__, __copy__: true }); });
25
29
  };
26
30
  //# sourceMappingURL=AddedRecordsSlice.js.map
@@ -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,EAAiB,EAAE;IAClG,IAAI,KAAK,GAAG,CAAC,eAAe,CAAC,YAAY,CAAC,IAAE,EAAE,CAAC,CAAC,MAAM,CAAC;IACvD,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAA,EAAE,GAAC,uCAAW,IAAI,KAAE,cAAc,EAAE,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,sBAAsB,EAAE,IAAI,CAAC,cAAc,IAAC,CAAA,CAAC,CAAC,CAAC;AACjI,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,oBAAoB,GAAG,CAAC,YAA0B,EAAE,MAAkB,EAAiB,EAAE;IAClG,IAAI,KAAK,GAAG,CAAC,eAAe,CAAC,YAAY,CAAC,IAAE,EAAE,CAAC,CAAC,MAAM,CAAC;IACvD,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAA,EAAE,GAAC,uCAAW,IAAI,KAAE,cAAc,EAAE,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,IAAC,CAAA,CAAC,CAAC,CAAC;AACpF,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,YAA0B,EAAE,MAAqB,EAAiB,EAAE;IACpG,IAAI,KAAK,GAAG,CAAC,eAAe,CAAC,YAAY,CAAC,IAAE,EAAE,CAAC,CAAC,MAAM,CAAC;IACvD,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAA,EAAE,GAAC,uCAAW,IAAI,KAAE,cAAc,EAAE,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,sBAAsB,EAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,EAAE,IAAI,IAAC,CAAA,CAAC,CAAC,CAAC;AACjJ,CAAC,CAAC"}
@@ -20,6 +20,7 @@ class ChangesReducerImpl {
20
20
  delete rChanges.__record__id__;
21
21
  delete rChanges.__parent__record__id__;
22
22
  delete rChanges.__record__source__id__;
23
+ delete rChanges.__copy__;
23
24
  changes.set(r.__record__id__, rChanges);
24
25
  });
25
26
  return changes;
@@ -73,9 +74,8 @@ export const getChangesToSave = (dataUnit, stateManager) => {
73
74
  const addedRecords = getAddedRecords(stateManager);
74
75
  if (addedRecords) {
75
76
  addedRecords.forEach(r => {
76
- const source = r.__record__source__id__;
77
- const operation = source ? ChangeOperation.COPY : ChangeOperation.INSERT;
78
- result.push(new Change(dataUnit, r, changes === null || changes === void 0 ? void 0 : changes.get(r.__record__id__), operation, source));
77
+ const operation = r.__copy__ ? ChangeOperation.COPY : ChangeOperation.INSERT;
78
+ result.push(new Change(dataUnit, r, changes === null || changes === void 0 ? void 0 : changes.get(r.__record__id__), operation, r.__record__source__id__));
79
79
  });
80
80
  }
81
81
  const removedRecords = getRemovedRecords(stateManager);
@@ -1 +1 @@
1
- {"version":3,"file":"ChangesSlice.js","sourceRoot":"","sources":["../../../../src/dataunit/state/slice/ChangesSlice.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChangesSlice.js","sourceRoot":"","sources":["../../../../src/dataunit/state/slice/ChangesSlice.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  export default class ObjectUtils {
2
2
  static copy(data: Object | Array<Object>): Object | Array<Object> | null;
3
- private static objectToString;
4
- private static stringToObject;
3
+ static objectToString(data: Object | Array<Object>): string;
4
+ static stringToObject(data: string): Object | Array<Object>;
5
5
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectUtils.js","sourceRoot":"","sources":["../../src/utils/ObjectUtils.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,OAAO,WAAW;IAErB,MAAM,CAAC,IAAI,CAAC,IAA2B;QAC1C,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1D,CAAC;IAEO,MAAM,CAAC,cAAc,CAAC,IAA2B;QACrD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAEO,MAAM,CAAC,cAAc,CAAC,IAAW;QACrC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;CACJ"}
1
+ {"version":3,"file":"ObjectUtils.js","sourceRoot":"","sources":["../../src/utils/ObjectUtils.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,OAAO,WAAW;IAErB,MAAM,CAAC,IAAI,CAAC,IAA2B;QAC1C,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1D,CAAC;IAEM,MAAM,CAAC,cAAc,CAAC,IAA2B;QACpD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAEM,MAAM,CAAC,cAAc,CAAC,IAAW;QACpC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;CACJ"}
@@ -15,4 +15,10 @@ export declare class StringUtils {
15
15
  * @param value String para ser transformada.
16
16
  */
17
17
  static replaceAccentuatedChars(text: string): string;
18
+ /**
19
+ * Calcula um código hash para uma string.
20
+ *
21
+ * @param value String que será gerado o hash code.
22
+ */
23
+ static hashCode(value: string): string;
18
24
  }
@@ -50,5 +50,21 @@ export class StringUtils {
50
50
  text = text.replace(/[Ç]/, "C");
51
51
  return text.replace(/[^a-z0-9]/gi, '');
52
52
  }
53
+ /**
54
+ * Calcula um código hash para uma string.
55
+ *
56
+ * @param value String que será gerado o hash code.
57
+ */
58
+ static hashCode(value) {
59
+ let hash = 0, i, chr;
60
+ if (value.length === 0)
61
+ return hash.toString();
62
+ for (i = 0; i < value.length; i++) {
63
+ chr = value.charCodeAt(i);
64
+ hash = ((hash << 5) - hash) + chr;
65
+ hash |= 0; // Convert to 32bit integer
66
+ }
67
+ return hash.toString();
68
+ }
53
69
  }
54
70
  //# sourceMappingURL=StringUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StringUtils.js","sourceRoot":"","sources":["../../src/utils/StringUtils.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,WAAW;IAEpB;;;;;MAKE;IACF,MAAM,CAAC,OAAO,CAAC,KAAU;QAErB,IAAI,KAAK,IAAI,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;YACtC,OAAO,IAAI,CAAC;SACf;QAED,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QACzB,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAErB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACpB,OAAO,IAAI,CAAC;SACf;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAGD;;;;MAIE;IACF,MAAM,CAAC,uBAAuB,CAAC,IAAY;QACvC,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1B,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IAC3C,CAAC;CAEJ"}
1
+ {"version":3,"file":"StringUtils.js","sourceRoot":"","sources":["../../src/utils/StringUtils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sankhyalabs/core",
3
- "version": "1.0.59",
3
+ "version": "1.0.62",
4
4
  "description": "Modulo core JavaScript da Sankhya.",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
@@ -10,18 +10,19 @@ import { RecordsReducer } from "./state/slice/RecordsSlice.js";
10
10
  import { SelectionReducer, getSelection, hasNext, hasPrevious } from "./state/slice/SelectionSlice.js";
11
11
  import { ChangesReducer, isDirty, getChangesToSave } from "./state/slice/ChangesSlice.js";
12
12
  import { RemovedRecordsReducer } from "./state/slice/RemovedRecordsSlice.js";
13
- import { AddedRecordsReducer, prepareAddedRecordId } from "./state/slice/AddedRecordsSlice.js";
13
+ import { AddedRecordsReducer, prepareAddedRecordId, prepareCopiedRecord } from "./state/slice/AddedRecordsSlice.js";
14
14
  import { CurrentRecordsReducer, getCurrentRecords, getFieldValue, getModifiedRecords } from "./state/slice/CurrentRecordsSlice.js";
15
15
  import { getBlockingWaitingChanges, getWaitingChangePromisses, getWaitingChanges, isWaiting, WaitingChangesReducer } from "./state/slice/WaitingChangesSlice.js";
16
16
  import WaitingChangeException from "../exceptions/WaitingChangeException.js";
17
17
  import ErrorException from "../exceptions/ErrorException.js";
18
+ import { StringUtils } from "../utils/StringUtils.js";
18
19
 
19
20
  export default class DataUnit {
20
21
 
21
22
  private _name: string;
22
23
  private _observers: Array<(action: DataUnitAction) => void>;
23
24
  private _sortingProvider?: SortingProvider;
24
- private _filterProviders: Array<FilterProvider>;
25
+ private _filterProviders: Map<string, FilterProvider>;
25
26
  private _stateManager: StateManager;
26
27
  private _interceptors: Array<DUActionInterceptor>;
27
28
 
@@ -46,7 +47,7 @@ export default class DataUnit {
46
47
  ]
47
48
  );
48
49
  this._observers = [];
49
- this._filterProviders = [];
50
+ this._filterProviders = new Map<string, FilterProvider>();
50
51
  this._sortingProvider = undefined;
51
52
  this._interceptors = [];
52
53
  }
@@ -77,35 +78,44 @@ export default class DataUnit {
77
78
  return this._sortingProvider ? this._sortingProvider.getSort(this._name) : undefined;
78
79
  }
79
80
 
81
+ private getFielterProviderKey(provider:FilterProvider):string{
82
+ if(provider.getKey){
83
+ return provider.getKey();
84
+ }
85
+ return StringUtils.hashCode(provider.getFilter.toString());
86
+ }
87
+
80
88
  // Loaders
81
- public async loadMetadata(): Promise<UnitMetadata> {
82
- this.dispatchAction(Action.LOADING_METADATA);
83
- return new Promise((resolve, fail) => {
84
- if (this.metadataLoader) {
85
- this.metadataLoader(this).then(
86
- metadata => {
87
- this.metadata = metadata
88
- resolve(this.metadata);
89
- }
90
- ).catch(error => fail(error));
91
- }
92
- });
89
+ public async loadMetadata(): Promise<UnitMetadata|void> {
90
+ if(this.dispatchAction(Action.LOADING_METADATA)){
91
+ return new Promise((resolve, fail) => {
92
+ if (this.metadataLoader) {
93
+ this.metadataLoader(this).then(
94
+ metadata => {
95
+ this.metadata = metadata
96
+ resolve(this.metadata);
97
+ }
98
+ ).catch(error => fail(new ErrorException("Problema carregando metadados", error)));
99
+ }
100
+ });
101
+ }
93
102
  }
94
103
 
95
- public async loadData(page?: PageRequest): Promise<PageResponse> {
96
- this.dispatchAction(Action.LOADING_DATA);
97
- return new Promise((resolve, fail) => {
98
- if (this.dataLoader) {
99
- const sort = this.getSort();
100
- const filters = this.getFilters();
101
- this.dataLoader(this, page, sort, filters).then(
102
- pageRes => {
103
- this.records = pageRes.records;
104
- resolve(pageRes);
105
- }
106
- ).catch(error => fail(error));
107
- }
108
- });
104
+ public async loadData(page?: PageRequest): Promise<PageResponse|void> {
105
+ if(this.dispatchAction(Action.LOADING_DATA)){
106
+ return new Promise((resolve, fail) => {
107
+ if (this.dataLoader) {
108
+ const sort = this.getSort();
109
+ const filters = this.getFilters();
110
+ this.dataLoader(this, page, sort, filters).then(
111
+ pageRes => {
112
+ this.records = pageRes.records;
113
+ resolve(pageRes);
114
+ }
115
+ ).catch(error => fail(new ErrorException("Problema carregando registros", error)));
116
+ }
117
+ });
118
+ }
109
119
  }
110
120
 
111
121
  public async saveData(): Promise<void> {
@@ -113,26 +123,28 @@ export default class DataUnit {
113
123
 
114
124
  if (blockingWaitingChanges && blockingWaitingChanges.size > 0) {
115
125
  const [field, waitingChange] = blockingWaitingChanges.entries().next().value;
116
- return Promise.reject(new WaitingChangeException("Aguardando alteração de campo", (waitingChange as WaitingChange).waitmessage));
126
+ return Promise.reject(new WaitingChangeException("Aguardando alteração de campo", (waitingChange as WaitingChange).waitmessage));
117
127
  } else {
118
128
  if (isDirty(this._stateManager)) {
119
- this.dispatchAction(Action.SAVING_DATA);
120
- const promisses = getWaitingChangePromisses(this._stateManager);
121
- return new Promise((resolve, fail) => {
122
- Promise.all(promisses || []).then(() => {
123
- if (this.saveLoader) {
124
- const changes: Array<Change> = getChangesToSave(this._name, this._stateManager);
125
- this.saveLoader(this, changes).then(
126
- records => {
127
- this.dispatchAction(Action.DATA_SAVED, { changes, records });
128
- resolve();
129
- }
130
- ).catch(cause => fail(new ErrorException("Erro salvando alterações", cause)));
131
- } else {
132
- resolve();
133
- }
129
+
130
+ if (this.dispatchAction(Action.SAVING_DATA)) {
131
+ const promisses = getWaitingChangePromisses(this._stateManager);
132
+ return new Promise((resolve, fail) => {
133
+ Promise.all(promisses || []).then(() => {
134
+ if (this.saveLoader) {
135
+ const changes: Array<Change> = getChangesToSave(this._name, this._stateManager);
136
+ this.saveLoader(this, changes).then(
137
+ records => {
138
+ this.dispatchAction(Action.DATA_SAVED, { changes, records });
139
+ resolve();
140
+ }
141
+ ).catch(cause => fail(new ErrorException("Erro salvando alterações", cause)));
142
+ } else {
143
+ resolve();
144
+ }
145
+ });
134
146
  });
135
- });
147
+ }
136
148
  }
137
149
  }
138
150
 
@@ -152,29 +164,31 @@ export default class DataUnit {
152
164
  if (buffered || !this.removeLoader) {
153
165
  this.dispatchAction(Action.RECORDS_REMOVED, { records, buffered: true });
154
166
  } else {
155
- this.dispatchAction(Action.REMOVING_RECORDS);
156
- return new Promise((resolve, fail) => {
157
- if (this.removeLoader) {
158
- this.removeLoader(this, records).then(
159
- records => {
160
- let currentIndex = 0;
161
- const removedIndex: Array<number> = [];
162
- const currentRecords = getCurrentRecords(this._stateManager);
163
-
164
- currentRecords.forEach((value, key) => {
165
- if(records.includes(key)) {
166
- removedIndex.push(currentIndex);
167
- }
167
+ if (this.dispatchAction(Action.REMOVING_RECORDS)) {
168
168
 
169
- currentIndex++
170
- });
169
+ return new Promise((resolve, fail) => {
170
+ if (this.removeLoader) {
171
+ this.removeLoader(this, records).then(
172
+ records => {
173
+ let currentIndex = 0;
174
+ const removedIndex: Array<number> = [];
175
+ const currentRecords = getCurrentRecords(this._stateManager);
171
176
 
172
- this.dispatchAction(Action.RECORDS_REMOVED, { records, removedIndex, buffered: false });
173
- resolve(records);
174
- }
175
- ).catch(error => fail(error));
176
- }
177
- });
177
+ currentRecords.forEach((value, key) => {
178
+ if (records.includes(key)) {
179
+ removedIndex.push(currentIndex);
180
+ }
181
+
182
+ currentIndex++
183
+ });
184
+
185
+ this.dispatchAction(Action.RECORDS_REMOVED, { records, removedIndex, buffered: false });
186
+ resolve(records);
187
+ }
188
+ ).catch(error => fail(new ErrorException("Problema removendo registros", error)));
189
+ }
190
+ });
191
+ }
178
192
  }
179
193
  }
180
194
  return Promise.resolve(records);
@@ -200,7 +214,7 @@ export default class DataUnit {
200
214
  }
201
215
 
202
216
  public addFilterProvider(provider: FilterProvider): void {
203
- this._filterProviders.push(provider);
217
+ this._filterProviders.set(this.getFielterProviderKey(provider), provider);
204
218
  }
205
219
 
206
220
  public set sortingProvider(provider: SortingProvider) {
@@ -240,11 +254,11 @@ export default class DataUnit {
240
254
  public copySelected(): void {
241
255
  const selectedRecords = this.getSelectedRecords();
242
256
  if (selectedRecords) {
243
- this.dispatchAction(Action.RECORDS_COPIED, prepareAddedRecordId(this._stateManager, selectedRecords));
257
+ this.dispatchAction(Action.RECORDS_COPIED, prepareCopiedRecord(this._stateManager, selectedRecords));
244
258
  }
245
259
  }
246
260
 
247
- public waitingForChange(fieldName: string): boolean{
261
+ public waitingForChange(fieldName: string): boolean {
248
262
  return isWaiting(this._stateManager, fieldName);
249
263
  }
250
264
 
@@ -335,7 +349,7 @@ export default class DataUnit {
335
349
  }
336
350
 
337
351
  // Actions / State manager
338
- private dispatchAction(actionType: Action, payload?: any): void {
352
+ private dispatchAction(actionType: Action, payload?: any): boolean {
339
353
  let action = new DataUnitAction(actionType, payload);
340
354
 
341
355
  this._interceptors?.forEach(interceptor => {
@@ -344,7 +358,9 @@ export default class DataUnit {
344
358
  }
345
359
  });
346
360
 
347
- if (action) {
361
+ if (!action) {
362
+ return false;
363
+ } else {
348
364
 
349
365
  this._stateManager.process(action);
350
366
  this._observers.forEach(f => {
@@ -359,6 +375,7 @@ export default class DataUnit {
359
375
  }
360
376
  });
361
377
  }
378
+ return true;
362
379
  }
363
380
 
364
381
  public subscribe(observer: (action: DataUnitAction) => void) {
@@ -442,7 +459,7 @@ export interface PageRequest {
442
459
  quickFilter?: QuickFilter;
443
460
  }
444
461
 
445
- export interface QuickFilter{
462
+ export interface QuickFilter {
446
463
  term: string;
447
464
  fields?: Array<string>;
448
465
  }
@@ -22,6 +22,9 @@ export const convertType = (dataType: DataType, value: any): any => {
22
22
  case DataType.OBJECT:
23
23
  return typeof value === "string" ? JSON.parse(value) : value;
24
24
  case DataType.BOOLEAN:
25
+ if(typeof value == 'string'){
26
+ return Boolean(value === 'true');
27
+ }
25
28
  return Boolean(value);
26
29
  case DataType.DATE:
27
30
  return new Date(value.toString());
@@ -45,6 +45,7 @@ export interface Sort{
45
45
 
46
46
  export interface FilterProvider{
47
47
  getFilter(dataUnit: string): Array<Filter> | undefined;
48
+ getKey?: () => string;
48
49
  }
49
50
 
50
51
  export interface SortingProvider{
@@ -29,5 +29,10 @@ export const getAddedRecords = (stateManager: StateManager): Array<Record> => {
29
29
 
30
30
  export const prepareAddedRecordId = (stateManager: StateManager, source: Array<any>): Array<Record> => {
31
31
  let index = (getAddedRecords(stateManager)||[]).length;
32
- return source.map(item=>{return {...item, __record__id__: "NEW_" + (index++), __record__source__id__: item.__record__id__}});
32
+ return source.map(item=>{return {...item, __record__id__: "NEW_" + (index++)}});
33
+ };
34
+
35
+ export const prepareCopiedRecord = (stateManager: StateManager, source: Array<Record>): Array<Record> => {
36
+ let index = (getAddedRecords(stateManager)||[]).length;
37
+ return source.map(item=>{return {...item, __record__id__: "NEW_" + (index++), __record__source__id__: item.__record__id__, __copy__: true}});
33
38
  };
@@ -25,6 +25,7 @@ class ChangesReducerImpl implements ActionReducer{
25
25
  delete rChanges.__record__id__;
26
26
  delete rChanges.__parent__record__id__;
27
27
  delete rChanges.__record__source__id__;
28
+ delete rChanges.__copy__;
28
29
  changes.set(r.__record__id__, rChanges);
29
30
  }
30
31
  );
@@ -92,9 +93,8 @@ export const getChangesToSave = (dataUnit: string, stateManager: StateManager):
92
93
  const addedRecords = getAddedRecords(stateManager);
93
94
  if (addedRecords) {
94
95
  addedRecords.forEach(r => {
95
- const source: string = r.__record__source__id__;
96
- const operation: ChangeOperation = source ? ChangeOperation.COPY : ChangeOperation.INSERT;
97
- result.push(new Change(dataUnit, r, changes?.get(r.__record__id__), operation, source));
96
+ const operation: ChangeOperation = r.__copy__ ? ChangeOperation.COPY : ChangeOperation.INSERT;
97
+ result.push(new Change(dataUnit, r, changes?.get(r.__record__id__), operation, r.__record__source__id__));
98
98
  });
99
99
  }
100
100
 
@@ -4,11 +4,11 @@ export default class ObjectUtils{
4
4
  return this.stringToObject(this.objectToString(data));
5
5
  }
6
6
 
7
- private static objectToString(data:Object | Array<Object>):string{
7
+ public static objectToString(data:Object | Array<Object>):string{
8
8
  return JSON.stringify(data);
9
9
  }
10
10
 
11
- private static stringToObject(data:string):Object | Array<Object>{
11
+ public static stringToObject(data:string):Object | Array<Object>{
12
12
  return JSON.parse(data)
13
13
  }
14
14
  }
@@ -57,5 +57,21 @@ export class StringUtils {
57
57
  text = text.replace(/[Ç]/, "C");
58
58
  return text.replace(/[^a-z0-9]/gi, '');
59
59
  }
60
+
61
+ /**
62
+ * Calcula um código hash para uma string.
63
+ *
64
+ * @param value String que será gerado o hash code.
65
+ */
66
+ static hashCode(value: string): string {
67
+ let hash = 0, i, chr;
68
+ if (value.length === 0) return hash.toString();
69
+ for (i = 0; i < value.length; i++) {
70
+ chr = value.charCodeAt(i);
71
+ hash = ((hash << 5) - hash) + chr;
72
+ hash |= 0; // Convert to 32bit integer
73
+ }
74
+ return hash.toString();
75
+ }
60
76
 
61
77
  }