@sankhyalabs/core 1.0.71 → 2.0.0

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 (75) hide show
  1. package/.eslintrc.cjs +2 -1
  2. package/dist/dataunit/DataUnit.d.ts +35 -18
  3. package/dist/dataunit/DataUnit.js +236 -93
  4. package/dist/dataunit/DataUnit.js.map +1 -1
  5. package/dist/dataunit/loading/LoadDataRequest.d.ts +9 -0
  6. package/dist/dataunit/loading/LoadDataRequest.js +2 -0
  7. package/dist/dataunit/loading/LoadDataRequest.js.map +1 -0
  8. package/dist/dataunit/loading/LoadDataResponse.d.ts +6 -0
  9. package/dist/dataunit/loading/LoadDataResponse.js +2 -0
  10. package/dist/dataunit/loading/LoadDataResponse.js.map +1 -0
  11. package/dist/dataunit/loading/PaginationInfo.d.ts +7 -0
  12. package/dist/dataunit/loading/PaginationInfo.js +2 -0
  13. package/dist/dataunit/loading/PaginationInfo.js.map +1 -0
  14. package/dist/dataunit/metadata/DataType.d.ts +1 -0
  15. package/dist/dataunit/metadata/DataType.js +14 -3
  16. package/dist/dataunit/metadata/DataType.js.map +1 -1
  17. package/dist/dataunit/state/action/DataUnitAction.d.ts +7 -1
  18. package/dist/dataunit/state/action/DataUnitAction.js +2 -0
  19. package/dist/dataunit/state/action/DataUnitAction.js.map +1 -1
  20. package/dist/dataunit/state/slice/ChangesSlice.d.ts +1 -0
  21. package/dist/dataunit/state/slice/ChangesSlice.js +3 -0
  22. package/dist/dataunit/state/slice/ChangesSlice.js.map +1 -1
  23. package/dist/dataunit/state/slice/LoadingControlSlice.d.ts +19 -0
  24. package/dist/dataunit/state/slice/LoadingControlSlice.js +45 -0
  25. package/dist/dataunit/state/slice/LoadingControlSlice.js.map +1 -0
  26. package/dist/dataunit/state/slice/RecordsSlice.js +10 -2
  27. package/dist/dataunit/state/slice/RecordsSlice.js.map +1 -1
  28. package/dist/dataunit/state/slice/SelectionSlice.js +0 -4
  29. package/dist/dataunit/state/slice/SelectionSlice.js.map +1 -1
  30. package/dist/dataunit/state/slice/WaitingChangesSlice.js.map +1 -1
  31. package/dist/exceptions/ErrorException.d.ts +2 -1
  32. package/dist/exceptions/ErrorException.js +2 -1
  33. package/dist/exceptions/ErrorException.js.map +1 -1
  34. package/dist/exceptions/WarningException.d.ts +2 -1
  35. package/dist/exceptions/WarningException.js +2 -1
  36. package/dist/exceptions/WarningException.js.map +1 -1
  37. package/dist/index.d.ts +7 -3
  38. package/dist/index.js +3 -2
  39. package/dist/index.js.map +1 -1
  40. package/dist/ui/FloatingManager.d.ts +10 -0
  41. package/dist/ui/FloatingManager.js +62 -1
  42. package/dist/ui/FloatingManager.js.map +1 -1
  43. package/dist/utils/ArrayUtils.d.ts +14 -0
  44. package/dist/utils/ArrayUtils.js +30 -0
  45. package/dist/utils/ArrayUtils.js.map +1 -0
  46. package/dist/utils/DateUtils.d.ts +2 -0
  47. package/dist/utils/DateUtils.js +14 -0
  48. package/dist/utils/DateUtils.js.map +1 -1
  49. package/dist/utils/NumberUtils.d.ts +17 -0
  50. package/dist/utils/NumberUtils.js +27 -0
  51. package/dist/utils/NumberUtils.js.map +1 -1
  52. package/dist/utils/StringUtils.d.ts +14 -2
  53. package/dist/utils/StringUtils.js +30 -2
  54. package/dist/utils/StringUtils.js.map +1 -1
  55. package/jest.config.ts +4 -4
  56. package/package.json +1 -1
  57. package/src/dataunit/DataUnit.ts +258 -102
  58. package/src/dataunit/loading/LoadDataRequest.ts +10 -0
  59. package/src/dataunit/loading/LoadDataResponse.ts +7 -0
  60. package/src/dataunit/loading/PaginationInfo.ts +8 -0
  61. package/src/dataunit/metadata/DataType.ts +28 -15
  62. package/src/dataunit/state/action/DataUnitAction.ts +8 -1
  63. package/src/dataunit/state/slice/ChangesSlice.ts +4 -0
  64. package/src/dataunit/state/slice/LoadingControlSlice.ts +60 -0
  65. package/src/dataunit/state/slice/RecordsSlice.ts +12 -5
  66. package/src/dataunit/state/slice/SelectionSlice.ts +0 -5
  67. package/src/dataunit/state/slice/WaitingChangesSlice.ts +0 -1
  68. package/src/exceptions/ErrorException.ts +3 -1
  69. package/src/exceptions/WarningException.ts +4 -1
  70. package/src/index.ts +15 -3
  71. package/src/ui/FloatingManager.ts +75 -5
  72. package/src/utils/ArrayUtils.ts +32 -0
  73. package/src/utils/DateUtils.ts +19 -3
  74. package/src/utils/NumberUtils.ts +33 -0
  75. package/src/utils/StringUtils.ts +35 -3
