@sankhyalabs/core 3.1.2 → 4.0.1

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.
Files changed (68) hide show
  1. package/.docs/classes/Change.md +11 -11
  2. package/.docs/classes/DataUnit.md +385 -104
  3. package/.docs/classes/DataUnitStorage.md +116 -0
  4. package/.docs/classes/DateUtils.md +87 -10
  5. package/.docs/classes/MaskFormatter-1.md +25 -14
  6. package/.docs/classes/NumberUtils.md +45 -0
  7. package/.docs/enums/Action.md +11 -0
  8. package/.docs/enums/ChangeOperation.md +4 -4
  9. package/.docs/enums/DependencyType.md +3 -3
  10. package/.docs/enums/SortMode.md +2 -2
  11. package/.docs/enums/UserInterface.md +17 -17
  12. package/.docs/interfaces/ChildDescriptor.md +41 -0
  13. package/.docs/interfaces/ChildLink.md +30 -0
  14. package/.docs/interfaces/DUActionInterceptor.md +1 -1
  15. package/.docs/interfaces/FieldDescriptor.md +11 -11
  16. package/.docs/interfaces/Filter.md +3 -3
  17. package/.docs/interfaces/PageRequest.md +3 -3
  18. package/.docs/interfaces/QuickFilter.md +2 -2
  19. package/.docs/interfaces/Record.md +24 -2
  20. package/.docs/interfaces/SavedRecord.md +33 -3
  21. package/.docs/interfaces/Sort.md +3 -3
  22. package/.docs/interfaces/SortingProvider.md +1 -1
  23. package/.docs/interfaces/UnitMetadata.md +1 -1
  24. package/.docs/interfaces/WaitingChange.md +3 -3
  25. package/.docs/modules/MaskFormatter.md +4 -4
  26. package/.docs/modules.md +3 -0
  27. package/dist/dataunit/DataUnit.d.ts +83 -4
  28. package/dist/dataunit/DataUnit.js +216 -20
  29. package/dist/dataunit/DataUnit.js.map +1 -1
  30. package/dist/dataunit/DataUnitStorage.d.ts +24 -0
  31. package/dist/dataunit/DataUnitStorage.js +39 -0
  32. package/dist/dataunit/DataUnitStorage.js.map +1 -0
  33. package/dist/dataunit/formatting/PrettyFormatter.d.ts +2 -0
  34. package/dist/dataunit/formatting/PrettyFormatter.js +88 -0
  35. package/dist/dataunit/formatting/PrettyFormatter.js.map +1 -0
  36. package/dist/dataunit/metadata/UnitMetadata.d.ts +1 -0
  37. package/dist/dataunit/metadata/UnitMetadata.js.map +1 -1
  38. package/dist/dataunit/state/action/DataUnitAction.d.ts +2 -1
  39. package/dist/dataunit/state/action/DataUnitAction.js +1 -0
  40. package/dist/dataunit/state/action/DataUnitAction.js.map +1 -1
  41. package/dist/dataunit/state/slice/ChangesSlice.js +2 -1
  42. package/dist/dataunit/state/slice/ChangesSlice.js.map +1 -1
  43. package/dist/index.d.ts +3 -2
  44. package/dist/index.js +2 -1
  45. package/dist/index.js.map +1 -1
  46. package/dist/utils/DateUtils.d.ts +23 -0
  47. package/dist/utils/DateUtils.js +30 -0
  48. package/dist/utils/DateUtils.js.map +1 -1
  49. package/dist/utils/MaskFormatter.d.ts +1 -0
  50. package/dist/utils/MaskFormatter.js +6 -0
  51. package/dist/utils/MaskFormatter.js.map +1 -1
  52. package/dist/utils/NumberUtils.d.ts +25 -0
  53. package/dist/utils/NumberUtils.js +28 -0
  54. package/dist/utils/NumberUtils.js.map +1 -1
  55. package/package.json +4 -2
  56. package/src/dataunit/DataUnit.ts +244 -28
  57. package/src/dataunit/DataUnitStorage.ts +43 -0
  58. package/src/dataunit/formatting/PrettyFormatter.ts +106 -0
  59. package/src/dataunit/metadata/UnitMetadata.ts +1 -0
  60. package/src/dataunit/state/action/DataUnitAction.ts +3 -1
  61. package/src/dataunit/state/slice/ChangesSlice.ts +2 -1
  62. package/src/index.ts +6 -1
  63. package/src/utils/DateUtils.ts +34 -1
  64. package/src/utils/MaskFormatter.ts +8 -0
  65. package/src/utils/NumberUtils.ts +29 -0
  66. package/test/util/DataUnitStorage.spec.ts +63 -0
  67. package/test/util/ElementIDUtils.spec.ts +127 -85
  68. package/test/util/NumberUtils.spec.ts +22 -0
