@develia/commons 0.3.19 → 0.3.21

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../../src/type.ts","../../src/pair.ts","../../src/utilities.ts","../../src/strings.ts","../../src/math.ts","../../src/cache-dictionary.ts","../../src/from.ts","../../src/timer.ts","../../src/timespan.ts","../../src/lazy.ts","../../src/array-manipulator.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.esm.js","sources":["../../src/typing.ts","../../src/pair.ts","../../src/utilities.ts","../../src/string.ts","../../src/math.ts","../../src/cache-dictionary.ts","../../src/from.ts","../../src/timer.ts","../../src/timespan.ts","../../src/lazy.ts","../../src/array-manipulator.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@develia/commons",
3
- "version": "0.3.19",
3
+ "version": "0.3.21",
4
4
  "author": {
5
5
  "name": "Antonio Gil Espinosa",
6
6
  "email": "antonio.gil.espinosa@gmail.com",
@@ -1,6 +1,11 @@
1
1
  import {Optional, Predicate, UnaryFunction} from "./types";
2
2
 
3
3
 
4
+ /**
5
+ * Represents a class for manipulating an array of items.
6
+ *
7
+ * @template T - The type of items in the array.
8
+ */
4
9
  export class ArrayManipulator<T> implements Iterable<T> {
5
10
 
6
11
  private readonly _array: T[];
@@ -13,6 +18,17 @@ export class ArrayManipulator<T> implements Iterable<T> {
13
18
  return this._array[Symbol.iterator]();
14
19
  }
15
20
 
21
+ /**
22
+ * Retrieves or sets the value at the specified index in the array.
23
+ * If `item` is not provided, returns the value at index `n`.
24
+ * If `item` is provided, sets the value at index `n` to the provided value.
25
+ *
26
+ * @param {number} n - The index at which to retrieve or set the value.
27
+ * @param {T | undefined} [item] - The value to set at index `n`, if provided.
28
+ *
29
+ * @return {T | void} - If `item` is not provided, returns the value at index `n`.
30
+ * - If `item` is provided, does not return anything.
31
+ */
16
32
  public at(n: number, item: Optional<T> = undefined): T | void {
17
33
  if (item === undefined)
18
34
  return this._array[n];
@@ -21,6 +37,12 @@ export class ArrayManipulator<T> implements Iterable<T> {
21
37
  }
22
38
 
23
39
 
40
+ /**
41
+ * Removes the specified item from the array.
42
+ *
43
+ * @param {T} item - The item to be removed.
44
+ * @returns {ArrayManipulator<T>} - The updated ArrayManipulator instance.
45
+ */
24
46
  public remove(item: T): ArrayManipulator<T> {
25
47
  const index = this._array.indexOf(item);
26
48
  if (index !== -1) {
@@ -30,6 +52,12 @@ export class ArrayManipulator<T> implements Iterable<T> {
30
52
  return this;
31
53
  }
32
54
 
55
+ /**
56
+ * Applies a mapping function to each element in the array, transforming it into a new array.
57
+ * @template R
58
+ * @param {UnaryFunction<T, R>} mapFn - The function to be applied to each element.
59
+ * @return {ArrayManipulator<R>} - The new ArrayManipulator instance with the mapped elements.
60
+ */
33
61
  public map<R>(mapFn: UnaryFunction<T, R>): ArrayManipulator<R> {
34
62
  for (let i = 0; i < this._array.length; i++) {
35
63
  this._array[i] = mapFn(this._array[i]) as unknown as T;
@@ -37,6 +65,13 @@ export class ArrayManipulator<T> implements Iterable<T> {
37
65
  return this as unknown as ArrayManipulator<R>;
38
66
  }
39
67
 
68
+ /**
69
+ * Filters the elements of the array based on a given filter function.
70
+ * The filter function should return a boolean value, indicating whether the element should be included in the filtered array or not.
71
+ *
72
+ * @param {Predicate<T>} filterFn - The function that will be used to filter the elements. It should accept an element of type T and return a boolean value.
73
+ * @returns {ArrayManipulator<T>} - The filtered ArrayManipulator instance with the elements that passed the filter.
74
+ */
40
75
  public filter(filterFn: Predicate<T>): ArrayManipulator<T> {
41
76
  for (let i = 0; i < this._array.length; i++) {
42
77
  if (!filterFn(this._array[i])) {
@@ -84,11 +119,23 @@ export class ArrayManipulator<T> implements Iterable<T> {
84
119
  return this;
85
120
  }
86
121
 
122
+ /**
123
+ * Appends one or more items to the array.
124
+ *
125
+ * @param {...T} items - The items to be appended to the array.
126
+ * @return {ArrayManipulator<T>} - The ArrayManipulator instance.
127
+ */
87
128
  public append(...items: T[]): ArrayManipulator<T> {
88
129
  this._array.push(...items);
89
130
  return this;
90
131
  }
91
132
 
133
+ /**
134
+ * Prepend items to the beginning of the array.
135
+ *
136
+ * @param {...T} items - The items to be prepended.
137
+ * @return {ArrayManipulator<T>} The ArrayManipulator instance.
138
+ */
92
139
  public prepend(...items: T[]): ArrayManipulator<T> {
93
140
  this._array.unshift(...items);
94
141
  return this;
@@ -99,6 +146,12 @@ export class ArrayManipulator<T> implements Iterable<T> {
99
146
  }
100
147
  }
101
148
 
149
+ /**
150
+ * Creates an instance of ArrayManipulator with the given array.
151
+ * @template T
152
+ * @param {T[]} array - The input array.
153
+ * @return {ArrayManipulator<T>} - An instance of the ArrayManipulator class.
154
+ */
102
155
  export default function array<T>(array: T[]): ArrayManipulator<T> {
103
156
  return new ArrayManipulator(array);
104
157
  }
package/src/from.ts CHANGED
@@ -1,4 +1,4 @@
1
- import {Consumer, EqualityComparer, UnaryFunction, Predicate, Provider} from "./types";
1
+ import {Consumer, EqualityComparer, UnaryFunction, Predicate, Provider, Optional, Nullable} from "./types";
2
2
  import {toPairs} from "./utilities";
3
3
  import Pair from "./pair";
4
4
 
@@ -88,15 +88,32 @@ export class From<T> implements Iterable<T> {
88
88
  return true;
89
89
  }
90
90
 
91
- public any(predicate: Predicate<T>): boolean {
91
+ public any(predicate: Optional<Predicate<T>> = undefined): boolean {
92
92
  for (let item of this) {
93
- if (predicate(item)) {
93
+ if (predicate == null || predicate(item)) {
94
94
  return true;
95
95
  }
96
96
  }
97
97
  return false;
98
98
  }
99
99
 
100
+ public get length(): number {
101
+ return this.count();
102
+ }
103
+
104
+ public count(predicate: Optional<Predicate<T>> = undefined): number {
105
+
106
+ let output = 0;
107
+
108
+ for (let item of this) {
109
+ if (predicate == null || predicate(item)) {
110
+ output++;
111
+ }
112
+ }
113
+
114
+ return output;
115
+ }
116
+
100
117
  public filter(predicate: Predicate<T>): From<T> {
101
118
  const self = this;
102
119
  return From.fn<T>(function* () {
package/src/index.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export * from './types';
2
- export {default as Type} from "./type";
2
+ export {Type} from "./typing";
3
3
  export * from './utilities';
4
- export * from './strings';
4
+ export * from './string';
5
5
  export * from './math';
6
6
  export {default as CacheDictionary} from './cache-dictionary';
7
7
  export {default as from, From} from './from';
package/src/lazy.ts CHANGED
@@ -1,7 +1,10 @@
1
- import {promisify} from "./utilities";
2
1
  import {Nullable, Provider} from "./types";
3
2
 
4
3
 
4
+ /**
5
+ * Represents a lazy value that is created only when it is accessed for the first time.
6
+ * @template T The type of the lazy value.
7
+ */
5
8
  export default class Lazy<T> {
6
9
  private _valueCreated = false;
7
10
  private _value: Nullable<T> = null;
@@ -15,9 +18,9 @@ export default class Lazy<T> {
15
18
  return this._valueCreated;
16
19
  }
17
20
 
18
- async getValue(): Promise<T> {
21
+ public get value(): T {
19
22
  if (!this._valueCreated) {
20
- this._value = await promisify(this._factoryMethod);
23
+ this._value = this._factoryMethod();
21
24
  this._valueCreated = true;
22
25
  }
23
26
  return this._value as T;
package/src/math.ts CHANGED
@@ -1,17 +1,27 @@
1
1
  /**
2
- * Linearly remaps a value from its source range [`inMin`, `inMax`] to the destination range [`outMin`, `outMax`]
2
+ * Linearly interpolates a number between two ranges.
3
3
  *
4
- * @category Math
5
- * @example
6
- * ```
7
- * const value = remap(0.5, 0, 1, 200, 400) // value will be 300
8
- * ```
4
+ * @param {number} n - The number to interpolate.
5
+ * @param {number} inMin - The minimum value of the input range.
6
+ * @param {number} inMax - The maximum value of the input range.
7
+ * @param {number} outMin - The minimum value of the output range.
8
+ * @param {number} outMax - The maximum value of the output range.
9
+ *
10
+ * @return {number} - The interpolated value.
9
11
  */
10
- export function lerp(n: number, inMin: number, inMax: number, outMin: number, outMax: number) {
12
+ export function lerp(n: number, inMin: number, inMax: number, outMin: number, outMax: number): number {
11
13
  return outMin + (outMax - outMin) * ((n - inMin) / (inMax - inMin))
12
14
  }
13
15
 
14
- export function clamp(n: number, min: number, max: number) {
16
+ /**
17
+ * Clamps a number between a minimum and maximum value.
18
+ *
19
+ * @param {number} n - The value to be clamped.
20
+ * @param {number} min - The minimum value.
21
+ * @param {number} max - The maximum value.
22
+ * @return {number} The clamped value.
23
+ */
24
+ export function clamp(n: number, min: number, max: number): number {
15
25
  if (n <= min)
16
26
  return min;
17
27
  if (n >= max)
package/src/pair.ts CHANGED
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Represents a pair of key and value.
3
+ *
4
+ * @template TKey The type of the key.
5
+ * @template TValue The type of the value.
6
+ */
1
7
  export default class Pair<TKey, TValue> {
2
8
  get value(): TValue {
3
9
  return this._value;
package/src/string.ts ADDED
@@ -0,0 +1,49 @@
1
+
2
+ /**
3
+ * Ensures that a given string has a specific prefix.
4
+ *
5
+ * @param {string} str - The string to ensure the prefix on.
6
+ * @param {string} prefix - The prefix to ensure on the string.
7
+ * @return {string} - The resulting string with the ensured prefix.
8
+ */
9
+ export function ensurePrefix(str: string, prefix: string) {
10
+ if (!str.startsWith(prefix))
11
+ return prefix + str
12
+ return str
13
+ }
14
+
15
+
16
+ /**
17
+ * Ensures that a string ends with a specified suffix.
18
+ *
19
+ * @param {string} str - The original string.
20
+ * @param {string} suffix - The suffix to ensure.
21
+ * @return {string} - The modified string with the suffix added if it was not already present.
22
+ */
23
+ export function ensureSuffix(str: string, suffix: string) {
24
+ if (!str.endsWith(suffix))
25
+ return str + suffix
26
+ return str
27
+ }
28
+
29
+ /**
30
+ * Formats a string using a template and provided arguments.
31
+ *
32
+ * @param {string} template - The template string containing placeholders.
33
+ * @param {any[]} args - Optional arguments to replace the placeholders in the template.
34
+ * @return {string} The formatted string.
35
+ */
36
+ export function format(template: string, ...args: any[]): string {
37
+
38
+ let regex: RegExp;
39
+ if (args.length === 1 && typeof args[0] === 'object') {
40
+ args = args[0];
41
+ regex = /{(.+?)}/g;
42
+ } else {
43
+ regex = /{(\d+?)}/g;
44
+ }
45
+
46
+ return template.replace(regex, (match, key) => {
47
+ return typeof args[key] !== 'undefined' ? args[key] : "";
48
+ });
49
+ }
package/src/timer.ts CHANGED
@@ -1,3 +1,6 @@
1
+ /**
2
+ * A class representing a timer that executes a callback function at a specified interval.
3
+ */
1
4
  export default class Timer {
2
5
 
3
6
  private _callback: () => void;
package/src/timespan.ts CHANGED
@@ -1,3 +1,6 @@
1
+ /**
2
+ * Represents a duration of time in milliseconds.
3
+ */
1
4
  export default class TimeSpan {
2
5
  public milliseconds: number;
3
6
 
@@ -1,3 +1,8 @@
1
+
2
+ /**
3
+ * Represents different types in JavaScript.
4
+ * @enum {string}
5
+ */
1
6
  export enum Type {
2
7
  Undefined = "undefined",
3
8
  Number = "number",
@@ -6,7 +11,7 @@ export enum Type {
6
11
  Object = "object",
7
12
  Function = "function",
8
13
  Symbol = "symbol",
9
- BigInt = "bigint"
14
+ BigInt = "bigint",
15
+ Null = "null"
10
16
  }
11
17
 
12
- export default Type;