prototype-helper 0.4.2 → 1.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 (62) hide show
  1. package/.vscode/settings.json +7 -7
  2. package/LICENSE +21 -21
  3. package/README.md +701 -686
  4. package/biome.json +43 -0
  5. package/dist/extension/array.test.d.ts +1 -0
  6. package/dist/extension/object.d.ts +6 -0
  7. package/dist/index.js +8 -10
  8. package/dist/interface/array.d.ts +5 -4
  9. package/dist/interface/number.d.ts +3 -3
  10. package/dist/interface/string.d.ts +2 -2
  11. package/dist/override/math.d.ts +7 -1
  12. package/dist/utils/binarySearch.d.ts +4 -0
  13. package/dist/utils/mostFrequent.d.ts +4 -0
  14. package/lint-result.txt +496 -0
  15. package/package.json +12 -48
  16. package/tsconfig.json +33 -48
  17. package/dist/extension/array.js +0 -118
  18. package/dist/extension/array.js.map +0 -1
  19. package/dist/extension/array.test.js +0 -238
  20. package/dist/extension/array.test.js.map +0 -1
  21. package/dist/extension/index.js +0 -7
  22. package/dist/extension/index.js.map +0 -1
  23. package/dist/extension/number.js +0 -96
  24. package/dist/extension/number.js.map +0 -1
  25. package/dist/extension/number.test.js +0 -234
  26. package/dist/extension/number.test.js.map +0 -1
  27. package/dist/extension/object.js +0 -13
  28. package/dist/extension/object.js.map +0 -1
  29. package/dist/extension/string.js +0 -59
  30. package/dist/extension/string.js.map +0 -1
  31. package/dist/extension/string.test.js +0 -116
  32. package/dist/extension/string.test.js.map +0 -1
  33. package/dist/index.js.map +0 -1
  34. package/dist/interface/array.js +0 -2
  35. package/dist/interface/array.js.map +0 -1
  36. package/dist/interface/index.js +0 -6
  37. package/dist/interface/index.js.map +0 -1
  38. package/dist/interface/number.js +0 -3
  39. package/dist/interface/number.js.map +0 -1
  40. package/dist/interface/object.js +0 -6
  41. package/dist/interface/object.js.map +0 -1
  42. package/dist/interface/string.js +0 -2
  43. package/dist/interface/string.js.map +0 -1
  44. package/dist/override/console.js +0 -71
  45. package/dist/override/console.js.map +0 -1
  46. package/dist/override/index.js +0 -6
  47. package/dist/override/index.js.map +0 -1
  48. package/dist/override/linq.d.ts +0 -1
  49. package/dist/override/linq.js +0 -3
  50. package/dist/override/linq.js.map +0 -1
  51. package/dist/override/math.js +0 -24
  52. package/dist/override/math.js.map +0 -1
  53. package/dist/test.js +0 -123
  54. package/dist/test.js.map +0 -1
  55. package/dist/utils/deepCopy.d.ts +0 -2
  56. package/dist/utils/deepCopy.js +0 -14
  57. package/dist/utils/deepCopy.js.map +0 -1
  58. package/dist/utils/math.js +0 -21
  59. package/dist/utils/math.js.map +0 -1
  60. package/dist/utils/valid.js +0 -14
  61. package/dist/utils/valid.js.map +0 -1
  62. package/yarn-error.log +0 -4329