@@ -13,21 +13,26 @@ import StateManager from "./state/StateManager.js";
13
13
  import ErrorException from "../exceptions/ErrorException.js";
14
14
  import WaitingChangeException from "../exceptions/WaitingChangeException.js";
15
15
  import { StringUtils } from "../utils/StringUtils.js";
16
+ import ObjectUtils from "../utils/ObjectUtils.js";
16
17
  import { AddedRecordsReducer, getAddedRecords, prepareAddedRecordId, prepareCopiedRecord } from "./state/slice/AddedRecordsSlice.js";
17
18
  import { ChangesReducer, getChangesToSave, isDirty, hasDirtyRecords } from "./state/slice/ChangesSlice.js";
18
19
  import { CurrentRecordsReducer, getCurrentRecords, getFieldValue, getModifiedRecords } from "./state/slice/CurrentRecordsSlice.js";
19
20
  import { getCurrentPage, getLastPage, getPaginationInfo, getCurrentRequest, LoadingControlReducer, hasMorePages, hasPreviousPages } from "./state/slice/LoadingControlSlice.js";
20
- import { RecordsReducer } from "./state/slice/RecordsSlice.js";
21
+ import { getRecords, RecordsReducer } from "./state/slice/RecordsSlice.js";
21
22
  import { RemovedRecordsReducer } from "./state/slice/RemovedRecordsSlice.js";
22
23
  import { getSelection, hasNext, hasPrevious, SelectionReducer } from "./state/slice/SelectionSlice.js";
23
24
  import { getField, getMetadata, UnitMetadataReducer } from "./state/slice/UnitMetadataSlice.js";
24
25
  import { getBlockingWaitingChanges, getWaitingChangePromisses, isWaiting, WaitingChangesReducer } from "./state/slice/WaitingChangesSlice.js";
25
26
  import { canRedo, canUndo, HistReducer } from "./state/HistReducer.js";
27
+ import { getFormattedValue } from "./formatting/PrettyFormatter.js";
28
+ import { v4 as uuid } from "uuid";
29
+ import { DataUnitStorage } from "./DataUnitStorage.js";
30
+ const DEFAULT_DATAUNIT_NAME = "dataunit";
26
31
  /***
27
32
  * `DataUnit`: Atua como uma camada de abstração entre o back-end e a interface do usuário.
28
33
  */
