adaptive-extender 0.8.1 → 0.8.2

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,5 @@
1
- ## 0.8.1 (28.11.2025)
2
- - Added [environment](./src/node/environment.ts) module.
1
+ ## 0.8.2 (29.11.2025)
2
+ - Added [reflect](./src/core/reflect.ts), [environment](./src/node/environment.ts) modules.
3
3
 
4
4
  ## 0.8.0 (03.11.2025)
5
5
  - Added missing documentation.
@@ -1,4 +1,12 @@
1
1
  declare global {
2
+ /**
3
+ * Exclude null from T
4
+ */
5
+ type NonNull<T> = T & ({} | undefined);
6
+ /**
7
+ * Exclude undefined from T
8
+ */
9
+ type NonUndefined<T> = T & ({} | null);
2
10
  /**
3
11
  * Returns the prototype of the given non-nullable value.
4
12
  * @param value The value whose prototype is to be retrieved. It cannot be null or undefined.
@@ -1 +1 @@
1
- {"version":3,"file":"global.js","sourceRoot":"","sources":["../../src/core/global.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAiBb,UAAU,CAAC,SAAS,GAAG,UAAa,KAAqB;IACxD,OAAO,KAAK,CAAC,WAAW,CAAC;AAC1B,CAAC,CAAC;AAEF,UAAU,CAAC,QAAQ,GAAG,UAAU,KAAU;IACzC,QAAQ,KAAK,EAAE,CAAC;QACf,KAAK,SAAS,CAAC,CAAC,OAAO,WAAW,CAAC;QACnC,KAAK,IAAI,CAAC,CAAC,OAAO,MAAM,CAAC;QACzB,OAAO,CAAC,CAAC,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;IACvC,CAAC;AACF,CAAC,CAAC;AACF,YAAY;AAEZ,OAAO,EAAG,CAAC"}
1
+ {"version":3,"file":"global.js","sourceRoot":"","sources":["../../src/core/global.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AA4Bb,UAAU,CAAC,SAAS,GAAG,UAAa,KAAqB;IACxD,OAAO,KAAK,CAAC,WAAW,CAAC;AAC1B,CAAC,CAAC;AAEF,UAAU,CAAC,QAAQ,GAAG,UAAU,KAAU;IACzC,QAAQ,KAAK,EAAE,CAAC;QACf,KAAK,SAAS,CAAC,CAAC,OAAO,WAAW,CAAC;QACnC,KAAK,IAAI,CAAC,CAAC,OAAO,MAAM,CAAC;QACzB,OAAO,CAAC,CAAC,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;IACvC,CAAC;AACF,CAAC,CAAC;AACF,YAAY;AAEZ,OAAO,EAAG,CAAC"}
@@ -7,6 +7,7 @@ export * from "./date.js";
7
7
  export * from "./math.js";
8
8
  export * from "./array.js";
9
9
  export * from "./object.js";
10
+ export * from "./reflect.js";
10
11
  export * from "./archivable.js";
11
12
  export * from "./error.js";
12
13
  export * from "./promise.js";
@@ -8,6 +8,7 @@ export * from "./date.js";
8
8
  export * from "./math.js";
9
9
  export * from "./array.js";
10
10
  export * from "./object.js";
11
+ export * from "./reflect.js";
11
12
  export * from "./archivable.js";
12
13
  export * from "./error.js";
13
14
  export * from "./promise.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC"}
@@ -8,13 +8,6 @@ declare global {
8
8
  * @throws {TypeError} If the source is not an object or null.
9
9
  */
10
10
  import(source: any, name?: string): object;
11
- /**
12
- * Applies a callback function to a non-nullable value, or returns the original nullable value.
13
- * @param value The value to map.
14
- * @param callback The function to apply if the value is non-nullable.
15
- * @returns The mapped result.
16
- */
17
- map<T, N extends Exclude<T, NonNullable<T>>, R>(value: NonNullable<T> | N, callback: (object: NonNullable<T>) => R): R | N;
18
11
  }
19
12
  }
20
13
  export {};
@@ -4,12 +4,6 @@ Object.import = function (source, name = "[source]") {
4
4
  throw new TypeError(`Unable to import object from ${name} due its ${typename(source)} type`);
5
5
  return source;
6
6
  };