@@ -1,118 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const deep_clone_1 = __importDefault(require("deep-clone"));
7
- Array.prototype.where = function (predicate) {
8
- return this.filter(predicate);
9
- };
10
- Array.prototype.singleOrDefault = function (predicate, defaultValue = null) {
11
- const isset = this.where(predicate);
12
- if (isset.length >= 2)
13
- throw new Error("single:sequence contains more than one element.");
14
- return isset.length ? isset[0] : defaultValue;
15
- };
16
- Array.prototype.single = function (predicate) {
17
- const isset = this.singleOrDefault(predicate);
18
- if (!isset)
19
- throw new Error("single:No element satisfies the condition.");
20
- return isset;
21
- };
22
- Array.prototype.skip = function (count) {
23
- return this.slice(count, this.length);
24
- };
25
- Array.prototype.take = function (count) {
26
- return this.slice(0, count);
27
- };
28
- Array.prototype.select = function (element) {
29
- return this.map(element);
30
- };
31
- Array.prototype.any = function (predicate) {
32
- let list = this;
33
- if (predicate)
34
- return this.singleOrDefault(predicate) ? true : false;
35
- else
36
- return list.length ? true : false;
37
- // if (!predicate) predicate = () => true;
38
- // return this.singleOrDefault(predicate) ? true : false;
39
- };
40
- Array.prototype.count = function (predicate) {
41
- let list = this;
42
- if (predicate)
43
- list = this.where(predicate);
44
- return list.length;
45
- };
46
- Array.prototype.max = function (predicate) {
47
- let list = this;
48
- if (predicate)
49
- list = this.where(predicate);
50
- return list.reduce((a, b) => {
51
- return a > b ? a : b;
52
- });
53
- };
54
- Array.prototype.min = function (predicate) {
55
- let list = this;
56
- if (predicate)
57
- list = this.where(predicate);
58
- return list.reduce((a, b) => {
59
- return a < b ? a : b;
60
- });
61
- };
62
- Array.prototype.sum = function (predicate) {
63
- let list = this;
64
- if (predicate)
65
- list = this.where(predicate);
66
- return list.reduce((a, b) => {
67
- return a + b;
68
- }, 0);
69
- };
70
- Array.prototype.firstOrDefault = function (predicate, defaultValue = null) {
71
- if (predicate == null)
72
- predicate = () => true;
73
- const isset = this.where(predicate);
74
- return isset == null || isset.length == 0 ? defaultValue : isset[0];
75
- };
76
- Array.prototype.first = function (predicate) {
77
- if (predicate == null)
78
- predicate = () => true;
79
- const isset = this.firstOrDefault(predicate);
80
- if (isset == null)
81
- throw new Error("first:No element satisfies the condition.");
82
- return isset;
83
- };
84
- Array.prototype.lastOrDefault = function (predicate, defaultValue = null) {
85
- if (predicate == null)
86
- predicate = () => true;
87
- const isset = this.where(predicate);
88
- return isset == null || isset.length == 0 ? defaultValue : isset[isset.length - 1];
89
- };
90
- Array.prototype.last = function (predicate) {
91
- if (predicate == null)
92
- predicate = () => true;
93
- const isset = this.lastOrDefault(predicate);
94
- if (isset == null)
95
- throw new Error("last:No element satisfies the condition.");
96
- return isset;
97
- };
98
- Array.prototype.diff = function (other) {
99
- return this.filter((x) => !other.includes(x));
100
- };
101
- Array.prototype.inter = function (other) {
102
- return this.where((x) => other.includes(x));
103
- };
104
- // Array.prototype.deepClone = function (camelcase: boolean = false) {
105
- // return deepClone(this, camelcase ? camelCase : undefined);
106
- // }
107
- if (!Array.prototype._deepCopy) {
108
- Array.prototype._deepCopy = function () {
109
- return (0, deep_clone_1.default)(this);
110
- };
111
- }
112
- if (!Array.prototype._toJson) {
113
- Array.prototype._toJson = function () {
114
- return JSON.stringify(this);
115
- };
116
- }
117
- ;
118
- //# sourceMappingURL=array.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"array.js","sourceRoot":"","sources":["../../src/extension/array.ts"],"names":[],"mappings":"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"}
@@ -1,238 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- require("../override/math");
4
- require("./string");
5
- require("./number");
6
- require("./array");
7
- describe("Array.prototype.where", () => {
8
- it("should filter the array according to the predicate function", () => {
9
- const arr = [1, 2, 3, 4, 5];
10
- const result = arr.where(x => x % 2 === 0);
11
- expect(result).toEqual([2, 4]);
12
- });
13
- });
14
- describe("Array.prototype.singleOrDefault", () => {
15
- it("should return the single element that satisfies the predicate function", () => {
16
- const arr = [1, 2, 3, 4, 5];
17
- const result = arr.singleOrDefault(x => x === 3);
18
- expect(result).toBe(3);
19
- });
20
- it("should return the defaultValue if no element satisfies the predicate function", () => {
21
- const arr = [1, 2, 3, 4, 5];
22
- const result = arr.singleOrDefault(x => x === 6, "default");
23
- expect(result).toBe("default");
24
- });
25
- it("should throw an error if multiple elements satisfy the predicate function", () => {
26
- const arr = [1, 2, 3, 2, 5];
27
- expect(() => {
28
- arr.singleOrDefault(x => x === 2);
29
- }).toThrowError("single:sequence contains more than one element.");
30
- });
31
- });
32
- describe("Array.prototype.single", () => {
33
- it("should return the single element that satisfies the predicate function", () => {
34
- const arr = [1, 2, 3, 4, 5];
35
- const result = arr.single(x => x === 3);
36
- expect(result).toBe(3);
37
- });
38
- it("should throw an error if no element satisfies the predicate function", () => {
39
- const arr = [1, 2, 3, 4, 5];
40
- expect(() => {
41
- arr.single(x => x === 6);
42
- }).toThrowError("single:No element satisfies the condition.");
43
- });
44
- it("should throw an error if multiple elements satisfy the predicate function", () => {
45
- const arr = [1, 2, 3, 2, 5];
46
- expect(() => {
47
- arr.single(x => x === 2);
48
- }).toThrowError("single:sequence contains more than one element.");
49
- });
50
- });
51
- describe("Array.prototype.skip", () => {
52
- it("should skip the first n elements of the array", () => {
53
- const arr = [1, 2, 3, 4, 5];
54
- const result = arr.skip(2);
55
- expect(result).toEqual([3, 4, 5]);
56
- });
57
- });
58
- describe("Array.prototype.take", () => {
59
- it("should take the first n elements of the array", () => {
60
- const arr = [1, 2, 3, 4, 5];
61
- const result = arr.take(3);
62
- expect(result).toEqual([1, 2, 3]);
63
- });
64
- });
65
- describe("Array.prototype.select", () => {
66
- it("should select a new array with the given function applied to each element", () => {
67
- const arr = [1, 2, 3, 4, 5];
68
- const result = arr.select(x => x * 2);
69
- expect(result).toEqual([2, 4, 6, 8, 10]);
70
- });
71
- });
72
- describe("Array.prototype.any", () => {
73
- it("should return true if any element satisfies the predicate function", () => {
74
- const arr = [1, 2, 3, 4, 5];
75
- const result = arr.any(x => x === 3);
76
- expect(result).toBe(true);
77
- });
78
- it("should return false if no element satisfies the predicate function", () => {
79
- const arr = [1, 2, 3, 4, 5];
80
- const result = arr.any(x => x === 6);
81
- expect(result).toBe(false);
82
- });
83
- it("should return true if no predicate function is given and the array has at least one element", () => {
84
- const arr = [1, 2, 3, 4, 5];
85
- const result = arr.any();
86
- expect(result).toBe(true);
87
- });
88
- it("should return false if no predicate function is given and the array is empty", () => {
89
- const arr = [];
90
- const result = arr.any();
91
- expect(result).toBe(false);
92
- });
93
- });
94
- describe("Array.prototype.count", () => {
95
- it("should count the number of elements in the array", () => {
96
- const arr = [1, 2, 3, 4, 5];
97
- const result = arr.count();
98
- expect(result).toBe(5);
99
- });
100
- it("should count the number of elements that satisfy the predicate function", () => {
101
- const arr = [1, 2, 3, 4, 5];
102
- const result = arr.count(x => x % 2 === 0);
103
- expect(result).toBe(2);
104
- });
105
- });
106
- describe("Array.prototype.max", () => {
107
- it("should return the maximum element in the array", () => {
108
- const arr = [1, 3, 5, 4, 2];
109
- const result = arr.max();
110
- expect(result).toBe(5);
111
- });
112
- it("should return the maximum element that satisfies the predicate function", () => {
113
- const arr = [1, 3, 5, 4, 2];
114
- const result = arr.max(x => x % 2 === 0);
115
- expect(result).toBe(4);
116
- });
117
- });
118
- describe("Array.prototype.min", () => {
119
- it("should return the minimum element in the array", () => {
120
- const arr = [1, 3, 5, 4, 2];
121
- const result = arr.min();
122
- expect(result).toBe(1);
123
- });
124
- it("should return the minimum element that satisfies the predicate function", () => {
125
- const arr = [1, 3, 5, 4, 2];
126
- const result = arr.min(x => x % 2 === 0);
127
- expect(result).toBe(2);
128
- });
129
- });
130
- describe("Array.prototype.sum", () => {
131
- it("should return the sum of all elements in the array", () => {
132
- const arr = [1, 2, 3, 4, 5];
133
- const result = arr.sum();
134
- expect(result).toBe(15);
135
- });
136
- it("should return the sum of all elements that satisfy the predicate function", () => {
137
- const arr = [1, 2, 3, 4, 5];
138
- const result = arr.sum(x => x % 2 === 0);
139
- expect(result).toBe(6);
140
- });
141
- });
142
- describe("Array.prototype.firstOrDefault", () => {
143
- it("should return the first element in the array", () => {
144
- const arr = [1, 2, 3, 4, 5];
145
- const result = arr.firstOrDefault();
146
- expect(result).toBe(1);
147
- });
148
- it("should return the first element that satisfies the predicate function", () => {
149
- const arr = [1, 2, 3, 4, 5];
150
- const result = arr.firstOrDefault(x => x % 2 === 0);
151
- expect(result).toBe(2);
152
- });
153
- it("should return the default value when no element satisfies the condition", () => {
154
- const arr = [1, 3, 5, 7, 9];
155
- const result = arr.firstOrDefault(x => x % 2 === 0, 0);
156
- expect(result).toBe(0);
157
- });
158
- });
159
- describe("Array.prototype.first", () => {
160
- it("should return the first element in the array", () => {
161
- const arr = [1, 2, 3, 4, 5];
162
- const result = arr.first();
163
- expect(result).toBe(1);
164
- });
165
- it("should return the first element that satisfies the predicate function", () => {
166
- const arr = [1, 2, 3, 4, 5];
167
- const result = arr.first(x => x % 2 === 0);
168
- expect(result).toBe(2);
169
- });
170
- it("should throw an exception when no element satisfies the condition", () => {
171
- const arr = [1, 3, 5, 7, 9];
172
- expect(() => {
173
- arr.first(x => x % 2 === 0);
174
- }).toThrowError("first:No element satisfies the condition.");
175
- });
176
- });
177
- describe("Array.prototype.lastOrDefault", () => {
178
- it("should return the last element in the array", () => {
179
- const arr = [1, 2, 3, 4, 5];
180
- const result = arr.lastOrDefault();
181
- expect(result).toBe(5);
182
- });
183
- it("should return the last element that satisfies the predicate function", () => {
184
- const arr = [1, 2, 3, 4, 5];
185
- const result = arr.lastOrDefault(x => x % 2 === 0);
186
- expect(result).toBe(4);
187
- });
188
- it("should return the default value when no element satisfies the condition", () => {
189
- const arr = [1, 3, 5, 7, 9];
190
- const result = arr.lastOrDefault(x => x % 2 === 0, 0);
191
- expect(result).toBe(0);
192
- });
193
- });
194
- describe("Array.prototype.last", () => {
195
- it("should return the last element in the array", () => {
196
- const arr = [1, 2, 3, 4, 5];
197
- const result = arr.last();
198
- expect(result).toBe(5);
199
- });
200
- it("should return the last element that satisfies the predicate function", () => {
201
- const arr = [1, 2, 3, 4, 5];
202
- const result = arr.last(x => x % 2 === 0);
203
- expect(result).toBe(4);
204
- });
205
- it("should throw an exception when no element satisfies the condition", () => {
206
- const arr = [1, 3, 5, 7, 9];
207
- expect(() => {
208
- arr.last(x => x % 2 === 0);
209
- }).toThrowError("last:No element satisfies the condition.");
210
- });
211
- });
212
- describe("Array.prototype.diff", () => {
213
- it("should return an empty array when other is undefined", () => {
214
- const arr = [1, 2, 3, 4, 5];
215
- const result = arr.diff([1, 5, 6]);
216
- expect(result).toEqual([2, 3, 4]);
217
- });
218
- it("should return an array of elements that are not in other", () => {
219
- const arr = [1, 2, 3, 4, 5];
220
- const other = [3, 4, 5, 6, 7];
221
- const result = arr.diff(other);
222
- expect(result).toEqual([1, 2]);
223
- });
224
- });
225
- describe("Array.prototype.inter", () => {
226
- it("should return an empty array when other is undefined", () => {
227
- const arr = [1, 2, 3, 4, 5];
228
- const result = arr.inter([1, 3, 5, 6]);
229
- expect(result).toEqual([1, 3, 5]);
230
- });
231
- it("should return an array of elements that are in both arrays", () => {
232
- const arr = [1, 2, 3, 4, 5];
233
- const other = [3, 4, 5, 6, 7];
234
- const result = arr.inter(other);
235
- expect(result).toEqual([3, 4, 5]);
236
- });
237
- });
238
- //# sourceMappingURL=array.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"array.test.js","sourceRoot":"","sources":["../../src/extension/array.test.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- require("./number");
4
- require("./string");
5
- require("./array");
6
- require("./object");
7
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/extension/index.ts"],"names":[],"mappings":";;AAAA,oBAAkB;AAClB,oBAAkB;AAClB,mBAAiB;AACjB,oBAAkB"}
@@ -1,96 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- const decimal_js_1 = __importStar(require("decimal.js"));
27
- Number.prototype.toNumber = function () {
28
- return Number(this);
29
- };
30
- Number.prototype.toDecimal = function () {
31
- return new decimal_js_1.Decimal(this.toNumber());
32
- };
33
- Number.prototype.toComma = function () {
34
- if (`${this}`.length == 0)
35
- return "0";
36
- return `${new decimal_js_1.default(Number(this)).toString()}`.toComma();
37
- };
38
- Number.prototype.mod = function (amp) {
39
- return decimal_js_1.default.mod(Number(this), amp).toNumber();
40
- };
41
- Number.prototype.div = function (value) {
42
- return decimal_js_1.default.div(Number(this), value).toNumber();
43
- };
44
- Number.prototype.mul = function (value) {
45
- return decimal_js_1.default.mul(Number(this), value).toNumber();
46
- };
47
- Number.prototype.add = function (value) {
48
- return decimal_js_1.default.add(Number(this), value).toNumber();
49
- };
50
- Number.prototype.sub = function (value) {
51
- return decimal_js_1.default.sub(Number(this), value).toNumber();
52
- };
53
- Number.prototype.pow = function (value) {
54
- return decimal_js_1.default.pow(Number(this), value).toNumber();
55
- };
56
- Number.prototype.normalize = function () {
57
- return Number(this).pow(2);
58
- // return Math.pow(Number(this), 2);
59
- };
60
- Number.prototype.fixNumber = function (length = 8) {
61
- return `${this}`.fixNumber(length);
62
- };
63
- Number.prototype.fixPoint = function (length = 0) {
64
- return `${this}`.fixPoint(length);
65
- };
66
- Number.prototype.abs = function () {
67
- return this.toDecimal().abs().toNumber();
68
- };
69
- Number.prototype.isFinite = function () {
70
- return this.toDecimal().isFinite();
71
- };
72
- Number.prototype.isNaN = function () {
73
- return this.toDecimal().isNaN();
74
- };
75
- Number.prototype.isInteger = function () {
76
- return this.toDecimal().isInteger();
77
- };
78
- Number.prototype.addSymbol = function (space = "") {
79
- return `${Number(this) > 0 ? "+" : Number(this) < 0 ? "-" : ""}${space}${Math.abs(Number(this))}`;
80
- };
81
- Number.prototype.fromPer = function (per) {
82
- return (Number(this) / 100) * per;
83
- };
84
- Number.prototype.toPer = function (val) {
85
- return (Number(this) / val) * 100;
86
- };
87
- Number.prototype.ceil = function (point = 0) {
88
- return Math.ceil10(Number(this), point);
89
- };
90
- Number.prototype.floor = function (point = 0) {
91
- return Math.floor10(Number(this), point);
92
- };
93
- Number.prototype.round = function (point = 0) {
94
- return Math.round10(Number(this), point);
95
- };
96
- //# sourceMappingURL=number.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"number.js","sourceRoot":"","sources":["../../src/extension/number.ts"],"names":[],"mappings":"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"}