opticore-env-access 1.0.7 → 1.0.9
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/dist/domains/environnement/access.env.d.ts +2 -0
- package/dist/domains/environnement/access.env.js +52 -0
- package/dist/index.cjs +52 -8
- package/dist/index.d.cts +31 -2
- package/dist/index.d.ts +31 -2
- package/dist/index.js +50 -7
- package/package.json +1 -1
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { envPathConfig } from "@OptiCore-env-access/config/envPath.config";
|
|
2
|
+
export const getEnvironmentValue = (envDir) => {
|
|
3
|
+
const envPath = envPathConfig(envDir);
|
|
4
|
+
const parseBoolean = (value) => {
|
|
5
|
+
return value?.toLowerCase() === "true";
|
|
6
|
+
};
|
|
7
|
+
const parseNumber = (value, defaultValue = 0) => {
|
|
8
|
+
const num = Number(value);
|
|
9
|
+
return isNaN(num) ? defaultValue : num;
|
|
10
|
+
};
|
|
11
|
+
const parseStringArray = (value, separator = ",") => {
|
|
12
|
+
if (!value || value.trim() === '') {
|
|
13
|
+
return [];
|
|
14
|
+
}
|
|
15
|
+
return value.split(separator).map((item) => item.trim()).filter((item) => item.length > 0);
|
|
16
|
+
};
|
|
17
|
+
return {
|
|
18
|
+
apiVersion: String(envPath.parsed?.API_VERSION),
|
|
19
|
+
appHost: String(envPath.parsed?.APP_HOST),
|
|
20
|
+
appPort: String(envPath.parsed?.APP_PORT),
|
|
21
|
+
argumentsDatabaseConnection: String(envPath.parsed?.ARGUMENTS_DATABASE_CONNECTION),
|
|
22
|
+
devEnv: String(envPath.parsed?.ENV_DEV),
|
|
23
|
+
dataBaseHost: String(envPath.parsed?.DATA_BASE_HOST),
|
|
24
|
+
dataBasePort: String(envPath.parsed?.DATA_BASE_PORT),
|
|
25
|
+
dataBaseUser: String(envPath.parsed?.DATA_BASE_USER),
|
|
26
|
+
dataBasePassword: String(envPath.parsed?.DATA_BASE_PASSWORD),
|
|
27
|
+
dataBaseName: String(envPath.parsed?.DATA_BASE_NAME),
|
|
28
|
+
defaultLocal: String(envPath.parsed?.DEFAULT_LOCAL_LANG),
|
|
29
|
+
protocolTransfert: String(envPath.parsed?.PROTOCOL_TRANSFERT),
|
|
30
|
+
logEnv: String(envPath.parsed?.LOG_ENVIRONMENT),
|
|
31
|
+
logFileMaxSize: Number(envPath.parsed?.LOG_ENVIRONMENT_FILE_MAX_SIZE),
|
|
32
|
+
logFileRotate: parseBoolean(envPath.parsed?.LOG_ENVIRONMENT_FILE_ROTATE),
|
|
33
|
+
logFileEnabled: parseBoolean(envPath.parsed?.LOG_ENVIRONMENT_FILE_ENABLED),
|
|
34
|
+
logRemoteEndPoint: String(envPath.parsed?.LOG_ENVIRONMENT_REMOTE_ENDPOINT),
|
|
35
|
+
logRemoteEnabled: parseBoolean(envPath.parsed?.LOG_ENVIRONMENT_REMOTE_ENABLED),
|
|
36
|
+
logConsoleEnabled: parseBoolean(envPath.parsed?.LOG_ENVIRONMENT_CONSOLE_ENABLED),
|
|
37
|
+
logLevelError: String(envPath.parsed?.LOG_ENVIRONMENT_LOG_LEVEL_ERROR),
|
|
38
|
+
logLevelInfo: String(envPath.parsed?.LOG_ENVIRONMENT_LOG_LEVEL_INFO),
|
|
39
|
+
logLevelSuccess: String(envPath.parsed?.LOG_ENVIRONMENT_LOG_LEVEL_SUCCESS),
|
|
40
|
+
logLevelWarning: String(envPath.parsed?.LOG_ENVIRONMENT_LOG_LEVEL_WARN),
|
|
41
|
+
logLevelDebug: String(envPath.parsed?.LOG_ENVIRONMENT_LOG_LEVEL_DEBUG),
|
|
42
|
+
passwordField: String(envPath.parsed?.PASSWORD_FIELD),
|
|
43
|
+
prodEnv: String(envPath.parsed?.ENV_PROD),
|
|
44
|
+
usernameField: String(envPath.parsed?.USERNAME_FIELD),
|
|
45
|
+
hmrEnabled: parseBoolean(envPath.parsed?.HMR_ENABLED),
|
|
46
|
+
hmrWatchPatterns: parseStringArray(envPath.parsed?.HMR_WATCH_PATTERNS) || "src/**/*.ts,src/**/*.js,src/**/*.json,.env,config/*.json",
|
|
47
|
+
hmrIgnorePatterns: parseStringArray(envPath.parsed?.HMR_IGNORE_PATTERNS) || "node_modules/**,dist/**,build/**,*.log,coverage/**",
|
|
48
|
+
hmrDebounceMs: parseNumber(envPath.parsed?.HMR_DEBOUNCE_MS, 500) || 500,
|
|
49
|
+
hmrMaxRestarts: parseNumber(envPath.parsed?.HMR_MAX_RESTARTS, 5) || 5,
|
|
50
|
+
hmrAutoRestarts: parseBoolean(envPath.parsed?.HMR_AUTO_RESTART) || false
|
|
51
|
+
};
|
|
52
|
+
};
|
package/dist/index.cjs
CHANGED
|
@@ -30,7 +30,8 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
30
30
|
// src/index.ts
|
|
31
31
|
var index_exports = {};
|
|
32
32
|
__export(index_exports, {
|
|
33
|
-
|
|
33
|
+
Env: () => EnvironmentCore,
|
|
34
|
+
getEnvironmentValue: () => getEnvironmentValue
|
|
34
35
|
});
|
|
35
36
|
module.exports = __toCommonJS(index_exports);
|
|
36
37
|
|
|
@@ -73,8 +74,21 @@ var envPathConfig = (envDirPath) => {
|
|
|
73
74
|
};
|
|
74
75
|
|
|
75
76
|
// src/domains/environnement/access.env.ts
|
|
76
|
-
var
|
|
77
|
+
var getEnvironmentValue = (envDir) => {
|
|
77
78
|
const envPath = envPathConfig(envDir);
|
|
79
|
+
const parseBoolean = (value) => {
|
|
80
|
+
return value?.toLowerCase() === "true";
|
|
81
|
+
};
|
|
82
|
+
const parseNumber = (value, defaultValue = 0) => {
|
|
83
|
+
const num = Number(value);
|
|
84
|
+
return isNaN(num) ? defaultValue : num;
|
|
85
|
+
};
|
|
86
|
+
const parseStringArray = (value, separator = ",") => {
|
|
87
|
+
if (!value || value.trim() === "") {
|
|
88
|
+
return [];
|
|
89
|
+
}
|
|
90
|
+
return value.split(separator).map((item) => item.trim()).filter((item) => item.length > 0);
|
|
91
|
+
};
|
|
78
92
|
return {
|
|
79
93
|
apiVersion: String(envPath.parsed?.API_VERSION),
|
|
80
94
|
appHost: String(envPath.parsed?.APP_HOST),
|
|
@@ -90,11 +104,11 @@ var getEnvironnementValue = (envDir) => {
|
|
|
90
104
|
protocolTransfert: String(envPath.parsed?.PROTOCOL_TRANSFERT),
|
|
91
105
|
logEnv: String(envPath.parsed?.LOG_ENVIRONMENT),
|
|
92
106
|
logFileMaxSize: Number(envPath.parsed?.LOG_ENVIRONMENT_FILE_MAX_SIZE),
|
|
93
|
-
logFileRotate:
|
|
94
|
-
logFileEnabled:
|
|
107
|
+
logFileRotate: parseBoolean(envPath.parsed?.LOG_ENVIRONMENT_FILE_ROTATE),
|
|
108
|
+
logFileEnabled: parseBoolean(envPath.parsed?.LOG_ENVIRONMENT_FILE_ENABLED),
|
|
95
109
|
logRemoteEndPoint: String(envPath.parsed?.LOG_ENVIRONMENT_REMOTE_ENDPOINT),
|
|
96
|
-
logRemoteEnabled:
|
|
97
|
-
logConsoleEnabled:
|
|
110
|
+
logRemoteEnabled: parseBoolean(envPath.parsed?.LOG_ENVIRONMENT_REMOTE_ENABLED),
|
|
111
|
+
logConsoleEnabled: parseBoolean(envPath.parsed?.LOG_ENVIRONMENT_CONSOLE_ENABLED),
|
|
98
112
|
logLevelError: String(envPath.parsed?.LOG_ENVIRONMENT_LOG_LEVEL_ERROR),
|
|
99
113
|
logLevelInfo: String(envPath.parsed?.LOG_ENVIRONMENT_LOG_LEVEL_INFO),
|
|
100
114
|
logLevelSuccess: String(envPath.parsed?.LOG_ENVIRONMENT_LOG_LEVEL_SUCCESS),
|
|
@@ -102,10 +116,40 @@ var getEnvironnementValue = (envDir) => {
|
|
|
102
116
|
logLevelDebug: String(envPath.parsed?.LOG_ENVIRONMENT_LOG_LEVEL_DEBUG),
|
|
103
117
|
passwordField: String(envPath.parsed?.PASSWORD_FIELD),
|
|
104
118
|
prodEnv: String(envPath.parsed?.ENV_PROD),
|
|
105
|
-
usernameField: String(envPath.parsed?.USERNAME_FIELD)
|
|
119
|
+
usernameField: String(envPath.parsed?.USERNAME_FIELD),
|
|
120
|
+
hmrEnabled: parseBoolean(envPath.parsed?.HMR_ENABLED),
|
|
121
|
+
hmrWatchPatterns: parseStringArray(envPath.parsed?.HMR_WATCH_PATTERNS) || "src/**/*.ts,src/**/*.js,src/**/*.json,.env,config/*.json",
|
|
122
|
+
hmrIgnorePatterns: parseStringArray(envPath.parsed?.HMR_IGNORE_PATTERNS) || "node_modules/**,dist/**,build/**,*.log,coverage/**",
|
|
123
|
+
hmrDebounceMs: parseNumber(envPath.parsed?.HMR_DEBOUNCE_MS, 500) || 500,
|
|
124
|
+
hmrMaxRestarts: parseNumber(envPath.parsed?.HMR_MAX_RESTARTS, 5) || 5,
|
|
125
|
+
hmrAutoRestarts: parseBoolean(envPath.parsed?.HMR_AUTO_RESTART) || false
|
|
106
126
|
};
|
|
107
127
|
};
|
|
128
|
+
|
|
129
|
+
// src/core/environment.core.ts
|
|
130
|
+
var EnvironmentCore = class {
|
|
131
|
+
config;
|
|
132
|
+
/**
|
|
133
|
+
* Creates EnvironmentUtils instance
|
|
134
|
+
* @constructor
|
|
135
|
+
* @param {T} config - Configuration object
|
|
136
|
+
*/
|
|
137
|
+
constructor(config) {
|
|
138
|
+
this.config = config;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Gets configuration value by key
|
|
142
|
+
* @method get
|
|
143
|
+
* @template K - Key type
|
|
144
|
+
* @param {K} key - Configuration key
|
|
145
|
+
* @returns {T[K]} Configuration value
|
|
146
|
+
*/
|
|
147
|
+
get(key) {
|
|
148
|
+
return this.config[key];
|
|
149
|
+
}
|
|
150
|
+
};
|
|
108
151
|
// Annotate the CommonJS export names for ESM import in node:
|
|
109
152
|
0 && (module.exports = {
|
|
110
|
-
|
|
153
|
+
Env,
|
|
154
|
+
getEnvironmentValue
|
|
111
155
|
});
|
package/dist/index.d.cts
CHANGED
|
@@ -26,8 +26,37 @@ interface IEnvVariables {
|
|
|
26
26
|
logLevelWarning: string;
|
|
27
27
|
logLevelDebug: string;
|
|
28
28
|
protocolTransfert: string;
|
|
29
|
+
hmrEnabled: boolean;
|
|
30
|
+
hmrWatchPatterns: string[];
|
|
31
|
+
hmrIgnorePatterns: string[];
|
|
32
|
+
hmrDebounceMs: number;
|
|
33
|
+
hmrMaxRestarts: number;
|
|
34
|
+
hmrAutoRestarts: boolean;
|
|
29
35
|
}
|
|
30
36
|
|
|
31
|
-
declare const
|
|
37
|
+
declare const getEnvironmentValue: (envDir: string) => IEnvVariables;
|
|
32
38
|
|
|
33
|
-
|
|
39
|
+
/**
|
|
40
|
+
* Environment Variables Utility Class
|
|
41
|
+
* @class EnvironmentUtils
|
|
42
|
+
* @template T - Type of configuration object
|
|
43
|
+
*/
|
|
44
|
+
declare class EnvironmentCore<T> {
|
|
45
|
+
private readonly config;
|
|
46
|
+
/**
|
|
47
|
+
* Creates EnvironmentUtils instance
|
|
48
|
+
* @constructor
|
|
49
|
+
* @param {T} config - Configuration object
|
|
50
|
+
*/
|
|
51
|
+
constructor(config: T);
|
|
52
|
+
/**
|
|
53
|
+
* Gets configuration value by key
|
|
54
|
+
* @method get
|
|
55
|
+
* @template K - Key type
|
|
56
|
+
* @param {K} key - Configuration key
|
|
57
|
+
* @returns {T[K]} Configuration value
|
|
58
|
+
*/
|
|
59
|
+
get<K extends keyof T>(key: K): T[K];
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
export { EnvironmentCore as Env, type IEnvVariables, getEnvironmentValue };
|
package/dist/index.d.ts
CHANGED
|
@@ -26,8 +26,37 @@ interface IEnvVariables {
|
|
|
26
26
|
logLevelWarning: string;
|
|
27
27
|
logLevelDebug: string;
|
|
28
28
|
protocolTransfert: string;
|
|
29
|
+
hmrEnabled: boolean;
|
|
30
|
+
hmrWatchPatterns: string[];
|
|
31
|
+
hmrIgnorePatterns: string[];
|
|
32
|
+
hmrDebounceMs: number;
|
|
33
|
+
hmrMaxRestarts: number;
|
|
34
|
+
hmrAutoRestarts: boolean;
|
|
29
35
|
}
|
|
30
36
|
|
|
31
|
-
declare const
|
|
37
|
+
declare const getEnvironmentValue: (envDir: string) => IEnvVariables;
|
|
32
38
|
|
|
33
|
-
|
|
39
|
+
/**
|
|
40
|
+
* Environment Variables Utility Class
|
|
41
|
+
* @class EnvironmentUtils
|
|
42
|
+
* @template T - Type of configuration object
|
|
43
|
+
*/
|
|
44
|
+
declare class EnvironmentCore<T> {
|
|
45
|
+
private readonly config;
|
|
46
|
+
/**
|
|
47
|
+
* Creates EnvironmentUtils instance
|
|
48
|
+
* @constructor
|
|
49
|
+
* @param {T} config - Configuration object
|
|
50
|
+
*/
|
|
51
|
+
constructor(config: T);
|
|
52
|
+
/**
|
|
53
|
+
* Gets configuration value by key
|
|
54
|
+
* @method get
|
|
55
|
+
* @template K - Key type
|
|
56
|
+
* @param {K} key - Configuration key
|
|
57
|
+
* @returns {T[K]} Configuration value
|
|
58
|
+
*/
|
|
59
|
+
get<K extends keyof T>(key: K): T[K];
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
export { EnvironmentCore as Env, type IEnvVariables, getEnvironmentValue };
|
package/dist/index.js
CHANGED
|
@@ -33,8 +33,21 @@ var envPathConfig = (envDirPath) => {
|
|
|
33
33
|
};
|
|
34
34
|
|
|
35
35
|
// src/domains/environnement/access.env.ts
|
|
36
|
-
var
|
|
36
|
+
var getEnvironmentValue = (envDir) => {
|
|
37
37
|
const envPath = envPathConfig(envDir);
|
|
38
|
+
const parseBoolean = (value) => {
|
|
39
|
+
return value?.toLowerCase() === "true";
|
|
40
|
+
};
|
|
41
|
+
const parseNumber = (value, defaultValue = 0) => {
|
|
42
|
+
const num = Number(value);
|
|
43
|
+
return isNaN(num) ? defaultValue : num;
|
|
44
|
+
};
|
|
45
|
+
const parseStringArray = (value, separator = ",") => {
|
|
46
|
+
if (!value || value.trim() === "") {
|
|
47
|
+
return [];
|
|
48
|
+
}
|
|
49
|
+
return value.split(separator).map((item) => item.trim()).filter((item) => item.length > 0);
|
|
50
|
+
};
|
|
38
51
|
return {
|
|
39
52
|
apiVersion: String(envPath.parsed?.API_VERSION),
|
|
40
53
|
appHost: String(envPath.parsed?.APP_HOST),
|
|
@@ -50,11 +63,11 @@ var getEnvironnementValue = (envDir) => {
|
|
|
50
63
|
protocolTransfert: String(envPath.parsed?.PROTOCOL_TRANSFERT),
|
|
51
64
|
logEnv: String(envPath.parsed?.LOG_ENVIRONMENT),
|
|
52
65
|
logFileMaxSize: Number(envPath.parsed?.LOG_ENVIRONMENT_FILE_MAX_SIZE),
|
|
53
|
-
logFileRotate:
|
|
54
|
-
logFileEnabled:
|
|
66
|
+
logFileRotate: parseBoolean(envPath.parsed?.LOG_ENVIRONMENT_FILE_ROTATE),
|
|
67
|
+
logFileEnabled: parseBoolean(envPath.parsed?.LOG_ENVIRONMENT_FILE_ENABLED),
|
|
55
68
|
logRemoteEndPoint: String(envPath.parsed?.LOG_ENVIRONMENT_REMOTE_ENDPOINT),
|
|
56
|
-
logRemoteEnabled:
|
|
57
|
-
logConsoleEnabled:
|
|
69
|
+
logRemoteEnabled: parseBoolean(envPath.parsed?.LOG_ENVIRONMENT_REMOTE_ENABLED),
|
|
70
|
+
logConsoleEnabled: parseBoolean(envPath.parsed?.LOG_ENVIRONMENT_CONSOLE_ENABLED),
|
|
58
71
|
logLevelError: String(envPath.parsed?.LOG_ENVIRONMENT_LOG_LEVEL_ERROR),
|
|
59
72
|
logLevelInfo: String(envPath.parsed?.LOG_ENVIRONMENT_LOG_LEVEL_INFO),
|
|
60
73
|
logLevelSuccess: String(envPath.parsed?.LOG_ENVIRONMENT_LOG_LEVEL_SUCCESS),
|
|
@@ -62,9 +75,39 @@ var getEnvironnementValue = (envDir) => {
|
|
|
62
75
|
logLevelDebug: String(envPath.parsed?.LOG_ENVIRONMENT_LOG_LEVEL_DEBUG),
|
|
63
76
|
passwordField: String(envPath.parsed?.PASSWORD_FIELD),
|
|
64
77
|
prodEnv: String(envPath.parsed?.ENV_PROD),
|
|
65
|
-
usernameField: String(envPath.parsed?.USERNAME_FIELD)
|
|
78
|
+
usernameField: String(envPath.parsed?.USERNAME_FIELD),
|
|
79
|
+
hmrEnabled: parseBoolean(envPath.parsed?.HMR_ENABLED),
|
|
80
|
+
hmrWatchPatterns: parseStringArray(envPath.parsed?.HMR_WATCH_PATTERNS) || "src/**/*.ts,src/**/*.js,src/**/*.json,.env,config/*.json",
|
|
81
|
+
hmrIgnorePatterns: parseStringArray(envPath.parsed?.HMR_IGNORE_PATTERNS) || "node_modules/**,dist/**,build/**,*.log,coverage/**",
|
|
82
|
+
hmrDebounceMs: parseNumber(envPath.parsed?.HMR_DEBOUNCE_MS, 500) || 500,
|
|
83
|
+
hmrMaxRestarts: parseNumber(envPath.parsed?.HMR_MAX_RESTARTS, 5) || 5,
|
|
84
|
+
hmrAutoRestarts: parseBoolean(envPath.parsed?.HMR_AUTO_RESTART) || false
|
|
66
85
|
};
|
|
67
86
|
};
|
|
87
|
+
|
|
88
|
+
// src/core/environment.core.ts
|
|
89
|
+
var EnvironmentCore = class {
|
|
90
|
+
config;
|
|
91
|
+
/**
|
|
92
|
+
* Creates EnvironmentUtils instance
|
|
93
|
+
* @constructor
|
|
94
|
+
* @param {T} config - Configuration object
|
|
95
|
+
*/
|
|
96
|
+
constructor(config) {
|
|
97
|
+
this.config = config;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Gets configuration value by key
|
|
101
|
+
* @method get
|
|
102
|
+
* @template K - Key type
|
|
103
|
+
* @param {K} key - Configuration key
|
|
104
|
+
* @returns {T[K]} Configuration value
|
|
105
|
+
*/
|
|
106
|
+
get(key) {
|
|
107
|
+
return this.config[key];
|
|
108
|
+
}
|
|
109
|
+
};
|
|
68
110
|
export {
|
|
69
|
-
|
|
111
|
+
EnvironmentCore as Env,
|
|
112
|
+
getEnvironmentValue
|
|
70
113
|
};
|