devtoolz-library 1.0.1 → 1.1.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 (37) hide show
  1. package/dist/converters/time-decimal/interfaces/ITimeDecimal.converter.d.ts +5 -0
  2. package/dist/converters/time-decimal/interfaces/ITimeDecimal.converter.js +3 -0
  3. package/dist/converters/time-decimal/interfaces/ITimeDecimal.converter.js.map +1 -0
  4. package/dist/converters/time-decimal/models/conversion-result.model.d.ts +6 -0
  5. package/dist/converters/time-decimal/models/conversion-result.model.js +3 -0
  6. package/dist/converters/time-decimal/models/conversion-result.model.js.map +1 -0
  7. package/dist/converters/time-decimal/time-decimal.converter.d.ts +6 -0
  8. package/dist/converters/time-decimal/time-decimal.converter.js +25 -0
  9. package/dist/converters/time-decimal/time-decimal.converter.js.map +1 -0
  10. package/dist/converters/time-decimal/time-decimal.converter.test.d.ts +1 -0
  11. package/dist/converters/time-decimal/time-decimal.converter.test.js +178 -0
  12. package/dist/converters/time-decimal/time-decimal.converter.test.js.map +1 -0
  13. package/dist/extensions/array.extensions.d.ts +44 -0
  14. package/dist/extensions/array.extensions.js +287 -2
  15. package/dist/extensions/array.extensions.js.map +1 -1
  16. package/dist/extensions/number.extensions.d.ts +5 -1
  17. package/dist/extensions/number.extensions.js +90 -0
  18. package/dist/extensions/number.extensions.js.map +1 -1
  19. package/dist/extensions/string.extensions.d.ts +3 -0
  20. package/dist/extensions/string.extensions.js +21 -0
  21. package/dist/extensions/string.extensions.js.map +1 -1
  22. package/dist/extensions/tests/array.extensions.test.d.ts +1 -0
  23. package/dist/extensions/tests/array.extensions.test.js +514 -0
  24. package/dist/extensions/tests/array.extensions.test.js.map +1 -0
  25. package/dist/extensions/tests/number.extensions.test.d.ts +1 -0
  26. package/dist/extensions/tests/number.extensions.test.js +113 -0
  27. package/dist/extensions/tests/number.extensions.test.js.map +1 -0
  28. package/dist/extensions/tests/string.extensions.test.d.ts +1 -0
  29. package/dist/extensions/tests/string.extensions.test.js +119 -0
  30. package/dist/extensions/tests/string.extensions.test.js.map +1 -0
  31. package/dist/index.d.ts +3 -0
  32. package/dist/index.js +3 -0
  33. package/dist/index.js.map +1 -1
  34. package/package.json +1 -1
  35. package/dist/converters/unit-converter/services/time/time.converter.d.ts +0 -4
  36. package/dist/converters/unit-converter/services/time/time.converter.js +0 -27
  37. package/dist/converters/unit-converter/services/time/time.converter.js.map +0 -1
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ require("../number.extensions");
4
+ const number_extensions_1 = require("../number.extensions");
5
+ describe("Number.prototype.toWords", () => {
6
+ describe("Numeric type (default)", () => {
7
+ it("deve retornar 'zero' para 0", () => {
8
+ expect((0).toWords()).toBe('zero');
9
+ });
10
+ it("deve retornar 'um' para 1", () => {
11
+ expect((1).toWords()).toBe('um');
12
+ });
13
+ it("deve retornar 'treze' para 13", () => {
14
+ expect((13).toWords()).toBe('treze');
15
+ });
16
+ it("deve retornar 'vinte' para 20", () => {
17
+ expect((20).toWords()).toBe('vinte');
18
+ });
19
+ it("deve retornar 'vinte e um' para 21", () => {
20
+ expect((21).toWords()).toBe('vinte e um');
21
+ });
22
+ it("deve retornar 'cem' para 100", () => {
23
+ expect((100).toWords()).toBe('cem');
24
+ });
25
+ it("deve retornar 'cento e um' para 101", () => {
26
+ expect((101).toWords()).toBe('cento e um');
27
+ });
28
+ it("deve retornar 'duzentos' para 200", () => {
29
+ expect((200).toWords()).toBe('duzentos');
30
+ });
31
+ it("deve retornar 'duzentos e cinquenta e cinco' para 255", () => {
32
+ expect((255).toWords()).toBe('duzentos e cinquenta e cinco');
33
+ });
34
+ it("deve retornar 'novecentos e noventa e nove' para 999", () => {
35
+ expect((999).toWords()).toBe('novecentos e noventa e nove');
36
+ });
37
+ it("deve retornar 'mil' para 1000", () => {
38
+ expect((1000).toWords()).toBe('mil');
39
+ });
40
+ it("deve retornar 'mil e um' para 1001", () => {
41
+ expect((1001).toWords()).toBe('mil e um');
42
+ });
43
+ it("deve retornar 'mil e cem' para 1100", () => {
44
+ expect((1100).toWords()).toBe('mil e cem');
45
+ });
46
+ it("deve retornar 'dois mil' para 2000", () => {
47
+ expect((2000).toWords()).toBe('dois mil');
48
+ });
49
+ it("deve retornar 'dois mil e quinhentos' para 2500", () => {
50
+ expect((2500).toWords()).toBe('dois mil e quinhentos');
51
+ });
52
+ it("deve retornar 'um milhão' para 1_000_000", () => {
53
+ expect((1_000_000).toWords()).toBe('um milhão');
54
+ });
55
+ it("deve retornar 'dois milhões' para 2_000_000", () => {
56
+ expect((2_000_000).toWords()).toBe('dois milhões');
57
+ });
58
+ it("deve retornar 'um milhão e um' para 1_000_001", () => {
59
+ expect((1_000_001).toWords()).toBe('um milhão e um');
60
+ });
61
+ it("deve retornar 'um bilhão' para 1_000_000_000", () => {
62
+ expect((1_000_000_000).toWords()).toBe('um bilhão');
63
+ });
64
+ it("deve retornar 'dois bilhões' para 2_000_000_000", () => {
65
+ expect((2_000_000_000).toWords()).toBe('dois bilhões');
66
+ });
67
+ it("deve retornar numero negativo com prefixo 'menos'", () => {
68
+ expect((-5).toWords()).toBe('menos cinco');
69
+ });
70
+ it("deve retornar 'menos mil e duzentos' para -1200", () => {
71
+ expect((-1200).toWords()).toBe('menos mil e duzentos');
72
+ });
73
+ it("deve funcionar com tipo explicitamente Numeric", () => {
74
+ expect((42).toWords(number_extensions_1.NumberWordType.Numeric)).toBe('quarenta e dois');
75
+ });
76
+ });
77
+ describe("Monetary type", () => {
78
+ it("deve retornar 'zero reais' para 0", () => {
79
+ expect((0).toWords(number_extensions_1.NumberWordType.Monetary)).toBe('zero reais');
80
+ });
81
+ it("deve retornar 'um centavo' para 0.01", () => {
82
+ expect((0.01).toWords(number_extensions_1.NumberWordType.Monetary)).toBe('um centavo');
83
+ });
84
+ it("deve retornar 'cinquenta centavos' para 0.50", () => {
85
+ expect((0.50).toWords(number_extensions_1.NumberWordType.Monetary)).toBe('cinquenta centavos');
86
+ });
87
+ it("deve retornar 'um real' para 1.00", () => {
88
+ expect((1).toWords(number_extensions_1.NumberWordType.Monetary)).toBe('um real');
89
+ });
90
+ it("deve retornar 'um real e um centavo' para 1.01", () => {
91
+ expect((1.01).toWords(number_extensions_1.NumberWordType.Monetary)).toBe('um real e um centavo');
92
+ });
93
+ it("deve retornar 'um real e cinquenta centavos' para 1.50", () => {
94
+ expect((1.50).toWords(number_extensions_1.NumberWordType.Monetary)).toBe('um real e cinquenta centavos');
95
+ });
96
+ it("deve retornar 'dois reais' para 2.00", () => {
97
+ expect((2).toWords(number_extensions_1.NumberWordType.Monetary)).toBe('dois reais');
98
+ });
99
+ it("deve retornar 'dois reais e noventa e nove centavos' para 2.99", () => {
100
+ expect((2.99).toWords(number_extensions_1.NumberWordType.Monetary)).toBe('dois reais e noventa e nove centavos');
101
+ });
102
+ it("deve retornar 'mil reais e cinquenta centavos' para 1000.50", () => {
103
+ expect((1000.50).toWords(number_extensions_1.NumberWordType.Monetary)).toBe('mil reais e cinquenta centavos');
104
+ });
105
+ it("deve retornar negativo com prefixo 'menos'", () => {
106
+ expect((-1).toWords(number_extensions_1.NumberWordType.Monetary)).toBe('menos um real');
107
+ });
108
+ it("deve retornar 'menos dois reais e cinquenta centavos' para -2.50", () => {
109
+ expect((-2.50).toWords(number_extensions_1.NumberWordType.Monetary)).toBe('menos dois reais e cinquenta centavos');
110
+ });
111
+ });
112
+ });
113
+ //# sourceMappingURL=number.extensions.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"number.extensions.test.js","sourceRoot":"","sources":["../../../src/extensions/tests/number.extensions.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ import '../string.extensions';
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ require("../string.extensions");
4
+ describe("String.prototype.toBinary", () => {
5
+ describe("Dado uma string vazia", () => {
6
+ it("deve retornar string vazia", () => {
7
+ expect("".toBinary()).toBe("");
8
+ });
9
+ });
10
+ describe("Dado um único caractere", () => {
11
+ it("deve converter 'A' para binário", () => {
12
+ expect("A".toBinary()).toBe("01000001");
13
+ });
14
+ it("deve converter 'a' para binário", () => {
15
+ expect("a".toBinary()).toBe("01100001");
16
+ });
17
+ });
18
+ describe("Dado múltiplos caracteres", () => {
19
+ it("deve converter 'Hi' para binário separado por espaços", () => {
20
+ expect("Hi".toBinary()).toBe("01001000 01101001");
21
+ });
22
+ it("deve converter 'ABC' para binário separado por espaços", () => {
23
+ expect("ABC".toBinary()).toBe("01000001 01000010 01000011");
24
+ });
25
+ });
26
+ describe("Dado conversão de ida e volta", () => {
27
+ it("deve retornar o texto original após toBinary e fromBinary", () => {
28
+ expect("Hello".toBinary().fromBinary()).toBe("Hello");
29
+ });
30
+ it("deve preservar espaços após ida e volta", () => {
31
+ expect("Hello World".toBinary().fromBinary()).toBe("Hello World");
32
+ });
33
+ });
34
+ });
35
+ describe("String.prototype.fromBinary", () => {
36
+ describe("Dado uma string vazia", () => {
37
+ it("deve retornar string vazia", () => {
38
+ expect("".fromBinary()).toBe("");
39
+ });
40
+ });
41
+ describe("Dado um único bloco binário", () => {
42
+ it("deve converter '01000001' para 'A'", () => {
43
+ expect("01000001".fromBinary()).toBe("A");
44
+ });
45
+ it("deve converter '01100001' para 'a'", () => {
46
+ expect("01100001".fromBinary()).toBe("a");
47
+ });
48
+ });
49
+ describe("Dado múltiplos blocos binários", () => {
50
+ it("deve converter '01001000 01101001' para 'Hi'", () => {
51
+ expect("01001000 01101001".fromBinary()).toBe("Hi");
52
+ });
53
+ it("deve converter '01000001 01000010 01000011' para 'ABC'", () => {
54
+ expect("01000001 01000010 01000011".fromBinary()).toBe("ABC");
55
+ });
56
+ });
57
+ describe("Dado conversão de ida e volta", () => {
58
+ it("deve retornar o binário original após fromBinary e toBinary", () => {
59
+ const binary = "01001000 01101001";
60
+ expect(binary.fromBinary().toBinary()).toBe(binary);
61
+ });
62
+ });
63
+ });
64
+ describe("String.prototype.removeAccents", () => {
65
+ describe("Dado uma string sem acentuação", () => {
66
+ it("deve retornar a mesma string", () => {
67
+ expect("hello".removeAccents()).toBe("hello");
68
+ });
69
+ it("deve retornar string vazia ao receber string vazia", () => {
70
+ expect("".removeAccents()).toBe("");
71
+ });
72
+ it("deve retornar a mesma string com números e símbolos", () => {
73
+ expect("abc123!@#".removeAccents()).toBe("abc123!@#");
74
+ });
75
+ });
76
+ describe("Dado uma string com vogais acentuadas", () => {
77
+ it("deve remover acento agudo", () => {
78
+ expect("áéíóú".removeAccents()).toBe("aeiou");
79
+ });
80
+ it("deve remover acento circunflexo", () => {
81
+ expect("âêîôû".removeAccents()).toBe("aeiou");
82
+ });
83
+ it("deve remover acento grave", () => {
84
+ expect("àèìòù".removeAccents()).toBe("aeiou");
85
+ });
86
+ it("deve remover til", () => {
87
+ expect("ãõ".removeAccents()).toBe("ao");
88
+ });
89
+ it("deve remover trema", () => {
90
+ expect("äëïöü".removeAccents()).toBe("aeiou");
91
+ });
92
+ });
93
+ describe("Dado uma string com caracteres especiais do português", () => {
94
+ it("deve remover cedilha", () => {
95
+ expect("ç".removeAccents()).toBe("c");
96
+ });
97
+ it("deve remover acentuação de palavra completa", () => {
98
+ expect("açúcar".removeAccents()).toBe("acucar");
99
+ });
100
+ it("deve remover acentuação de frase", () => {
101
+ expect("é incrível trabalhar aqui".removeAccents()).toBe("e incrivel trabalhar aqui");
102
+ });
103
+ it("deve remover acentuação mantendo letras maiúsculas", () => {
104
+ expect("ÁÉÍÓÚ".removeAccents()).toBe("AEIOU");
105
+ });
106
+ it("deve remover acentuação de texto misto maiúsculas e minúsculas", () => {
107
+ expect("São Paulo".removeAccents()).toBe("Sao Paulo");
108
+ });
109
+ });
110
+ describe("Dado uma string com acentuação mista", () => {
111
+ it("deve remover apenas os caracteres acentuados preservando o restante", () => {
112
+ expect("café com leite".removeAccents()).toBe("cafe com leite");
113
+ });
114
+ it("deve processar nomes próprios com acentos", () => {
115
+ expect("João, José, Álvaro e Ângela".removeAccents()).toBe("Joao, Jose, Alvaro e Angela");
116
+ });
117
+ });
118
+ });
119
+ //# sourceMappingURL=string.extensions.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"string.extensions.test.js","sourceRoot":"","sources":["../../../src/extensions/tests/string.extensions.test.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -20,3 +20,6 @@ export * from './converters/unit-converter/interfaces/IUnitConverter';
20
20
  export * from './converters/unit-converter/models/unit';