7
- Object.map = function (value, callback) {
8
- if (value === null || value === undefined)
9
- return value;
10
- else
11
- return callback(value);
12
- };
13
7
  //#endregion
14
8
  export {};
15
9
  //# sourceMappingURL=object.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"object.js","sourceRoot":"","sources":["../../src/core/object.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAuBb,MAAM,CAAC,MAAM,GAAG,UAAU,MAAW,EAAE,OAAe,UAAU;IAC/D,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI;QAAE,MAAM,IAAI,SAAS,CAAC,gCAAgC,IAAI,YAAY,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAClJ,OAAO,MAAM,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,CAAC,GAAG,GAAG,UAAmB,KAAyB,EAAE,QAAuC;IACjG,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;;QACnD,OAAO,QAAQ,CAAC,KAAuB,CAAC,CAAC;AAC/C,CAAC,CAAC;AACF,YAAY;AAEZ,OAAO,EAAG,CAAC"}
1
+ {"version":3,"file":"object.js","sourceRoot":"","sources":["../../src/core/object.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAgBb,MAAM,CAAC,MAAM,GAAG,UAAU,MAAW,EAAE,OAAe,UAAU;IAC/D,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI;QAAE,MAAM,IAAI,SAAS,CAAC,gCAAgC,IAAI,YAAY,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAClJ,OAAO,MAAM,CAAC;AACf,CAAC,CAAC;AACF,YAAY;AAEZ,OAAO,EAAG,CAAC"}
@@ -0,0 +1,26 @@
1
+ declare global {
2
+ namespace Reflect {
3
+ /**
4
+ * Applies a callback function to a non-null value, or returns the original null value.
5
+ * @param value The value to map.
6
+ * @param callback The function to apply if the value is non-null.
7
+ * @returns The mapped result.
8
+ */
9
+ function mapNull<T, N extends Exclude<T, NonNull<T>>, R>(value: NonNull<T> | N, callback: (value: NonNull<T>) => R): R | N;
10
+ /**
11
+ * Applies a callback function to a non-undefined value, or returns the original undefined value.
12
+ * @param value The value to map.
13
+ * @param callback The function to apply if the value is non-undefined.
14
+ * @returns The mapped result.
15
+ */
16
+ function mapUndefined<T, N extends Exclude<T, NonUndefined<T>>, R>(value: NonUndefined<T> | N, callback: (value: NonUndefined<T>) => R): R | N;
17
+ /**
18
+ * Applies a callback function to a non-nullable value, or returns the original nullable value.
19
+ * @param value The value to map.
20
+ * @param callback The function to apply if the value is non-nullable.
21
+ * @returns The mapped result.
22
+ */
23
+ function mapNullable<T, N extends Exclude<T, NonNullable<T>>, R>(value: NonNullable<T> | N, callback: (object: NonNullable<T>) => R): R | N;
24
+ }
25
+ }
26
+ export {};
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Reflect.mapNull = function (value, callback) {
3
+ if (value === null)
4
+ return value;
5
+ return callback(value);
6
+ };
7
+ Reflect.mapUndefined = function (value, callback) {
8
+ if (value === undefined)
9
+ return value;
10
+ return callback(value);
11
+ };
12
+ Reflect.mapNullable = function (value, callback) {
13
+ if (value === null || value === undefined)
14
+ return value;
15
+ return callback(value);
16
+ };
17
+ //#endregion
18
+ export {};
19
+ //# sourceMappingURL=reflect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reflect.js","sourceRoot":"","sources":["../../src/core/reflect.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AA6Bb,OAAO,CAAC,OAAO,GAAG,UAAkD,KAAqB,EAAE,QAAkC;IAC5H,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACjC,OAAO,QAAQ,CAAC,KAAK,CAAe,CAAC;AACtC,CAAC,CAAC;AAEF,OAAO,CAAC,YAAY,GAAG,UAAuD,KAA0B,EAAE,QAAuC;IAChJ,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACtC,OAAO,QAAQ,CAAC,KAAK,CAAoB,CAAC;AAC3C,CAAC,CAAC;AAEF,OAAO,CAAC,WAAW,GAAG,UAAsD,KAAyB,EAAE,QAAsC;IAC5I,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACxD,OAAO,QAAQ,CAAC,KAAK,CAAmB,CAAC;AAC1C,CAAC,CAAC;AACF,YAAY;AAEZ,OAAO,EAAG,CAAC"}
@@ -1,8 +1,21 @@
1
1
  import "../core/index.js";
2
2
  import "dotenv/config";
3
+ /**
4
+ * Represents the system environment and provides utility methods to access environment variables.
5
+ */
3
6
  declare class Environment {
7
+ /**
8
+ * Retrieves a new instance of the Environment class.
9
+ */
4
10
  static get env(): Environment;
11
+ /**
12
+ * Checks if a specific key exists within the environment variables.
13
+ */
5
14
  hasValue(key: string): boolean;
15
+ /**
16
+ * Reads and parses the value of a specific environment variable.
17
+ * @throws {ReferenceError} if the key is missing.
18
+ */
6
19
  readValue(key: string): any;
7
20
  }
8
21
  export { Environment };
@@ -2,14 +2,27 @@
2
2
  import "../core/index.js";
3
3
  import "dotenv/config";
4
4
  //#region Environment
5
+ /**
6
+ * Represents the system environment and provides utility methods to access environment variables.
7
+ */
5
8
  class Environment {
9
+ /**
10
+ * Retrieves a new instance of the Environment class.
11
+ */
6
12
  static get env() {
7
13
  return new Environment();
8
14
  }
15
+ /**
16
+ * Checks if a specific key exists within the environment variables.
17
+ */
9
18
  hasValue(key) {
10
19
  const { env } = process;
11
20
  return (env[key] !== undefined);
12
21
  }
22
+ /**
23
+ * Reads and parses the value of a specific environment variable.
24
+ * @throws {ReferenceError} if the key is missing.
25
+ */
13
26
  readValue(key) {
14
27
  const { env } = process;
15
28
  const text = ReferenceError.suppress(env[key], `Key '${key}' at environment not registered`);
@@ -1 +1 @@
1
- {"version":3,"file":"environment.js","sourceRoot":"","sources":["../../src/node/environment.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,kBAAkB,CAAC;AAC1B,OAAO,eAAe,CAAC;AAEvB,qBAAqB;AACrB,MAAM,WAAW;IAChB,MAAM,KAAK,GAAG;QACb,OAAO,IAAI,WAAW,EAAE,CAAC;IAC1B,CAAC;IAED,QAAQ,CAAC,GAAW;QACnB,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC;IACjC,CAAC;IAED,SAAS,CAAC,GAAW;QACpB,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;QACxB,MAAM,IAAI,GAAG,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,QAAQ,GAAG,iCAAiC,CAAC,CAAC;QAC7F,IAAI,CAAC;YACJ,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;QAAC,MAAM,CAAC;YACR,OAAO,IAAI,CAAC;QACb,CAAC;IACF,CAAC;CACD;AACD,YAAY;AAEZ,OAAO,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"environment.js","sourceRoot":"","sources":["../../src/node/environment.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,kBAAkB,CAAC;AAC1B,OAAO,eAAe,CAAC;AAEvB,qBAAqB;AACrB;;GAEG;AACH,MAAM,WAAW;IAChB;;OAEG;IACH,MAAM,KAAK,GAAG;QACb,OAAO,IAAI,WAAW,EAAE,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,GAAW;QACnB,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC;IACjC,CAAC;IAED;;;OAGG;IACH,SAAS,CAAC,GAAW;QACpB,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;QACxB,MAAM,IAAI,GAAG,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,QAAQ,GAAG,iCAAiC,CAAC,CAAC;QAC7F,IAAI,CAAC;YACJ,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;QAAC,MAAM,CAAC;YACR,OAAO,IAAI,CAAC;QACb,CAAC;IACF,CAAC;CACD;AACD,YAAY;AAEZ,OAAO,EAAE,WAAW,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "adaptive-extender",
3
- "version": "0.8.1",
3
+ "version": "0.8.2",
4
4
  "description": "Adaptive library for JS/TS development environments",
5
5
  "type": "module",
6
6
  "main": "./dist/core/index.js",