29
34
  export default class DataUnit {
30
- constructor(name, parentDataUnit) {
35
+ constructor(name = DEFAULT_DATAUNIT_NAME, parentDataUnit) {
31
36
  var _a;
32
37
  this._childByName = new Map();
33
38
  /**
@@ -40,7 +45,8 @@ export default class DataUnit {
40
45
  var _a, _b, _c;
41
46
  switch (action.type) {
42
47
  case Action.SELECTION_CHANGED:
43
- this._parentSelectedRecordID = (_b = (_a = this._parentDataUnit) === null || _a === void 0 ? void 0 : _a.getSelectedRecord()) === null || _b === void 0 ? void 0 : _b.__record__id__;
48
+ if (((_a = this._parentDataUnit) === null || _a === void 0 ? void 0 : _a.hasCopiedRecord()) || ((_b = this._parentDataUnit) === null || _b === void 0 ? void 0 : _b.hasNewRecord()))
49
+ return;
44
50
  this.loadData();
45
51
  break;
46
52
  case Action.DATA_LOADED:
@@ -50,7 +56,8 @@ export default class DataUnit {
50
56
  break;
51
57
  }
52
58
  };
53
- this._name = name;
59
+ this._uuid = uuid();
60
+ this._name = `${name}?uuid=${this._uuid}`;
54
61
  this._pageSize = 0;
55
62
  this._stateManager = new StateManager([
56
63
  HistReducer,
@@ -70,6 +77,20 @@ export default class DataUnit {
70
77
  this._interceptors = [];
71
78
  this._parentDataUnit = parentDataUnit;
72
79
  (_a = this._parentDataUnit) === null || _a === void 0 ? void 0 : _a.subscribe(this.onDataUnitParentEvent);
80
+ DataUnitStorage.put(this);
81
+ }
82
+ /**
83
+ * Desfaz vinculos do DataUnit. Chamado quando o DU não é mais necessário.
84
+ */
85
+ release() {
86
+ DataUnitStorage.remove(this._name);
87
+ if (this._parentDataUnit) {
88
+ this._parentDataUnit.unsubscribe(this.onDataUnitParentEvent);
89
+ this._parentDataUnit.removeChildDataunit(this._name);
90
+ }
91
+ }
92
+ get dataUnitId() {
93
+ return this._uuid;
73
94
  }
74
95
  /**
75
96
  *
@@ -116,11 +137,22 @@ export default class DataUnit {
116
137
  *
117
138
  * @param request - Dados da requisição para carregamento dos registros.
118
139
  * @param executionCtx - Contexto de execução do carregamento dos registros do DataUnit.
140
+ * @param checkLastFilter - Habilita a verificação da última requisição, evitando carga desnecessária.
119
141
  *
120
142
  * @returns - Registros do DataUnit.
121
143
  *
122
144
  */
123
- executeLoadData(request, executionCtx) {
145
+ executeLoadData(request, executionCtx, checkLastFilter) {
146
+ if (checkLastFilter && this.isSameRequest(request)) {
147
+ const paginationInfo = getPaginationInfo(this._stateManager);
148
+ if (paginationInfo) {
149
+ const response = {
150
+ records: getRecords(this._stateManager),
151
+ paginationInfo
152
+ };
153
+ return Promise.resolve(response);
154
+ }
155
+ }
124
156
  return new Promise((resolve, fail) => __awaiter(this, void 0, void 0, function* () {
125
157
  if (yield this.dispatchAction(Action.LOADING_DATA, request, executionCtx)) {
126
158
  if (this.dataLoader) {
@@ -135,6 +167,10 @@ export default class DataUnit {
135
167
  }
136
168
  }));
137
169
  }
170
+ isSameRequest(request) {
171
+ const lastRequest = getCurrentRequest(this._stateManager);
172
+ return ObjectUtils.objectToString(request) === ObjectUtils.objectToString(lastRequest || {});
173
+ }
138
174
  // Loaders
139
175
  /**
140
176
  *
@@ -168,11 +204,12 @@ export default class DataUnit {
168
204
  *
169
205
  * @param quickFilter - Filtros a serem aplicados.
170
206
  * @param executionCtx - Contexto de execução do carregamento dos registros.
207
+ * @param checkLastFilter - Habilita a verificação da última requisição, evitando carga desnecessária.
171
208
  *
172
209
  * @returns - Registros requisitados.
173
210
  *
174
211
  */
175
- loadData(quickFilter, executionCtx) {
212
+ loadData(quickFilter, executionCtx, checkLastFilter) {
176
213
  return __awaiter(this, void 0, void 0, function* () {
177
214
  if (this._parentDataUnit && !this._parentDataUnit.getSelectedRecord()) {
178
215
  if (this.records) {
@@ -186,13 +223,13 @@ export default class DataUnit {
186
223
  quickFilter,
187
224
  filters: this.getFilters(),
188
225
  sort: this.getSort(),
189
- parentRecordId: this._parentSelectedRecordID
226
+ parentRecordId: this.getParentRecordId()
190
227
  };
191
228
  if (this._pageSize > 0) {
192
229
  loadDataRequest.limit = this._pageSize;
193
230
  loadDataRequest.offset = 0;
194
231
  }
195
- return this.executeLoadData(loadDataRequest, executionCtx);
232
+ return this.executeLoadData(loadDataRequest, executionCtx, checkLastFilter);
196
233
  });
197
234
  }
198
235
  /**
@@ -247,6 +284,18 @@ export default class DataUnit {
247
284
  return this.gotoPage(getCurrentPage(this._stateManager) - 1, executionCtx);
248
285
  });
249
286
  }
287
+ notifySavingData(executionCtx) {
288
+ return __awaiter(this, void 0, void 0, function* () {
289
+ const notifyPromises = [];
290
+ Array.from(this._childByName.values()).forEach(child => notifyPromises.push(child.notifySavingData(executionCtx)));
291
+ if (isDirty(this._stateManager)) {
292
+ notifyPromises.push(this.dispatchAction(Action.SAVING_DATA, undefined, executionCtx));
293
+ }
294
+ return new Promise(accept => Promise.all(notifyPromises).then(responses => {
295
+ accept(responses.reduce((previous, current) => previous && current, true));
296
+ }));
297
+ });
298
+ }
250
299
  /**
251
300
  *
252
301
  * Salva o estado do registro do DataUnit.
@@ -260,20 +309,28 @@ export default class DataUnit {
260
309
  return __awaiter(this, void 0, void 0, function* () {
261
310
  const blockingWaitingChanges = getBlockingWaitingChanges(this._stateManager);
262
311
  if (blockingWaitingChanges && blockingWaitingChanges.size > 0) {
263
- const [field, waitingChange] = blockingWaitingChanges.entries().next().value;
312
+ const [_, waitingChange] = blockingWaitingChanges.entries().next().value;
264
313
  return Promise.reject(new WaitingChangeException("Aguardando alteração de campo", waitingChange.waitmessage));
265
314
  }
266
315
  else {
267
- if (isDirty(this._stateManager)) {
268
- if (yield this.dispatchAction(Action.SAVING_DATA, undefined, executionCtx)) {
316
+ if (this.isDirty()) {
317
+ if (yield this.notifySavingData(executionCtx)) {
269
318
  const promisses = getWaitingChangePromisses(this._stateManager);
270
319
  return new Promise((resolve, fail) => {
271
320
  Promise.all(promisses || []).then(() => {
272
321
  if (this.saveLoader) {
273
- const changes = getChangesToSave(this._name, this._stateManager);
274
- this.saveLoader(this, changes).then(records => {
275
- this.dispatchAction(Action.DATA_SAVED, { changes, records }, executionCtx);
276
- resolve();
322
+ const changes = this.getAllChangesToSave();
323
+ this.saveLoader(this, changes).then((records) => {
324
+ const recordsByDataUnit = this.getRecordsByDataUnit(records);
325
+ const dispatchPromisses = [];
326
+ for (const [ownerDataUnitName, splittedRecords] of recordsByDataUnit) {
327
+ const ownerDataUnit = DataUnitStorage.get(ownerDataUnitName);
328
+ const changesByDataUnit = changes.filter(change => change.dataUnit === ownerDataUnitName);
329
+ if (ownerDataUnit) {
330
+ dispatchPromisses.push(ownerDataUnit.dispatchAction(Action.DATA_SAVED, { changes: changesByDataUnit, records: splittedRecords }, executionCtx));
331
+ }
332
+ }
333
+ Promise.all(dispatchPromisses).then(() => resolve());
277
334
  }).catch(cause => {
278
335
  const { errorCode } = cause;
279
336
  fail(new ErrorException("Erro salvando alterações", cause, errorCode));
@@ -290,6 +347,42 @@ export default class DataUnit {
290
347
  return Promise.resolve();
291
348
  });
292
349
  }
350
+ /**
351
+ *
352
+ * Retorna as alterações a serem salvas no DataUnit atual.
353
+ *
354
+ *
355
+ *
356
+ * @returns - Mudanças realizadas no DataUnit atual
357
+ *
358
+ */
359
+ buildChangesToSave() {
360
+ return getChangesToSave(this._name, this._stateManager);
361
+ }
362
+ buildChangesToSaveFromChild(allChanges, dataUnit) {
363
+ var _a;
364
+ (_a = dataUnit._childByName) === null || _a === void 0 ? void 0 : _a.forEach((dataUnitChild) => {
365
+ if (dataUnitChild.isDirty()) {
366
+ allChanges.push(...getChangesToSave(dataUnitChild.name, dataUnitChild._stateManager));
367
+ this.buildChangesToSaveFromChild(allChanges, dataUnitChild);
368
+ }
369
+ });
370
+ }
371
+ /**
372
+ *
373
+ * Retorna todas as alterações do DataUnit a serem salvas, incluindo no nível Master e Detail.
374
+ *
375
+ *
376
+ *
377
+ * @returns - Todas as mudanças realizadas no DataUnit, tanto Master quanto Detail;
378
+ *
379
+ */
380
+ getAllChangesToSave() {
381
+ const allChanges = [];
382
+ allChanges.push(...this.buildChangesToSave());
383
+ this.buildChangesToSaveFromChild(allChanges, this);
384
+ return allChanges;
385
+ }
293
386
  /**
294
387
  *
295
388
  * Remove o registro selecionado.
@@ -384,6 +477,26 @@ export default class DataUnit {
384
477
  const descriptor = this.getField(fieldName);
385
478
  return toString(descriptor === null || descriptor === void 0 ? void 0 : descriptor.dataType, value);
386
479
  }
480
+ /**
481
+ *
482
+ * Formata o valor do campo considerando as informações do descriptor.
483
+ * Diferente do método "valueToString" que retorna o dado em valor textual,
484
+ * getFormattedValue retorna uma informação amigável ao usuário, geralmente
485
+ * usada na interface.
486
+ *
487
+ * @param fieldName - Nome do campo utilizado do qual se quer obter valor.
488
+ *
489
+ * @returns - Valor formatado.
490
+ *
491
+ */
492
+ getFormattedValue(fieldName) {
493
+ const descriptor = this.getField(fieldName);
494
+ const value = this.getFieldValue(fieldName);
495
+ if (value == undefined) {
496
+ return "";
497
+ }
498
+ return getFormattedValue(value, descriptor);
499
+ }
387
500
  /**
388
501
  *
389
502
  * Adiciona um interceptor correspondente a uma ação do DataUnit para fazer um processamento customizado.
@@ -535,7 +648,7 @@ export default class DataUnit {
535
648
  *
536
649
  */
537
650
  addRecord(executionCtx) {
538
- this.dispatchAction(Action.RECORDS_ADDED, prepareAddedRecordId(this._stateManager, [{}], this._parentSelectedRecordID), executionCtx);
651
+ this.dispatchAction(Action.RECORDS_ADDED, prepareAddedRecordId(this._stateManager, [{}], this.getParentRecordId()), executionCtx);
539
652
  }
540
653
  /**
541
654
  *
@@ -547,9 +660,29 @@ export default class DataUnit {
547
660
  copySelected(executionCtx) {
548
661
  const selectedRecords = this.getSelectedRecords();
549
662
  if (selectedRecords) {
550
- this.dispatchAction(Action.RECORDS_COPIED, prepareCopiedRecord(this._stateManager, selectedRecords, this._parentSelectedRecordID), executionCtx);
663
+ this.dispatchAction(Action.RECORDS_COPIED, prepareCopiedRecord(this._stateManager, selectedRecords, this.getParentRecordId()), executionCtx);
551
664
  }
552
665
  }
666
+ getRecordsByDataUnit(records) {
667
+ const recordsMap = new Map();
668
+ records.forEach(record => {
669
+ const { __owner__dataunit__name__: ownerDataUnitName } = record;
670
+ if (ownerDataUnitName) {
671
+ let changes = recordsMap.get(ownerDataUnitName);
672
+ if (!changes) {
673
+ changes = [];
674
+ recordsMap.set(ownerDataUnitName, changes);
675
+ }
676
+ changes.push(record);
677
+ }
678
+ });
679
+ return recordsMap;
680
+ }
681
+ getParentRecordId() {
682
+ var _a;
683
+ const parentRecord = (_a = this._parentDataUnit) === null || _a === void 0 ? void 0 : _a.getSelectedRecord();
684
+ return parentRecord === null || parentRecord === void 0 ? void 0 : parentRecord.__record__id__;
685
+ }
553
686
  /**
554
687
  *
555
688
  * Retorna se a alteração no campo já foi concluída ou se ainda está incompleta.
@@ -766,8 +899,15 @@ export default class DataUnit {
766
899
  * @param executionCtx - Contexto de execução do cancelamento da seleção dos registros.
767
900
  *
768
901
  */
769
- cancelEdition(executionCtx) {
770
- this.dispatchAction(Action.EDITION_CANCELED, undefined, executionCtx);
902
+ cancelEdition(executionCtx, fromParent) {
903
+ return __awaiter(this, void 0, void 0, function* () {
904
+ yield this.dispatchAction(Action.EDITION_CANCELED, { fromParent }, executionCtx);
905
+ for (const [key, dataUnit] of this._childByName) {
906
+ if (dataUnit.isDirty()) {
907
+ dataUnit.cancelEdition(undefined, true);
908
+ }
909
+ }
910
+ });
771
911
  }
772
912
  /**
773
913
  *
@@ -777,7 +917,21 @@ export default class DataUnit {
777
917
  *
778
918
  */
779
919
  isDirty() {
780
- return isDirty(this._stateManager);
920
+ return isDirty(this._stateManager) || this.childrenIsDirty();
921
+ }
922
+ /**
923
+ *
924
+ * Retorna se existe algum DataUnit detail com alterações pendentes.
925
+ *
926
+ * @returns Verdadeiro se existir alterações pendentes em algum DataUnit detail.
927
+ *
928
+ */
929
+ childrenIsDirty() {
930
+ for (let [key, dataUnitChild] of this._childByName) {
931
+ if (dataUnitChild.isDirty())
932
+ return true;
933
+ }
934
+ return false;
781
935
  }
782
936
  /**
783
937
  *
@@ -833,6 +987,36 @@ export default class DataUnit {
833
987
  }
834
988
  return false;
835
989
  }
990
+ /**
991
+ *
992
+ * Retorna se existe pelo menos um registro novo.
993
+ *
994
+ * @returns Verdadeiro se algum registro foi adicionado.
995
+ *
996
+ */
997
+ hasNewRecord() {
998
+ const newRecords = getAddedRecords(this._stateManager);
999
+ return newRecords && newRecords.length > 0;
1000
+ }
1001
+ /**
1002
+ *
1003
+ * Retorna se existe pelo menos um registro novo.
1004
+ *
1005
+ * @returns Verdadeiro se algum registro foi adicionado.
1006
+ *
1007
+ */
1008
+ hasCopiedRecord() {
1009
+ const newRecords = getAddedRecords(this._stateManager);
1010
+ if (newRecords == undefined) {
1011
+ return false;
1012
+ }
1013
+ for (let record of newRecords) {
1014
+ if (record['__record__source__id__'] != undefined) {
1015
+ return true;
1016
+ }
1017
+ }
1018
+ return false;
1019
+ }
836
1020
  /**
837
1021
  *
838
1022
  * Retorna se a informação do estado anterior está salva, permitindo desfazer a ação.
@@ -948,7 +1132,9 @@ export default class DataUnit {
948
1132
  *
949
1133
  */
950
1134
  doDispatchAction(action) {
1135
+ var _a;
951
1136
  this._stateManager.process(action);
1137
+ (_a = this === null || this === void 0 ? void 0 : this._parentDataUnit) === null || _a === void 0 ? void 0 : _a.dispatchAction(Action.CHILD_CHANGED, { srcAction: action, srcDataUnit: this });
952
1138
  this._observers.forEach(f => {
953
1139
  /*
954
1140
  if some observer throws exceptions,
@@ -974,6 +1160,16 @@ export default class DataUnit {
974
1160
  this._childByName.set(name, detail);
975
1161
  return detail;
976
1162
  }
1163
+ /**
1164
+ *
1165
+ * Remove um dataunit filho.
1166
+ *
1167
+ * @param name - Nome do dataunit filho.
1168
+ *
1169
+ */
1170
+ removeChildDataunit(name) {
1171
+ this._childByName.delete(name);
1172
+ }
977
1173
  /**
978
1174
  *
979
1175
  * Adiciona um novo observer no DataUnit.
@@ -1 +1 @@
1
- {"version":3,"file":"DataUnit.js","sourceRoot":"","sources":["../../src/dataunit/DataUnit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataUnit.js","sourceRoot":"","sources":["../../src/dataunit/DataUnit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import DataUnit from "./DataUnit.js";
2
+ /**
3
+ * Classe responsável por armazenar instâncias de DataUnit.
4
+ */
5
+ export declare class DataUnitStorage {
6
+ private static dataUnitMap;
7
+ private static keyMap;
8
+ /**
9
+ * Retorna uma instância de DataUnit armazenada no DataUnitStorage.
10
+ * @param {string} dataUnitName - O nome do DataUnit.
11
+ * @returns {DataUnit | undefined} - A instância do DataUnit ou undefined caso não seja encontrada.
12
+ */
13
+ static get(dataUnitName: string): DataUnit | undefined;
14
+ /**
15
+ * Armazena uma instância de DataUnit no DataUnitStorage.
16
+ * @param {DataUnit} dataUnit - A instância de DataUnit a ser armazenada.
17
+ */
18
+ static put(dataUnit: DataUnit): void;
19
+ /**
20
+ * Remove uma instância de DataUnit do DataUnitStorage.
21
+ * @param {DataUnit | string} dataUnit - A instância de DataUnit ou o nome do DataUnit a ser removido.
22
+ */
23
+ static remove(dataUnit: DataUnit | string): void;
24
+ }
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Classe responsável por armazenar instâncias de DataUnit.
3
+ */
4
+ export class DataUnitStorage {
5
+ /**
6
+ * Retorna uma instância de DataUnit armazenada no DataUnitStorage.
7
+ * @param {string} dataUnitName - O nome do DataUnit.
8
+ * @returns {DataUnit | undefined} - A instância do DataUnit ou undefined caso não seja encontrada.
9
+ */
10
+ static get(dataUnitName) {
11
+ const key = this.keyMap.get(dataUnitName);
12
+ if (key)
13
+ return this.dataUnitMap.get(key);
14
+ }
15
+ /**
16
+ * Armazena uma instância de DataUnit no DataUnitStorage.
17
+ * @param {DataUnit} dataUnit - A instância de DataUnit a ser armazenada.
18
+ */
19
+ static put(dataUnit) {
20
+ const key = { key: dataUnit.name };
21
+ this.dataUnitMap.set(key, dataUnit);
22
+ this.keyMap.set(dataUnit.name, key);
23
+ }
24
+ /**
25
+ * Remove uma instância de DataUnit do DataUnitStorage.
26
+ * @param {DataUnit | string} dataUnit - A instância de DataUnit ou o nome do DataUnit a ser removido.
27
+ */
28
+ static remove(dataUnit) {
29
+ const key = typeof dataUnit === 'string' ? this.keyMap.get(dataUnit) : this.keyMap.get(dataUnit.name);
30
+ const dataUnitKey = typeof dataUnit === 'string' ? dataUnit : dataUnit.name;
31
+ if (key) {
32
+ this.dataUnitMap.delete(key);
33
+ this.keyMap.delete(dataUnitKey);
34
+ }
35
+ }
36
+ }
37
+ DataUnitStorage.dataUnitMap = new WeakMap();
38
+ DataUnitStorage.keyMap = new Map();
39
+ //# sourceMappingURL=DataUnitStorage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataUnitStorage.js","sourceRoot":"","sources":["../../src/dataunit/DataUnitStorage.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,OAAO,eAAe;IAI1B;;;;OAIG;IACH,MAAM,CAAC,GAAG,CAAC,YAAoB;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,IAAI,GAAG;YAAE,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,GAAG,CAAC,QAAkB;QAC3B,MAAM,GAAG,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACtC,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,MAAM,CAAC,QAA2B;QACvC,MAAM,GAAG,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACtG,MAAM,WAAW,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QAE5E,IAAI,GAAG,EAAE;YACP,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;SACjC;IACH,CAAC;;AAnCc,2BAAW,GAAuC,IAAI,OAAO,EAAE,CAAC;AAChE,sBAAM,GAAiC,IAAI,GAAG,EAAE,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { FieldDescriptor } from "../metadata/UnitMetadata.js";
2
+ export declare const getFormattedValue: (value: any, descriptor?: FieldDescriptor) => any;