21
21
  export * from './converters/serialization/serialization.converter';
22
22
  export * from './converters/numeric-systems/numericSystem.converter';
23
+ export * from './converters/time-decimal/models/conversion-result.model';
24
+ export * from './converters/time-decimal/interfaces/ITimeDecimal.converter';
25
+ export * from './converters/time-decimal/time-decimal.converter';
package/dist/index.js CHANGED
@@ -37,4 +37,7 @@ __exportStar(require("./converters/unit-converter/interfaces/IUnitConverter"), e
37
37
  __exportStar(require("./converters/unit-converter/models/unit"), exports);
38
38
  __exportStar(require("./converters/serialization/serialization.converter"), exports);
39
39
  __exportStar(require("./converters/numeric-systems/numericSystem.converter"), exports);
40
+ __exportStar(require("./converters/time-decimal/models/conversion-result.model"), exports);
41
+ __exportStar(require("./converters/time-decimal/interfaces/ITimeDecimal.converter"), exports);
42
+ __exportStar(require("./converters/time-decimal/time-decimal.converter"), exports);
40
43
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0BAA0B;AAC1B,iEAA+C;AAC/C,iEAA+C;AAC/C,kEAAgD;AAChD,gEAA8C;AAE9C,6EAA2D;AAC3D,6EAA2D;AAC3D,6EAA2D;AAC3D,6EAA2D;AAE3D,sDAAoC;AACpC,gEAA8C;AAC9C,gEAA8C;AAC9C,gEAA8C;AAE9C,wDAAsC;AACtC,kEAAgD;AAChD,kEAAgD;AAChD,kEAAgD;AAEhD,2CAAyB;AACzB,qFAAmE;AACnE,wFAAsE;AACtE,0EAAwD;AACxD,qFAAkE;AAClE,uFAAoE"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0BAA0B;AAC1B,iEAA+C;AAC/C,iEAA+C;AAC/C,kEAAgD;AAChD,gEAA8C;AAE9C,6EAA2D;AAC3D,6EAA2D;AAC3D,6EAA2D;AAC3D,6EAA2D;AAE3D,sDAAoC;AACpC,gEAA8C;AAC9C,gEAA8C;AAC9C,gEAA8C;AAE9C,wDAAsC;AACtC,kEAAgD;AAChD,kEAAgD;AAChD,kEAAgD;AAEhD,2CAAyB;AACzB,qFAAmE;AACnE,wFAAsE;AACtE,0EAAwD;AACxD,qFAAkE;AAClE,uFAAoE;AACpE,2FAAyE;AACzE,8FAA4E;AAC5E,mFAAiE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "devtoolz-library",
3
- "version": "1.0.1",
3
+ "version": "1.1.0",
4
4
  "description": "Biblioteca de funcionalidades gerais usadas no dia a dia de um desenvolvedor",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,4 +0,0 @@
1
- export declare class TimeConverter {
2
- static timeToDecimal(hours: number, minutes: number, seconds: number): number;
3
- static decimalToTime(decimal: number): string;
4
- }
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TimeConverter = void 0;
4
- class TimeConverter {
5
- static timeToDecimal(hours, minutes, seconds) {
6
- return hours + (minutes / 60) + (seconds / 3600);
7
- }
8
- static decimalToTime(decimal) {
9
- // Lógica para conversão de decimal para hora
10
- // Implementação para o modo inverso
11
- // const decimalValue = parseFloat(decimal);
12
- const totalHours = decimal;
13
- const wholeHours = Math.floor(totalHours);
14
- const decimalPart = totalHours - wholeHours;
15
- const mins = Math.floor(decimalPart * 60);
16
- const secs = Math.floor((decimalPart * 60 - mins) * 60);
17
- const hours = wholeHours;
18
- const minutes = mins;
19
- const seconds = secs;
20
- const formattedHours = hours.toString().padStart(2, '0');
21
- const formattedMinutes = minutes.toString().padStart(2, '0');
22
- const formattedSeconds = seconds.toString().padStart(2, '0');
23
- return `${formattedHours}:${formattedMinutes}:${formattedSeconds}`;
24
- }
25
- }
26
- exports.TimeConverter = TimeConverter;
27
- //# sourceMappingURL=time.converter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"time.converter.js","sourceRoot":"","sources":["../../../../../src/converters/unit-converter/services/time/time.converter.ts"],"names":[],"mappings":";;;AAAA,MAAa,aAAa;IACf,MAAM,CAAC,aAAa,CAAC,KAAa,EAAE,OAAe,EAAE,OAAe;QACvE,OAAO,KAAK,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IACrD,CAAC;IAEM,MAAM,CAAC,aAAa,CAAC,OAAe;QACvC,6CAA6C;QAC7C,oCAAoC;QACpC,4CAA4C;QAC5C,MAAM,UAAU,GAAG,OAAO,CAAC;QAE3B,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC1C,MAAM,WAAW,GAAG,UAAU,GAAG,UAAU,CAAC;QAE5C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAExD,MAAM,KAAK,GAAG,UAAU,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC;QACrB,MAAM,OAAO,GAAG,IAAI,CAAC;QAErB,MAAM,cAAc,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACzD,MAAM,gBAAgB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC7D,MAAM,gBAAgB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAE7D,OAAO,GAAG,cAAc,IAAI,gBAAgB,IAAI,gBAAgB,EAAE,CAAC;IACvE,CAAC;CACJ;AA3BD,sCA2BC"}