@@ -56,6 +56,7 @@ export default class FloatingManager {
56
56
  delete FloatingManager.entries[id];
57
57
  }
58
58
  }
59
+ FloatingManager.hideOverlay();
59
60
  }
60
61
  static handleDocumentEvent(event) {
61
62
  FloatingManager.entries.forEach((entry, index) => {
@@ -98,15 +99,72 @@ export default class FloatingManager {
98
99
  if (alreadyFloatingIndex > -1) {
99
100
  return alreadyFloatingIndex;
100
101
  }
101
- content.style.position = 'absolute';
102
+ content.style.position = options.isFixed ? 'fixed' : 'absolute';
102
103
  FloatingManager.applyStyle(content, "top", options.top);
103
104
  FloatingManager.applyStyle(content, "left", options.left);
104
105
  FloatingManager.applyStyle(content, "right", options.right);
105
106
  FloatingManager.applyStyle(content, "bottom", options.bottom);
107
+ FloatingManager.showOverlay(options);
106
108
  parent.appendChild(content);
107
109
  FloatingManager.entries.push(new FloatingEntry(parent, content, options));
108
110
  return FloatingManager.entries.length - 1;
109
111
  }
112
+ static showOverlay(options) {
113
+ if (options.useOverlay) {
114
+ this.createOrUpdatOverlay().style.display = "block";
115
+ }
116
+ }
117
+ static hideOverlay() {
118
+ if (FloatingManager.entries.filter(entry => entry.options.useOverlay).length > 0) {
119
+ return;
120
+ }
121
+ const overlayElement = document.querySelector(`div#${FloatingManager.MODAL_ELEMENT_ID}`);
122
+ if (overlayElement != undefined) {
123
+ overlayElement.style.display = "none";
124
+ }
125
+ }
126
+ static createOrUpdatOverlay(className = FloatingManager.MODAL_DEFAULT_CLASSNAME) {
127
+ let overlayElement = document.querySelector(`div#${FloatingManager.MODAL_ELEMENT_ID}`);
128
+ if (!overlayElement) {
129
+ overlayElement = document.createElement("div");
130
+ overlayElement.id = FloatingManager.MODAL_ELEMENT_ID;
131
+ const body = document.querySelector("body");
132
+ if (body) {
133
+ body.appendChild(overlayElement);
134
+ }
135
+ }
136
+ if (className === FloatingManager.MODAL_DEFAULT_CLASSNAME) {
137
+ FloatingManager.createStyleElement();
138
+ }
139
+ else {
140
+ overlayElement.classList.remove(FloatingManager.MODAL_DEFAULT_CLASSNAME);
141
+ }
142
+ overlayElement.classList.add(className);
143
+ return overlayElement;
144
+ }
145
+ static createStyleElement() {
146
+ let styleElement = document.querySelector(`style#${FloatingManager.STYLE_ELEMENT_ID}`);
147
+ if (styleElement == undefined) {
148
+ styleElement = document.createElement("style");
149
+ styleElement.id = FloatingManager.STYLE_ELEMENT_ID;
150
+ styleElement.appendChild(document.createTextNode(`
151
+ .${FloatingManager.MODAL_DEFAULT_CLASSNAME} {
152
+ position: fixed;
153
+ z-index: 1;
154
+ padding: 0;
155
+ top: 0px;
156
+ left: 0px;
157
+ width: 100%;
158
+ height: 100vh;
159
+ box-sizing: border-box;
160
+ background: rgba(0, 0, 0, 0.1);
161
+ }`));
162
+ const header = document.querySelector("head");
163
+ if (header) {
164
+ header.appendChild(styleElement);
165
+ }
166
+ }
167
+ }
110
168
  static updateFloatPosition(content, parent, options = { autoClose: true }) {
111
169
  const alreadyFloatingIndex = FloatingManager.getFloatIndex(content, parent);
112
170
  if (alreadyFloatingIndex > -1) {
@@ -122,4 +180,7 @@ export default class FloatingManager {
122
180
  }
123
181
  }
124
182
  }
183
+ FloatingManager.MODAL_DEFAULT_CLASSNAME = "FloatingManager__modal";
184
+ FloatingManager.MODAL_ELEMENT_ID = "FloatingManager__overlay";
185
+ FloatingManager.STYLE_ELEMENT_ID = "FloatingManager__style";
125
186
  //# sourceMappingURL=FloatingManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FloatingManager.js","sourceRoot":"","sources":["../../src/ui/FloatingManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FloatingManager.js","sourceRoot":"","sources":["../../src/ui/FloatingManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ export default class ArrayUtils {
2
+ /**
3
+ * Filtra um array a partir de um critério textual.
4
+ *
5
+ * @param argument - Texto a ser usado no filtro
6
+ * @param originalArray - Array no formato original
7
+ * @param alphabeticalSorting - Determina se o resultado deve ser ordenado ou mantido na ordem original. Por padrão ordena.
8
+ * @param fieldName - Caso o objeto deva ser filtrado por um campo diferente de "label", pode-se usar esse parâmetro
9
+ * @returns Um array filtrado e ordenado conforme necessidade. Se "argument" for omitido, ou nulo, o array original é retornado.
10
+ */
11
+ static applyStringFilter(argument: string, originalArray: Array<any>, alphabeticalSorting?: boolean, fieldName?: string): Array<any>;
12
+ private static normalizeSearchString;
13
+ static sortAlphabetically(originalArray: Array<any>, fieldName?: string): Array<any>;
14
+ }
@@ -0,0 +1,30 @@
1
+ import { StringUtils } from "./StringUtils.js";
2
+ export default class ArrayUtils {
3
+ /**
4
+ * Filtra um array a partir de um critério textual.
5
+ *
6
+ * @param argument - Texto a ser usado no filtro
7
+ * @param originalArray - Array no formato original
8
+ * @param alphabeticalSorting - Determina se o resultado deve ser ordenado ou mantido na ordem original. Por padrão ordena.
9
+ * @param fieldName - Caso o objeto deva ser filtrado por um campo diferente de "label", pode-se usar esse parâmetro
10
+ * @returns Um array filtrado e ordenado conforme necessidade. Se "argument" for omitido, ou nulo, o array original é retornado.
11
+ */
12
+ static applyStringFilter(argument, originalArray, alphabeticalSorting = true, fieldName = "label") {
13
+ if (!argument) {
14
+ return originalArray;
15
+ }
16
+ const normalizedArgument = ArrayUtils.normalizeSearchString(argument);
17
+ const filteredArray = originalArray.filter(item => {
18
+ const itemValue = ArrayUtils.normalizeSearchString(item[fieldName]);
19
+ return itemValue.includes(normalizedArgument);
20
+ });
21
+ return alphabeticalSorting ? ArrayUtils.sortAlphabetically(filteredArray, fieldName) : filteredArray;
22
+ }
23
+ static normalizeSearchString(original) {
24
+ return StringUtils.replaceAccentuatedCharsKeepSymbols(original.toUpperCase());
25
+ }
26
+ static sortAlphabetically(originalArray, fieldName = "label") {
27
+ return originalArray.sort((fieldA, fieldB) => StringUtils.compare(fieldA[fieldName], fieldB[fieldName]));
28
+ }
29
+ }
30
+ //# sourceMappingURL=ArrayUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArrayUtils.js","sourceRoot":"","sources":["../../src/utils/ArrayUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,UAAU;IAC3B;;;;;;;;OAQG;IACH,MAAM,CAAC,iBAAiB,CAAC,QAAgB,EAAE,aAAyB,EAAE,sBAA+B,IAAI,EAAE,YAAoB,OAAO;QACnI,IAAG,CAAC,QAAQ,EAAC;YACR,OAAO,aAAa,CAAC;SACxB;QACD,MAAM,kBAAkB,GAAG,UAAU,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QACtE,MAAM,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YAC9C,MAAM,SAAS,GAAW,UAAU,CAAC,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YAC5E,OAAO,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QACH,OAAO,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC,kBAAkB,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;IACzG,CAAC;IAEO,MAAM,CAAC,qBAAqB,CAAC,QAAe;QAChD,OAAO,WAAW,CAAC,kCAAkC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IAClF,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,aAAyB,EAAE,YAAoB,OAAO;QAC5E,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAC7G,CAAC;CACJ"}
@@ -1,5 +1,7 @@
1
1
  export default class DateUtils {
2
2
  static clearTime(date: Date, adjustDayLightSavingTime?: boolean): Date;
3
3
  static strToDate(strValue: string, adjustDayLightSavingTime?: boolean, monthYearMode?: boolean): Date | undefined;
4
+ static getToday(withTime?: boolean): Date;
5
+ static validateDate(value: Date, hasTime?: boolean): Date | undefined;
4
6
  private static adjustDLST;
5
7
  }
@@ -32,6 +32,20 @@ export default class DateUtils {
32
32
  }
33
33
  return date;
34
34
  }
35
+ static getToday(withTime = false) {
36
+ const today = new Date();
37
+ if (withTime) {
38
+ return today;
39
+ }
40
+ else {
41
+ return DateUtils.clearTime(today);
42
+ }
43
+ }
44
+ static validateDate(value, hasTime = false) {
45
+ return value instanceof Date && !isNaN(value.valueOf())
46
+ ? hasTime ? value : DateUtils.clearTime(value)
47
+ : undefined;
48
+ }
35
49
  static adjustDLST(date) {
36
50
  //Work around para corrigir o Bug do horário de verão.
37
51
  if (date.getHours() == 23) {
@@ -1 +1 @@
1
- {"version":3,"file":"DateUtils.js","sourceRoot":"","sources":["../../src/utils/DateUtils.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,OAAO,SAAS;IAEnB,MAAM,CAAC,SAAS,CAAC,IAAS,EAAE,2BAAmC,IAAI;QACtE,MAAM,OAAO,GAAS,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAChG,OAAO,wBAAwB,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAC9E,CAAC;IAEM,MAAM,CAAC,SAAS,CAAC,QAAe,EAAE,2BAAmC,IAAI,EAAE,gBAAwB,KAAK;QAC3G;;4FAEoF;QAEpF,IAAI,KAAK,CAAC;QAEV,IAAI,aAAa,EAAE;YACf,KAAK,GAAG,iFAAiF,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC5G;aAAK;YACF,KAAK,GAAG,mHAAmH,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC9I;QACD,IAAI,CAAC,KAAK,EAAE;YACR,OAAO,SAAS,CAAC;SACpB;QAED,MAAM,GAAG,GAAY,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,MAAM,KAAK,GAAU,MAAM,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5D,IAAI,IAAI,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,MAAM,IAAI,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAClE,MAAM,GAAG,GAAY,MAAM,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAClE,MAAM,GAAG,GAAY,MAAM,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAElE,IAAI,IAAI,GAAG,GAAG,EAAE;YACZ,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;SACnC;QAED,IAAI,IAAI,GAAS,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QAEnE,IAAI,wBAAwB,KAAK,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,IAAI,CAAC,EAAE;YAClE,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;SACrC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,MAAM,CAAC,UAAU,CAAC,IAAS;QAE/B,sDAAsD;QACtD,IAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAC;YACrB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;SACxF;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ"}
1
+ {"version":3,"file":"DateUtils.js","sourceRoot":"","sources":["../../src/utils/DateUtils.ts"],"names":[],"mappings":"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"}
@@ -50,4 +50,21 @@ export declare class NumberUtils {
50
50
  * @returns numero em formato de string formatado de "PT-BR" para "EN-US" e vice-versa
51
51
  */
52
52
  static changeFormat: (value: string) => string;
53
+ /**
54
+ * @getValueOrDefault: retorna o valor passado como number, caso NaN retorna o defaultValue
55
+ *
56
+ * @param value numero a ser validado
57
+ * @param defaultValue numero a ser retornado caso o value seja inválido
58
+ *
59
+ * @returns o proprio numero passado ou zero
60
+ */
61
+ static getValueOrDefault: (value: any, defaultValue: number) => number;
62
+ /**
63
+ * @getValueOrZero: valida se o parametro é undefined caso seja retorna zero.
64
+ *
65
+ * @param value numero a ser validado
66
+ *
67
+ * @returns o proprio numero passado ou zero
68
+ */
69
+ static getValueOrZero: (value: any) => number;
53
70
  }
@@ -1,3 +1,4 @@
1
+ import { StringUtils } from "./StringUtils.js";
1
2
  const NUMBERINPUTS_REGEX_SCIENTIFIC_PARTS = /^([+-])?(\d+).?(\d*)[eE]([-+]?\d+)$/;
2
3
  /**
3
4
  * `NumberUtils` é uma biblioteca para manipulação de números
@@ -139,4 +140,30 @@ NumberUtils.changeFormat = (value) => {
139
140
  //Formatting output following formatnumber
140
141
  return value.replace(/\./g, '_').replace(/\,/g, '.').replace(/\_/g, ',');
141
142
  };
143
+ /**
144
+ * @getValueOrDefault: retorna o valor passado como number, caso NaN retorna o defaultValue
145
+ *
146
+ * @param value numero a ser validado
147
+ * @param defaultValue numero a ser retornado caso o value seja inválido
148
+ *
149
+ * @returns o proprio numero passado ou zero
150
+ */
151
+ NumberUtils.getValueOrDefault = (value, defaultValue) => {
152
+ value = StringUtils.isEmpty(value) ? undefined : value;
153
+ value = Number(value);
154
+ if (isNaN(value)) {
155
+ return Number(defaultValue);
156
+ }
157
+ return value;
158
+ };
159
+ /**
160
+ * @getValueOrZero: valida se o parametro é undefined caso seja retorna zero.
161
+ *
162
+ * @param value numero a ser validado
163
+ *
164
+ * @returns o proprio numero passado ou zero
165
+ */
166
+ NumberUtils.getValueOrZero = (value) => {
167
+ return NumberUtils.getValueOrDefault(value, 0);
168
+ };
142
169
  //# sourceMappingURL=NumberUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NumberUtils.js","sourceRoot":"","sources":["../../src/utils/NumberUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NumberUtils.js","sourceRoot":"","sources":["../../src/utils/NumberUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,mCAAmC,GAAW,qCAAqC,CAAC;AAE1F;;;;;;;GAOG;AACH,MAAM,OAAO,WAAW;;AAKpB;;;;;;;;;;;;;;EAcE;AACK,0BAAc,GAAG,CAAC,KAAa,EAAU,EAAE;IAE9C,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;QACvD,OAAO,GAAG,CAAC;KACd;IAED,IAAI,KAAK,EAAE;QACP,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QAEzB,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;QAE3C,IAAI,CAAC,mCAAmC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YAClD,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;SACzC;aAAM;YACH,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;SACpC;QAED,6CAA6C;QAC7C,IAAI,KAAK,KAAK,EAAE,EAAE;YACd,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;SACtB;QAED,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAClC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAElC,IAAI,MAAM,GAAG,MAAM,EAAE;YACjB,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;SAClC;aAAM,IAAI,MAAM,GAAG,MAAM,EAAE;YACxB,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;SACzE;QAED,IAAI,QAAQ,EAAE;YACV,KAAK,GAAG,GAAG,GAAG,KAAK,CAAC;SACvB;KACJ;IAED,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AAEzB,CAAC,CAAA;AAGD;;;;;;;;EAQE;AACK,kBAAM,GAAG,CAAC,KAAa,EAAE,SAAiB,EAAE,kBAA0B,GAAG,EAAU,EAAE;IAExF,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,KAAK,EAAE;QACxD,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;KACzB;IAED,MAAM,QAAQ,GAAW,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAE3D,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE;QACjB,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;KACzB;IAED,yBAAyB;IACzB,iDAAiD;IACjD,qDAAqD;IACrD,IAAI,SAAS,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,SAAS,EAAE;QACxE,uEAAuE;QACvE,OAAO,WAAW,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;KACxD;IAGD,8BAA8B;IAC9B,IAAI,uBAAuB,GAAW,CAAC,CAAC;IACxC,2HAA2H;IAC3H,+HAA+H;IAC/H,IAAI,KAAK,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,eAAe,EAAE;QAC7F,uBAAuB,GAAG,SAAS,CAAC;KACvC;SAAM;QACH,uBAAuB,GAAG,eAAe,CAAC;KAC7C;IAED,IAAI,WAAmB,CAAC;IACxB,WAAW,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,qBAAqB,EAAE,SAAS,EAAE,CAAC,CAAC;IAEvJ,iBAAiB;IACjB,MAAM,YAAY,GAAW,SAAS,GAAG,uBAAuB,CAAC;IACjE,IAAI,YAAY,GAAG,CAAC,EAAE;QAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE;YACnC,IAAI,WAAW,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,GAAG,IAAI,SAAS,GAAG,CAAC,EAAE;gBACvE,WAAW,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;aAClE;SACJ;KACJ;IAED,6CAA6C;IAC7C,IAAI,WAAW,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,GAAG,IAAI,WAAW,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,GAAG,EAAE;QAC9G,WAAW,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;KAClE;IAGD,OAAO,WAAW,CAAC;AAGvB,CAAC,CAAA;AAGD;;;;;;;EAOE;AACK,oCAAwB,GAAG,CAAC,KAAa,EAAE,eAAuB,OAAO,EAAU,EAAE;IAExF,sDAAsD;IACtD,YAAY,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;IAE1C,mDAAmD;IACnD,mEAAmE;IACnE,uHAAuH;IACvH,IAAI,YAAY,KAAK,OAAO,EAAE;QAC1B,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;KACpC;SAAM;QACH,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;KACpC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC,CAAA;AAED;;;;;;EAME;AACK,wBAAY,GAAG,CAAC,KAAa,EAAU,EAAE;IAC5C,0CAA0C;IAC1C,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC7E,CAAC,CAAA;AAID;;;;;;;EAOE;AACK,6BAAiB,GAAG,CAAC,KAAU,EAAE,YAAoB,EAAU,EAAE;IACpE,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;IACvD,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAEtB,IAAI,KAAK,CAAC,KAAK,CAAC,EAAC;QACb,OAAO,MAAM,CAAC,YAAY,CAAC,CAAC;KAC/B;IAED,OAAO,KAAK,CAAC;AAEjB,CAAC,CAAA;AAED;;;;;;EAME;AACM,0BAAc,GAAG,CAAC,KAAU,EAAU,EAAE;IAC5C,OAAO,WAAW,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACnD,CAAC,CAAA"}
@@ -15,19 +15,31 @@ export declare class StringUtils {
15
15
  * @param value String para ser transformada.
16
16
  */
17
17
  static replaceAccentuatedChars(text: string): string;
18
+ /**
19
+ * Remove acentos de vogais, substitui Ç por c e retorna a string em caixa alta mantendo espaços e símbolos.
20
+ * @param text String para ser transformada.
21
+ */
22
+ static replaceAccentuatedCharsKeepSymbols(text: string): string;
18
23
  /**
19
24
  * Calcula um código hash para uma string.
20
- *
21
25
  * @param value String que será gerado o hash code.
22
26
  */
23
27
  static hashCode(value: string): string;
24
28
  /**
25
29
  * Converte um valor em string para booleano
26
- *
27
30
  * @param value Valor a ser convertido
28
31
  * @param defaultValue Será retornado esse caso seja passado valores diferentes do esperado(true, false, "true", "false", "S", "N")
29
32
  */
30
33
  static getBooleanValue(value: string, defaultValue?: boolean): boolean;
31
34
  static padStart(str: string, len: number, pad?: string): string;
32
35
  static padEnd(str: string, len: number, pad?: string): string;
36
+ /**
37
+ * Utilitário para determinar a ordem de strings. Geralmente usado no método "sort" de um array.
38
+ * Retorna um número negativo se o primeiro argumento é menor que o segundo, zero se os dois são iguais
39
+ * e um número positivo quando o primeiro é maior que o segundo.if they're equal, and a positive value otherwise.
40
+ * @param a - Primeira string para comparação
41
+ * @param b - Segunda string para comparação
42
+ * @returns Um valor maior, menor ou igual a zero para determinar se a ordem precisa ser alterada.
43
+ */
44
+ static compare(a: string, b: string): number;
33
45
  }
@@ -50,9 +50,15 @@ export class StringUtils {
50
50
  text = text.replace(/[Ç]/, "C");
51
51
  return text.replace(/[^a-z0-9]/gi, "");
52
52
  }
53
+ /**
54
+ * Remove acentos de vogais, substitui Ç por c e retorna a string em caixa alta mantendo espaços e símbolos.
55
+ * @param text String para ser transformada.
56
+ */
57
+ static replaceAccentuatedCharsKeepSymbols(text) {
58
+ return text.normalize("NFD").replace(/[\u0300-\u036f]/g, "").toUpperCase();
59
+ }
53
60
  /**
54
61
  * Calcula um código hash para uma string.
55
- *
56
62
  * @param value String que será gerado o hash code.
57
63
  */
58
64
  static hashCode(value) {
@@ -68,7 +74,6 @@ export class StringUtils {
68
74
  }
69
75
  /**
70
76
  * Converte um valor em string para booleano
71
- *
72
77
  * @param value Valor a ser convertido
73
78
  * @param defaultValue Será retornado esse caso seja passado valores diferentes do esperado(true, false, "true", "false", "S", "N")
74
79
  */
@@ -97,5 +102,28 @@ export class StringUtils {
97
102
  }
98
103
  return str;
99
104
  }
105
+ /**
106
+ * Utilitário para determinar a ordem de strings. Geralmente usado no método "sort" de um array.
107
+ * Retorna um número negativo se o primeiro argumento é menor que o segundo, zero se os dois são iguais
108
+ * e um número positivo quando o primeiro é maior que o segundo.if they're equal, and a positive value otherwise.
109
+ * @param a - Primeira string para comparação
110
+ * @param b - Segunda string para comparação
111
+ * @returns Um valor maior, menor ou igual a zero para determinar se a ordem precisa ser alterada.
112
+ */
113
+ static compare(a, b) {
114
+ if (a === undefined) {
115
+ return b === undefined ? 0 : 1;
116
+ }
117
+ else if (b === undefined) {
118
+ return -1;
119
+ }
120
+ if (a === null) {
121
+ return b === null ? 0 : 1;
122
+ }
123
+ else if (b === null) {
124
+ return -1;
125
+ }
126
+ return a.localeCompare(b);
127
+ }
100
128
  }
101
129
  //# 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;IAED;;;;MAIE;IACF,MAAM,CAAC,QAAQ,CAAC,KAAa;QACzB,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC;QACrB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC/C,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC/B,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAC1B,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;YAClC,IAAI,IAAI,CAAC,CAAC,CAAC,2BAA2B;SACzC;QACD,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC3B,CAAC;IAED;;;;;MAKE;IACF,MAAM,CAAC,eAAe,CAAC,KAAY,EAAE,eAAuB,KAAK;QAC7D,IAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YACpC,OAAO,IAAI,CAAC;SAEf;aAAM,IAAG,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAC7C,OAAO,KAAK,CAAC;SAEhB;aAAM;YACH,OAAO,YAAY,CAAC;SACvB;IACL,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,GAAW,EAAE,GAAW,EAAE,MAAc,GAAG;QACvD,GAAG,GAAG,GAAG,IAAI,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAClC,OAAO,GAAG,CAAC,MAAM,GAAG,GAAG,EAAE;YACrB,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;SACnB;QACD,OAAO,GAAG,CAAC;IACf,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,GAAW,EAAE,GAAW,EAAE,MAAc,GAAG;QACrD,GAAG,GAAG,GAAG,IAAI,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAClC,OAAO,GAAG,CAAC,MAAM,GAAG,GAAG,EAAE;YACrB,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;SACnB;QACD,OAAO,GAAG,CAAC;IACf,CAAC;CACJ"}
1
+ {"version":3,"file":"StringUtils.js","sourceRoot":"","sources":["../../src/utils/StringUtils.ts"],"names":[],"mappings":"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"}
package/jest.config.ts CHANGED
@@ -5,10 +5,10 @@ module.exports = {
5
5
  moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'],
6
6
  coverageThreshold: {
7
7
  "global": {
8
- "branches": 75,
9
- "functions": 75,
10
- "lines": 75,
11
- "statements": 75
8
+ "branches": 60,
9
+ "functions": 60,
10
+ "lines": 60,
11
+ "statements": 60
12
12
  }
13
13
  },
14
14
  moduleNameMapper: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sankhyalabs/core",
3
- "version": "1.0.71",
3
+ "version": "2.0.0",
4
4
  "description": "Modulo core JavaScript da Sankhya.",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",